65 void SetFileName(
const char* map_file_name) { fName = map_file_name; }
friend F32vec4 min(const F32vec4 &a, const F32vec4 &b)
friend F32vec4 max(const F32vec4 &a, const F32vec4 &b)
#define ClassDef(name, id)
void ReadRootFileNewFormat(const char *rootFileName)
Double_t fHa[2][2][2]
Variables for temporary storage Used in the very frequently called method GetFieldValue.
BmnFieldMap(BmnFieldPar *fieldPar)
void SetField(const BmnFieldMapData *data)
Set field parameters and data.
Bool_t fIsOff
Whether magnetic field is off.
virtual void FillParContainer()=0
Double_t GetPositionX() const
Accessor to field centre position in global system.
Double_t GetPositionY() const
TArrayF * GetBx() const
Accessors to the field value arrays.
Bool_t IsFieldOff() const
Whether magnetic field is off.
BmnFieldMap(const BmnFieldMap &)=delete
Int_t fNx
Number of grid points.
void ReadRootFileNewFormatExtrap(const char *rootFileName)
Double_t GetPositionZ() const
virtual Double_t GetBz(Double_t x, Double_t y, Double_t z)=0
void ReadRootFile(const char *rootFileName)
Read field map from a ROOT file.
const char * GetFileName()
Accessor to field map file.
Double_t GetYstep() const
Double_t Interpolate(Double_t dx, Double_t dy, Double_t dz)
Get field values by interpolation of the grid.
Double_t fScale
Global scaling factor (w.r.t.
Double_t fPosX
Field centre position in global coordinates.
Double_t fHc[2]
Interpolated field (2-dim).
void Reset()
Reset the field parameters and data.
Double_t GetZstep() const
virtual Bool_t IsInside(Double_t x, Double_t y, Double_t z, Int_t &ix, Int_t &iy, Int_t &iz, Double_t &dx, Double_t &dy, Double_t &dz)=0
Double_t GetXstep() const
void SetFileName(const char *map_file_name)
Set field map file path.
void SetPosition(Double_t x, Double_t y, Double_t z)
Set the position of the field centre.
virtual Double_t GetBy(Double_t x, Double_t y, Double_t z)=0
void SetScale(Double_t factor)
Set a global field scaling factor.
virtual void Print(Option_t *) const
Screen output.
virtual Double_t GetBx(Double_t x, Double_t y, Double_t z)=0
BmnFieldMap(const char *mapFileName)
void SetFieldOff(Bool_t is_off=kTRUE)
Turn magnetic field off.
Double_t fHb[2][2]
Field at corners of a grid cell.
void WriteRootFile(const char *rootFileName, const char *mapFileName)
Write field map data to a ROOT file.
Bool_t fDebugInfo
Interpolated field (1-dim).
Double_t GetScale() const
Accessor to global scaling factor.
Double_t fXmin
Field limits in local coordinate system.
Double_t GetXmin() const
Accessors to field parameters in local coordinate system.
TArrayF * fBx
Arrays with the field values.
void ReadAsciiFile(const char *asciiFileName)
Reset the field parameters and data.
static TString GetMapFilePath(TString mapName)
Get the expanded path to the field map file in the current installation.
void WriteAsciiFile(const char *asciiFileName)
Write the field map to an ASCII file.
BmnFieldMap & operator=(const BmnFieldMap &)=delete