kinks Data new geom YK
[u/mrichter/AliRoot.git] / PWGLF / SPECTRA / Kinks / AliAnalysisKinkESDat.h
1 #ifndef ALIANALYSISKINKESDat_H
2 #define ALIANALYSISKINKESDat_H
3
4 /*  See cxx source for full Copyright notice */
5
6 //-----------------------------------------------------------------
7 //                 AliAnalysisKinkESDat 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 class AliPIDResponse;
16 class AliESDVertex;
17 class AliESDtrack;
18 class TF1;
19 class TH1F;
20 class TH2F;
21 class TH3F;
22 class TH1D;
23 class TH2D;
24 class TList;
25 class AliESDtrackCuts;
26
27 #include "AliAnalysisTaskSE.h"
28
29 class AliAnalysisKinkESDat : public AliAnalysisTaskSE {
30  public:
31   AliAnalysisKinkESDat(const char *name = "AliAnalysisKinkESDat");
32   virtual ~AliAnalysisKinkESDat() {}
33
34   virtual void   UserCreateOutputObjects();
35   virtual void   UserExec(Option_t *option);
36   virtual void   Terminate(Option_t *);
37   
38   const AliESDVertex *GetEventVertex(const AliESDEvent* esd) const;
39 //           Marek multiplicity bins
40   void SetMulCut(Int_t low, Int_t up){fLowMulcut=low;fUpMulcut=up;}       
41   void SetKinkRadius(Float_t lRadiusKLow, Float_t lRadiusKUp)  { fKinkRadLow=lRadiusKLow; fKinkRadUp=lRadiusKUp;}         
42
43   void SetNClusterCut(Int_t lowCluster){fLowCluster=lowCluster;}          
44   void SetQtCut(Float_t   lowQt){fLowQt=lowQt;}   
45          void SetYKRange(Float_t  RapidityK){fRapiK=RapidityK;}
46  private:
47    TH1F        *fHistPtESD; //Pt spectrum of all ESD inside eta, Pt cuts
48    TH1F        *fHistPt; //Pt spectrum of all ESD tracks
49    TH1F        *fHistQtAll; //Qt spectrum of all kinks
50    TH1F        *fHistQt1; //Qt spectrum of Kaon selected sample
51    TH1F        *fHistQt2; //Qt spectrum in Qt region of kaons
52    TH1F        *fHistPtKaon; //Pt Kaon spectrum of clean sample
53    TH1F        *fHistPtKPDG; //Pt Kaon spectrum , confirmed by  PDG,inside kaon Qt region
54    TH1F        *fHistEta; //Eta spectrum of all kinks
55    TH1F        *fHistEtaK; //Eta spectrum of kaons selected by kink topology
56    TH1F        *fptKMC; //Pt Kaon spectrum MC, inside eta and pt cuts 
57    TH1F        *fMultiplMC; //charge multipl MC 
58    TH1F        *fESDMult; //ESD charged mult
59    TH1F        *fgenpt; //Pt Kaon-Kink->mu  spectrum , MC, inside eta, Pt, radius cuts
60    TH1F        *frad; //radius of kinks,  MC , inside the eta nad Pt cuts 
61    TH1F        *fKinkKaon; //Pt of PDG Kaons inside the selcted ones by the KInk topology 
62    TH1F        *fKinKRbn; //Pt of PDG Kaons inside the selcted ones by the KInk topology 
63    TH1F        *fKinkKaonBg; //Pt of the BG inside the kink-Kaon identified spectrum
64    TH1F        *fM1kaon; //inv mass of kink-tracks taken as kaons decaying to  mu + neutrino
65    TH1F        *fPtKink; //Pt  spectrum   of all kinks  from track bank
66    TH1F        *fptKink; //Pt  spectrum of all kinks from kink bank
67    TH2F        *fAngMomK; // Decay angle vrs Mother Mom for pdg kaons
68    TH2F        *fAngMomPi; // Decay angle vrs Mother Mom for pdg pions
69    TH2F        *fAngMomKC; //Decay angle vrs Mother Mom for pdg kaons, inside the selected sample
70    TH1F        *fMultESDK; //ESD charged mult
71    TH1F        *fMultMCK; //MC K charged mult
72    TH2F        *fSignPtNcl;//signPt vrs number of clusters in TPC for kaons from kink sele sample
73    TH2F        *fSignPtEta;//signPt vrs Eta  in TPC for kaons from kink sele sample
74    TH2F        *fEtaNcl;//Eta    vrs Nclu in TPC for kaons from kink sele sample
75    TH1F        *fSignPt;//signPt  in TPC for kaons from kink sele sample
76    TH2F        *fChi2NclTPC;//chi2 vrs TPC Nclusters for kaons from kink sele sample
77    TH1F        *fRatChi2Ncl;// Ratio chi2/ Ncl  TPC  for kaons from kink sele sample
78    TH2F        *fRadiusNcl;//kink  Radius      Ncl  TPC  for kaons from kink sele sample
79    TH2F        *fTPCSgnlP;//kink  Radius      Ncl  TPC  for kaons from kink sele sample
80    TH2F        *fTPCSgnlPa;//kink  Radius      Ncl  TPC  for  kink sele sample
81    TH1D        *fRpr; // Radius of VTX at Y , X plane              
82    TH1D        *fZpr; //Z distrio of main vertex                  
83    TH1D        *fdcatoVxXY; //dca to Vertex XY  distrio                   
84    TH1D        *fnSigmToVx; //nSigma to Vertex  distrio of main vertex                  
85    TH2F        *fKinkMothDau; //Mother vrs Daughter                                       
86    TH2F        *fZvXv; //two dime of Z vrs X of vtx main           
87    TH2F        *fZvYv; // two dime of Z vrs Y of vtx main           
88    TH2F        *fXvYv; // two dime of X vrs Y of main tracks vtx main           
89    TH1F        *fHistPtKaoP; //Pt Kaon spectrum of clean sample pos
90    TH1F        *fHistPtKaoN; //Pt Kaon spectrum of clean sample neg
91    TH1F        *frapiKESD;// rapidi K      
92    TH1F        *flifetime;//radius of kinks,  MC , inside the eta nad Pt cuts 
93    TH1F        *fradLK;//Length  of kinks,  MC , inside the eta nad Pt cuts 
94    TH3F        *fradPtRpDt;//radius of kinks,  MC , inside the eta nad Pt cuts 
95    TH1F        *fInvMuNuAll;//radius of kinks,  MC , inside the eta nad Pt cuts 
96    TH2F        *fQtInvM;// 
97    TH1F        *fDCAkink;//!MC dcs kink
98    TH2F        *fPosiKink;//!MC position  kink
99    TH2F        *fPosiKinkK;//!MC position  kink
100    TH2F        *fPosiKinKXZ;//!MC position  kink
101    TH2F        *fPosiKinKYZ;//!MC position  kink
102    TH2F        *fPosiKinKBg;//!MC position  kink
103    TH2F        *fQtMothP;//!qt vrs p mother  
104    TH2F        *fTPCSgnlPtpc;//Kink mother moment vrs TPC signal                 
105    TH2F        *fTPCMomNSgnl;//kink  mother TPC momentum vrs nsigmas of dEdx                    
106    TH2F        *fMothKinkMomSgnl;//kink  mother TPC momentum vrs nsigmas of dEdx                    
107    TH1F        *fNSigmTPC;//kink  mother TPC momentum vrs nsigmas of dEdx                    
108    TH2F        *fTPCSgnlKinkDau;//Kink mother moment vrs TPC signal                 
109    TH1F        *fPtKinkPos; //Pos K Pt  spectrum   of all kinks  from track bank, K0 bins
110    TH1F        *fPtKinkNeg; //Neg K Pt  spectrum   of all kinks  from track bank, K0 bins
111    TH2F        *fRadNclCln;//kink  Radius      Ncl  TPC  for kaons from kink clean sample
112    TH1F        *fRatioCrossedRows; //ratio  crossed rows                                           
113    TH1F        *fRatioCrossedRowsKink; //ratio  crossed rows  for kinks                                         
114    TH2F        *fRadiusPt;//kinks,  Radius      vs Pt                                        
115    TH2F        *fRadiusPtcln;//kinks,  Radius      vs Pt    for clean kaons                                     
116    TH2F        *fInvMassMuNuPt;//kinks,Invariant Mass MuNu     vs Pt                                         
117    TH2F        *fInvMassMuNuPtAll;//kinks,Invariant Mass MuNu     vs Pt                                         
118    TH1F        *fPtCut1; //K Pt  spectrum   of all kinks  from track bank, K0 bins
119    TH1F        *fPtCut2; //K Pt  spectrum   of all kinks  from track bank, K0 bins
120    TH1F        *fPtCut3; //K Pt  spectrum   of all kinks  from track bank, K0 bins
121    TH2F        *fAngMomKKinks;//kinks,  Angle vs Momentum  for K-kinks                                      
122
123
124
125    TF1         *f1;
126    TF1         *f2;
127   TList        *fListOfHistos; // list of histos
128 //          Marek Multiplicity
129 Int_t fLowMulcut;  // 
130 Int_t fUpMulcut;
131 Int_t fKinkRadUp;
132 Int_t fKinkRadLow;
133 Int_t fLowCluster;
134 Float_t  fLowQt;       
135     Float_t  fRapiK;
136 AliESDtrackCuts* fCutsMul;
137 AliESDtrackCuts* fMaxDCAtoVtxCut;  
138 AliPIDResponse *fPIDResponse;     //! PID response object
139
140   AliAnalysisKinkESDat(const AliAnalysisKinkESDat&); // not implemented
141   AliAnalysisKinkESDat& operator=(const AliAnalysisKinkESDat&); // not implemented
142
143   ClassDef(AliAnalysisKinkESDat, 1); // example of analysis
144 };
145
146 #endif