 |
Belle II Software
release-05-01-25
|
11 #ifndef BFIELDCOMPONENTBEAMLINE_H
12 #define BFIELDCOMPONENTBEAMLINE_H
14 #include <geometry/bfieldmap/BFieldComponentAbs.h>
23 class BeamlineFieldMapInterpolation;
34 class BFieldComponentBeamline :
public BFieldComponentAbs {
85 void setMapFilename(
const std::string& filename_her,
const std::string& filename_ler)
106 void setMapRegionZ(
double minZ,
double maxZ,
double offset = 0.)
virtual ~BFieldComponentBeamline()
The BFieldComponentBeamline destructor.
virtual void initialize() override
Initializes the magnetic field component.
std::string m_mapFilename_her
Parameter to set Angle of the beam.
std::string m_interFilename_ler
The filename of the map for interpolation.
double m_mapRegionR[2]
The min and max boundaries of the map region in r.
void setBeamAngle(double beamAngle)
Parameter to set Map Region
double m_mapOffset
Offset required because the accelerator group defines the Belle center as zero.
BeamlineFieldMapInterpolation * m_ler
Actual magnetic field interpolation object for LER.
double m_mapRegionZ[2]
The min and max boundaries of the map region in z.
bool isInRange(const B2Vector3D &point) const
Check presence of beamline field at the specific space point in the detector coordinate frame.
virtual B2Vector3D calculate(const B2Vector3D &point) const override
Calculates the magnetic field vector at the specified space point.
double m_sinBeamCrossAngle
The sin of the crossing angle of the beams
The BeamlineFieldMapInterpolation class.
Abstract base class for different kinds of events.
static BFieldComponentBeamline & Instance()
BFieldComponentBeamline instance.
virtual void terminate() override
Terminates the magnetic field component.
BeamlineFieldMapInterpolation * m_her
Actual magnetic field interpolation object for HER.
void setMapRegionR(double minR, double maxR)
Sets the size of the magnetic field map.
std::string m_mapFilename_ler
The filename of the magnetic field map.
BFieldComponentBeamline()
The BFieldComponentBeamline constructor.
void setMapRegionZ(double minZ, double maxZ, double offset=0.)
Sets the size of the magnetic field map.
std::string m_interFilename_her
The filename of the map for interpolation.
double m_cosBeamCrossAngle
The cos of the crossing angle of the beams
void setInterpolateFilename(const std::string &filename_her, const std::string &filename_ler)
Sets the filename of the map for interpolation.
The BFieldComponentBeamline class.
void setMapFilename(const std::string &filename_her, const std::string &filename_ler)
Sets the filename of the magnetic field map.