OPALX (Object Oriented Parallel Accelerator Library for Exascal) MINIorX
OPALX
FM1DDynamic Class Reference

#include <FM1DDynamic.h>

Inheritance diagram for FM1DDynamic:
Collaboration diagram for FM1DDynamic:

Public Member Functions

virtual bool getFieldstrength (const Vector_t< double, 3 > &R, Vector_t< double, 3 > &E, Vector_t< double, 3 > &B) const
virtual bool getFieldDerivative (const Vector_t< double, 3 > &R, Vector_t< double, 3 > &E, Vector_t< double, 3 > &B, const DiffDirection &dir) const
virtual void getFieldDimensions (double &zBegin, double &zEnd) const
virtual void getFieldDimensions (double &xIni, double &xFinal, double &yIni, double &yFinal, double &zIni, double &zFinal) const
virtual void swap ()
virtual void getInfo (Inform *)
virtual double getFrequency () const
virtual void setFrequency (double freq)
virtual void getOnaxisEz (std::vector< std::pair< double, double > > &eZ)
virtual bool isInside (const Vector_t< double, 3 > &r) const
virtual void setEdgeConstants (const double &bendAngle, const double &entranceAngle, const double &exitAngle)
virtual void setFieldLength (const double &)
virtual void get1DProfile1EngeCoeffs (std::vector< double > &engeCoeffsEntry, std::vector< double > &engeCoeffsExit)
virtual void get1DProfile1EntranceParam (double &entranceParameter1, double &entranceParameter2, double &entranceParameter3)
virtual void get1DProfile1ExitParam (double &exitParameter1, double &exitParameter2, double &exitParameter3)
virtual double getFieldGap ()
virtual void setFieldGap (double gap)
MapType getType ()
template<class T>
bool interpretLine (std::ifstream &in, T &value, const bool &file_length_known)

Static Public Member Functions

static FieldmapgetFieldmap (std::string Filename, bool fast=false)
static std::vector< std::string > getListFieldmapNames ()
static void deleteFieldmap (std::string Filename)
static void clearDictionary ()
static MapType readHeader (std::string Filename)
static void readMap (std::string Filename)
static void freeMap (std::string Filename)
static std::string typeset_msg (const std::string &msg, const std::string &title)

Protected Member Functions

void getLine (std::ifstream &in, std::string &buffer)
template<class S>
bool interpretLine (std::ifstream &in, S &value, const bool &file_length_known=true)
template<class S, class T>
bool interpretLine (std::ifstream &in, S &value1, T &value2, const bool &file_length_known=true)
template<class S, class T, class U>
bool interpretLine (std::ifstream &in, S &value1, T &value2, U &value3, const bool &file_length_known=true)
template<class S, class T, class U, class V>
bool interpretLine (std::ifstream &in, S &value1, T &value2, U &value3, V &value4, const bool &file_length_known=true)
template<class S>
bool interpretLine (std::ifstream &in, S &value1, S &value2, S &value3, S &value4, S &value5, S &value6, const bool &file_length_known=true)
bool interpreteEOF (std::ifstream &in)
void interpretWarning (const std::ios_base::iostate &state, const bool &read_all, const std::string &error_msg, const std::string &found)
void missingValuesWarning ()
void exceedingValuesWarning ()
void disableFieldmapWarning ()
void noFieldmapWarning ()
void lowResolutionWarning (double squareError, double maxError)
void checkMap (unsigned int accuracy, std::pair< double, double > fieldDimensions, double deltaZ, const std::vector< double > &fourierCoefficients, gsl_spline *splineCoefficients, gsl_interp_accel *splineAccelerator)
void checkMap (unsigned int accuracy, double length, const std::vector< double > &zSampling, const std::vector< double > &fourierCoefficients, gsl_spline *splineCoefficients, gsl_interp_accel *splineAccelerator)
void write3DField (unsigned int nx, unsigned int ny, unsigned int nz, const std::pair< double, double > &xrange, const std::pair< double, double > &yrange, const std::pair< double, double > &zrange, const std::vector< Vector_t< double, 3 > > &ef, const std::vector< Vector_t< double, 3 > > &bf)

Static Protected Member Functions

static void getLine (std::ifstream &in, int &lines_read, std::string &buffer)

Protected Attributes

MapType Type
std::string Filename_m
int lines_read_m
bool normalize_m

Private Member Functions

 FM1DDynamic (std::string aFilename)
 ~FM1DDynamic ()
virtual void readMap ()
virtual void freeMap ()
bool checkFileData (std::ifstream &fieldFile, bool parsingPassed)
void computeFieldOffAxis (const Vector_t< double, 3 > &R, Vector_t< double, 3 > &E, Vector_t< double, 3 > &B, std::vector< double > fieldComponents) const
void computeFieldOnAxis (double z, std::vector< double > &fieldComponents) const
void computeFourierCoefficients (double maxEz, double fieldData[])
void convertHeaderData ()
double readFileData (std::ifstream &fieldFile, double fieldData[])
double readFileData (std::ifstream &fieldFile, std::vector< std::pair< double, double > > &eZ)
bool readFileHeader (std::ifstream &fieldFile)
void scaleField (double maxEz, std::vector< std::pair< double, double > > &eZ)
void stripFileHeader (std::ifstream &fieldFile)

