Class ShiftedFieldSource#

Inheritance Relationships#

Base Type#

Derived Types#

Class Documentation#

class ShiftedFieldSource : public OrbitUtils::BaseFieldSource#

A class implements of BaseFiledSource class for shifted coordinate system.

Subclassed by OrbitUtils::DipoleFieldSource, OrbitUtils::LoopFieldSource, OrbitUtils::MagnetFieldSourceGrid3D, OrbitUtils::QuadFieldSource

Public Functions

ShiftedFieldSource()#

Constructor.

virtual ~ShiftedFieldSource()#

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.

virtual void getInnerElectricMagneticField(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 in the inner coordinate system. These components will be transformed to the external system in getElectricMagneticField method. This is a virtual method, and subclasses should implement this abstarct method.

This method should be implemented in the sub-classes

Matrix *getCoordsTransformMatrix()#

Returns coordinates transformation matrix 4x4. It includes rotation 3x3 matrix and origin shift.

void setCoordsTransformMatrix(Matrix *coordTransformM4x4)#

Sets coordinates transformation matrix 4x4. It includes rotation 3x3 matrix and origin shift.

Protected Attributes

Matrix *coordTransformM4x4#
PhaseVector *coordVectExt#
PhaseVector *coordVectInn#
PhaseVector *fieldVectExt#
PhaseVector *fieldVectInn#
Matrix *coordTransformM3x3#