OPALX (Object Oriented Parallel Accelerator Library for Exascal) MINIorX
OPALX
FM3DH5BlockBase Class Referenceabstract

#include <FM3DH5BlockBase.h>

Inheritance diagram for FM3DH5BlockBase:
Collaboration diagram for FM3DH5BlockBase:

Classes

struct  IndexTriplet

Public Member Functions

virtual void readMap ()
virtual void freeMap ()
virtual bool getFieldstrength (const Vector_t< double, 3 > &, Vector_t< double, 3 > &, Vector_t< double, 3 > &) const =0
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 bool getFieldDerivative (const Vector_t< double, 3 > &, Vector_t< double, 3 > &, Vector_t< double, 3 > &, const DiffDirection &) const
virtual void swap ()
virtual void getInfo (Inform *msg)
virtual double getFrequency () const
virtual void setFrequency (double freq)
virtual void getOnaxisEz (std::vector< std::pair< double, double > > &F)
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 Types

enum  : unsigned short {
  LX = 0 , LY = 0 , LZ = 0 , HX = 4 ,
  HY = 2 , HZ = 1
}

Protected Member Functions

 FM3DH5BlockBase ()
virtual ~FM3DH5BlockBase ()
void openFileMPIOCollective (const std::string aFilename)
long long getNumSteps (void)
void setStep (const long long)
void getFieldInfo (const char *)
void getResonanceFrequency (void)
void readField (const char *name, double *x, double *y, double *z)
void closeFile (void)
virtual bool isInside (const Vector_t< double, 3 > &r) const
unsigned long getIndex (unsigned int i, unsigned int j, unsigned int k) const
IndexTriplet getIndex (const Vector_t< double, 3 > &X) const
double getWeightedData (const std::vector< double > &data, const IndexTriplet &idx, unsigned short corner) const
Vector_t< double, 3 > interpolateTrilinearly (const std::vector< double > &, const std::vector< double > &, const std::vector< double > &, const Vector_t< double, 3 > &X) const
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

h5_file_t file_m
std::vector< double > FieldstrengthEz_m
std::vector< double > FieldstrengthEx_m
std::vector< double > FieldstrengthEy_m
double xbegin_m
double xend_m
double ybegin_m
double yend_m
double zbegin_m
double zend_m
double hx_m
double hy_m
double hz_m
double num_gridpx_m
double num_gridpy_m
double num_gridpz_m
double frequency_m
bool swap_m
MapType Type
std::string Filename_m
int lines_read_m
bool normalize_m

Static Private Attributes

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

Friends

class Fieldmap

Detailed Description

Definition at line 31 of file FM3DH5BlockBase.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum : unsigned short
protected
Enumerator
LX 
LY 
LZ 
HX 
HY 
HZ 

Definition at line 185 of file FM3DH5BlockBase.h.

Constructor & Destructor Documentation

◆ FM3DH5BlockBase()

FM3DH5BlockBase::FM3DH5BlockBase ( )
inlineprotected

Definition at line 88 of file FM3DH5BlockBase.h.

◆ ~FM3DH5BlockBase()

virtual FM3DH5BlockBase::~FM3DH5BlockBase ( )
inlineprotectedvirtual

Definition at line 91 of file FM3DH5BlockBase.h.

Member Function Documentation

◆ 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:

◆ closeFile()

void FM3DH5BlockBase::closeFile ( void )
protected

Definition at line 129 of file FM3DH5BlockBase.cpp.

References file_m, and Fieldmap::Filename_m.

Referenced by FM3DH5Block::FM3DH5Block(), FM3DH5Block_nonscale::FM3DH5Block_nonscale(), FM3DMagnetoStaticH5Block::FM3DMagnetoStaticH5Block(), FM3DH5Block::readMap(), FM3DH5Block_nonscale::readMap(), and FM3DMagnetoStaticH5Block::readMap().

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]

virtual void FM3DH5BlockBase::freeMap ( )
inlinevirtual

Implements Fieldmap.

