]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGLF/SPECTRA/Kinks/AliAnalysisKinkESDMC.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGLF / SPECTRA / Kinks / AliAnalysisKinkESDMC.h
1 #ifndef ALIANALYSISKINKESDMC_H
2 #define ALIANALYSISKINKESDMC_H
3
4 /*  See cxx source for full Copyright notice */
5
6 //-----------------------------------------------------------------
7 //                 AliAnalysisKinkESDMC class
8 //         This task is an example of an analysis task
9 //                  for kink topology Study
10 //          Authors: Martha Spyropoulou-Stassinaki
11 //           and members of the Greek group at the
12 //          Physics Department of Athens University
13 //                    mspyrop@phys.uoa.gr
14 //-----------------------------------------------------------------
15
16 class AliPIDResponse;
17 class AliESDEvent;
18 class AliESDVertex;
19 class AliESDtrack;
20 class TF1;
21 class TH1F;
22 class TH2F;
23 class TH1D;
24 class TH2D;
25 class TList;
26 class AliESDtrackCuts;
27 class AliPhysicsSelection;
28
29 #include "AliAnalysisTaskSE.h"
30
31 class AliAnalysisKinkESDMC : public AliAnalysisTaskSE {
32  public:
33   AliAnalysisKinkESDMC(const char *name = "AliAnalysisKinkESDMC");
34   virtual ~AliAnalysisKinkESDMC() {}
35
36   virtual void   UserCreateOutputObjects();
37   virtual void   UserExec(Option_t *option);
38   virtual void   Terminate(Option_t *);
39   
40   const AliESDVertex *GetEventVertex(const AliESDEvent* esd) const;
41 //  const AliESDVertex *GetEventVertex(AliESDEvent* esd) ;
42   void SetMulCut(Int_t low, Int_t up){fLowMulcut=low;fUpMulcut=up;}
43
44   void SetKinkRadius(Float_t lRadiusKLow, Float_t lRadiusKUp)  { fKinkRadLow=lRadiusKLow; fKinkRadUp=lRadiusKUp;}
45
46   
47          void SetNClusterCut(Int_t lowCluster){fLowCluster=lowCluster;}
48   void SetQtCut(Float_t   lowQt){fLowQt=lowQt;}
49      void SetYKRange(Float_t  RapidityK){fRapiK=RapidityK;}
50
51  private:
52    TH1F        *fHistPtESD; //!Pt spectrum of all ESD inside eta, Pt cuts
53    TH1F        *fHistPt; //!Pt spectrum of all ESD tracks
54    TH1F        *fHistQtAll; //!Qt spectrum of all kinks
55    TH1F        *fHistQt1; //!Qt spectrum of Kaon selected sample
56    TH1F        *fHistQt2; //!Qt spectrum in Qt region of kaons
57    TH1F        *fHistPtKaon; //!Pt Kaon spectrum of clean sample
58    TH1F        *fHistPtKPDG; //!Pt Kaon spectrum , confirmed by  PDG,inside kaon Qt region
59    TH1F        *fHistEta; //!Eta spectrum of all kinks
60    TH1F        *fHistEtaK; //!Eta spectrum of kaons selected by kink topology
61    TH1F        *fptKMC; //!Pt Kaon spectrum MC, inside eta and pt cuts 
62    TH1F        *fMultiplMC; //!charge multipl MC 
63    TH1F        *fESDMult; //!ESD charged mult
64    TH1F        *frad; //!radius of kinks,  MC , inside the eta nad Pt cuts 
65    TH1F        *fradMC; //!radius of kinks,  MC , inside the eta nad Pt cuts 
66    TH1F        *fKinkKaon; //!Pt of PDG Kaons inside the selcted ones by the KInk topology 
67    TH1F        *fKinkKaonBg; //!Pt of the BG inside the kink-Kaon identified spectrum
68    TH1F        *fM1kaon; //!inv mass of kink-tracks taken as kaons decaying to  mu + neutrino
69    TH1F        *fgenPtEtR; //!MC Pt spectrum of kaons decaying to muon+neutrino and pi +pi, inside eta,Pt,Rad cuts
70    TH1F        *fPtKink; //!Pt  spectrum   of all kinks  from track bank
71    TH2F        *fcodeH; //!PDG code(mother)  vrs PDG dcode(daughter) of kinks with Qt <0.12 (fake)
72    TH2F        *fdcodeH; //!inks, code  vrs dcode of BG,if mother code is 321 and daughter code > 
73    TH2F        *fAngMomK; //! Decay angle vrs Mother Mom for pdg kaons
74    TH2F        *fAngMomPi; //! Decay angle vrs Mother Mom for pdg pions
75    TH2F        *fAngMomKC; //!Decay angle vrs Mother Mom for pdg kaons, inside the selected sample
76    TH1F        *fMultESDK; //!ESD charged mult
77    TH1F        *fMultMCK; //!MC K charged mult
78    TH2F        *fSignPtNcl;//!signPt vrs number of clusters in TPC for kaons from kink sele sample
79    TH2F        *fSignPtEta;//!signPt vrs Eta  in TPC for kaons from kink sele sample
80    TH2F        *fSignPtEtaMC;//!signPt vrs Eta  in TPC for kaons from kink sele sample
81    TH1F        *fSignPtMC;//!signPt   in TPC for kaons 
82    TH2F        *fEtaNcl;//!Eta    vrs Nclu in TPC for kaons from kink sele sample
83    TH1F        *fSignPt;//!signPt  in TPC for kaons from kink sele sample
84    TH2F        *fChi2NclTPC;//!chi2 vrs TPC Nclusters for kaons from kink sele sample
85    TH1F        *fRatChi2Ncl;//! Ratio chi2/ Ncl  TPC  for kaons from kink sele sample
86    TH2F        *fRadiusNcl;//! Radis  f kink vetex   for kaons from kink sele sample
87    TH2F        *fTPCSgnlP;//! TPC de/dx signal      for kaons from kink sele sample
88    TH2F        *fTPCSgnlPa;//! TPC de/dx signal      for  kink  sample
89    TH1F        *fSignPtGen;//!signPt   in TPC for kaonsgenerated 
90    TH1D        *fRpr;//! Radius of VTX at Y , X plane
91    TH1D        *fZpr;//!Z distrio of main vertex                  
92    TH1D        *fdcatoVxXY;//! dca to Vertex XY distr          
93    TH1F        *fMCEtaKaon;//!MC eta for kaons                                     
94    TH2F        *fZvXv;//! two dime of Z vrs X of vtx main           
95    TH2F        *fZvYv;//! two dime of Z vrs Y of vtx main           
96    TH2F        *fXvYv;//! two dime of X vrs Y of main tracks vtx main           
97    TH1F        *fPtPrKink;//! pt of Primary PDG kaons inside the selected ones by the kink topology              
98    TH1F        *fgenPtEtRP;//!MC Pt spectrum of kaons decaying to muon+neutrino and pi +pi, inside eta,Pt,Rad cuts
99    TH1F        *fgenPtEtRN;//!MC Pt spectrum of kaons decaying to muon+neutrino and pi +pi, inside eta,Pt,Rad cuts
100    TH1F        *fkinkKaonP;//!MC Pt spectrum of kaons decaying to muon+neutrino and pi +pi, inside eta,Pt,Rad cuts
101    TH1F        *fkinkKaonN;//!MC Pt spectrum of kaons decaying to muon+neutrino and pi +pi, inside eta,Pt,Rad cuts
102    TH1F        *frapidESDK;//!MC ESD K  rapidity distr.                                                                   
103    TH1F        *frapidKMC;//!MC MC K rapidity dis
104    TH1F        *fPtKPlMC;//!MC MC K rapidity dis
105    TH1F        *fPtKMnMC;//!MC MC K rapidity dis
106    TH1F        *fHistPtKaoP;//!MC MC K rapidity dis
107    TH1F        *fHistPtKaoN;//!MC MC K rapidity dis
108    TH1F        *fHiPtKPDGP;//!MC MC K rapidity dis
109    TH1F        *fHiPtKPDGN;//!MC MC K rapidity dis
110    TH1F        *fKinKBGP;//!MC MC K rapidity dis
111    TH1F        *fKinKBGN;//!MC MC K rapidity dis
112    TH1F        *fQtKMu;//!MC MC K Qt K to mu
113    TH1F        *fQtKPi;//!MC MC K Qt K to mu
114    TH1F        *fQtKEl;//!MC MC K Qt K to mu
115    TH1F        *fFakepipi;//!MC Fake pipi
116    TH1F        *fFakeKPi;//!MC Fake Kpi
117    TH1F        *fDCAkink;//!MC dcs kink
118    TH1F        *fDCAkinkBG;//!MC dcs kink
119    TH2F        *fPosiKink;//!MC position  kink
120    TH2F        *fPosiKinkK;//!MC position  kink
121    TH2F        *fPosiKinKXZ;//!MC position  kink
122    TH2F        *fPosiKinKYZ;//!MC position  kink
123    TH2F        *fPosiKinKBgZY;//!MC position  kink
124    TH2F        *fcode2;//!PDG code(mother)  vrs PDG dcode(daughter) of kinks with Qt <0.12 (fake)
125    TH2F        *fcode4;//!PDG code(mother)  vrs PDG dcode(daughter) of kinks with Qt <0.12 (fake)
126    TH2F        *fZkinkZDau;//!   z-position of kink z position of daughter bg                       )
127    TH1F        *fQtKMuMC;//!MC MC K Qt K to mu
128    TH1F        *fQtKElMC;//!MC MC K Qt K to mu
129    TH1F        *fQtKPiMC;//!MC MC K Qt K to mu
130    TH1F        *fQtK3PiP;//!EDS   K Qt K to 3Pi
131    TH1F        *fQtK3PiM;//!EDS   K Qt K to 3Pi
132    TH2F        *fmaxAngMomKmu; //!Decay angle vrs Mother Mom for pdg kaons, inside the selected sample
133    TH2F        *fPosiKinKBgZX;//!MC position  kink
134    TH2F        *fPosiKinKBgXY;//!MC position  kink
135    TH1F        *fMinvPi;//!MC R life time     
136    TH1F        *fMinvKa;//!MC R life time     
137    TH1F        *fMinvPr;//!MC R life time     
138    TH2F        *fTPCSgnlPtpc;//Kink mother moment vrs TPC signal                 
139    TH2F        *fTPCMomNSgnl;//kink  mother TPC momentum vrs nsigmas of dEdx                    
140    TH2F        *fMothKinkMomSgnl;//kink  mother TPC momentum vrs nsigmas of dEdx                    
141    TH1F        *fNSigmTPC;//kink  mother TPC momentum vrs nsigmas of dEdx                    
142    TH2F        *fTPCSgnlKinkDau;//Kink mother moment vrs TPC signal 
143    TH2F        *fcodeDau1;//!PDG code(mother)  vrs PDG dcode(daughter) of kinks   daughters          
144    TH2F        *fcodeDau2;//!PDG code(mother)  vrs PDG dcode(daughter) of kinks   daughters , Bg study
145    TH2F        *fMothKinkMomSgnlD;//kink  mother TPC momentum vrs nsigmas of dEdx                    
146    TH1F        *fInvMassMuNuAll;//kinks,  Inv Mass all kinks  MuNu                                       
147    TH2F        *fInvMassMuNuPt;//kinks,Invariant Mass MuNu     vs Pt                                         
148    TH2F        *fInvMassMuNuPtAll;//kinks,Invariant Mass MuNu     vs Pt      22/8/2013                                   
149    TH1F        *fRatioCrossedRows; //ratio  crossed rows                                           
150    TH1F        *fRatioCrossedRowsKink; //ratio  crossed rows  for kinks                                      
151    TH2F        *fRadiusPt;//kinks,  Radius      vs Pt                                        
152    TH2F        *fRadiusPtcln;//kinks,  Radius      vs Pt    for clean kaons                                  
153    TH2F        *fRadiusPtKaon;//kinks,  Radius      vs Pt    for clean kaons                                  
154    TH2F        *fRadiusPtPion;//kinks,  Radius      vs Pt    for clean kaons                                  
155    TH2F        *fRadiusPtFake;//kinks,  Radius      vs Pt    for clean kaons                                  
156    TH1F        *fPtCut1; //K Pt  spectrum   of all kinks  from track bank, K0 bins
157    TH1F        *fPtCut2; //K Pt  spectrum   of all kinks  from track bank, K0 bins
158    TH1F        *fPtCut3; //K Pt  spectrum   of all kinks  from track bank, K0 bins
159    TH2F        *fAngMomKKinks;//kinks,  Angle vs Momentum  for K-kinks                                      
160     TH1F        *flengthMCK;//!MC R life time
161    TH1F        *flifetiMCK;//!MC R life time
162    TH1F        *flifetim2;//!MC R life time
163    TH1F        *fLHelESDK;//!MC R life time
164    TH1F        *flifeInt;//!MC R life time
165    TH1F        *flifeYuri;//!MC R life time
166    TH1F        *flenYuri;//!MC R life time
167    TH1F        *flenTrRef;//!MC R life time
168    TH1F        *flifeSmall;//!MC R life time
169    TH1F        *flifetime;//!MC R life time
170    TH1F        *flifTiESDK;//!MC R life time
171    TH1F        *flifeKink;//!MC R life time
172    TH1F        *flenHelx;//!MC R life time
173    TH3F        *fradPtRapMC;//!MC R life time
174    TH3F        *fradPtRapDC;//!MC R life time
175    TH3F        *fradPtRapESD;//!MC R life time
176    TH2F        *fRadNclcln;//!MC R life time
177
178
179     
180    TF1         *f1;
181    TF1         *f2;
182   TList        *fListOfHistos; //! list of histos
183
184  Int_t fLowMulcut; //
185 Int_t fUpMulcut;
186 Float_t fKinkRadUp;
187 Float_t fKinkRadLow;
188     Int_t fLowCluster;
189 Float_t  fLowQt;
190  Float_t  fRapiK;
191
192 AliESDtrackCuts*  fCutsMul;
193
194      AliESDtrackCuts* fMaxDCAtoVtxCut;
195  AliPIDResponse *fPIDResponse;     //! PID response object
196
197   AliAnalysisKinkESDMC(const AliAnalysisKinkESDMC&); // not implemented
198   AliAnalysisKinkESDMC& operator=(const AliAnalysisKinkESDMC&); // not implemented
199
200   ClassDef(AliAnalysisKinkESDMC, 1); // example of analysis
201 };
202
203 #endif