]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TPC/AliTPCExBConical.h
AliTPCExBConical.h AliTPCExBConical.cxx - ExB correction for conical shape
[u/mrichter/AliRoot.git] / TPC / AliTPCExBConical.h
1 #ifndef ALITPCEXBCONICAL_H
2 #define ALITPCEXBCONICAL_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 ////////////////////////////////////////////////////////////////////////////
8 //                                                                        //
9 // AliTPCExBConical class                                                   //
10 // date: 02/05/2010                                                       //
11 // Authors: Maarian Ivanov, Jim Thomas, Magnus Mager, Stefan Rossegger                    //
12 ////////////////////////////////////////////////////////////////////////////
13
14 #include "AliTPCCorrection.h"
15
16 class AliTPCExBConical : public AliTPCCorrection {
17 public:
18   AliTPCExBConical();
19   virtual ~AliTPCExBConical();
20
21   // initialization and update functions
22   virtual void Init();
23   virtual void Update(const TTimeStamp &timeStamp);
24
25
26   // common setters and getters for ExB
27   virtual void SetOmegaTauT1T2(Float_t omegaTau,Float_t t1,Float_t t2) {
28     const Float_t wt1=t1*omegaTau;
29     fC1=wt1/(1.+wt1*wt1);
30     const Float_t wt2=t2*omegaTau;
31     fC2=wt2*wt2/(1.+wt2*wt2);
32   };
33   void SetC1C2(Float_t c1,Float_t c2) {fC1=c1;fC2=c2;} // CAUTION: USE WITH CARE
34   Float_t GetC1() const {return fC1;}
35   Float_t GetC2() const {return fC2;}
36
37   // setters and getters for conical
38   void SetConicalA(Float_t conicalA[3]);
39   void SetConicalC(Float_t conicalC[3]);
40   void SetConicalFactor(Float_t factor) { fConicalFactor=factor;}
41
42   Float_t GetConicalA(Int_t i) const {return fConicalA[i];}
43   Float_t GetConicalC(Int_t i) const {return fConicalC[i];}
44   Float_t GetConicalFactor() const {return fConicalFactor;}
45
46   virtual void Print(Option_t* option="") const;
47
48 protected:
49   virtual void GetCorrection(const Float_t x[],const Short_t roc,Float_t dx[]);
50
51 private:
52   Float_t fC1; // coefficient C1                 (compare Jim Thomas's notes for definitions)
53   Float_t fC2; // coefficient C2                 (compare Jim Thomas's notes for definitions)
54   Float_t  fConicalFactor;                  // empirical factor - transform conical angle to delta
55   Float_t  fConicalA[3];               // Conical shape parameterization A side
56   Float_t  fConicalC[3];               // Conical shape parameterization C side
57
58   ClassDef(AliTPCExBConical,1);
59 };
60
61 #endif