Reimplemented in FM3DH5Block, FM3DH5Block_nonscale, and FM3DMagnetoStaticH5Block.

Definition at line 37 of file FM3DH5BlockBase.h.

◆ 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()

virtual bool FM3DH5BlockBase::getFieldDerivative ( const Vector_t< double, 3 > & ,
Vector_t< double, 3 > & ,
Vector_t< double, 3 > & ,
const DiffDirection &  ) const
inlinevirtual

Implements Fieldmap.

Definition at line 63 of file FM3DH5BlockBase.h.

◆ getFieldDimensions() [1/2]

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

Implements Fieldmap.

Definition at line 50 of file FM3DH5BlockBase.h.

References xbegin_m, xend_m, ybegin_m, yend_m, zbegin_m, and zend_m.

◆ getFieldDimensions() [2/2]

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

Implements Fieldmap.

Definition at line 43 of file FM3DH5BlockBase.h.

References zbegin_m, and zend_m.

◆ 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:

◆ getFieldInfo()

void FM3DH5BlockBase::getFieldInfo ( const char * name)
protected

Definition at line 63 of file FM3DH5BlockBase.cpp.

References file_m, Fieldmap::Filename_m, getNumSteps(), hx_m, hy_m, hz_m, num_gridpx_m, num_gridpy_m, num_gridpz_m, setStep(), xbegin_m, xend_m, ybegin_m, yend_m, zbegin_m, and zend_m.

Referenced by FM3DH5Block::FM3DH5Block(), FM3DH5Block_nonscale::FM3DH5Block_nonscale(), and FM3DMagnetoStaticH5Block::FM3DMagnetoStaticH5Block().

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()

virtual bool FM3DH5BlockBase::getFieldstrength ( const Vector_t< double, 3 > & ,
Vector_t< double, 3 > & ,
Vector_t< double, 3 > &  ) const
pure virtual

◆ getFrequency()

double FM3DH5BlockBase::getFrequency ( ) const
virtual

Implements Fieldmap.

Reimplemented in FM3DMagnetoStaticH5Block.

Definition at line 197 of file FM3DH5BlockBase.cpp.

References frequency_m.

◆ getIndex() [1/2]

◆ getIndex() [2/2]

unsigned long FM3DH5BlockBase::getIndex ( unsigned int i,
unsigned int j,
unsigned int k ) const
inlineprotected

Definition at line 147 of file FM3DH5BlockBase.h.

References num_gridpx_m, and num_gridpy_m.

Referenced by getWeightedData(), and interpolateTrilinearly().

Here is the caller graph for this function:

◆ getInfo()

void FM3DH5BlockBase::getInfo ( Inform * msg)
virtual

Implements Fieldmap.

Definition at line 189 of file FM3DH5BlockBase.cpp.

References Fieldmap::Filename_m, hx_m, hy_m, hz_m, xbegin_m, xend_m, ybegin_m, yend_m, zbegin_m, and zend_m.

◆ 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:

◆ getNumSteps()

long long FM3DH5BlockBase::getNumSteps ( void )
protected

Definition at line 39 of file FM3DH5BlockBase.cpp.

References file_m, and Fieldmap::Filename_m.

Referenced by getFieldInfo(), FM3DH5Block::readMap(), FM3DH5Block_nonscale::readMap(), and FM3DMagnetoStaticH5Block::readMap().

Here is the caller graph for this function:

◆ getOnaxisEz()

void FM3DH5BlockBase::getOnaxisEz ( std::vector< std::pair< double, double > > & F)
virtual

Reimplemented from Fieldmap.

Definition at line 205 of file FM3DH5BlockBase.cpp.

References FieldstrengthEz_m, hx_m, hy_m, num_gridpx_m, num_gridpy_m, num_gridpz_m, xbegin_m, ybegin_m, zbegin_m, and zend_m.

◆ getResonanceFrequency()

void FM3DH5BlockBase::getResonanceFrequency ( void )
protected

Definition at line 101 of file FM3DH5BlockBase.cpp.

References file_m, Fieldmap::Filename_m, frequency_m, and Physics::two_pi.

