1 AliAnalysisTask *AddTask_GammaConvV1(TString collisionSystem = "pp"){
3 //get the current analysis manager
4 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
6 Error("AddTask_GammaConvV1", "No analysis manager found.");
10 Bool_t IsHeavyIon=collisionSystem.Contains("PbPb");
12 TString cutnumber = "";
13 if(IsHeavyIon) cutnumber = "900400508050113211200001080000000";
14 else cutnumber = "900400508050113211360000000000000";
16 //========= Add PID Reponse to ANALYSIS manager ====
17 if(!(AliPIDResponse*)mgr->GetTask("PIDResponseTask")){
18 gROOT->LoadMacro("$ALICE_ROOT/ANALYSIS/macros/AddTaskPIDResponse.C");
22 //========= Add V0 Reader to ANALYSIS manager =====
23 AliV0ReaderV1 *fV0ReaderV1=new AliV0ReaderV1("V0ReaderV1");
24 ConfigV0ReaderV1(fV0ReaderV1,cutnumber,IsHeavyIon);
25 mgr->AddTask(fV0ReaderV1);
27 AliLog::SetGlobalLogLevel(AliLog::kInfo);
29 //================================================
31 //================================================
32 // find input container
33 //below the trunk version
34 AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
35 //connect input V0Reader
36 mgr->ConnectInput (fV0ReaderV1,0,cinput);
38 //================================================
39 //========= Add task to the ANALYSIS manager =====
40 //================================================
42 //================================================
43 // find input container
44 AliAnalysisTaskGammaConvV1 *task=NULL;
45 task= new AliAnalysisTaskGammaConvV1("GammaConvV1");
46 task->SetIsHeavyIon(IsHeavyIon);
47 // Cut Numbers to use in Analysis
49 Int_t numberOfCuts = 1;
50 if(IsHeavyIon) numberOfCuts = 8;
51 else numberOfCuts = 1;
53 TString *cutarray = new TString[numberOfCuts];
56 cutarray[0] = "900297209450304221200003012002000"; //standard cut Pi0 PbPb 00-05
57 cutarray[1] = "900297209450304221200003122002000"; //standard cut Pi0 PbPb 05-10
58 cutarray[2] = "900297209450304221200001012002000"; //standard cut Pi0 PbPb 00-10
59 cutarray[3] = "900297209450304221200001122002000"; //standard cut Pi0 PbPb 10-20
60 cutarray[4] = "900297209450304221200001022002000"; //standard cut Pi0 PbPb 00-20
61 cutarray[5] = "900297209450304221200001242002000"; //standard cut Pi0 PbPb 20-40
62 cutarray[6] = "900297209450306221200001462002000"; //standard cut Pi0 PbPb 40-60
63 cutarray[7] = "900297209450306221200001682002000"; //standard cut Pi0 PbPb 60-80
65 // CutStudies more BG events 20 events
66 // cutarray[0] = "900297209450304221230003012002000";
67 // cutarray[1] = "900297209450304221230003122002000";
68 // cutarray[2] = "900297209450304221230001012002000";
69 // cutarray[3] = "900297209450304221230001122002000";
70 // cutarray[4] = "900297209450304221230001022002000";
71 // cutarray[5] = "900297209450304221230001242002000";
72 // cutarray[6] = "900297209450306221230001462002000";
73 // cutarray[7] = "900297209450306221230001682002000";
75 // CutStudies more BG events 50 events
76 // cutarray[0] = "900297209450304221250003012002000";
77 // cutarray[1] = "900297209450304221250003122002000";
78 // cutarray[2] = "900297209450304221250001012002000";
79 // cutarray[3] = "900297209450304221250001122002000";
80 // cutarray[4] = "900297209450304221250001022002000";
81 // cutarray[5] = "900297209450304221250001242002000";
82 // cutarray[6] = "900297209450306221250001462002000";
83 // cutarray[7] = "900297209450306221250001682002000";
85 // Cutstudies 0-5% dEdx
86 // cutarray[0] = "900397209450304221200003012002000";
87 // cutarray[1] = "900697209450304221200003012002000";
88 // cutarray[2] = "900247209450304221200003012002000";
89 // cutarray[3] = "900277209450304221200003012002000";
90 // cutarray[4] = "900295209450304221200003012002000";
91 // Cutstudies 5-10% dEdx
92 // cutarray[0] = "900397209450304221200003122002000";
93 // cutarray[1] = "900697209450304221200003122002000";
94 // cutarray[2] = "900247209450304221200003122002000";
95 // cutarray[3] = "900277209450304221200003122002000";
96 // cutarray[4] = "900295209450304221200003122002000";
97 // Cutstudies 0-10% dEdx
98 // cutarray[0] = "900397209450304221200001012002000";
99 // cutarray[1] = "900697209450304221200001012002000";
100 // cutarray[2] = "900247209450304221200001012002000";
101 // cutarray[3] = "900277209450304221200001012002000";
102 // cutarray[4] = "900295209450304221200001012002000";
103 // Cutstudies 10-20% dEdx
104 // cutarray[0] = "900397209450304221200001122002000";
105 // cutarray[1] = "900697209450304221200001122002000";
106 // cutarray[2] = "900247209450304221200001122002000";
107 // cutarray[3] = "900277209450304221200001122002000";
108 // cutarray[4] = "900295209450304221200001122002000";
109 // Cutstudies 40-60% dEdx
110 // cutarray[0] = "900397209450306221200001462002000";
111 // cutarray[1] = "900697209450306221200001462002000";
112 // cutarray[2] = "900247209450306221200001462002000";
113 // cutarray[3] = "900277209450306221200001462002000";
114 // cutarray[4] = "900295209450306221200001462002000";
115 // Cutstudies 60-80% dEdx
116 // cutarray[0] = "900397209450306221200001682002000";
117 // cutarray[1] = "900697209450306221200001682002000";
118 // cutarray[2] = "900247209450306221200001682002000";
119 // cutarray[3] = "900277209450306221200001682002000";
120 // cutarray[4] = "900295209450306221200001682002000";
122 // Cutstudies 0-5% TOF
123 // cutarray[0] = "900297209450304221200003013002000";
124 // cutarray[1] = "900297209450304221200003014002000";
125 // Cutstudies 5-10% TOF
126 // cutarray[0] = "900297209450304221200003123002000";
127 // cutarray[1] = "900297209450304221200003124002000";
128 // Cutstudies 0-10% TOF
129 // cutarray[0] = "900297209450304221200001013002000";
130 // cutarray[1] = "900297209450304221200001014002000";
131 // Cutstudies 10-20% TOF
132 // cutarray[0] = "900297209450304221200001123002000";
133 // cutarray[1] = "900297209450304221200001124002000";
134 // Cutstudies 20-40% TOF
135 // cutarray[0] = "900297209450304221200001243002000";
136 // cutarray[1] = "900297209450304221200001244002000";
137 // Cutstudies 40-60% TOF
138 // cutarray[0] = "900297209450306221200001463002000";
139 // cutarray[1] = "900297209450306221200001464002000";
140 // Cutstudies 60-80% TOF
141 // cutarray[0] = "900297209450306221200001683002000";
142 // cutarray[1] = "900297209450306221200001684002000";
144 // Cutstudies 0-5% Alpha
145 // cutarray[0] = "900297209450308221200003012002000";
146 // cutarray[1] = "900297209450300221200003012002000";
147 // Cutstudies 5-10% Alpha
148 // cutarray[0] = "900297209450308221200003122002000";
149 // cutarray[1] = "900297209450300221200003122002000";
150 // Cutstudies 0-10% Alpha
151 // cutarray[0] = "900297209450308221200001012002000";
152 // cutarray[1] = "900297209450300221200001012002000";
153 // Cutstudies 10-20% Alpha
154 // cutarray[0] = "900297209450308221200001122002000";
155 // cutarray[1] = "900297209450300221200001122002000";
156 // Cutstudies 20-40% Alpha
157 // cutarray[0] = "900297209450308221200001242002000";
158 // cutarray[1] = "900297209450300221200001242002000";
159 // Cutstudies 40-60% Alpha
160 // cutarray[0] = "900297209450307221200001682002000";
161 // cutarray[1] = "900297209450305221200001682002000";
162 // Cutstudies 60-80% Alpha
163 // cutarray[8] = "900297209450307221200001462002000";
164 // cutarray[9] = "900297209450305221200001462002000";
166 // Cutstudies 0-5% Qt
167 // cutarray[0] = "900297209450404221200003012002000";
168 // cutarray[1] = "900297209450204221200003012002000";
169 // Cutstudies 5-10% Qt
170 // cutarray[0] = "900297209450404221200003122002000";
171 // cutarray[1] = "900297209450204221200003122002000";
172 // Cutstudies 0-10% Qt
173 // cutarray[0] = "900297209450404221200001012002000";
174 // cutarray[1] = "900297209450204221200001012002000";
175 // Cutstudies 10-20% Qt
176 // cutarray[0] = "900297209450404221200001122002000";
177 // cutarray[1] = "900297209450204221200001122002000";
178 // Cutstudies 20-40% Qt
179 // cutarray[0] = "900297209450404221200001242002000";
180 // cutarray[1] = "900297209450204221200001242002000";
181 // Cutstudies 40-60% Qt
182 // cutarray[0] = "900297209450406221200001462002000";
183 // cutarray[1] = "900297209450206221200001462002000";
184 // Cutstudies 60-80% Qt
185 // cutarray[0] = "900297209450406221200001682002000";
186 // cutarray[1] = "900297209450206221200001682002000";
188 // Cutstudies 0-5% Single Pt
189 // cutarray[0] = "900297249450304221200003012002000";
190 // cutarray[1] = "900297219450304221200003012002000";
191 // Cutstudies 5-10% Single Pt
192 // cutarray[0] = "900297249450304221200003122002000";
193 // cutarray[1] = "900297219450304221200003122002000";
194 // Cutstudies 0-10% Single Pt
195 // cutarray[0] = "900297249450304221200001012002000";
196 // cutarray[1] = "900297219450304221200001012002000";
197 // Cutstudies 10-20% Single Pt
198 // cutarray[0] = "900297249450304221200001122002000";
199 // cutarray[1] = "900297219450304221200001122002000";
200 // Cutstudies 20-40% Single Pt
201 // cutarray[0] = "900297249450304221200001242002000";
202 // cutarray[1] = "900297219450304221200001242002000";
203 // Cutstudies 40-60% Single Pt
204 // cutarray[0] = "900297249450306221200001462002000";
205 // cutarray[1] = "900297219450306221200001462002000";
206 // Cutstudies 60-80% Single Pt
207 // cutarray[0] = "900297249450306221200001682002000";
208 // cutarray[1] = "900297219450306221200001682002000";
210 // Cutstudies 0-5% Chi2 Gamma
211 // cutarray[0] = "900297109450304221200003012002000";
212 // cutarray[1] = "900297809450304221200004012002000";
213 // Cutstudies 5-10% Chi2 Gamma
214 // cutarray[0] = "900297109450304221200003122002000";
215 // cutarray[1] = "900297809450304221200003122002000";
216 // Cutstudies 0-10% Chi2 Gamma
217 // cutarray[0] = "900297109450304221200001012002000";
218 // cutarray[1] = "900297809450304221200001012002000";
219 // Cutstudies 10-20% Chi2 Gamma
220 // cutarray[0] = "900297109450304221200001122002000";
221 // cutarray[1] = "900297809450304221200001122002000";
222 // Cutstudies 20-40% Chi2 Gamma
223 // cutarray[0] = "900297109450304221200001242002000";
224 // cutarray[1] = "900297809450304221200001242002000";
225 // Cutstudies 40-60% Chi2 Gamma
226 // cutarray[0] = "900297109450306221200001462002000";
227 // cutarray[1] = "900297809450306221200001462002000";
228 // Cutstudies 60-80% Chi2 Gamma
229 // cutarray[0] = "900297109450306221200001682002000";
230 // cutarray[1] = "900297809450306221200001682002000";
232 // Cutstudies 0-5% TPC Cluster
233 // cutarray[0] = "900297206450304221200003012002000";
234 // cutarray[1] = "900297208450304221200003012002000";
235 // Cutstudies 5-10% TPC Cluster
236 // cutarray[0] = "900297206450304221200003122002000";
237 // cutarray[1] = "900297208450304221200003122002000";
238 // Cutstudies 0-10% TPC Cluster
239 // cutarray[0] = "900297206450304221200001012002000";
240 // cutarray[1] = "900297208450304221200001012002000";
241 // Cutstudies 10-20% TPC Cluster
242 // cutarray[0] = "900297206450304221200001122002000";
243 // cutarray[1] = "900297208450304221200001122002000";
244 // Cutstudies 20-40% TPC Cluster
245 // cutarray[0] = "900297206450304221200001242002000";
246 // cutarray[1] = "900297208450304221200001242002000";
247 // Cutstudies 40-60% TPC Cluster
248 // cutarray[0] = "900297206450306221200001462002000";
249 // cutarray[1] = "900297208450306221200001462002000";
250 // Cutstudies 60-80% TPC Cluster
251 // cutarray[0] = "900297206450306221200001682002000";
252 // cutarray[1] = "900297208450306221200001682002000";
254 // Cutstudies 0-5% Psi Pair
255 // cutarray[0] = "900297209450304221200003012001000";
256 // cutarray[1] = "900297209450304221200003012003000";
257 // Cutstudies 5-10% Psi Pair
258 // cutarray[0] = "900297209450304221200003122001000";
259 // cutarray[1] = "900297209450304221200003122003000";
260 // Cutstudies 0-10% Psi Pair
261 // cutarray[0] = "900297209450304221200001012001000";
262 // cutarray[1] = "900297209450304221200001012003000";
263 // Cutstudies 10-20% Psi Pair
264 // cutarray[0] = "900297209450304221200001122001000";
265 // cutarray[1] = "900297209450304221200001122003000";
266 // Cutstudies 20-40% Psi Pair
267 // cutarray[0] = "900297209450304221200001242001000";
268 // cutarray[1] = "900297209450304221200001242003000";
269 // Cutstudies 40-60% Psi Pair
270 // cutarray[0] = "900297209450306221200001462001000";
271 // cutarray[1] = "900297209450306221200001462003000";
272 // Cutstudies 60-80% Psi Pair
273 // cutarray[0] = "900297209450306221200001682001000";
274 // cutarray[1] = "900297209450306221200001682003000";
276 // Cutstudies 0-5% R Cut
277 // cutarray[0] = "900297209450304121200003012002000";
278 // cutarray[1] = "900297209450304421200003012002000";
279 // Cutstudies 5-10% R Cut
280 // cutarray[0] = "900297209450304121200003122002000";
281 // cutarray[1] = "900297209450304421200003122002000";
282 // Cutstudies 0-10% R Cut
283 // cutarray[0] = "900297209450304121200001012002000";
284 // cutarray[1] = "900297209450304421200001012002000";
285 // Cutstudies 10-20% R Cut
286 // cutarray[0] = "900297209450304121200001122002000";
287 // cutarray[1] = "900297209450304421200001122002000";
288 // Cutstudies 20-40% R Cut
289 // cutarray[0] = "900297209450304121200001242002000";
290 // cutarray[1] = "900297209450304421200001242002000";
291 // Cutstudies 40-60% R Cut
292 // cutarray[0] = "900297209450306121200001462002000";
293 // cutarray[1] = "900297209450306421200001462002000";
294 // Cutstudies 60-80% R Cut
295 // cutarray[0] = "900297209450306121200001682002000";
296 // cutarray[1] = "900297209450306421200001682002000";
299 cutarray[0] = "900366809010333211361000000900000"; //Standard Cut Pi0 with PileUp Rejection
300 // cutarray[1] = "900226609010303211361000004900000"; //Standard Cut Gamma with PileUp Rejection
302 // cutarray[2] = "910366809010333211361000000900000"; //Standard Cut Pi0 with PileUp Rejection V0 offline
304 // cutarray[2] = "900166809010333211361000000900000";
305 // cutarray[3] = "900266809010333211361000000900000";
307 // cutarray[4] = "900386809010333211361000000900000";
308 // cutarray[5] = "900355809010333211361000000900000";
309 // cutarray[6] = "900310809010303211361000000900000";
310 // cutarray[7] = "900367809010343211361000000900000";
312 // cutarray[8] = "900366809010330211361000000900000";
314 // cutarray[9] = "900366909010333211361000000900000";
315 // cutarray[10] = "900366209010333211361000000900000";
316 // // pt single e+/e-
317 // cutarray[11] = "900366849010333211361000000900000";
318 // cutarray[12] = "900366819010333211361000000900000";
319 // // findable cluster TPC
320 // cutarray[0] = "900366800010333211361000000900000";
321 // cutarray[1] = "900366808010333211361000000900000";
323 // cutarray[2] = "900366809010433211361000000900000";
324 // cutarray[3] = "900366809010233211361000000900000";
326 // cutarray[4] = "900366809010333211361000002900000";
327 // cutarray[5] = "900366809010333211361000003900000";
328 // cutarray[6] = "900366809010333211361000004900000";
330 // cutarray[7] = "900366809010333211361000000900013";
331 // cutarray[8] = "900366809010333211361000000900012";
333 // cutarray[1] = "9006266090103032113600000049000";
334 // cutarray[2] = "9007266090103032113600000049000";
335 // cutarray[3] = "9006267090103032113600000049000";
336 // cutarray[4] = "9006268090103032113600000049000";
337 // cutarray[5] = "9006265090103032113600000049000";
338 // cutarray[6] = "9006265090103032113600000049010";
339 // cutarray[7] = "9006265090103032113600000049020";
340 // cutarray[8] = "9006265090103032113600000049030";
341 // cutarray[9] = "9003662080100332113600000009000";
342 // cutarray[0] = "9006166090103032113600000049000";
343 // cutarray[1] = "9006266090103032113600000049000";
344 // cutarray[2] = "9006366090103032113600000049000";
345 // cutarray[3] = "9006206090103032113600000049000";
346 // cutarray[4] = "9006666090103032113600000049000";
347 // cutarray[5] = "9006566090103032113600000049000";
348 // cutarray[6] = "9006266090104032113600000049000";
349 // cutarray[7] = "9006266090102032113600000049000";
350 // cutarray[8] = "9006266090103032113600000049020";
351 // cutarray[9] = "9003662080100332113600000009000";
352 // cutarray[0] = "9006266090103032113600000049000";
353 // cutarray[1] = "9006267090103032113600000049000";
354 // cutarray[2] = "9006268090103032113600000049000";
355 // cutarray[3] = "9006266190103032113600000049000";
356 // cutarray[4] = "9006266290103032113600000049000";
357 // cutarray[5] = "9006266080103032113600000049000";
358 // cutarray[6] = "9006266091103032113600000049000";
359 // cutarray[7] = "9006266091403032113600000049000";
360 // cutarray[8] = "9002265090103032113600000049000";
361 // cutarray[9] = "9003662080100332113600000009000";
363 // cutarray[1] = "9003662080100332113600000009000";
364 // cutarray[2] = "9006266090103031113600000049000";
365 // cutarray[3] = "9006266090103035113600000049000";
366 // cutarray[4] = "9006266090103032113600000029000";
367 // cutarray[5] = "9006266090103032113600000039000";
368 // cutarray[6] = "9002266090103032113600000049000";
369 // cutarray[7] = "9003266090103032113600000049000";
370 // cutarray[8] = "9002267090103032113600000049000";
371 // cutarray[9] = "9002268090103032113600000049000";
374 TList *ConvCutList = new TList();
375 ConvCutList->SetOwner(kTRUE);
376 AliConversionCuts **analysisCuts = new AliConversionCuts*[numberOfCuts];
377 for(Int_t i = 0; i<numberOfCuts; i++){
378 analysisCuts[i] = new AliConversionCuts();
379 analysisCuts[i]->InitializeCutsFromCutString(cutarray[i].Data());
380 ConvCutList->Add(analysisCuts[i]);
381 analysisCuts[i]->SetFillCutHistograms("",kFALSE);
382 // if(i == 0 ){ //|| i == 1
384 // AddQATaskV1(analysisCuts[i],IsHeavyIon);
385 // TString addoutput=gSystem->Getenv("ADD_OUTPUT_FILES");
386 // if (addoutput.Length()) addoutput+=",";
387 // addoutput+=Form("GammaConvV1_QA_%s.root",((analysisCuts[i])->GetCutNumber()).Data());
388 // gSystem->Setenv("ADD_OUTPUT_FILES",addoutput.Data());
389 // cout<<"Adding addoutput.Data()"<<endl;
393 task->SetConversionCutList(numberOfCuts,ConvCutList);
394 task->SetMoveParticleAccordingToVertex(kTRUE);
395 task->SetDoMesonAnalysis(kTRUE);
399 AliAnalysisDataContainer *coutput1 =
400 mgr->CreateContainer("GammaConvV1", TList::Class(),
401 AliAnalysisManager::kOutputContainer,"GammaConvV1.root");
402 AliAnalysisDataContainer *coutput0 =
403 mgr->CreateContainer("gammaConv_tree",
405 AliAnalysisManager::kExchangeContainer,
406 "gammaConv_default");
407 mgr->ConnectInput (task, 0, cinput );
408 mgr->ConnectOutput (task, 0, coutput0);
409 mgr->ConnectOutput (task, 1, coutput1);
413 void ConfigV0ReaderV1(AliV0ReaderV1 *fV0ReaderV1,TString analysiscut="",Bool_t IsHeavyIon=kFALSE){
415 fV0ReaderV1->SetUseOwnXYZCalculation(kTRUE);
416 fV0ReaderV1->SetCreateAODs(kFALSE);// AOD Output
417 fV0ReaderV1->SetUseAODConversionPhoton(kTRUE);
419 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
421 Error("AddTask_V0ReaderV1", "No analysis manager found.");
424 AliVEventHandler *inputHandler=mgr->GetInputEventHandler();
426 if(inputHandler->IsA()==AliESDInputHandler::Class()){
430 if(inputHandler->IsA()==AliAODInputHandler::Class()){
432 // task->SetUseSatelliteAODs(kTRUE);
435 // Set AnalysisCut Number
436 AliConversionCuts *fCuts=NULL;
438 fCuts= new AliConversionCuts(analysiscut.Data(),analysiscut.Data());
439 if(fCuts->InitializeCutsFromCutString(analysiscut.Data())){
440 fV0ReaderV1->SetConversionCuts(fCuts);
441 fCuts->SetFillCutHistograms("",kTRUE);
448 void AddQATaskV1(AliConversionCuts *ConversionCuts, Bool_t IsHeavyIon){
450 //get the current analysis manager
451 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
453 Error("AddTask_V0ReaderV1QA", "No analysis manager found.");
456 AliAnalysisTaskConversionQA *fQA = new AliAnalysisTaskConversionQA(Form("%s_QA",(ConversionCuts->GetCutNumber()).Data()));
457 fQA->SetConversionCuts(ConversionCuts,IsHeavyIon);
460 AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
461 mgr->ConnectInput (fQA,0,cinput);