25 #define PNDFIELDMAP_H 1 27 #include "FairField.h" 43 PndFieldMap(
const char *mapName,
const char *fileType =
"R");
58 virtual Double_t
GetBx(Double_t x, Double_t y, Double_t z);
59 virtual Double_t
GetBy(Double_t x, Double_t y, Double_t z);
60 virtual Double_t
GetBz(Double_t x, Double_t y, Double_t z);
68 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);
74 void WriteRootFile(
const char *fileName,
const char *mapName);
77 void SetPosition(Double_t x, Double_t y, Double_t z);
115 virtual void Print();
129 void ReadRootFile(
const char *fileName,
const char *mapName);
137 Double_t
Interpolate(Double_t dx, Double_t dy, Double_t dz);
Double_t GetPositionZ() const
Double_t GetPositionX() const
void WriteAsciiFile(const char *fileName)
Double_t fHb[2][2]
Field at corners of a grid cell.
void SetScale(Double_t factor)
void WriteRootFile(const char *fileName, const char *mapName)
Double_t GetYstep() const
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)
Double_t fHc[2]
Interpolated field (2-dim)
void SetPosition(Double_t x, Double_t y, Double_t z)
Double_t Interpolate(Double_t dx, Double_t dy, Double_t dz)
Double_t GetPositionY() const
const char * GetFileName()
void SetField(const PndFieldMapData *data)
Double_t GetXstep() const
void ReadAsciiFile(const char *fileName)
void ReadRootFile(const char *fileName, const char *mapName)
Double_t GetScale() const