Referenced by FM3DH5Block::FM3DH5Block(), FM3DH5Block_nonscale::FM3DH5Block_nonscale(), and FM3DMagnetoStaticH5Block::FM3DMagnetoStaticH5Block().

Here is the caller graph for this function:

◆ getType()

MapType Fieldmap::getType ( )
inlineinherited

Definition at line 96 of file Fieldmap.h.

References Type.

◆ getWeightedData()

double FM3DH5BlockBase::getWeightedData ( const std::vector< double > & data,
const IndexTriplet & idx,
unsigned short corner ) const
protected

Definition at line 136 of file FM3DH5BlockBase.cpp.

References getIndex(), HX, HY, HZ, FM3DH5BlockBase::IndexTriplet::i, FM3DH5BlockBase::IndexTriplet::j, FM3DH5BlockBase::IndexTriplet::k, and FM3DH5BlockBase::IndexTriplet::weight.

Referenced by interpolateTrilinearly().

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

◆ interpolateTrilinearly()

Vector_t< double, 3 > FM3DH5BlockBase::interpolateTrilinearly ( const std::vector< double > & field_strength_x,
const std::vector< double > & field_strength_y,
const std::vector< double > & field_strength_z,
const Vector_t< double, 3 > & X ) const
protected

Definition at line 150 of file FM3DH5BlockBase.cpp.

References getIndex(), getWeightedData(), HX, HY, HZ, LX, LY, and LZ.

Referenced by FM3DH5Block::getFieldstrength(), FM3DH5Block_nonscale::getFieldstrength(), and FM3DMagnetoStaticH5Block::getFieldstrength().

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

◆ 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()

virtual bool FM3DH5BlockBase::isInside ( const Vector_t< double, 3 > & r) const
inlineprotectedvirtual

Reimplemented from Fieldmap.

Definition at line 119 of file FM3DH5BlockBase.h.

References xbegin_m, xend_m, ybegin_m, yend_m, zbegin_m, and zend_m.

Referenced by FM3DH5Block::getFieldstrength(), FM3DH5Block_nonscale::getFieldstrength(), and FM3DMagnetoStaticH5Block::getFieldstrength().

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:

◆ openFileMPIOCollective()

void FM3DH5BlockBase::openFileMPIOCollective ( const std::string aFilename)
protected

Definition at line 24 of file FM3DH5BlockBase.cpp.

References file_m.

Referenced by FM3DH5Block::FM3DH5Block(), FM3DH5Block_nonscale::FM3DH5Block_nonscale(), FM3DMagnetoStaticH5Block::FM3DMagnetoStaticH5Block(), FM3DH5Block::readMap(), FM3DH5Block_nonscale::readMap(), and FM3DMagnetoStaticH5Block::readMap().

Here is the caller graph for this function:

◆ readField()

void FM3DH5BlockBase::readField ( const char * name,
double * x,
double * y,
double * z )
protected

Definition at line 112 of file FM3DH5BlockBase.cpp.

References file_m, Fieldmap::Filename_m, num_gridpx_m, num_gridpy_m, and num_gridpz_m.

Referenced by FM3DH5Block::readMap(), FM3DH5Block_nonscale::readMap(), and FM3DMagnetoStaticH5Block::readMap().

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]

virtual void FM3DH5BlockBase::readMap ( )
inlinevirtual

Implements Fieldmap.

Reimplemented in FM3DH5Block, FM3DH5Block_nonscale, and FM3DMagnetoStaticH5Block.

Definition at line 34 of file FM3DH5BlockBase.h.

◆ 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 FM3DH5BlockBase::setFrequency ( double freq)
virtual

Implements Fieldmap.

Definition at line 201 of file FM3DH5BlockBase.cpp.

References frequency_m.

◆ setStep()

void FM3DH5BlockBase::setStep ( const long long step)
protected

Definition at line 55 of file FM3DH5BlockBase.cpp.

References file_m, and Fieldmap::Filename_m.