Private Attributes

double frequency_m
double twoPiOverLambdaSq_m
 Field angular frequency (Hz).
double rBegin_m
 2 Pi divided by the field RF wavelength squared.
double rEnd_m
 Minimum radius of field.
double zBegin_m
 Maximum radius of field.
double zEnd_m
 Longitudinal start of field.
double length_m
 Longitudinal end of field.
int numberOfGridPoints_m
 Field length.
int accuracy_m
 Number of grid points in field input file.
std::vector< double > fourierCoefs_m
 Number of Fourier coefficients to use reconstructing field.

Static Private Attributes

static char buffer_m [256]
static std::string alpha_numeric
static std::map< std::string, FieldmapDescriptionFieldmapDictionary

Friends

class Fieldmap
 Fourier coefficients derived from field map.

Detailed Description

Definition at line 6 of file FM1DDynamic.h.

Constructor & Destructor Documentation

◆ FM1DDynamic()

FM1DDynamic::FM1DDynamic ( std::string aFilename)
private

Definition at line 13 of file FM1DDynamic.cpp.

References checkFileData(), convertHeaderData(), Fieldmap::disableFieldmapWarning(), Fieldmap, Fieldmap::Filename_m, FM1DDynamic(), length_m, Fieldmap::noFieldmapWarning(), numberOfGridPoints_m, readFileHeader(), T1DDynamic, Fieldmap::Type, zBegin_m, and zEnd_m.

Referenced by FM1DDynamic().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ~FM1DDynamic()

FM1DDynamic::~FM1DDynamic ( )
private

Definition at line 37 of file FM1DDynamic.cpp.

References freeMap(), and ~FM1DDynamic().

Referenced by ~FM1DDynamic().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Function Documentation

◆ checkFileData()

bool FM1DDynamic::checkFileData ( std::ifstream & fieldFile,
bool parsingPassed )
private

Definition at line 128 of file FM1DDynamic.cpp.

References checkFileData(), Fieldmap::interpreteEOF(), Fieldmap::interpretLine(), and numberOfGridPoints_m.

Referenced by checkFileData(), and FM1DDynamic().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ checkMap() [1/2]

void Fieldmap::checkMap ( unsigned int accuracy,
double length,
const std::vector< double > & zSampling,
const std::vector< double > & fourierCoefficients,
gsl_spline * splineCoefficients,
gsl_interp_accel * splineAccelerator )
protectedinherited

Definition at line 428 of file Fieldmap.cpp.

References checkMap(), Util::combineFilePath(), end(), Filename_m, OpalData::getInstance(), lowResolutionWarning(), and Physics::two_pi.

Here is the call graph for this function:

◆ checkMap() [2/2]

void Fieldmap::checkMap ( unsigned int accuracy,
std::pair< double, double > fieldDimensions,
double deltaZ,
const std::vector< double > & fourierCoefficients,
gsl_spline * splineCoefficients,
gsl_interp_accel * splineAccelerator )
protectedinherited

Definition at line 413 of file Fieldmap.cpp.

References checkMap().

Referenced by checkMap(), checkMap(), FM1DDynamic_fast::prepareForMapCheck(), FM1DElectroStatic_fast::prepareForMapCheck(), FM1DMagnetoStatic_fast::prepareForMapCheck(), Astra1DDynamic_fast::readMap(), Astra1DElectroStatic_fast::readMap(), and Astra1DMagnetoStatic_fast::readMap().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ clearDictionary()

void Fieldmap::clearDictionary ( )
staticinherited

Definition at line 237 of file Fieldmap.cpp.

References clearDictionary(), and FieldmapDictionary.

Referenced by clearDictionary().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ computeFieldOffAxis()

void FM1DDynamic::computeFieldOffAxis ( const Vector_t< double, 3 > & R,
Vector_t< double, 3 > & E,
Vector_t< double, 3 > & B,
std::vector< double > fieldComponents ) const
private

Definition at line 136 of file FM1DDynamic.cpp.

References computeFieldOffAxis(), frequency_m, and twoPiOverLambdaSq_m.

Referenced by computeFieldOffAxis(), and getFieldstrength().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ computeFieldOnAxis()

void FM1DDynamic::computeFieldOnAxis ( double z,
std::vector< double > & fieldComponents ) const
private

Definition at line 158 of file FM1DDynamic.cpp.

References accuracy_m, computeFieldOnAxis(), fourierCoefs_m, length_m, Physics::pi, and Physics::two_pi.

Referenced by computeFieldOnAxis(), and getFieldstrength().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ computeFourierCoefficients()

void FM1DDynamic::computeFourierCoefficients ( double maxEz,
double fieldData[] )
private

Definition at line 191 of file FM1DDynamic.cpp.

References accuracy_m, computeFourierCoefficients(), fourierCoefs_m, numberOfGridPoints_m, and Units::Vpm2MVpm.

