 |
Belle II Software
release-05-01-25
|
11 #ifndef BFIELDCOMPONENTKLM1_H
12 #define BFIELDCOMPONENTKLM1_H
14 #include <geometry/bfieldmap/BFieldComponentAbs.h>
36 class BFieldComponentKlm1 :
public BFieldComponentAbs {
double m_barrelZBreakpoint[15]
z position of breakpoints between the two linear approximations of Bz in the barrel.
double m_barrelZMax
The maximum boundaries of BKLM region in r.
double m_barrelFieldRIntercept2[15]
Intercept of Br after the beackpoint in the barrel.
double m_endcapFieldRSlope[2][15][5]
Slopes of the linear approximation of Br in the endcap.
void setEndcapRegion(double minR, double minZ)
Set the dimensions of the endcap region.
double m_cos3pi8
cos(3pi/8)
double m_mapOffset
Offset required because the accelerator group defines the Belle center as zero.
double m_barrelIronThickness
Thickness of Barrel iron plate.
double m_barrelFieldRSlope2[15]
Slope of Br after the breakpoint in the barrel.
virtual void terminate() override
Terminates the magnetic field Component.
double m_endcapZMin
The minimum boundaries of EKLM region in z.
double m_endcapZBreakpoint[2][15][5]
z position of breakpoints between linear functions in the endcap.
double r
r coordinate of the point
double m_barrelGapHeightLayer0
Gap height of BKLM layer0.
void setLayerParam(double bgapl0, double bironth, double egap, double dl)
Set the layer parameters @bgapl0 barrel gap height for layer 0 @bironth barrel iron thickness @egap e...
double m_barrelRMin
The minimum boundaries of BKLM region in r.
double m_barrelFieldZIntercept1[15]
Intercept of Bz before the beackpoint in the barrel.
double m_barrelFieldZSlope2[15]
Slope of Bz after the breakpoint in the barrel.
void setMapFilename(const std::string &filename)
Sets the filename of the magnetic field map.
std::string m_mapFilename
The filename of the magnetic field map.
double m_endcapGapHeight
Gap height of BKLM layer1-14.
double m_endcapFieldRIntercept[2][15][5]
Intercepts of the linear approximation of Br in the endcap.
double m_endcapRMin
The minimum boundaries of EKLM region in r.
double m_barrelFieldZSlope1[15]
Slope of Bz before the breakpoint in the barrel.
double m_endcapFieldZSlope[2][15][5]
Slopes of the linear approximation of Bz in the endcap.
Abstract base class for different kinds of events.
double m_endcapRBreakpoint[2][15][5]
r position of breakpoints between linear functions in the endcap First index indicates whether or not...
int m_nBarrelLayers
The number of layers per 1 sector for BKLM.
void setNLayers(int b, int e)
Sets the number of barrel and endcap layers.
double m_barrelFieldRSlope1[15]
Slope of Br before the breakpoint in the barrel.
double m_dLayer
deppth of BKLM module?
virtual void initialize() override
Initializes the magnetic field Component.
double z
z coordinate of the point
void setBarrelRegion(double minR, double maxZ, double offset)
Sets the dimensions of the barrel region.
double m_barrelFieldZIntercept2[15]
Intercept of Bz after the beackpoint in the barrel.
double m_barrelRBreakpoint[15]
z position of breakpoints between the two linear approximations of Br in the barrel.
BFieldComponentKlm1()=default
The BFieldComponentklm1 constructor.
int m_nEndcapLayers
The number of layers per 1 sector for EKLM.
virtual ~BFieldComponentKlm1()=default
The BFieldComponentklm1 destructor.
double m_barrelFieldRIntercept1[15]
Intercept of Br before the beackpoint in the barrel.
double m_endcapFieldZIntercept[2][15][5]
Intercepts of the linear approximation of Bz in the endcap.
virtual B2Vector3D calculate(const B2Vector3D &point) const override
Calculates the magnetic field vector at the specified space point.