]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TPC/AliTPCRF1D.h
a few modifications to satisty aCC
[u/mrichter/AliRoot.git] / TPC / AliTPCRF1D.h
CommitLineData
8c555625 1#ifndef AliTPCRF1D_H
2#define AliTPCRF1D_H
3da30618 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8c555625 8////////////////////////////////////////////////
cc80f89e 9// Manager class for AliTPCRF1D //
8c555625 10////////////////////////////////////////////////
11
12
13// include files and class forward declarations
14//DSTEP in cm
15//NPRF in number of interpolation points
16const Int_t NRF=100;
17const Float_t RFDSTEP=0.01;
18
19#include "TObject.h"
20#include "TMath.h"
21class TF1;
22
23
24class AliTPCRF1D : public TObject {
25public :
26 AliTPCRF1D(Bool_t direct=kFALSE,Int_t np=NRF,Float_t step=RFDSTEP );
27 ~AliTPCRF1D();
28 Float_t GetRF(Float_t xin); //return RF in point xin
29 Float_t GetGRF(Float_t xin); //return generic response function in xin
30 void SetGauss(Float_t sigma,Float_t padWidth, Float_t kNorm);
31 //adjust RF with GAUSIAN as generic GRF
32 //if direct = kTRUE then it does't convolute distribution
33 void SetCosh(Float_t sigma,Float_t padWidth, Float_t kNorm);
34 void SetGati(Float_t K3, Float_t padDistance, Float_t padWidth,
35 Float_t kNorm);
36 //adjust RF with 1/Cosh as generic GRF
37 void SetParam(TF1 * GRF,Float_t padwidth,Float_t kNorm,
38 Float_t sigma=0);
39 //adjust RF with general function
40 void SetOffset(Float_t xoff) {fOffset=xoff;}
41 //set offset value
cc80f89e 42 Float_t GetOffset(){return fOffset;}
8c555625 43 Float_t GetPadWidth(){ return fpadWidth;};
44 //return pad width
45 Float_t GetSigma(){return fSigma;}
46 //return estimated sigma of RF
47 void Draw(Float_t x1=-3 ,Float_t x2 =3.,Int_t N = 200);
48 //draw RF it don't delete histograms after drawing
49 /// it's on user !!!!
50 void Update();
51private:
52 Double_t funParam[5];//parameters of used charge function
53 Int_t fNRF; //number of interpolations point
54 Float_t fDSTEPM1; //element step for point
55 Float_t* fcharge; // field with RF
56 Float_t forigsigma;//sigma of original distribution;
57 Float_t fpadWidth; //width of pad
58 Float_t fkNorm; //normalisation factor of the charge integral
59 Float_t fInteg; //integral of GRF on +- infinity
60 TF1 * fGRF; //charge distribution function
61 Float_t fSigma; //sigma of PAD response function
62
63 Float_t fOffset; //offset of response function (for time reponse we
64 //have for expample shifted gauss)
65 //calculated during update
66
67 Bool_t fDirect; //tell us if we use directly generalfunction
68 Float_t fK3X;
69 Float_t fPadDistance;
70 //charge type
71 char fType[5];
72 ClassDef(AliTPCRF1D,2)
73};
74
75
76
77
78#endif /* AliTPCRF1D_H */
79