]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/SPECTRA/AliAnalysisTaskPerformanceStrange.h
HWCF configuration: switching on deconvolution in time after fix r51236
[u/mrichter/AliRoot.git] / PWG2 / SPECTRA / AliAnalysisTaskPerformanceStrange.h
1 #ifndef ALIANALYSISTASKPERFORMANCESTRANGE_H
2 #define ALIANALYSISTASKPERFORMANCESTRANGE_H
3
4 /*  See cxx source for full Copyright notice */
5
6 //-----------------------------------------------------------------
7 //              AliAnalysisTaskPerformanceSrange class
8 //    This task is for a performance study of V0 identification.
9 //                It works with MC info and ESD tree.
10 //                 Author: H.Ricaud, H.Ricaud@gsi.de
11 //-----------------------------------------------------------------
12
13 class TString;
14 class TList;
15 class TH1F;
16 class TH2F;
17
18 #include "AliAnalysisTaskSE.h"
19
20 class AliAnalysisTaskPerformanceStrange : public AliAnalysisTaskSE {
21  public:
22   AliAnalysisTaskPerformanceStrange();
23   AliAnalysisTaskPerformanceStrange(const char *name);
24   virtual ~AliAnalysisTaskPerformanceStrange() {}
25   
26   virtual void   UserCreateOutputObjects();
27   virtual void   UserExec(Option_t *option);
28   virtual void   Terminate(Option_t *);
29  
30   void   SetCollidingSystems(Int_t collidingSystems = 0) {fCollidingSystems = collidingSystems;}
31   void   SetAnalysisMC(Int_t analysisMC) {fAnalysisMC = analysisMC;}
32   void   SetAnalysisType(const char* analysisType) {fAnalysisType = analysisType;}
33   void   SetUsePID(const char* usePID) {fUsePID = usePID;}
34   void   SetAnalysisCut(const char* useCut) {fUseCut = useCut;}
35   Double_t MyRapidity(Double_t rE, Double_t rPz) const;
36  
37  private:
38   Int_t        fAnalysisMC;                     //  0->No MC or 1->MC analysis
39   TString      fAnalysisType;                   //  "ESD" or "AOD"
40   Int_t        fCollidingSystems;               //  Colliding systems 0/1 for pp/PbPb  
41   TString      fUsePID;                         //  "withPID" or "noPID"
42   TString      fUseCut;                         //  "yes" or "no"
43
44   AliPhysicsSelection *fPhysTrigSel;            //  Selection of events
45   TList               *fListHist;               //! Output List
46
47   // MC histograms
48   TH1F        *fHistMCPrimaryVertexX;      //! Histo
49   TH1F        *fHistMCPrimaryVertexY;      //! Histo
50   TH1F        *fHistMCPrimaryVertexZ;      //! Histo
51
52   TH1F        *fHistMCMultiplicityPrimary;       //! Histo
53   TH1F        *fHistMCMultiplicityTracks;       //! Histo
54   
55   TH2F        *fHistMCtracksProdRadiusK0s;       //! Histo
56   TH2F        *fHistMCtracksProdRadiusLambda;       //! Histo
57   TH2F        *fHistMCtracksProdRadiusAntiLambda;       //! Histo
58
59   TH1F        *fHistMCtracksDecayRadiusK0s;       //! Histo
60   TH1F        *fHistMCtracksDecayRadiusLambda;       //! Histo
61   TH1F        *fHistMCtracksDecayRadiusAntiLambda;       //! Histo
62
63   TH1F        *fHistMCPtAllK0s;       //! Histo
64   TH1F        *fHistMCPtAllLambda;       //! Histo
65   TH1F        *fHistMCPtAllAntiLambda;       //! Histo
66
67   TH1F        *fHistMCProdRadiusK0s;       //! Histo
68   TH1F        *fHistMCProdRadiusLambda;       //! Histo
69   TH1F        *fHistMCProdRadiusAntiLambda;       //! Histo
70
71   TH1F        *fHistMCPtK0s;       //! Histo
72   TH1F        *fHistMCPtLambda;       //! Histo
73   TH1F        *fHistMCPtAntiLambda;       //! Histo
74
75   TH1F        *fHistMCPtLambdaFromSigma;       //! Histo
76   TH1F        *fHistMCPtAntiLambdaFromSigma;       //! Histo
77
78   TH1F        *fHistNTimesRecK0s;       //! Histo
79   TH1F        *fHistNTimesRecK0sMI;       //! Histo
80   TH1F        *fHistNTimesRecLambda;       //! Histo
81   TH1F        *fHistNTimesRecLambdaMI;       //! Histo
82   TH1F        *fHistNTimesRecAntiLambda;       //! Histo
83   TH1F        *fHistNTimesRecAntiLambdaMI;       //! Histo
84
85   TH2F        *fHistNTimesRecK0sVsPt;       //! Histo
86   TH2F        *fHistNTimesRecK0sVsPtMI;       //! Histo
87   TH2F        *fHistNTimesRecLambdaVsPt;       //! Histo
88   TH2F        *fHistNTimesRecLambdaVsPtMI;       //! Histo
89   TH2F        *fHistNTimesRecAntiLambdaVsPt;       //! Histo
90   TH2F        *fHistNTimesRecAntiLambdaVsPtMI;       //! Histo
91
92   // ESD histograms
93   TH1F        *fHistTrackPerEvent;       //! Histo
94   TH1F        *fHistMCDaughterTrack;       //! Histo
95
96   TH1F        *fHistPrimaryVertexX;       //! Histo
97   TH1F        *fHistPrimaryVertexY;       //! Histo
98   TH1F        *fHistPrimaryVertexZ;       //! Histo
99
100   TH1F        *fHistPrimaryVertexPosXV0events;  //! Primary vertex position in X in events with V0 candidates
101   TH1F        *fHistPrimaryVertexPosYV0events;  //! Primary vertex position in Y in events with V0 candidates
102   TH1F        *fHistPrimaryVertexPosZV0events;  //! Primary vertex position in Z in events with V0 candidates
103
104   TH2F        *fHistDcaPosToPrimVertex;       //! Histo
105   TH2F        *fHistDcaNegToPrimVertex;       //! Histo
106   TH2F        *fHistDcaPosToPrimVertexZoom;       //! Histo
107   TH2F        *fHistDcaNegToPrimVertexZoom;       //! Histo
108   TH2F        *fHistRadiusV0;       //! Histo
109   TH2F        *fHistDecayLengthV0;       //! Histo
110   TH2F        *fHistDcaV0Daughters;       //! Histo
111   TH2F        *fHistChi2;       //! Histo
112   TH2F        *fHistCosPointAngle;       //! Histo
113   TH2F        *fHistCosPointAngleZoom;       //! Histo
114   TH2F        *fHistProdRadius;       //! Histo
115   TH2F        *fHistProdRadiusMI;       //! Histo
116
117   TH1F        *fHistV0Multiplicity;  //! Histo
118   TH1F        *fHistV0MultiplicityMI; //! Histo
119
120   TH2F        *fHistChi2KFBeforeCutK0s;   //! Histo 
121   TH2F        *fHistChi2KFBeforeCutLambda;   //! Histo 
122   TH2F        *fHistChi2KFBeforeCutAntiLambda;   //! Histo  
123   TH2F        *fHistChi2KFAfterCutK0s;   //! Histo 
124   TH2F        *fHistChi2KFAfterCutLambda;   //! Histo 
125   TH2F        *fHistChi2KFAfterCutAntiLambda;   //! Histo
126
127   TH1F        *fHistMassK0;       //! Histo
128   TH1F        *fHistMassK0MI;       //! Histo
129   TH1F        *fHistMassLambda;       //! Histo
130   TH1F        *fHistMassLambdaMI;       //! Histo
131   TH1F        *fHistMassAntiLambda;       //! Histo
132   TH1F        *fHistMassAntiLambdaMI;       //! Histo
133
134   TH2F        *fHistMassVsRadiusK0;       //! Histo
135   TH2F        *fHistMassVsRadiusK0MI;       //! Histo
136   TH2F        *fHistMassVsRadiusLambda;       //! Histo
137   TH2F        *fHistMassVsRadiusLambdaMI;       //! Histo
138   TH2F        *fHistMassVsRadiusAntiLambda;       //! Histo
139   TH2F        *fHistMassVsRadiusAntiLambdaMI;       //! Histo
140
141   TH2F        *fHistPtVsMassK0;       //! Histo
142   TH2F        *fHistPtVsMassK0MI;       //! Histo
143   TH2F        *fHistPtVsMassLambda;       //! Histo
144   TH2F        *fHistPtVsMassLambdaMI;       //! Histo
145   TH2F        *fHistPtVsMassAntiLambda;       //! Histo
146   TH2F        *fHistPtVsMassAntiLambdaMI;       //! Histo
147
148   TH2F        *fHistArmenterosPodolanski;       //! Histo
149   TH2F        *fHistArmenterosPodolanskiMI;       //! Histo
150
151   //PID
152   TH1F        *fHistNsigmaPosPionAntiLambda;    //! Histo
153   TH1F        *fHistNsigmaNegProtonAntiLambda;   //! Histo
154   TH1F        *fHistNsigmaPosProtonLambda;        //! Histo
155   TH1F        *fHistNsigmaNegPionLambda;           //! Histo
156   TH1F        *fHistNsigmaPosPionK0;                //! Histo
157   TH1F        *fHistNsigmaNegPionK0;                 //! Histo
158
159   // Associated particles histograms
160   TH1F        *fHistAsMcRapK0;       //! Histo
161   TH1F        *fHistAsMcRapK0MI;       //! Histo
162   TH1F        *fHistAsMcRapLambda;       //! Histo
163   TH1F        *fHistAsMcRapLambdaMI;       //! Histo
164   TH1F        *fHistAsMcRapAntiLambda;       //! Histo
165   TH1F        *fHistAsMcRapAntiLambdaMI;       //! Histo
166
167   TH1F        *fHistAsMcPtK0;       //! Histo
168   TH1F        *fHistAsMcPtK0MI;       //! Histo
169   TH1F        *fHistAsMcPtLambda;       //! Histo
170   TH1F        *fHistAsMcPtLambdaMI;       //! Histo
171   TH1F        *fHistAsMcPtAntiLambda;       //! Histo
172   TH1F        *fHistAsMcPtAntiLambdaMI;       //! Histo
173   TH1F        *fHistAsMcPtZoomK0;       //! Histo
174   TH1F        *fHistAsMcPtZoomK0MI;       //! Histo
175   TH1F        *fHistAsMcPtZoomLambda;       //! Histo
176   TH1F        *fHistAsMcPtZoomLambdaMI;       //! Histo
177
178   TH1F        *fHistAsMcProdRadiusK0;       //! Histo
179   TH1F        *fHistAsMcProdRadiusK0MI;       //! Histo
180   TH1F        *fHistAsMcProdRadiusLambda;       //! Histo
181   TH1F        *fHistAsMcProdRadiusLambdaMI;       //! Histo
182   TH1F        *fHistAsMcProdRadiusAntiLambda;       //! Histo
183   TH1F        *fHistAsMcProdRadiusAntiLambdaMI;       //! Histo
184
185   TH2F        *fHistAsMcProdRadiusXvsYK0s;       //! Histo
186   TH2F        *fHistAsMcProdRadiusXvsYK0sMI;       //! Histo
187   TH2F        *fHistAsMcProdRadiusXvsYLambda;       //! Histo
188   TH2F        *fHistAsMcProdRadiusXvsYLambdaMI;       //! Histo
189   TH2F        *fHistAsMcProdRadiusXvsYAntiLambda;       //! Histo
190   TH2F        *fHistAsMcProdRadiusXvsYAntiLambdaMI;       //! Histo
191
192   TH1F        *fHistPidMcMassK0;       //! Histo
193   TH1F        *fHistPidMcMassK0MI;       //! Histo
194   TH1F        *fHistPidMcMassLambda;       //! Histo
195   TH1F        *fHistPidMcMassLambdaMI;       //! Histo
196   TH1F        *fHistPidMcMassAntiLambda;       //! Histo
197   TH1F        *fHistPidMcMassAntiLambdaMI;       //! Histo
198   TH1F        *fHistAsMcMassK0;       //! Histo
199   TH1F        *fHistAsMcMassK0MI;       //! Histo
200   TH1F        *fHistAsMcMassLambda;       //! Histo
201   TH1F        *fHistAsMcMassLambdaMI;       //! Histo
202   TH1F        *fHistAsMcMassAntiLambda;       //! Histo
203   TH1F        *fHistAsMcMassAntiLambdaMI;       //! Histo
204
205   TH2F        *fHistAsMcPtVsMassK0;       //! Histo
206   TH2F        *fHistAsMcPtVsMassK0MI;       //! Histo
207   TH2F        *fHistAsMcPtVsMassLambda;       //! Histo
208   TH2F        *fHistAsMcPtVsMassLambdaMI;       //! Histo
209   TH2F        *fHistAsMcPtVsMassAntiLambda;       //! Histo
210   TH2F        *fHistAsMcPtVsMassAntiLambdaMI;       //! Histo
211
212   TH2F        *fHistAsMcMassVsRadiusK0;       //! Histo
213   TH2F        *fHistAsMcMassVsRadiusK0MI;       //! Histo
214   TH2F        *fHistAsMcMassVsRadiusLambda;       //! Histo
215   TH2F        *fHistAsMcMassVsRadiusLambdaMI;       //! Histo
216   TH2F        *fHistAsMcMassVsRadiusAntiLambda;       //! Histo
217   TH2F        *fHistAsMcMassVsRadiusAntiLambdaMI;       //! Histo
218
219   TH1F        *fHistAsMcResxK0;       //! Histo
220   TH1F        *fHistAsMcResyK0;       //! Histo
221   TH1F        *fHistAsMcReszK0;       //! Histo
222
223   TH2F        *fHistAsMcResrVsRadiusK0;       //! Histo
224   TH2F        *fHistAsMcReszVsRadiusK0;       //! Histo
225
226   TH1F        *fHistAsMcResxK0MI;       //! Histo
227   TH1F        *fHistAsMcResyK0MI;       //! Histo
228   TH1F        *fHistAsMcReszK0MI;       //! Histo
229
230   TH2F        *fHistAsMcResrVsRadiusK0MI;       //! Histo
231   TH2F        *fHistAsMcReszVsRadiusK0MI;       //! Histo
232
233   TH1F        *fHistAsMcResxLambda;       //! Histo
234   TH1F        *fHistAsMcResyLambda;       //! Histo
235   TH1F        *fHistAsMcReszLambda;       //! Histo
236
237   TH2F        *fHistAsMcResrVsRadiusLambda;       //! Histo
238   TH2F        *fHistAsMcReszVsRadiusLambda;       //! Histo
239     
240   TH1F        *fHistAsMcResxLambdaMI;       //! Histo
241   TH1F        *fHistAsMcResyLambdaMI;       //! Histo
242   TH1F        *fHistAsMcReszLambdaMI;       //! Histo
243
244   TH2F        *fHistAsMcResrVsRadiusLambdaMI;       //! Histo
245   TH2F        *fHistAsMcReszVsRadiusLambdaMI;       //! Histo
246
247   TH1F        *fHistAsMcResxAntiLambda;       //! Histo
248   TH1F        *fHistAsMcResyAntiLambda;       //! Histo
249   TH1F        *fHistAsMcReszAntiLambda;       //! Histo
250
251   TH2F        *fHistAsMcResrVsRadiusAntiLambda;       //! Histo
252   TH2F        *fHistAsMcReszVsRadiusAntiLambda;       //! Histo
253     
254   TH1F        *fHistAsMcResxAntiLambdaMI;       //! Histo
255   TH1F        *fHistAsMcResyAntiLambdaMI;       //! Histo
256   TH1F        *fHistAsMcReszAntiLambdaMI;       //! Histo
257
258   TH2F        *fHistAsMcResrVsRadiusAntiLambdaMI;       //! Histo
259   TH2F        *fHistAsMcReszVsRadiusAntiLambdaMI;       //! Histo
260
261   TH1F        *fHistAsMcResPtK0;       //! Histo
262   TH1F        *fHistAsMcResPtK0MI;       //! Histo
263   TH1F        *fHistAsMcResPtLambda;       //! Histo
264   TH1F        *fHistAsMcResPtLambdaMI;       //! Histo
265   TH1F        *fHistAsMcResPtAntiLambda;       //! Histo
266   TH1F        *fHistAsMcResPtAntiLambdaMI;       //! Histo
267
268   TH2F        *fHistAsMcResPtVsRapK0;       //! Histo
269   TH2F        *fHistAsMcResPtVsRapK0MI;       //! Histo
270   TH2F        *fHistAsMcResPtVsRapLambda;       //! Histo
271   TH2F        *fHistAsMcResPtVsRapLambdaMI;       //! Histo
272   TH2F        *fHistAsMcResPtVsRapAntiLambda;       //! Histo
273   TH2F        *fHistAsMcResPtVsRapAntiLambdaMI;       //! Histo
274   TH2F        *fHistAsMcResPtVsPtK0;       //! Histo
275   TH2F        *fHistAsMcResPtVsPtK0MI;       //! Histo
276   TH2F        *fHistAsMcResPtVsPtLambda;       //! Histo
277   TH2F        *fHistAsMcResPtVsPtLambdaMI;       //! Histo
278   TH2F        *fHistAsMcResPtVsPtAntiLambda;       //! Histo
279   TH2F        *fHistAsMcResPtVsPtAntiLambdaMI;       //! Histo
280   
281
282   TH1F        *fHistAsMcMotherPdgCodeK0s;       //! Histo
283   TH1F        *fHistAsMcMotherPdgCodeK0sMI;       //! Histo
284   TH1F        *fHistAsMcMotherPdgCodeLambda;       //! Histo
285   TH1F        *fHistAsMcMotherPdgCodeLambdaMI;       //! Histo
286   TH1F        *fHistAsMcMotherPdgCodeAntiLambda;       //! Histo
287   TH1F        *fHistAsMcMotherPdgCodeAntiLambdaMI;       //! Histo
288
289   TH1F        *fHistAsMcPtLambdaFromSigma;       //! Histo
290   TH1F        *fHistAsMcPtLambdaFromSigmaMI;       //! Histo
291   TH1F        *fHistAsMcPtAntiLambdaFromSigma;       //! Histo
292   TH1F        *fHistAsMcPtAntiLambdaFromSigmaMI;       //! Histo
293
294   // Associated secondary particles:
295   TH2F        *fHistAsMcSecondaryPtVsRapK0s;       //! Histo
296   TH2F        *fHistAsMcSecondaryPtVsRapK0sMI;       //! Histo
297   TH2F        *fHistAsMcSecondaryPtVsRapLambda;       //! Histo
298   TH2F        *fHistAsMcSecondaryPtVsRapLambdaMI;       //! Histo
299   TH2F        *fHistAsMcSecondaryPtVsRapAntiLambda;       //! Histo
300   TH2F        *fHistAsMcSecondaryPtVsRapAntiLambdaMI;       //! Histo
301
302   TH1F        *fHistAsMcSecondaryProdRadiusK0s;       //! Histo
303   TH1F        *fHistAsMcSecondaryProdRadiusK0sMI;       //! Histo
304   TH1F        *fHistAsMcSecondaryProdRadiusLambda;       //! Histo
305   TH1F        *fHistAsMcSecondaryProdRadiusLambdaMI;       //! Histo
306   TH1F        *fHistAsMcSecondaryProdRadiusAntiLambda;       //! Histo
307   TH1F        *fHistAsMcSecondaryProdRadiusAntiLambdaMI;       //! Histo
308
309   TH2F        *fHistAsMcSecondaryProdRadiusXvsYK0s;       //! Histo
310   TH2F        *fHistAsMcSecondaryProdRadiusXvsYK0sMI;       //! Histo
311   TH2F        *fHistAsMcSecondaryProdRadiusXvsYLambda;       //! Histo
312   TH2F        *fHistAsMcSecondaryProdRadiusXvsYLambdaMI;       //! Histo
313   TH2F        *fHistAsMcSecondaryProdRadiusXvsYAntiLambda;       //! Histo
314   TH2F        *fHistAsMcSecondaryProdRadiusXvsYAntiLambdaMI;       //! Histo
315
316   TH1F        *fHistAsMcSecondaryMotherPdgCodeK0s;       //! Histo
317   TH1F        *fHistAsMcSecondaryMotherPdgCodeK0sMI;       //! Histo
318   TH1F        *fHistAsMcSecondaryMotherPdgCodeLambda;       //! Histo
319   TH1F        *fHistAsMcSecondaryMotherPdgCodeLambdaMI;       //! Histo
320   TH1F        *fHistAsMcSecondaryMotherPdgCodeAntiLambda;       //! Histo
321   TH1F        *fHistAsMcSecondaryMotherPdgCodeAntiLambdaMI;       //! Histo
322
323   TH1F        *fHistAsMcSecondaryPtLambdaFromSigma;       //! Histo
324   TH1F        *fHistAsMcSecondaryPtLambdaFromSigmaMI;       //! Histo
325   TH1F        *fHistAsMcSecondaryPtAntiLambdaFromSigma;       //! Histo
326   TH1F        *fHistAsMcSecondaryPtAntiLambdaFromSigmaMI;       //! Histo
327
328   AliAnalysisTaskPerformanceStrange(const AliAnalysisTaskPerformanceStrange&); 
329   AliAnalysisTaskPerformanceStrange& operator=(const AliAnalysisTaskPerformanceStrange&); 
330
331   ClassDef(AliAnalysisTaskPerformanceStrange, 1); 
332 };
333
334 #endif