3 ////////////////////////////////////////////////
4 // Manager class for AliTPCRF1D //
5 ////////////////////////////////////////////////
8 // include files and class forward declarations
10 //NPRF in number of interpolation points
12 const Float_t RFDSTEP=0.01;
19 class AliTPCRF1D : public TObject {
21 AliTPCRF1D(Bool_t direct=kFALSE,Int_t np=NRF,Float_t step=RFDSTEP );
23 Float_t GetRF(Float_t xin); //return RF in point xin
24 Float_t GetGRF(Float_t xin); //return generic response function in xin
25 void SetGauss(Float_t sigma,Float_t padWidth, Float_t kNorm);
26 //adjust RF with GAUSIAN as generic GRF
27 //if direct = kTRUE then it does't convolute distribution
28 void SetCosh(Float_t sigma,Float_t padWidth, Float_t kNorm);
29 void SetGati(Float_t K3, Float_t padDistance, Float_t padWidth,
31 //adjust RF with 1/Cosh as generic GRF
32 void SetParam(TF1 * GRF,Float_t padwidth,Float_t kNorm,
34 //adjust RF with general function
35 void SetOffset(Float_t xoff) {fOffset=xoff;}
37 Float_t GetPadWidth(){ return fpadWidth;};
39 Float_t GetSigma(){return fSigma;}
40 //return estimated sigma of RF
41 void Draw(Float_t x1=-3 ,Float_t x2 =3.,Int_t N = 200);
42 //draw RF it don't delete histograms after drawing
46 Double_t funParam[5];//parameters of used charge function
47 Int_t fNRF; //number of interpolations point
48 Float_t fDSTEPM1; //element step for point
49 Float_t* fcharge; // field with RF
50 Float_t forigsigma;//sigma of original distribution;
51 Float_t fpadWidth; //width of pad
52 Float_t fkNorm; //normalisation factor of the charge integral
53 Float_t fInteg; //integral of GRF on +- infinity
54 TF1 * fGRF; //charge distribution function
55 Float_t fSigma; //sigma of PAD response function
57 Float_t fOffset; //offset of response function (for time reponse we
58 //have for expample shifted gauss)
59 //calculated during update
61 Bool_t fDirect; //tell us if we use directly generalfunction
66 ClassDef(AliTPCRF1D,2)
72 #endif /* AliTPCRF1D_H */