Class SuperFishFieldSource#

Inheritance Relationships#

Base Type#

Class Documentation#

class SuperFishFieldSource : public OrbitUtils::BaseFieldSource#

Public Functions

SuperFishFieldSource()#

Constructor for SuperFishFieldSource class

virtual ~SuperFishFieldSource()#

Destructor

virtual void getElectricMagneticField(double x, double y, double z, double t, double &E_x, double &E_y, double &E_z, double &H_x, double &H_y, double &H_z)#

Returns components of the electric and magnetic fields.

Returns components of the electric and magnetic fields. There are three possible cases: 1) symm == 1 and z_direction == +1 : we have the half of the gap with z > 0, field_center_pos = 0 2) symm == 0 and z_direction == +1 : we have the whole cavity, no transformation needed 3) symm == 0 and z_direction == -1 : The whole cavity is reversed z = -z For cases 2) and 3) the field_center_pos = (grid2D_Ez->getMaxX()+grid2D_Ez->getMinX())/2. E in [V/m] and B in [T] The internal magnetic field grid2D_H is in [A/m] and should be converted to the [T].

void setPhase(double phase)#

Sets the field phase.

double getPhase()#

Returns the field phase.

void setFieldCenterPos(double field_center_pos)#

Sets the field center position.

double getFieldCenterPos()#

Returns the field center position.

void setFrequency(double frequency)#

Sets the field frequency.

double getFrequency()#

Returns the field frequency.

void setAmplitude(double amplitude)#

Sets the field amplitude.

double getAmplitude()#

Returns the field amplitude.

double getAvgField()#

Returns the average e_z field on the z-axis.

double getLength()#

Returns the length of the field.

void setDirectionZ(int z_direction)#

Sets the field direction along the z-axis.

int getDirectionZ()#

Returns the field direction along the z-axis.

void setSymmetry(int symm)#

Sets the field symmetry property. If symm == 1 the field is symmetric around the z=0.

int getSymmetry()#

Returns the field symmetry property.

double getTimeInit()#

Returns the field initial time.

void setTimeInit(double time_init)#

Sets the field initial time.

Grid2D *getGrid2D_Ez()#

Returns the Grid2D instance with Ez field.

Grid2D *getGrid2D_Er()#

Returns the Grid2D instance with Er field.

Grid2D *getGrid2D_H()#

Returns the Grid2D instance with H field.

void setGrid2D_Fields(Grid2D *grid2D_Ez_in, Grid2D *grid2D_Er_in, Grid2D *grid2D_H_in)#

Sets the Ez, Er, and H fields.