13 #define PNDFIELDMAP_H 1 15 #include "FairField.h" 31 PndFieldMap(
const char *mapName,
const char *fileType =
"R");
46 virtual Double_t
GetBx(Double_t x, Double_t y, Double_t z);
47 virtual Double_t
GetBy(Double_t x, Double_t y, Double_t z);
48 virtual Double_t
GetBz(Double_t x, Double_t y, Double_t z);
56 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);
62 void WriteRootFile(
const char *fileName,
const char *mapName);
65 void SetPosition(Double_t x, Double_t y, Double_t z);
103 virtual void Print();
117 void ReadRootFile(
const char *fileName,
const char *mapName);
125 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