8 #include "TVectorDfwd.h"
16 virtual void Correct(
const Double_t *position,Double_t *corrected)=0;
19 for (Int_t i=0;i<3;++i)
20 corrected[i]=position[i]-(corrected[i]-position[i]);
25 void TestExB(
const char* fileName);
26 static Double_t
GetDr(Double_t r, Double_t phi, Double_t z, Double_t bz=5);
27 static Double_t
GetDrphi(Double_t r, Double_t phi, Double_t z, Double_t bz=5);
28 static Double_t
GetDphi(Double_t r, Double_t phi, Double_t z, Double_t bz=5);
29 static Double_t
GetDz(Double_t r, Double_t phi, Double_t z, Double_t bz=5);
36 static Double_t
GetBx(Double_t r, Double_t phi, Double_t z,Int_t index=0);
37 static Double_t
GetBy(Double_t r, Double_t phi, Double_t z,Int_t index=0);
38 static Double_t
GetBz(Double_t r, Double_t phi, Double_t z,Int_t index=0);
39 static Double_t
GetBr(Double_t r, Double_t phi, Double_t z,Int_t index=0);
40 static Double_t
GetBrfi(Double_t r, Double_t phi, Double_t z,Int_t index=0);
42 static Double_t
GetBxI(Double_t r, Double_t phi, Double_t z,Int_t index=0);
43 static Double_t
GetByI(Double_t r, Double_t phi, Double_t z,Int_t index=0);
44 static Double_t
GetBzI(Double_t r, Double_t phi, Double_t z,Int_t index=0);
45 static Double_t
GetBrI(Double_t r, Double_t phi, Double_t z,Int_t index=0);
46 static Double_t
GetBrfiI(Double_t r, Double_t phi, Double_t z,Int_t index=0);
49 Double_t
Eval(Int_t type, Double_t r, Double_t phi, Double_t z);
50 Double_t
SEval(Int_t type, Double_t r, Double_t phi, Double_t z){
return Instance()->
Eval(type,r,phi,z);}
51 static Double_t
EvalMat(
const TVectorD &
vec, Double_t r, Double_t phi, Double_t z);
static Double_t GetDz(Double_t r, Double_t phi, Double_t z, Double_t bz=5)
TVectorD * fMatBrBz
param matrix Br/Bz
Double_t SEval(Int_t type, Double_t r, Double_t phi, Double_t z)
TVectorD * fMatBrBzI1
param matrix Br/Bz integral z<0
static Double_t GetDrphi(Double_t r, Double_t phi, Double_t z, Double_t bz=5)
static Double_t GetBxI(Double_t r, Double_t phi, Double_t z, Int_t index=0)
static Double_t GetByI(Double_t r, Double_t phi, Double_t z, Int_t index=0)
static Double_t GetBrI(Double_t r, Double_t phi, Double_t z, Int_t index=0)
AliTPCExB & operator=(const AliTPCExB &exb)
static Double_t GetBrfi(Double_t r, Double_t phi, Double_t z, Int_t index=0)
static Double_t GetBy(Double_t r, Double_t phi, Double_t z, Int_t index=0)
static void SetInstance(AliTPCExB *const param)
static TObjArray fgArray
! array of magnetic fields
static AliTPCExB * fgInstance
! Instance of this class (singleton implementation)
void TestExB(const char *fileName)
static Double_t GetBz(Double_t r, Double_t phi, Double_t z, Int_t index=0)
static Double_t GetBr(Double_t r, Double_t phi, Double_t z, Int_t index=0)
static Double_t GetBrfiI(Double_t r, Double_t phi, Double_t z, Int_t index=0)
static void RegisterField(Int_t index, AliMagF *magf)
Double_t Eval(Int_t type, Double_t r, Double_t phi, Double_t z)
static Double_t GetDr(Double_t r, Double_t phi, Double_t z, Double_t bz=5)
static Double_t GetDphi(Double_t r, Double_t phi, Double_t z, Double_t bz=5)
TVectorD * fMatBrfiBzI1
param matrix Br/Bz integral z<0
virtual void Correct(const Double_t *position, Double_t *corrected)=0
virtual void CorrectInverse(const Double_t *position, Double_t *corrected)
TVectorD * fMatBrfiBz
param matrix Br/Bz
TVectorD * fMatBrfiBzI0
param matrix Br/Bz integral z>0
TVectorD * fMatBrBzI0
param matrix Br/Bz integral z>0
Abstract class for ExB effect parameterization.
static Double_t EvalMat(const TVectorD &vec, Double_t r, Double_t phi, Double_t z)
static Double_t GetBx(Double_t r, Double_t phi, Double_t z, Int_t index=0)
static AliTPCExB * Instance()
static Double_t GetBzI(Double_t r, Double_t phi, Double_t z, Int_t index=0)