Referenced by getFieldInfo(), FM3DH5Block::readMap(), FM3DH5Block_nonscale::readMap(), and FM3DMagnetoStaticH5Block::readMap().

Here is the caller graph for this function:

◆ swap()

virtual void FM3DH5BlockBase::swap ( )
inlinevirtual

Implements Fieldmap.

Definition at line 72 of file FM3DH5BlockBase.h.

◆ 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

Definition at line 218 of file FM3DH5BlockBase.h.

References Fieldmap.

Referenced by Fieldmap.

Member Data Documentation

◆ 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().

◆ FieldstrengthEx_m

◆ FieldstrengthEy_m

◆ FieldstrengthEz_m

◆ file_m

h5_file_t FM3DH5BlockBase::file_m
protected

◆ 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().

◆ frequency_m

double FM3DH5BlockBase::frequency_m
protected

Definition at line 215 of file FM3DH5BlockBase.h.

Referenced by getFrequency(), getResonanceFrequency(), and setFrequency().

◆ hx_m

double FM3DH5BlockBase::hx_m
protected

length between points in grid, x-direction

Definition at line 207 of file FM3DH5BlockBase.h.

Referenced by getFieldInfo(), getIndex(), getInfo(), and getOnaxisEz().

◆ hy_m

double FM3DH5BlockBase::hy_m
protected

length between points in grid, y-direction

Definition at line 208 of file FM3DH5BlockBase.h.

Referenced by getFieldInfo(), getIndex(), getInfo(), and getOnaxisEz().

◆ hz_m

double FM3DH5BlockBase::hz_m
protected

length between points in grid, z-direction

Definition at line 209 of file FM3DH5BlockBase.h.

Referenced by getFieldInfo(), getIndex(), and getInfo().

◆ lines_read_m

◆ normalize_m

◆ num_gridpx_m

double FM3DH5BlockBase::num_gridpx_m
protected

number of points after 0(not counted here) in grid, x-direction

Definition at line 211 of file FM3DH5BlockBase.h.

Referenced by getFieldInfo(), getIndex(), getIndex(), getOnaxisEz(), readField(), FM3DH5Block::readMap(), FM3DH5Block_nonscale::readMap(), and FM3DMagnetoStaticH5Block::readMap().

◆ num_gridpy_m

double FM3DH5BlockBase::num_gridpy_m
protected

number of points after 0(not counted here) in grid, y-direction

Definition at line 212 of file FM3DH5BlockBase.h.

Referenced by getFieldInfo(), getIndex(), getIndex(), getOnaxisEz(), readField(), FM3DH5Block::readMap(), FM3DH5Block_nonscale::readMap(), and FM3DMagnetoStaticH5Block::readMap().

◆ num_gridpz_m

double FM3DH5BlockBase::num_gridpz_m
protected

number of points after 0(not counted here) in grid, z-direction

Definition at line 213 of file FM3DH5BlockBase.h.

Referenced by getFieldInfo(), getIndex(), getOnaxisEz(), readField(), FM3DH5Block::readMap(), FM3DH5Block_nonscale::readMap(), and FM3DMagnetoStaticH5Block::readMap().

◆ swap_m

bool FM3DH5BlockBase::swap_m
protected

Definition at line 217 of file FM3DH5BlockBase.h.

◆ Type

◆ xbegin_m

double FM3DH5BlockBase::xbegin_m
protected

◆ xend_m

double FM3DH5BlockBase::xend_m
protected

Definition at line 199 of file FM3DH5BlockBase.h.

Referenced by getFieldDimensions(), getFieldInfo(), getInfo(), and isInside().

◆ ybegin_m

double FM3DH5BlockBase::ybegin_m
protected

◆ yend_m

double FM3DH5BlockBase::yend_m
protected

Definition at line 202 of file FM3DH5BlockBase.h.

Referenced by getFieldDimensions(), getFieldInfo(), getInfo(), and isInside().

◆ zbegin_m

double FM3DH5BlockBase::zbegin_m
protected

◆ zend_m

double FM3DH5BlockBase::zend_m
protected

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