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