Referenced by computeFourierCoefficients(), and readMap().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ convertHeaderData()

void FM1DDynamic::convertHeaderData ( )
private

Definition at line 211 of file FM1DDynamic.cpp.

References Physics::c, Units::cm2m, convertHeaderData(), frequency_m, Units::MHz2Hz, rBegin_m, rEnd_m, Physics::two_pi, twoPiOverLambdaSq_m, zBegin_m, and zEnd_m.

Referenced by convertHeaderData(), and FM1DDynamic().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ deleteFieldmap()

void Fieldmap::deleteFieldmap ( std::string Filename)
staticinherited

Definition at line 233 of file Fieldmap.cpp.

References deleteFieldmap(), and freeMap().

Referenced by deleteFieldmap().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ disableFieldmapWarning()

◆ exceedingValuesWarning()

void Fieldmap::exceedingValuesWarning ( )
protectedinherited

Definition at line 559 of file Fieldmap.cpp.

References exceedingValuesWarning(), Filename_m, and lines_read_m.

Referenced by exceedingValuesWarning(), and interpreteEOF().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ freeMap() [1/2]

void Fieldmap::freeMap ( std::string Filename)
staticinherited

Definition at line 394 of file Fieldmap.cpp.

References FieldmapDictionary, and freeMap().

Referenced by freeMap().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ freeMap() [2/2]

void FM1DDynamic::freeMap ( )
privatevirtual

Implements Fieldmap.

Definition at line 56 of file FM1DDynamic.cpp.

References Fieldmap::Filename_m, fourierCoefs_m, freeMap(), and Fieldmap::typeset_msg().

Referenced by freeMap(), and ~FM1DDynamic().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ get1DProfile1EngeCoeffs()

void Fieldmap::get1DProfile1EngeCoeffs ( std::vector< double > & engeCoeffsEntry,
std::vector< double > & engeCoeffsExit )
virtualinherited

Reimplemented in FM1DProfile1.

Definition at line 671 of file Fieldmap.cpp.

References get1DProfile1EngeCoeffs().

Referenced by get1DProfile1EngeCoeffs().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ get1DProfile1EntranceParam()

void Fieldmap::get1DProfile1EntranceParam ( double & entranceParameter1,
double & entranceParameter2,
double & entranceParameter3 )
virtualinherited

Reimplemented in FM1DProfile1.

Definition at line 675 of file Fieldmap.cpp.

References get1DProfile1EntranceParam().

Referenced by get1DProfile1EntranceParam().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ get1DProfile1ExitParam()

void Fieldmap::get1DProfile1ExitParam ( double & exitParameter1,
double & exitParameter2,
double & exitParameter3 )
virtualinherited

Reimplemented in FM1DProfile1.

Definition at line 680 of file Fieldmap.cpp.

References get1DProfile1ExitParam().

Referenced by get1DProfile1ExitParam().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getFieldDerivative()

bool FM1DDynamic::getFieldDerivative ( const Vector_t< double, 3 > & R,
Vector_t< double, 3 > & E,
Vector_t< double, 3 > & B,
const DiffDirection & dir ) const
virtual

Implements Fieldmap.

Definition at line 73 of file FM1DDynamic.cpp.

References accuracy_m, fourierCoefs_m, getFieldDerivative(), length_m, Physics::pi, Physics::two_pi, and zBegin_m.

Referenced by getFieldDerivative().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getFieldDimensions() [1/2]

void FM1DDynamic::getFieldDimensions ( double & xIni,
double & xFinal,
double & yIni,
double & yFinal,
double & zIni,
double & zFinal ) const
virtual

Implements Fieldmap.

Definition at line 98 of file FM1DDynamic.cpp.

References getFieldDimensions().

Here is the call graph for this function:

◆ getFieldDimensions() [2/2]

void FM1DDynamic::getFieldDimensions ( double & zBegin,
double & zEnd ) const
virtual

Implements Fieldmap.

Definition at line 93 of file FM1DDynamic.cpp.

References getFieldDimensions(), zBegin_m, and zEnd_m.

Referenced by getFieldDimensions(), and getFieldDimensions().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getFieldGap()

double Fieldmap::getFieldGap ( )
virtualinherited

Reimplemented in FM1DProfile1.

Definition at line 684 of file Fieldmap.cpp.

References getFieldGap().

Referenced by getFieldGap().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getFieldmap()

Fieldmap * Fieldmap::getFieldmap ( std::string Filename,
bool fast = false )
staticinherited

Definition at line 54 of file Fieldmap.cpp.

References Fieldmap(), FieldmapDictionary, getFieldmap(), readHeader(), T1DDynamic, T1DElectroStatic, T1DMagnetoStatic, T1DProfile1, T1DProfile2, T2DDynamic, T2DElectroStatic, T2DMagnetoStatic, T3DDynamic, T3DDynamicH5Block, T3DMagnetoStatic, T3DMagnetoStatic_Extended, T3DMagnetoStaticH5Block, TAstraDynamic, TAstraElectroStatic, and TAstraMagnetoStatic.

