Belle II Software development
|
The BFieldComponentBeamline class. More...
#include <BFieldComponentBeamline.h>
Public Member Functions | |
BFieldComponentBeamline () | |
The BFieldComponentBeamline constructor. | |
virtual | ~BFieldComponentBeamline () |
The BFieldComponentBeamline destructor. | |
virtual void | initialize () override |
Initializes the magnetic field component. | |
virtual ROOT::Math::XYZVector | calculate (const ROOT::Math::XYZVector &point) const override |
Calculates the magnetic field vector at the specified space point. | |
virtual void | terminate () override |
Terminates the magnetic field component. | |
bool | isInRange (const ROOT::Math::XYZVector &point) const |
Check presence of beamline field at the specific space point in the detector coordinate frame. | |
void | setMapFilename (const std::string &filename_her, const std::string &filename_ler) |
Sets the filename of the magnetic field map. | |
void | setInterpolateFilename (const std::string &filename_her, const std::string &filename_ler) |
Sets the filename of the map for interpolation. | |
void | setMapRegionZ (double minZ, double maxZ, double offset=0.) |
Sets the size of the magnetic field map. | |
void | setMapRegionR (double minR, double maxR) |
Sets the size of the magnetic field map. | |
void | setBeamAngle (double beamAngle) |
Parameter to set Map Region | |
Static Public Member Functions | |
static BFieldComponentBeamline & | Instance () |
BFieldComponentBeamline instance. | |
Private Attributes | |
std::string | m_mapFilename_her {""} |
Parameter to set Angle of the beam. | |
std::string | m_mapFilename_ler {""} |
The filename of the magnetic field map. | |
std::string | m_interFilename_her {""} |
The filename of the map for interpolation. | |
std::string | m_interFilename_ler {""} |
The filename of the map for interpolation. | |
double | m_mapRegionZ [2] {0} |
The min and max boundaries of the map region in z. | |
double | m_mapOffset {0} |
Offset required because the accelerator group defines the Belle center as zero. | |
double | m_mapRegionR [2] {0} |
The min and max boundaries of the map region in r. | |
double | m_sinBeamCrossAngle {0} |
The sin of the crossing angle of the beams | |
double | m_cosBeamCrossAngle {1} |
The cos of the crossing angle of the beams | |
BeamlineFieldMapInterpolation * | m_her {0} |
Actual magnetic field interpolation object for HER. | |
BeamlineFieldMapInterpolation * | m_ler {0} |
Actual magnetic field interpolation object for LER. | |
The BFieldComponentBeamline class.
This class represents a magnetic field map around beamline. The magnetic field map is stored as a grid in cylindrical coordinates. It is defined by a minimum radius and a maximum radius, a minimum z and a maximum z value, a pitch size in both, r and z, and the number of grid points. The filename points to the zip file containing the magnetic field map.
Definition at line 31 of file BFieldComponentBeamline.h.
|
inline |
Parameter to set Map Region
Definition at line 122 of file BFieldComponentBeamline.h.
|
inline |
Sets the filename of the map for interpolation.
Definition at line 92 of file BFieldComponentBeamline.h.
|
inline |
Sets the filename of the magnetic field map.
filename_her | The filename of the HER magnetic field map. |
filename_ler | The filename of the LER magnetic field map. |
Definition at line 83 of file BFieldComponentBeamline.h.
|
inline |
Sets the size of the magnetic field map.
minR | The left (min) border of the magnetic field map region in r [cm]. |
maxR | The right (max) border of the magnetic field map region in r [cm]. |
Definition at line 116 of file BFieldComponentBeamline.h.
|
inline |
Sets the size of the magnetic field map.
minZ | The left (min) border of the magnetic field map region in z [cm]. |
maxZ | The right (max) border of the magnetic field map region in z [cm]. |
offset | The offset in z [cm] which is required because the accelerator group defines the Belle center as zero. |
Definition at line 104 of file BFieldComponentBeamline.h.
|
private |
The cos of the crossing angle of the beams
Definition at line 146 of file BFieldComponentBeamline.h.
|
private |
Actual magnetic field interpolation object for HER.
Definition at line 148 of file BFieldComponentBeamline.h.
|
private |
The filename of the map for interpolation.
Definition at line 134 of file BFieldComponentBeamline.h.
|
private |
The filename of the map for interpolation.
Definition at line 136 of file BFieldComponentBeamline.h.
|
private |
Actual magnetic field interpolation object for LER.
Definition at line 150 of file BFieldComponentBeamline.h.
|
private |
Parameter to set Angle of the beam.
The filename of the magnetic field map.
Definition at line 130 of file BFieldComponentBeamline.h.
|
private |
The filename of the magnetic field map.
Definition at line 132 of file BFieldComponentBeamline.h.
|
private |
Offset required because the accelerator group defines the Belle center as zero.
Definition at line 140 of file BFieldComponentBeamline.h.
|
private |
The min and max boundaries of the map region in r.
Definition at line 142 of file BFieldComponentBeamline.h.
|
private |
The min and max boundaries of the map region in z.
Definition at line 138 of file BFieldComponentBeamline.h.
|
private |
The sin of the crossing angle of the beams
Definition at line 144 of file BFieldComponentBeamline.h.