1 #ifndef ALITPC_EXB_FIRST_H
2 #define ALITPC_EXB_FIRST_H
5 #include "AliFieldMap.h"
8 class AliTPCExBFirst:public AliTPCExB {
11 AliTPCExBFirst(const AliFieldMap *bFieldMap,Double_t driftVelocity);
12 AliTPCExBFirst(const AliMagF *bField,Double_t driftVelocity,
13 Int_t nx=100,Int_t ny=100,Int_t nz=100);
14 virtual ~AliTPCExBFirst();
15 virtual void Correct(const Double_t *position,Double_t *corrected);
16 void TestThisBeautifulObject(const char* fileName);
17 void SetDriftVelocity(Double_t driftVelocity) {
18 fDriftVelocity=driftVelocity;
21 Double_t fDriftVelocity; // The electron drift velocity.
23 AliTPCExBFirst& operator=(const AliTPCExBFirst&); // don't assign me
24 AliTPCExBFirst(const AliTPCExBFirst&); // don't copy me
25 void ConstructCommon(const AliFieldMap *bFieldMap,const AliMagF *bField);
26 void GetMeanFields(Double_t rx,Double_t ry,Double_t rz,
27 Double_t *Bx,Double_t *By) const;
28 Int_t fkNX; // field mesh points in x direction
29 Int_t fkNY; // field mesh points in y direction
30 Int_t fkNZ; // field mesh points in z direction
31 Double_t fkXMin; // the first grid point in x direction
32 Double_t fkXMax; // the last grid point in x direction
33 Double_t fkYMin; // the first grid point in y direction
34 Double_t fkYMax; // the last grid point in y direction
35 Double_t fkZMin; // the first grid point in z direction
36 Double_t fkZMax; // the last grid point in z direction
37 Int_t fkNMean; // size of the tablE the mean fields
38 Double_t *fkMeanBx; //[fkNMean] the mean field in x direction upto a certain z value
39 Double_t *fkMeanBy; //[fkNMean] the mean field in y direction upto a certain z value
40 Double_t fkMeanBz; // the mean field in z direction inside the TPC volume
41 static const Double_t fgkEM; //! elementary charge over electron mass (C/kg)
42 static const Double_t fgkDriftField; //! the TPC drift field (V/m) (modulus)
44 ClassDef(AliTPCExBFirst,1)