Referenced by getFieldmap().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getFieldstrength()

bool FM1DDynamic::getFieldstrength ( const Vector_t< double, 3 > & R,
Vector_t< double, 3 > & E,
Vector_t< double, 3 > & B ) const
virtual

Implements Fieldmap.

Definition at line 64 of file FM1DDynamic.cpp.

References computeFieldOffAxis(), computeFieldOnAxis(), getFieldstrength(), and zBegin_m.

Referenced by getFieldstrength().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getFrequency()

double FM1DDynamic::getFrequency ( ) const
virtual

Implements Fieldmap.

Definition at line 111 of file FM1DDynamic.cpp.

References frequency_m, and getFrequency().

Referenced by getFrequency().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getInfo()

void FM1DDynamic::getInfo ( Inform * msg)
virtual

Implements Fieldmap.

Definition at line 106 of file FM1DDynamic.cpp.

References Fieldmap::Filename_m, getInfo(), zBegin_m, and zEnd_m.

Referenced by getInfo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getLine() [1/2]

void Fieldmap::getLine ( std::ifstream & in,
int & lines_read,
std::string & buffer )
staticprotectedinherited

Definition at line 494 of file Fieldmap.cpp.

References alpha_numeric, buffer_m, getLine(), and READ_BUFFER_LENGTH.

Here is the call graph for this function:

◆ getLine() [2/2]

void Fieldmap::getLine ( std::ifstream & in,
std::string & buffer )
inlineprotectedinherited

◆ getListFieldmapNames()

std::vector< std::string > Fieldmap::getListFieldmapNames ( )
staticinherited

Definition at line 224 of file Fieldmap.cpp.

References FieldmapDictionary, and getListFieldmapNames().

Referenced by getListFieldmapNames().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getOnaxisEz()

void FM1DDynamic::getOnaxisEz ( std::vector< std::pair< double, double > > & eZ)
virtual

Reimplemented from Fieldmap.

Definition at line 119 of file FM1DDynamic.cpp.

References Fieldmap::Filename_m, getOnaxisEz(), numberOfGridPoints_m, readFileData(), scaleField(), and stripFileHeader().

Referenced by getOnaxisEz().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getType()

MapType Fieldmap::getType ( )
inlineinherited

Definition at line 96 of file Fieldmap.h.

References Type.

◆ interpreteEOF()

bool Fieldmap::interpreteEOF ( std::ifstream & in)
protectedinherited

◆ interpretLine() [1/6]

template<class S>
bool Fieldmap::interpretLine ( std::ifstream & in,
S & value,
const bool & file_length_known = true )
protectedinherited

Referenced by Astra1DDynamic::Astra1DDynamic(), Astra1DElectroStatic::Astra1DElectroStatic(), Astra1DMagnetoStatic::Astra1DMagnetoStatic(), FM1DDynamic::checkFileData(), FM1DDynamic_fast::checkFileData(), FM1DElectroStatic::checkFileData(), FM1DElectroStatic_fast::checkFileData(), FM1DMagnetoStatic::checkFileData(), FM1DMagnetoStatic_fast::checkFileData(), Astra1D_fast::determineNumSamplingPoints(), FM1DProfile1::FM1DProfile1(), FM1DProfile2::FM1DProfile2(), FM2DDynamic::FM2DDynamic(), FM2DElectroStatic::FM2DElectroStatic(), FM2DMagnetoStatic::FM2DMagnetoStatic(), FM3DDynamic::FM3DDynamic(), FM3DMagnetoStatic::FM3DMagnetoStatic(), FM3DMagnetoStaticExtended::FM3DMagnetoStaticExtended(), Astra1DDynamic::getOnaxisEz(), Astra1DDynamic_fast::getOnaxisEz(), interpretLine(), interpretLine(), interpretLine(), interpretLine(), interpretLine(), Astra1D_fast::readFieldData(), FM1DDynamic::readFileData(), FM1DDynamic::readFileData(), FM1DDynamic_fast::readFileData(), FM1DDynamic_fast::readFileData(), FM1DElectroStatic::readFileData(), FM1DElectroStatic_fast::readFileData(), FM1DMagnetoStatic::readFileData(), FM1DMagnetoStatic_fast::readFileData(), Astra1DDynamic_fast::readFileHeader(), Astra1DElectroStatic_fast::readFileHeader(), Astra1DMagnetoStatic_fast::readFileHeader(), FM1DDynamic::readFileHeader(), FM1DDynamic_fast::readFileHeader(), FM1DElectroStatic::readFileHeader(), FM1DElectroStatic_fast::readFileHeader(), FM1DMagnetoStatic::readFileHeader(), FM1DMagnetoStatic_fast::readFileHeader(), Astra1DDynamic::readMap(), Astra1DElectroStatic::readMap(), Astra1DMagnetoStatic::readMap(), FM1DProfile1::readMap(), FM1DProfile2::readMap(), FM2DDynamic::readMap(), FM2DElectroStatic::readMap(), FM2DMagnetoStatic::readMap(), FM3DDynamic::readMap(), FM3DMagnetoStatic::readMap(), FM3DMagnetoStaticExtended::readMap(), Astra1DDynamic_fast::stripFileHeader(), Astra1DElectroStatic_fast::stripFileHeader(), and Astra1DMagnetoStatic_fast::stripFileHeader().

