]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TPC/AliTPCtrackerParam.h
TPC parametrization by Andrea Dainese
[u/mrichter/AliRoot.git] / TPC / AliTPCtrackerParam.h
1 #ifndef ALITPCTRACKERPARAM_H
2 #define ALITPCTRACKERPARAM_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. */
4 /* See cxx source for full Copyright notice                               */
5 /* $Id$ */
6 //-----------------------------------------------------------------------------
7 //                    TPC Tracking Parameterization Class
8 //
9 //   Origin: Andrea Dainese, Padova - e-mail: andrea.dainese@pd.infn.it
10 //-----------------------------------------------------------------------------
11 #include "alles.h"
12 #include "AliMagF.h"
13 #include "AliTPCtrack.h"
14
15 class AliTPCtrackerParam {
16  public:
17   AliTPCtrackerParam(const Int_t coll=0,const Double_t Bz=0.4);
18   virtual ~AliTPCtrackerParam();
19
20
21   Int_t BuildTPCtracks(const TFile *inp, TFile *out,Int_t n=1);
22
23  private:
24   Int_t    fColl; // collision code (0: PbPb6000)
25   Double_t fBz;   // value of the z component of L3 field (Tesla)
26  
27   
28   AliTPCtrack* BuildTrack(Double_t alpha,Double_t x,Double_t y,Double_t z,
29                           Double_t Px,Double_t Py,Double_t Pz,Double_t Pt,
30                           Int_t ch,Int_t lab);
31   
32   Bool_t SelectedTrack(Int_t pdg, Double_t pt, Double_t eta);
33   
34   Int_t GetBin(Double_t pt,Double_t eta);
35   
36   TMatrixD GetSmearingMatrix(Double_t* cc, Double_t pt,Double_t eta);
37   
38   void SmearTrack(Double_t* xx,Double_t* xxsm,TMatrixD cov);
39
40   Double_t LinearInterpolation(Int_t ptBins,Double_t *value,Double_t pt,Double_t eta);
41   
42   void CookTracks(TObjArray& tarray,TObjArray& newtarray);
43   
44   
45   ClassDef(AliTPCtrackerParam,1)
46 };
47
48 #endif
49
50