OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
FM3DH5Block_nonscale Class Reference

#include <FM3DH5Block_nonscale.h>

Inheritance diagram for FM3DH5Block_nonscale:
Inheritance graph
[legend]
Collaboration diagram for FM3DH5Block_nonscale:
Collaboration graph
[legend]

Public Member Functions

virtual bool getFieldstrength (const Vector_t &R, Vector_t &E, Vector_t &B) const
 
virtual void getFieldDimensions (double &zBegin, double &zEnd, double &rBegin, double &rEnd) const
 
virtual void getFieldDimensions (double &xIni, double &xFinal, double &yIni, double &yFinal, double &zIni, double &zFinal) const
 
virtual bool getFieldDerivative (const Vector_t &R, Vector_t &E, Vector_t &B, const DiffDirection &dir) 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 bool isInside (const Vector_t &r) const
 
- Public Member Functions inherited from Fieldmap
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 interpreteLine (std::ifstream &in, T &value, const bool &file_length_known)
 

Private Member Functions

 FM3DH5Block_nonscale (std::string aFilename)
 
 ~FM3DH5Block_nonscale ()
 
virtual void readMap ()
 
virtual void freeMap ()
 

Private Attributes

std::vector< h5_float64_t > FieldstrengthEz_m
 
std::vector< h5_float64_t > FieldstrengthEx_m
 
std::vector< h5_float64_t > FieldstrengthEy_m
 
std::vector< h5_float64_t > FieldstrengthHz_m
 
std::vector< h5_float64_t > FieldstrengthHx_m
 
std::vector< h5_float64_t > FieldstrengthHy_m
 
h5_float64_t frequency_m
 
h5_float64_t xbegin_m
 
h5_float64_t xend_m
 
h5_float64_t ybegin_m
 
h5_float64_t yend_m
 
h5_float64_t zbegin_m
 
h5_float64_t zend_m
 
h5_float64_t hx_m
 
h5_float64_t hy_m
 
h5_float64_t hz_m
 
h5_int64_t num_gridpx_m
 
h5_int64_t num_gridpy_m
 
h5_int64_t num_gridpz_m
 
bool swap_m
 

Friends

class Fieldmap
 

Additional Inherited Members

- Static Public Member Functions inherited from Fieldmap
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 inherited from Fieldmap
 Fieldmap (const std::string &aFilename)
 
virtual ~Fieldmap ()
 
void getLine (std::ifstream &in, std::string &buffer)
 
template<class S >
bool interpreteLine (std::ifstream &in, S &value, const bool &file_length_known=true)
 
template<class S , class T >
bool interpreteLine (std::ifstream &in, S &value1, T &value2, const bool &file_length_known=true)
 