◆ interpretLine() [2/6]

template<class S>
bool Fieldmap::interpretLine ( std::ifstream & in,
S & value1,
S & value2,
S & value3,
S & value4,
S & value5,
S & value6,
const bool & file_length_known = true )
protectedinherited

Definition at line 141 of file Fieldmap.hpp.

References getLine(), interpretLine(), interpretWarning(), and missingValuesWarning().

Here is the call graph for this function:

◆ interpretLine() [3/6]

template<class S, class T>
bool Fieldmap::interpretLine ( std::ifstream & in,
S & value1,
T & value2,
const bool & file_length_known = true )
protectedinherited

Definition at line 39 of file Fieldmap.hpp.

References getLine(), interpretLine(), interpretWarning(), and missingValuesWarning().

Here is the call graph for this function:

◆ interpretLine() [4/6]

template<class S, class T, class U>
bool Fieldmap::interpretLine ( std::ifstream & in,
S & value1,
T & value2,
U & value3,
const bool & file_length_known = true )
protectedinherited

Definition at line 70 of file Fieldmap.hpp.

References getLine(), interpretLine(), interpretWarning(), and missingValuesWarning().

Here is the call graph for this function:

◆ interpretLine() [5/6]

template<class S, class T, class U, class V>
bool Fieldmap::interpretLine ( std::ifstream & in,
S & value1,
T & value2,
U & value3,
V & value4,
const bool & file_length_known = true )
protectedinherited

Definition at line 104 of file Fieldmap.hpp.

References getLine(), interpretLine(), interpretWarning(), and missingValuesWarning().

Here is the call graph for this function:

◆ interpretLine() [6/6]

template<class T>
bool Fieldmap::interpretLine ( std::ifstream & in,
T & value,
const bool & file_length_known )
inherited

Definition at line 12 of file Fieldmap.hpp.

References getLine(), interpretLine(), interpretWarning(), and missingValuesWarning().

Here is the call graph for this function:

◆ interpretWarning()

void Fieldmap::interpretWarning ( const std::ios_base::iostate & state,
const bool & read_all,
const std::string & error_msg,
const std::string & found )
protectedinherited

Definition at line 532 of file Fieldmap.cpp.

References Filename_m, interpretWarning(), and lines_read_m.

Referenced by interpretLine(), interpretLine(), interpretLine(), interpretLine(), interpretLine(), and interpretWarning().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ isInside()

bool FM1DDynamic::isInside ( const Vector_t< double, 3 > & r) const
inlinevirtual

Reimplemented from Fieldmap.

Definition at line 60 of file FM1DDynamic.h.

References isInside(), zBegin_m, and zEnd_m.

Referenced by isInside().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ lowResolutionWarning()

void Fieldmap::lowResolutionWarning ( double squareError,
double maxError )
protectedinherited

Definition at line 583 of file Fieldmap.cpp.

References Filename_m, OpalData::getAuxiliaryOutputDirectory(), OpalData::getInstance(), lowResolutionWarning(), and typeset_msg().

Referenced by checkMap(), and lowResolutionWarning().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ missingValuesWarning()

void Fieldmap::missingValuesWarning ( )
protectedinherited

Definition at line 550 of file Fieldmap.cpp.

References Filename_m, lines_read_m, and missingValuesWarning().

Referenced by interpretLine(), interpretLine(), interpretLine(), interpretLine(), interpretLine(), and missingValuesWarning().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ noFieldmapWarning()

void Fieldmap::noFieldmapWarning ( )
protectedinherited

Definition at line 576 of file Fieldmap.cpp.

References Filename_m, and noFieldmapWarning().

Referenced by Astra1DDynamic_fast::Astra1DDynamic_fast(), Astra1DElectroStatic_fast::Astra1DElectroStatic_fast(), Astra1DMagnetoStatic_fast::Astra1DMagnetoStatic_fast(), FM1DDynamic::FM1DDynamic(), FM1DDynamic_fast::FM1DDynamic_fast(), FM1DElectroStatic::FM1DElectroStatic(), FM1DElectroStatic_fast::FM1DElectroStatic_fast(), FM1DMagnetoStatic::FM1DMagnetoStatic(), FM1DMagnetoStatic_fast::FM1DMagnetoStatic_fast(), FM1DProfile1::FM1DProfile1(), FM1DProfile2::FM1DProfile2(), FM3DDynamic::FM3DDynamic(), and noFieldmapWarning().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ readFileData() [1/2]

double FM1DDynamic::readFileData ( std::ifstream & fieldFile,
double fieldData[] )
private

Definition at line 224 of file FM1DDynamic.cpp.

References Fieldmap::interpretLine(), Fieldmap::normalize_m, numberOfGridPoints_m, and readFileData().

Referenced by getOnaxisEz(), readFileData(), readFileData(), and readMap().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ readFileData() [2/2]

