11#include <geometry/bfieldmap/BFieldComponentAbs.h>
20 class BeamlineFieldMapInterpolation;
53 virtual ROOT::Math::XYZVector
calculate(
const ROOT::Math::XYZVector& point)
const override;
69 bool isInRange(
const ROOT::Math::XYZVector& point)
const;
83 void setMapFilename(
const std::string& filename_her,
const std::string& filename_ler)
The BFieldComponentAbs class.
The BFieldComponentBeamline class.
void setInterpolateFilename(const std::string &filename_her, const std::string &filename_ler)
Sets the filename of the map for interpolation.
std::string m_mapFilename_ler
The filename of the magnetic field map.
void setMapRegionZ(double minZ, double maxZ, double offset=0.)
Sets the size of the magnetic field map.
BeamlineFieldMapInterpolation * m_ler
Actual magnetic field interpolation object for LER.
BeamlineFieldMapInterpolation * m_her
Actual magnetic field interpolation object for HER.
double m_sinBeamCrossAngle
The sin of the crossing angle of the beams
double m_cosBeamCrossAngle
The cos of the crossing angle of the beams
double m_mapRegionZ[2]
The min and max boundaries of the map region in z.
double m_mapOffset
Offset required because the accelerator group defines the Belle center as zero.
std::string m_interFilename_ler
The filename of the map for interpolation.
void setMapFilename(const std::string &filename_her, const std::string &filename_ler)
Sets the filename of the magnetic field map.
void setMapRegionR(double minR, double maxR)
Sets the size of the magnetic field map.
std::string m_mapFilename_her
Parameter to set Angle of the beam.
std::string m_interFilename_her
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
The BeamlineFieldMapInterpolation class.
virtual void initialize() override
Initializes 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.
virtual void terminate() override
Terminates 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 ~BFieldComponentBeamline()
The BFieldComponentBeamline destructor.
static BFieldComponentBeamline & Instance()
BFieldComponentBeamline instance.
BFieldComponentBeamline()
The BFieldComponentBeamline constructor.
Abstract base class for different kinds of events.