template<class S , class T , class U >
bool interpreteLine (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 interpreteLine (std::ifstream &in, S &value1, T &value2, U &value3, V &value4, const bool &file_length_known=true)
 
template<class S >
bool interpreteLine (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 interpreteWarning (const std::string &error_msg, const std::string &expecting, const std::string &found)
 
void interpreteWarning (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 > &ef, const std::vector< Vector_t > &bf)
 
- Static Protected Member Functions inherited from Fieldmap
static void getLine (std::ifstream &in, int &lines_read, std::string &buffer)
 
- Protected Attributes inherited from Fieldmap
MapType Type
 
std::string Filename_m
 
int lines_read_m
 
bool normalize_m
 

Detailed Description

Definition at line 8 of file FM3DH5Block_nonscale.h.

Constructor & Destructor Documentation

FM3DH5Block_nonscale::FM3DH5Block_nonscale ( std::string  aFilename)
private
FM3DH5Block_nonscale::~FM3DH5Block_nonscale ( )
private

Definition at line 78 of file FM3DH5Block_nonscale.cpp.

References freeMap().

Here is the call graph for this function:

Member Function Documentation

void FM3DH5Block_nonscale::freeMap ( )
privatevirtual
bool FM3DH5Block_nonscale::getFieldDerivative ( const Vector_t R,
Vector_t E,
Vector_t B,
const DiffDirection dir 
) const
virtual

Implements Fieldmap.

Definition at line 286 of file FM3DH5Block_nonscale.cpp.

void FM3DH5Block_nonscale::getFieldDimensions ( double &  zBegin,
double &  zEnd,
double &  rBegin,
double &  rEnd 
) const
virtual

Implements Fieldmap.

Definition at line 290 of file FM3DH5Block_nonscale.cpp.

References xbegin_m, xend_m, zbegin_m, and zend_m.

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

Implements Fieldmap.

Definition at line 296 of file FM3DH5Block_nonscale.cpp.

bool FM3DH5Block_nonscale::getFieldstrength ( const Vector_t R,
Vector_t E,
Vector_t B 
) const
virtual
double FM3DH5Block_nonscale::getFrequency ( ) const
virtual

Implements Fieldmap.

Definition at line 304 of file FM3DH5Block_nonscale.cpp.

References frequency_m.

void FM3DH5Block_nonscale::getInfo ( Inform msg)
virtual

Implements Fieldmap.

Definition at line 300 of file FM3DH5Block_nonscale.cpp.

References endl(), Fieldmap::Filename_m, zbegin_m, and zend_m.

Here is the call graph for this function:

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

Reimplemented from Fieldmap.

Definition at line 312 of file FM3DH5Block_nonscale.cpp.

References fabs(), FieldstrengthEz_m, floor(), hx_m, hy_m, num_gridpx_m, num_gridpy_m, num_gridpz_m, xbegin_m, ybegin_m, zbegin_m, and zend_m.

Here is the call graph for this function:

bool FM3DH5Block_nonscale::isInside ( const Vector_t r) const
inlinevirtual

Reimplemented from Fieldmap.

Definition at line 60 of file FM3DH5Block_nonscale.h.

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

void FM3DH5Block_nonscale::readMap ( )
privatevirtual
void FM3DH5Block_nonscale::setFrequency ( double  freq)
virtual

Implements Fieldmap.

Definition at line 308 of file FM3DH5Block_nonscale.cpp.

References frequency_m.

void FM3DH5Block_nonscale::swap ( )
virtual

Implements Fieldmap.

Definition at line 298 of file FM3DH5Block_nonscale.cpp.

Friends And Related Function Documentation

friend class Fieldmap
friend

Definition at line 57 of file FM3DH5Block_nonscale.h.

Member Data Documentation

std::vector<h5_float64_t> FM3DH5Block_nonscale::FieldstrengthEx_m
private

3D array with Ex

Definition at line 30 of file FM3DH5Block_nonscale.h.

Referenced by freeMap(), getFieldstrength(), and readMap().

std::vector<h5_float64_t> FM3DH5Block_nonscale::FieldstrengthEy_m
private

3D array with Ey

Definition at line 31 of file FM3DH5Block_nonscale.h.

Referenced by freeMap(), getFieldstrength(), and readMap().

std::vector<h5_float64_t> FM3DH5Block_nonscale::FieldstrengthEz_m
private

3D array with Ez

Definition at line 29 of file FM3DH5Block_nonscale.h.

Referenced by freeMap(), getFieldstrength(), getOnaxisEz(), and readMap().

std::vector<h5_float64_t> FM3DH5Block_nonscale::FieldstrengthHx_m
private

3D array with Hx

Definition at line 33 of file FM3DH5Block_nonscale.h.

Referenced by freeMap(), getFieldstrength(), and readMap().

std::vector<h5_float64_t> FM3DH5Block_nonscale::FieldstrengthHy_m
private

3D array with Hy

Definition at line 34 of file FM3DH5Block_nonscale.h.

Referenced by freeMap(), getFieldstrength(), and readMap().

std::vector<h5_float64_t> FM3DH5Block_nonscale::FieldstrengthHz_m
private

3D array with Hz

Definition at line 32 of file FM3DH5Block_nonscale.h.

Referenced by freeMap(), getFieldstrength(), and readMap().

h5_float64_t FM3DH5Block_nonscale::frequency_m
private

Definition at line 36 of file FM3DH5Block_nonscale.h.

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

h5_float64_t FM3DH5Block_nonscale::hx_m
private

length between points in grid, x-direction

Definition at line 49 of file FM3DH5Block_nonscale.h.

Referenced by FM3DH5Block_nonscale(), getFieldstrength(), and getOnaxisEz().

h5_float64_t FM3DH5Block_nonscale::hy_m
private

length between points in grid, y-direction

Definition at line 50 of file FM3DH5Block_nonscale.h.

Referenced by FM3DH5Block_nonscale(), getFieldstrength(), and getOnaxisEz().

h5_float64_t FM3DH5Block_nonscale::hz_m
private

length between points in grid, z-direction

Definition at line 51 of file FM3DH5Block_nonscale.h.

Referenced by FM3DH5Block_nonscale(), and getFieldstrength().

h5_int64_t FM3DH5Block_nonscale::num_gridpx_m
private

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

Definition at line 52 of file FM3DH5Block_nonscale.h.

Referenced by FM3DH5Block_nonscale(), getFieldstrength(), getOnaxisEz(), and readMap().

h5_int64_t FM3DH5Block_nonscale::num_gridpy_m
private

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

Definition at line 53 of file FM3DH5Block_nonscale.h.

Referenced by FM3DH5Block_nonscale(), getFieldstrength(), getOnaxisEz(), and readMap().

h5_int64_t FM3DH5Block_nonscale::num_gridpz_m
private

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

Definition at line 54 of file FM3DH5Block_nonscale.h.

Referenced by FM3DH5Block_nonscale(), getFieldstrength(), getOnaxisEz(), and readMap().

bool FM3DH5Block_nonscale::swap_m
private

Definition at line 56 of file FM3DH5Block_nonscale.h.

h5_float64_t FM3DH5Block_nonscale::xbegin_m
private
h5_float64_t FM3DH5Block_nonscale::xend_m
private

Definition at line 39 of file FM3DH5Block_nonscale.h.

Referenced by FM3DH5Block_nonscale(), getFieldDimensions(), and isInside().

h5_float64_t FM3DH5Block_nonscale::ybegin_m
private
h5_float64_t FM3DH5Block_nonscale::yend_m
private

Definition at line 43 of file FM3DH5Block_nonscale.h.

Referenced by FM3DH5Block_nonscale(), and isInside().

h5_float64_t FM3DH5Block_nonscale::zbegin_m
private
h5_float64_t FM3DH5Block_nonscale::zend_m
private

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