double FM1DDynamic::readFileData ( std::ifstream & fieldFile,
std::vector< std::pair< double, double > > & eZ )
private

Definition at line 246 of file FM1DDynamic.cpp.

References Fieldmap::interpretLine(), Fieldmap::normalize_m, numberOfGridPoints_m, readFileData(), zBegin_m, and zEnd_m.

Here is the call graph for this function:

◆ readFileHeader()

bool FM1DDynamic::readFileHeader ( std::ifstream & fieldFile)
private

Definition at line 263 of file FM1DDynamic.cpp.

References accuracy_m, frequency_m, Fieldmap::interpretLine(), Fieldmap::normalize_m, numberOfGridPoints_m, rBegin_m, readFileHeader(), rEnd_m, Util::toUpper(), zBegin_m, and zEnd_m.

Referenced by FM1DDynamic(), and readFileHeader().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ readHeader()

MapType Fieldmap::readHeader ( std::string Filename)
staticinherited

Definition at line 246 of file Fieldmap.cpp.

References getLine(), lines_read_m, readHeader(), T1DDynamic, T1DElectroStatic, T1DMagnetoStatic, T1DProfile1, T2DDynamic, T2DElectroStatic, T2DMagnetoStatic, T3DDynamic, T3DDynamicH5Block, T3DElectroStatic, T3DMagnetoStatic, T3DMagnetoStatic_Extended, T3DMagnetoStaticH5Block, TAstraDynamic, TAstraElectroStatic, TAstraMagnetoStatic, and UNKNOWN.

Referenced by getFieldmap(), and readHeader().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ readMap() [1/2]

void Fieldmap::readMap ( std::string Filename)
staticinherited

Definition at line 384 of file Fieldmap.cpp.

References FieldmapDictionary, and readMap().

Referenced by readMap().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ readMap() [2/2]

void FM1DDynamic::readMap ( )
privatevirtual

Implements Fieldmap.

Definition at line 41 of file FM1DDynamic.cpp.

References computeFourierCoefficients(), Fieldmap::Filename_m, fourierCoefs_m, numberOfGridPoints_m, readFileData(), readMap(), stripFileHeader(), and Fieldmap::typeset_msg().

Referenced by readMap().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ scaleField()

void FM1DDynamic::scaleField ( double maxEz,
std::vector< std::pair< double, double > > & eZ )
private

Definition at line 299 of file FM1DDynamic.cpp.

References numberOfGridPoints_m, and scaleField().

Referenced by getOnaxisEz(), and scaleField().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setEdgeConstants()

void Fieldmap::setEdgeConstants ( const double & bendAngle,
const double & entranceAngle,
const double & exitAngle )
virtualinherited

Reimplemented in FM1DProfile2.

Definition at line 489 of file Fieldmap.cpp.

References setEdgeConstants().

Referenced by setEdgeConstants().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setFieldGap()

void Fieldmap::setFieldGap ( double gap)
virtualinherited

Reimplemented in FM1DProfile1.

Definition at line 688 of file Fieldmap.cpp.

References setFieldGap().

Referenced by setFieldGap().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setFieldLength()

void Fieldmap::setFieldLength ( const double & )
virtualinherited

Definition at line 492 of file Fieldmap.cpp.

References setFieldLength().

Referenced by setFieldLength().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setFrequency()

void FM1DDynamic::setFrequency ( double freq)
virtual

Implements Fieldmap.

Definition at line 115 of file FM1DDynamic.cpp.

References frequency_m, and setFrequency().

Referenced by setFrequency().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ stripFileHeader()

void FM1DDynamic::stripFileHeader ( std::ifstream & fieldFile)
private

Definition at line 304 of file FM1DDynamic.cpp.

References Fieldmap::getLine(), and stripFileHeader().

Referenced by getOnaxisEz(), readMap(), and stripFileHeader().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ swap()

void FM1DDynamic::swap ( )
virtual

Implements Fieldmap.

Definition at line 103 of file FM1DDynamic.cpp.

References swap().

Referenced by swap().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ typeset_msg()

std::string Fieldmap::typeset_msg ( const std::string & msg,
const std::string & title )
staticinherited

Definition at line 607 of file Fieldmap.cpp.

References typeset_msg().

