11#ifndef CBMMAGFIELDMAPDISTORTED_H
12#define CBMMAGFIELDMAPDISTORTED_H 1
17#include <RtypesCore.h>
38 CbmFieldMapDistorted(
const char* mapName,
const char* pfDistortionFilename,
const char* parentName,
39 const char* fileTypeParent =
"R",
Int_t pfTypeOfParent = 3);
48 CbmFieldMapDistorted(Double_t xMin, Double_t xMax, Double_t yMin, Double_t yMax, Double_t zMin, Double_t zMax,
49 Double_t bX, Double_t bY, Double_t bZ,
const char* mapName,
const char* pfDistortionFilename,
50 const char* parentName =
"");
61 virtual void Init()
override;
70 virtual Double_t
GetBx(Double_t
x, Double_t
y, Double_t z)
override;
71 virtual Double_t
GetBy(Double_t
x, Double_t
y, Double_t z)
override;
72 virtual Double_t
GetBz(Double_t
x, Double_t
y, Double_t z)
override;
77 virtual void GetFieldValue(
const Double_t point[3], Double_t* bField)
override;
91 const char* action_option =
"m");
93 const char* action_option =
"m");
95 const char* action_option =
"m");
105 virtual void Print(Option_t* =
"")
const override;
108 virtual void SetPosition(Double_t
x, Double_t
y, Double_t z)
override;
111 virtual void SetScale(Double_t factor)
override;
114 void PlotBy(
Int_t n = 250, Double_t zmin = -50, Double_t zmax = 450);
TFormula * fBxDistortionFormulaMult
TFormula * fByDistortionFormulaMult
getter/setter options: ("x","m"), ("x","a")
void SetFromParent(FairField *field)
virtual void Print(Option_t *="") const override
TFormula * fBxDistortionFormulaAdd
void SetType(Int_t pfType=0)
TFormula * GetDistortionFormula(const char *component_option="y", const char *action_option="m")
const char * GetDistortionFilename()
virtual void SetScale(Double_t factor) override
CbmFieldMapDistorted & operator=(const CbmFieldMapDistorted &)
TString fDistortionFilename
CbmFieldMapDistorted(const CbmFieldMapDistorted &)
getter/setter options: ("z","m"), ("z","a")
virtual void GetFieldValue(const Double_t point[3], Double_t *bField) override
Get the field value at a point.
void ReadDistortionInformation(const char *filename=0)
TFormula * fByDistortionFormulaAdd
virtual void SetPosition(Double_t x, Double_t y, Double_t z) override
TFormula * fBzDistortionFormulaAdd
virtual ~CbmFieldMapDistorted()
void PlotBy(Int_t n=250, Double_t zmin=-50, Double_t zmax=450)
Bool_t SetDistortionFilename(const char *filename)
virtual void Init() override
void WriteDistortionInformation(const char *filename=0)
Bool_t SetDistortionFormula(TFormula *parDistortionFormula, const char *component_option="y", const char *action_option="m")
TFormula * fBzDistortionFormulaMult
getter/setter options: ("y","m"), ("y","a")