![]() |
Belle II Software
release-08-02-05
|
The BeamlineFieldMapInterpolation class. More...

Public Member Functions | |
| const TriangularInterpolation & | getTriangularInterpolation () const |
| Expose the triangular interpolation to outside. More... | |
| BeamlineFieldMapInterpolation ()=default | |
| Default constructor. | |
| ~BeamlineFieldMapInterpolation ()=default | |
| Default destructor. | |
| void | init (const string &fieldmapname, const string &interpolname, double validRadius) |
| Initializes the magnetic field component. More... | |
| int | zIndexAndWeight (double z, double &w1) const |
| For a given Z coordinate calculate the index of Z slice and corresponding weight. More... | |
| bool | inRange (const ROOT::Math::XYZVector &v) const |
| Check the space point if the interpolation exists. More... | |
| ROOT::Math::XYZVector | interpolateField (const ROOT::Math::XYZVector &v) const |
| Interpolate the magnetic field vector at the specified space point. More... | |
Protected Attributes | |
| vector< ROOT::Math::XYZVector > | m_B |
| Buffer for the magnetic field map. | |
| TriangularInterpolation | m_triInterpol |
| Object to locate point in a triangular mesh. | |
| int | m_nxy {0} |
| Number of field points in XY plane. | |
| int | m_nz {0} |
| Number of field slices in Z direction. | |
| int | m_nz1 {0} |
| Start Z slice number for the finer Z grid. | |
| int | m_nz2 {0} |
| End Z slice number for the finer Z grid. | |
| int | m_nr {0} |
| Number of grid points in R direction. | |
| int | m_nphi {0} |
| Number of grid points in Phi direction. | |
| double | m_rj {0} |
| Separation radius between triangular and cylindrical meshes. | |
| double | m_rj2 {0} |
| Square of the separation radius between triangular and cylindrical meshes. | |
| double | m_zj {0} |
| Z border of finer Z grid. | |
| double | m_dz0 {0} |
| Coarse Z grid pitch. | |
| double | m_dz1 {0} |
| Finer Z grid pitch. | |
| double | m_idz0 {0} |
| Inverse of coarse Z grid pitch. | |
| double | m_idz1 {0} |
| Inverse of finer Z grid pitch. | |
| double | m_idphi {0} |
| Repciprocal of Phi grid. | |
| double | m_idr {0} |
| Repciprocal of R grid. | |
| double | m_rmax {0} |
| Maximal radius where interpolation is still valid. | |
| double | m_zmax {0} |
| Maximal Z where interpolation is still valid. | |
The BeamlineFieldMapInterpolation class.
This class interpolates a magnetic field map around beamline. The magnetic field map is stored as a grid in cylindrical coordinates for outer radiuses and triangular mesh for inner part It is defined by a maximum radius and a maximum z value, a pitch size in both, r and z, and the number of grid points.
Definition at line 285 of file BFieldComponentBeamline.cc.
|
inline |
Expose the triangular interpolation to outside.
Definition at line 292 of file BFieldComponentBeamline.cc.
|
inline |
Initializes the magnetic field component.
This method opens the magnetic field map file and triangular mesh.
| fieldmapname | File name containing the field map |
| interpolname | File name containing triangular mesh |
| validRadius | Maximum radius up to which interpolation is valid |
Definition at line 310 of file BFieldComponentBeamline.cc.
|
inline |
Check the space point if the interpolation exists.
| v | The space point in Cartesian coordinates (x,y,z) in [cm] at which the interpolation exists. |
Definition at line 527 of file BFieldComponentBeamline.cc.
|
inline |
Interpolate the magnetic field vector at the specified space point.
| v | The space point in Cartesian coordinates (x,y,z) in [cm] at which the magnetic field vector should be calculated. |
Definition at line 544 of file BFieldComponentBeamline.cc.
|
inline |
For a given Z coordinate calculate the index of Z slice and corresponding weight.
| z | Z coordinate |
| w1 | weight of the slice |
Definition at line 494 of file BFieldComponentBeamline.cc.