Referenced by FMDummy::FMDummy(), Astra1D_fast::freeMap(), Astra1DDynamic::freeMap(), Astra1DElectroStatic::freeMap(), Astra1DMagnetoStatic::freeMap(), FM1DDynamic::freeMap(), FM1DDynamic_fast::freeMap(), FM1DElectroStatic::freeMap(), FM1DElectroStatic_fast::freeMap(), FM1DMagnetoStatic::freeMap(), FM1DMagnetoStatic_fast::freeMap(), FM1DProfile2::freeMap(), FM2DDynamic::freeMap(), FM2DElectroStatic::freeMap(), FM2DMagnetoStatic::freeMap(), FM3DDynamic::freeMap(), FM3DH5Block::freeMap(), FM3DH5Block_nonscale::freeMap(), FM3DMagnetoStatic::freeMap(), FM3DMagnetoStaticExtended::freeMap(), FM3DMagnetoStaticH5Block::freeMap(), lowResolutionWarning(), Astra1DDynamic::readMap(), Astra1DDynamic_fast::readMap(), Astra1DElectroStatic::readMap(), Astra1DElectroStatic_fast::readMap(), Astra1DMagnetoStatic::readMap(), Astra1DMagnetoStatic_fast::readMap(), FM1DDynamic::readMap(), FM1DDynamic_fast::readMap(), FM1DElectroStatic::readMap(), FM1DElectroStatic_fast::readMap(), FM1DMagnetoStatic::readMap(), FM1DMagnetoStatic_fast::readMap(), FM1DProfile1::readMap(), FM1DProfile2::readMap(), FM2DDynamic::readMap(), FM2DElectroStatic::readMap(), FM2DMagnetoStatic::readMap(), FM3DDynamic::readMap(), FM3DH5Block::readMap(), FM3DH5Block_nonscale::readMap(), FM3DMagnetoStatic::readMap(), FM3DMagnetoStaticExtended::readMap(), FM3DMagnetoStaticH5Block::readMap(), and typeset_msg().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ write3DField()

void Fieldmap::write3DField ( unsigned int nx,
unsigned int ny,
unsigned int nz,
const std::pair< double, double > & xrange,
const std::pair< double, double > & yrange,
const std::pair< double, double > & zrange,
const std::vector< Vector_t< double, 3 > > & ef,
const std::vector< Vector_t< double, 3 > > & bf )
protectedinherited

Definition at line 691 of file Fieldmap.cpp.

References Util::combineFilePath(), Filename_m, OpalData::getAuxiliaryOutputDirectory(), OpalData::getInstance(), and write3DField().

Referenced by FM3DDynamic::readMap(), and write3DField().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Fieldmap

friend class Fieldmap
friend

Fourier coefficients derived from field map.

Definition at line 57 of file FM1DDynamic.h.

References Fieldmap.

Referenced by Fieldmap, and FM1DDynamic().

Member Data Documentation

◆ accuracy_m

int FM1DDynamic::accuracy_m
private

Number of grid points in field input file.

Definition at line 54 of file FM1DDynamic.h.

Referenced by computeFieldOnAxis(), computeFourierCoefficients(), getFieldDerivative(), and readFileHeader().

◆ alpha_numeric

std::string Fieldmap::alpha_numeric
staticprivateinherited

Definition at line 182 of file Fieldmap.h.

Referenced by getLine(), and interpreteEOF().

◆ buffer_m

char Fieldmap::buffer_m
staticprivateinherited

Definition at line 181 of file Fieldmap.h.

Referenced by getLine(), and interpreteEOF().

◆ FieldmapDictionary

std::map< std::string, Fieldmap::FieldmapDescription > Fieldmap::FieldmapDictionary
staticprivateinherited
Initial value:
=
std::map<std::string, Fieldmap::FieldmapDescription>()

Definition at line 194 of file Fieldmap.h.

Referenced by clearDictionary(), freeMap(), getFieldmap(), getListFieldmapNames(), and readMap().

◆ Filename_m

std::string Fieldmap::Filename_m
protectedinherited

Definition at line 120 of file Fieldmap.h.

Referenced by Astra1DDynamic::Astra1DDynamic(), Astra1DDynamic_fast::Astra1DDynamic_fast(), Astra1DElectroStatic::Astra1DElectroStatic(), Astra1DElectroStatic_fast::Astra1DElectroStatic_fast(), Astra1DMagnetoStatic::Astra1DMagnetoStatic(), Astra1DMagnetoStatic_fast::Astra1DMagnetoStatic_fast(), checkMap(), FM3DH5BlockBase::closeFile(), disableFieldmapWarning(), exceedingValuesWarning(), Fieldmap(), FM1DDynamic::FM1DDynamic(), FM1DDynamic_fast::FM1DDynamic_fast(), FM1DElectroStatic::FM1DElectroStatic(), FM1DElectroStatic_fast::FM1DElectroStatic_fast(), FM1DMagnetoStatic::FM1DMagnetoStatic(), FM1DMagnetoStatic_fast::FM1DMagnetoStatic_fast(), FM1DProfile1::FM1DProfile1(), FM1DProfile2::FM1DProfile2(), FM2DDynamic::FM2DDynamic(), FM2DElectroStatic::FM2DElectroStatic(), FM2DMagnetoStatic::FM2DMagnetoStatic(), FM3DDynamic::FM3DDynamic(), FM3DMagnetoStatic::FM3DMagnetoStatic(), FM3DMagnetoStaticExtended::FM3DMagnetoStaticExtended(), FMDummy::FMDummy(), Astra1D_fast::freeMap(), Astra1DDynamic::freeMap(), Astra1DElectroStatic::freeMap(), Astra1DMagnetoStatic::freeMap(), FM1DDynamic::freeMap(), FM1DDynamic_fast::freeMap(), FM1DElectroStatic::freeMap(), FM1DElectroStatic_fast::freeMap(), FM1DMagnetoStatic::freeMap(), FM1DMagnetoStatic_fast::freeMap(), FM1DProfile2::freeMap(), FM2DDynamic::freeMap(), FM2DElectroStatic::freeMap(), FM2DMagnetoStatic::freeMap(), FM3DDynamic::freeMap(), FM3DH5Block::freeMap(), FM3DH5Block_nonscale::freeMap(), FM3DMagnetoStatic::freeMap(), FM3DMagnetoStaticExtended::freeMap(), FM3DMagnetoStaticH5Block::freeMap(), FM3DH5BlockBase::getFieldInfo(), Astra1DDynamic::getInfo(), Astra1DDynamic_fast::getInfo(), Astra1DElectroStatic::getInfo(), Astra1DElectroStatic_fast::getInfo(), Astra1DMagnetoStatic::getInfo(), Astra1DMagnetoStatic_fast::getInfo(), FM1DDynamic::getInfo(), FM1DDynamic_fast::getInfo(), FM1DElectroStatic::getInfo(), FM1DElectroStatic_fast::getInfo(), FM1DMagnetoStatic::getInfo(), FM1DMagnetoStatic_fast::getInfo(), FM1DProfile1::getInfo(), FM1DProfile2::getInfo(), FM2DDynamic::getInfo(), FM2DElectroStatic::getInfo(), FM2DMagnetoStatic::getInfo(), FM3DDynamic::getInfo(), FM3DH5BlockBase::getInfo(), FM3DMagnetoStatic::getInfo(), FM3DMagnetoStaticExtended::getInfo(), FM3DH5BlockBase::getNumSteps(), Astra1DDynamic::getOnaxisEz(), Astra1DDynamic_fast::getOnaxisEz(), FM1DDynamic::getOnaxisEz(), FM1DDynamic_fast::getOnaxisEz(), FM3DDynamic::getOnaxisEz(), FM3DH5BlockBase::getResonanceFrequency(), interpretWarning(), lowResolutionWarning(), missingValuesWarning(), noFieldmapWarning(), FM3DH5BlockBase::readField(), Astra1DDynamic::readMap(), Astra1DDynamic_fast::readMap(), Astra1DElectroStatic::readMap(), Astra1DElectroStatic_fast::readMap(), Astra1DMagnetoStatic::readMap(), Astra1DMagnetoStatic_fast::readMap(), FM1DDynamic::readMap(), FM1DDynamic_fast::readMap(), FM1DElectroStatic::readMap(), FM1DElectroStatic_fast::readMap(), FM1DMagnetoStatic::readMap(), FM1DMagnetoStatic_fast::readMap(), FM1DProfile1::readMap(), FM1DProfile2::readMap(), FM2DDynamic::readMap(), FM2DElectroStatic::readMap(), FM2DMagnetoStatic::readMap(), FM3DDynamic::readMap(), FM3DH5Block::readMap(), FM3DH5Block_nonscale::readMap(), FM3DMagnetoStatic::readMap(), FM3DMagnetoStaticExtended::readMap(), FM3DMagnetoStaticH5Block::readMap(), FM3DH5BlockBase::setStep(), and write3DField().

◆ fourierCoefs_m

std::vector<double> FM1DDynamic::fourierCoefs_m
private

Number of Fourier coefficients to use reconstructing field.

Definition at line 55 of file FM1DDynamic.h.

Referenced by computeFieldOnAxis(), computeFourierCoefficients(), freeMap(), getFieldDerivative(), and readMap().

◆ frequency_m

double FM1DDynamic::frequency_m
private

◆ length_m

double FM1DDynamic::length_m
private

Longitudinal end of field.

Definition at line 51 of file FM1DDynamic.h.

Referenced by computeFieldOnAxis(), FM1DDynamic(), and getFieldDerivative().

◆ lines_read_m

◆ normalize_m

◆ numberOfGridPoints_m

int FM1DDynamic::numberOfGridPoints_m
private

◆ rBegin_m

double FM1DDynamic::rBegin_m
private

2 Pi divided by the field RF wavelength squared.

Definition at line 47 of file FM1DDynamic.h.

Referenced by convertHeaderData(), and readFileHeader().

◆ rEnd_m

double FM1DDynamic::rEnd_m
private

Minimum radius of field.

Definition at line 48 of file FM1DDynamic.h.

Referenced by convertHeaderData(), and readFileHeader().

◆ twoPiOverLambdaSq_m

double FM1DDynamic::twoPiOverLambdaSq_m
private

Field angular frequency (Hz).

Definition at line 45 of file FM1DDynamic.h.

Referenced by computeFieldOffAxis(), and convertHeaderData().

◆ Type

◆ zBegin_m

double FM1DDynamic::zBegin_m
private

◆ zEnd_m

double FM1DDynamic::zEnd_m
private

Longitudinal start of field.

Definition at line 50 of file FM1DDynamic.h.

Referenced by convertHeaderData(), FM1DDynamic(), getFieldDimensions(), getInfo(), isInside(), readFileData(), and readFileHeader().


The documentation for this class was generated from the following files: