]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/FLOW/macros/showSpread.C
delete obsolete directory
[u/mrichter/AliRoot.git] / PWG2 / FLOW / macros / showSpread.C
CommitLineData
e47370f7 1enum libModes {mLocal,mLocalSource};
e47370f7 2
6a6afe42 3void showSpread(TString type="", const Int_t nRuns=-1, Int_t mode=mLocal)
4{
5 // type: type of analysis can be ESD, AOD, MC, ESDMC0, ESDMC1
6 // (if type="" output files are from MC simulation (default))
7 // nRuns: specify here from how many small statistics output .root files
8 // flow estimates will be shown (if nRuns = -1 all of them will be shown)
9 // mode: if mode=mLocal analyze data on your computer using aliroot
10 // if mode=mLocalSource analyze data on your computer using root + source files
11
e47370f7 12 // load needed libraries:
b78897bc 13 LoadSpreadLibraries(mode);
e47370f7 14
6a6afe42 15 // access the path of current directory:
16 TString pwd(gSystem->pwd());
17 pwd+="/";
18
e47370f7 19 // standard magic:
20 TString execDir(gSystem->pwd());
21 TSystemDirectory* baseDir = new TSystemDirectory(".",execDir.Data());
22 TList* dirList = baseDir->GetListOfFiles();
23 Int_t nDirs = dirList->GetEntries();
24 gSystem->cd(execDir);
25
6a6afe42 26 Int_t countDirectories = 0;
27 if(dirList)
28 {
29 for(Int_t i=0;i<nDirs;i++)
30 {
31 if((dirList->At(i))->InheritsFrom("TSystemDirectory") &&
32 !(strcmp((dirList->At(i))->GetName(),".") == 0 ) &&
33 !(strcmp((dirList->At(i))->GetName(),"..") == 0 ))
34 {
35 countDirectories++;
36 }
37 }
38 }
39
40 // assigning bin numbers to methods:
41 Int_t binMCEP = 1;
42 Int_t binSP = 2;
43 Int_t binGFC2 = 3;
44 Int_t binGFC4 = 5;
45 Int_t binGFC6 = 7;
46 Int_t binGFC8 = 9;
47 Int_t binQC2 = 4;
48 Int_t binQC4 = 6;
49 Int_t binQC6 = 8;
50 Int_t binQC8 = 10;
51 Int_t binFQD = 11;
52 Int_t binLYZ1 = 12;
53 Int_t binLYZEP = 13;
54
55 // one subdirectory gives one estimate for each method:
56 const Int_t nEstimates = countDirectories;
57
58 // arrays to store estimates and errors of each method from different small statistics runs:
e47370f7 59 // MCEP:
6a6afe42 60 Double_t mcepValueNONAME[nEstimates] = {0.};
61 Double_t mcepErrorNONAME[nEstimates] = {0.};
62 Double_t mcepMaxValueNONAME = 0.; // to be improved
63 Double_t mcepMinValueNONAME = 1000.; // to be improved
e47370f7 64
65 // SP:
6a6afe42 66 Double_t spValueNONAME[nEstimates] = {0.};
67 Double_t spErrorNONAME[nEstimates] = {0.};
68 Double_t spMaxValueNONAME = 0.; // to be improved
69 Double_t spMinValueNONAME = 1000.; // to be improved
70
71 // GFC{2}:
72 Double_t gfc2ValueNONAME[nEstimates] = {0.};
73 Double_t gfc2ErrorNONAME[nEstimates] = {0.};
74 Double_t gfc2MaxValueNONAME = 0.; // to be improved
75 Double_t gfc2MinValueNONAME = 1000.; // to be improved
76
77 // GFC{4}:
78 Double_t gfc4ValueNONAME[nEstimates] = {0.};
79 Double_t gfc4ErrorNONAME[nEstimates] = {0.};
80 Double_t gfc4MaxValueNONAME = 0.; // to be improved
81 Double_t gfc4MinValueNONAME = 1000.; // to be improved
82
83 // GFC{6}:
84 Double_t gfc6ValueNONAME[nEstimates] = {0.};
85 Double_t gfc6ErrorNONAME[nEstimates] = {0.};
86 Double_t gfc6MaxValueNONAME = 0.; // to be improved
87 Double_t gfc6MinValueNONAME = 1000.; // to be improved
e47370f7 88
6a6afe42 89 // GFC{8}:
90 Double_t gfc8ValueNONAME[nEstimates] = {0.};
91 Double_t gfc8ErrorNONAME[nEstimates] = {0.};
92 Double_t gfc8MaxValueNONAME = 0.; // to be improved
93 Double_t gfc8MinValueNONAME = 1000.; // to be improved
94
95 // QC{2}:
96 Double_t qc2ValueNONAME[nEstimates] = {0.};
97 Double_t qc2ErrorNONAME[nEstimates] = {0.};
98 Double_t qc2MaxValueNONAME = 0.; // to be improved
99 Double_t qc2MinValueNONAME = 1000.; // to be improved
100
101 // QC{4}:
102 Double_t qc4ValueNONAME[nEstimates] = {0.};
103 Double_t qc4ErrorNONAME[nEstimates] = {0.};
104 Double_t qc4MaxValueNONAME = 0.; // to be improved
105 Double_t qc4MinValueNONAME = 1000.; // to be improved
106
107 // QC{6}:
108 Double_t qc6ValueNONAME[nEstimates] = {0.};
109 Double_t qc6ErrorNONAME[nEstimates] = {0.};
110 Double_t qc6MaxValueNONAME = 0.; // to be improved
111 Double_t qc6MinValueNONAME = 1000.; // to be improved
e47370f7 112
6a6afe42 113 // QC{8}:
114 Double_t qc8ValueNONAME[nEstimates] = {0.};
115 Double_t qc8ErrorNONAME[nEstimates] = {0.};
116 Double_t qc8MaxValueNONAME = 0.; // to be improved
117 Double_t qc8MinValueNONAME = 1000.; // to be improved
e47370f7 118
119 // FQD:
6a6afe42 120 Double_t fqdValueNONAME[nEstimates] = {0.};
121 Double_t fqdErrorNONAME[nEstimates] = {0.};
122 Double_t fqdMaxValueNONAME = 0.; // to be improved
123 Double_t fqdMinValueNONAME = 1000.; // to be improved
124
e47370f7 125 // LYZ1:
6a6afe42 126 Double_t lyz1ValueNONAME[nEstimates] = {0.};
127 Double_t lyz1ErrorNONAME[nEstimates] = {0.};
128 Double_t lyz1MaxValueNONAME = 0.; // to be improved
129 Double_t lyz1MinValueNONAME = 1000.; // to be improved
130
e47370f7 131 // LYZEP:
6a6afe42 132 Double_t lyzepValueNONAME[nEstimates] = {0.};
133 Double_t lyzepErrorNONAME[nEstimates] = {0.};
134 Double_t lyzepMaxValueNONAME = 0.; // to be improved
135 Double_t lyzepMinValueNONAME = 1000.; // to be improved
e47370f7 136
137 Int_t counter = 0;
138
139 for(Int_t iDir=0;iDir<nDirs;++iDir)
140 {
141 TSystemFile* presentDir = (TSystemFile*)dirList->At(iDir);
142 if(!presentDir || !presentDir->IsDirectory() || strcmp(presentDir->GetName(), ".") == 0 ||
143 strcmp(presentDir->GetName(), "..") == 0) continue;
6a6afe42 144
145 if(!(nRuns == -1))
146 {
147 if (counter >= nRuns) break;
148 }
149
e47370f7 150 TString presentDirName(gSystem->pwd());
151 presentDirName += "/";
152 presentDirName += presentDir->GetName();
153 presentDirName += "/";
154
6a6afe42 155 // accessing the small statistics output .root files for each method:
e47370f7 156 // MCEP:
157 TString fileNameMCEP = presentDirName;
6a6afe42 158 fileNameMCEP+="outputMCEPanalysis";
159 (fileNameMCEP+=type.Data())+=".root";
e47370f7 160 TFile *fileMCEP = TFile::Open(fileNameMCEP.Data(), "READ");
e47370f7 161 if(fileMCEP)
162 {
6a6afe42 163 TList *listMCEP = NULL;
164 AliFlowCommonHistResults *mcepCommonHistRes = NULL;
e47370f7 165 fileMCEP->GetObject("cobjMCEP",listMCEP);
6a6afe42 166 fileMCEP->Close();
e47370f7 167 if(listMCEP)
168 {
169 mcepCommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (listMCEP->FindObject("AliFlowCommonHistResultsMCEP"));
6a6afe42 170 if(mcepCommonHistRes && mcepCommonHistRes->GetHistIntFlow())
171 {
172 mcepValueNONAME[counter] = (mcepCommonHistRes->GetHistIntFlow())->GetBinContent(1);
173 mcepErrorNONAME[counter] = (mcepCommonHistRes->GetHistIntFlow())->GetBinError(1);
174 if(mcepValueNONAME[counter]>0.) // to be improved
175 {
176 if(mcepMaxValueNONAME < mcepValueNONAME[counter]) mcepMaxValueNONAME = mcepValueNONAME[counter];
177 if(mcepMinValueNONAME > mcepValueNONAME[counter]) mcepMinValueNONAME = mcepValueNONAME[counter];
178 }
179 }
180 } // end of if(listMCEP)
181 } // end of if(fileMCEP)
e47370f7 182
183 // SP:
184 TString fileNameSP = presentDirName;
6a6afe42 185 fileNameSP+="outputSPanalysis";
186 (fileNameSP+=type.Data())+=".root";
e47370f7 187 TFile *fileSP = TFile::Open(fileNameSP.Data(), "READ");
e47370f7 188 if(fileSP)
189 {
6a6afe42 190 TList *listSP = NULL;
191 AliFlowCommonHistResults *spCommonHistRes = NULL;
e47370f7 192 fileSP->GetObject("cobjSP",listSP);
6a6afe42 193 fileSP->Close();
e47370f7 194 if(listSP)
195 {
196 spCommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (listSP->FindObject("AliFlowCommonHistResultsSP"));
6a6afe42 197 if(spCommonHistRes && spCommonHistRes->GetHistIntFlow())
198 {
199 spValueNONAME[counter] = (spCommonHistRes->GetHistIntFlow())->GetBinContent(1);
200 spErrorNONAME[counter] = (spCommonHistRes->GetHistIntFlow())->GetBinError(1);
201 if(spValueNONAME[counter]>0.) // to be improved
202 {
203 if(spMaxValueNONAME < spValueNONAME[counter]) spMaxValueNONAME = spValueNONAME[counter];
204 if(spMinValueNONAME > spValueNONAME[counter]) spMinValueNONAME = spValueNONAME[counter];
205 }
206 }
207 } // end of if(listSP)
208 } // end of if(fileSP)
e47370f7 209
210 // GFC:
211 TString fileNameGFC = presentDirName;
6a6afe42 212 fileNameGFC+="outputGFCanalysis";
213 (fileNameGFC+=type.Data())+=".root";
e47370f7 214 TFile *fileGFC = TFile::Open(fileNameGFC.Data(), "READ");
e47370f7 215 if(fileGFC)
216 {
6a6afe42 217 TList *listGFC = NULL;
218 AliFlowCommonHistResults *gfc2CommonHistRes = NULL;
219 AliFlowCommonHistResults *gfc4CommonHistRes = NULL;
220 AliFlowCommonHistResults *gfc6CommonHistRes = NULL;
221 AliFlowCommonHistResults *gfc8CommonHistRes = NULL;
e47370f7 222 fileGFC->GetObject("cobjGFC",listGFC);
6a6afe42 223 fileGFC->Close();
e47370f7 224 if(listGFC)
225 {
6a6afe42 226 gfc2CommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (listGFC->FindObject("AliFlowCommonHistResults2ndOrderGFC"));
227 gfc4CommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (listGFC->FindObject("AliFlowCommonHistResults4thOrderGFC"));
228 gfc6CommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (listGFC->FindObject("AliFlowCommonHistResults6thOrderGFC"));
e47370f7 229 gfc8CommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (listGFC->FindObject("AliFlowCommonHistResults8thOrderGFC"));
6a6afe42 230 if(gfc2CommonHistRes && gfc2CommonHistRes->GetHistIntFlow())
231 {
232 gfc2ValueNONAME[counter] = (gfc2CommonHistRes->GetHistIntFlow())->GetBinContent(1);
233 gfc2ErrorNONAME[counter] = (gfc2CommonHistRes->GetHistIntFlow())->GetBinError(1);
234 if(gfc2ValueNONAME[counter]>0.) // to be improved
235 {
236 if(gfc2MaxValueNONAME < gfc2ValueNONAME[counter]) gfc2MaxValueNONAME = gfc2ValueNONAME[counter];
237 if(gfc2MinValueNONAME > gfc2ValueNONAME[counter]) gfc2MinValueNONAME = gfc2ValueNONAME[counter];
238 }
239 }
240 if(gfc4CommonHistRes && gfc4CommonHistRes->GetHistIntFlow())
241 {
242 gfc4ValueNONAME[counter] = (gfc4CommonHistRes->GetHistIntFlow())->GetBinContent(1);
243 gfc4ErrorNONAME[counter] = (gfc4CommonHistRes->GetHistIntFlow())->GetBinError(1);
244 if(gfc4ValueNONAME[counter]>0.) // to be improved
245 {
246 if(gfc4MaxValueNONAME < gfc4ValueNONAME[counter]) gfc4MaxValueNONAME = gfc4ValueNONAME[counter];
247 if(gfc4MinValueNONAME > gfc4ValueNONAME[counter]) gfc4MinValueNONAME = gfc4ValueNONAME[counter];
248 }
249 }
250 if(gfc6CommonHistRes && gfc6CommonHistRes->GetHistIntFlow())
251 {
252 gfc6ValueNONAME[counter] = (gfc6CommonHistRes->GetHistIntFlow())->GetBinContent(1);
253 gfc6ErrorNONAME[counter] = (gfc6CommonHistRes->GetHistIntFlow())->GetBinError(1);
254 if(gfc6ValueNONAME[counter]>0.) // to be improved
255 {
256 if(gfc6MaxValueNONAME < gfc6ValueNONAME[counter]) gfc6MaxValueNONAME = gfc6ValueNONAME[counter];
257 if(gfc6MinValueNONAME > gfc6ValueNONAME[counter]) gfc6MinValueNONAME = gfc6ValueNONAME[counter];
258 }
259 }
260 if(gfc8CommonHistRes && gfc8CommonHistRes->GetHistIntFlow())
261 {
262 gfc8ValueNONAME[counter] = (gfc8CommonHistRes->GetHistIntFlow())->GetBinContent(1);
263 gfc8ErrorNONAME[counter] = (gfc8CommonHistRes->GetHistIntFlow())->GetBinError(1);
264 if(gfc8ValueNONAME[counter]>0.) // to be improved
265 {
266 if(gfc8MaxValueNONAME < gfc8ValueNONAME[counter]) gfc8MaxValueNONAME = gfc8ValueNONAME[counter];
267 if(gfc8MinValueNONAME > gfc8ValueNONAME[counter]) gfc8MinValueNONAME = gfc8ValueNONAME[counter];
268 }
269 }
270 } // end of if(listGFC)
271 } // end of if(fileGFC)
e47370f7 272
e47370f7 273 // QC:
274 TString fileNameQC = presentDirName;
6a6afe42 275 fileNameQC+="outputQCanalysis";
276 (fileNameQC+=type.Data())+=".root";
e47370f7 277 TFile *fileQC = TFile::Open(fileNameQC.Data(), "READ");
e47370f7 278 if(fileQC)
279 {
6a6afe42 280 TList *listQC = NULL;
281 AliFlowCommonHistResults *qc2CommonHistRes = NULL;
282 AliFlowCommonHistResults *qc4CommonHistRes = NULL;
283 AliFlowCommonHistResults *qc6CommonHistRes = NULL;
284 AliFlowCommonHistResults *qc8CommonHistRes = NULL;
e47370f7 285 fileQC->GetObject("cobjQC",listQC);
6a6afe42 286 fileQC->Close();
e47370f7 287 if(listQC)
288 {
6a6afe42 289 qc2CommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (listQC->FindObject("AliFlowCommonHistResults2ndOrderQC"));
290 qc4CommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (listQC->FindObject("AliFlowCommonHistResults4thOrderQC"));
291 qc6CommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (listQC->FindObject("AliFlowCommonHistResults6thOrderQC"));
e47370f7 292 qc8CommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (listQC->FindObject("AliFlowCommonHistResults8thOrderQC"));
6a6afe42 293 if(qc2CommonHistRes && qc2CommonHistRes->GetHistIntFlow())
294 {
295 qc2ValueNONAME[counter] = (qc2CommonHistRes->GetHistIntFlow())->GetBinContent(1);
296 qc2ErrorNONAME[counter] = (qc2CommonHistRes->GetHistIntFlow())->GetBinError(1);
297 if(qc2ValueNONAME[counter]>0.) // to be improved
298 {
299 if(qc2MaxValueNONAME < qc2ValueNONAME[counter]) qc2MaxValueNONAME = qc2ValueNONAME[counter];
300 if(qc2MinValueNONAME > qc2ValueNONAME[counter]) qc2MinValueNONAME = qc2ValueNONAME[counter];
301 }
302 }
303 if(qc4CommonHistRes && qc4CommonHistRes->GetHistIntFlow())
304 {
305 qc4ValueNONAME[counter] = (qc4CommonHistRes->GetHistIntFlow())->GetBinContent(1);
306 qc4ErrorNONAME[counter] = (qc4CommonHistRes->GetHistIntFlow())->GetBinError(1);
307 if(qc4ValueNONAME[counter]>0.) // to be improved
308 {
309 if(qc4MaxValueNONAME < qc4ValueNONAME[counter]) qc4MaxValueNONAME = qc4ValueNONAME[counter];
310 if(qc4MinValueNONAME > qc4ValueNONAME[counter]) qc4MinValueNONAME = qc4ValueNONAME[counter];
311 }
312 }
313 if(qc6CommonHistRes && qc6CommonHistRes->GetHistIntFlow())
314 {
315 qc6ValueNONAME[counter] = (qc6CommonHistRes->GetHistIntFlow())->GetBinContent(1);
316 qc6ErrorNONAME[counter] = (qc6CommonHistRes->GetHistIntFlow())->GetBinError(1);
317 if(qc6ValueNONAME[counter]>0.) // to be improved
318 {
319 if(qc6MaxValueNONAME < qc6ValueNONAME[counter]) qc6MaxValueNONAME = qc6ValueNONAME[counter];
320 if(qc6MinValueNONAME > qc6ValueNONAME[counter]) qc6MinValueNONAME = qc6ValueNONAME[counter];
321 }
322 }
323 if(qc8CommonHistRes && qc8CommonHistRes->GetHistIntFlow())
324 {
325 qc8ValueNONAME[counter] = (qc8CommonHistRes->GetHistIntFlow())->GetBinContent(1);
326 qc8ErrorNONAME[counter] = (qc8CommonHistRes->GetHistIntFlow())->GetBinError(1);
327 if(qc8ValueNONAME[counter]>0.) // to be improved
328 {
329 if(qc8MaxValueNONAME < qc8ValueNONAME[counter]) qc8MaxValueNONAME = qc8ValueNONAME[counter];
330 if(qc8MinValueNONAME > qc8ValueNONAME[counter]) qc8MinValueNONAME = qc8ValueNONAME[counter];
331 }
332 }
333 } // end of if(listQC)
334 } // end of if(fileQC)
335
e47370f7 336 // FQD:
337 TString fileNameFQD = presentDirName;
6a6afe42 338 fileNameFQD+="outputFQDanalysis";
339 (fileNameFQD+=type.Data())+=".root";
e47370f7 340 TFile *fileFQD = TFile::Open(fileNameFQD.Data(), "READ");
e47370f7 341 if(fileFQD)
342 {
6a6afe42 343 TList *listFQD = NULL;
344 AliFlowCommonHistResults *fqdCommonHistRes = NULL;
e47370f7 345 fileFQD->GetObject("cobjFQD",listFQD);
6a6afe42 346 fileFQD->Close();
e47370f7 347 if(listFQD)
348 {
349 fqdCommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (listFQD->FindObject("AliFlowCommonHistResultsFQD"));
6a6afe42 350 if(fqdCommonHistRes && fqdCommonHistRes->GetHistIntFlow())
351 {
352 fqdValueNONAME[counter] = (fqdCommonHistRes->GetHistIntFlow())->GetBinContent(1);
353 fqdErrorNONAME[counter] = (fqdCommonHistRes->GetHistIntFlow())->GetBinError(1);
354 if(fqdValueNONAME[counter]>0.) // to be improved
355 {
356 if(fqdMaxValueNONAME < fqdValueNONAME[counter]) fqdMaxValueNONAME = fqdValueNONAME[counter];
357 if(fqdMinValueNONAME > fqdValueNONAME[counter]) fqdMinValueNONAME = fqdValueNONAME[counter];
358 }
359 }
360 } // end of if(listFQD)
361 } // end of if(fileFQD)
e47370f7 362
48385911 363 // LYZ1:
364 TString fileNameLYZ1 = presentDirName;
365 fileNameLYZ1+="outputLYZ1analysis";
366 (fileNameLYZ1+=type.Data())+=".root";
367 TFile *fileLYZ1 = TFile::Open(fileNameLYZ1.Data(), "READ");
368 if(fileLYZ1)
369 {
370 TList *listLYZ1 = NULL;
371 AliFlowCommonHistResults *lyz1CommonHistRes = NULL;
372 fileLYZ1->GetObject("cobjLYZ1",listLYZ1);
373 fileLYZ1->Close();
374 if(listLYZ1)
375 {
376 lyz1CommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (listLYZ1->FindObject("AliFlowCommonHistResultsLYZ1"));
377 if(lyz1CommonHistRes && lyz1CommonHistRes->GetHistIntFlow())
378 {
379 lyz1ValueNONAME[counter] = (lyz1CommonHistRes->GetHistIntFlow())->GetBinContent(1);
380 lyz1ErrorNONAME[counter] = (lyz1CommonHistRes->GetHistIntFlow())->GetBinError(1);
381 if(lyz1ValueNONAME[counter]>0.) // to be improved
382 {
383 if(lyz1MaxValueNONAME < lyz1ValueNONAME[counter]) lyz1MaxValueNONAME = lyz1ValueNONAME[counter];
384 if(lyz1MinValueNONAME > lyz1ValueNONAME[counter]) lyz1MinValueNONAME = lyz1ValueNONAME[counter];
385 }
386 }
387 } // end of if(listLYZ1)
388 } // end of if(fileLYZ1)
6a6afe42 389
e47370f7 390 counter++;
391
392 } // end of for(Int_t iDir=0;iDir<nDirs;++iDir)
393
6a6afe42 394 // accessing the large statistics merged output .root files for each method:
395 // MCEP:
396 TString mergedOutputFileNameMCEP(pwd.Data());
397 ((mergedOutputFileNameMCEP+="outputMCEPanalysis")+=type.Data())+=".root";
398 TFile *mergedOutputFileMCEP = NULL;
399 TList *mergedOutputListMCEP = NULL;
400 Double_t mergedValueMCEP = 0.;
401 Double_t mergedErrorMCEP = 0.;
402 if(gSystem->AccessPathName(mergedOutputFileNameMCEP.Data(),kFileExists))
403 {
404 cout<<"WARNING: You do not have a merged output file "<<mergedOutputFileNameMCEP.Data()<<endl;
405 } else
406 {
407 mergedOutputFileMCEP = TFile::Open(mergedOutputFileNameMCEP.Data(),"READ");
408 if(mergedOutputFileMCEP)
409 {
410 mergedOutputFileMCEP->GetObject("cobjMCEP",mergedOutputListMCEP);
411 mergedOutputFileMCEP->Close();
412 if(mergedOutputListMCEP)
413 {
414 AliFlowCommonHistResults *mcepCommonHistRes = dynamic_cast<AliFlowCommonHistResults*>
415 (mergedOutputListMCEP->FindObject("AliFlowCommonHistResultsMCEP"));
416 if(mcepCommonHistRes && mcepCommonHistRes->GetHistIntFlow())
417 {
418 mergedValueMCEP = (mcepCommonHistRes->GetHistIntFlow())->GetBinContent(1);
419 mergedErrorMCEP = (mcepCommonHistRes->GetHistIntFlow())->GetBinError(1);
420 }
421 }
422 } // end of if(mergedOutputFileMCEP)
423 } // end of else
424
425 // SP:
426 TString mergedOutputFileNameSP(pwd.Data());
427 ((mergedOutputFileNameSP+="outputSPanalysis")+=type.Data())+=".root";
428 TFile *mergedOutputFileSP = NULL;
429 TList *mergedOutputListSP = NULL;
430 Double_t mergedValueSP = 0.;
431 Double_t mergedErrorSP = 0.;
432 if(gSystem->AccessPathName(mergedOutputFileNameSP.Data(),kFileExists))
433 {
434 cout<<"WARNING: You do not have a merged output file "<<mergedOutputFileNameSP.Data()<<endl;
435 } else
436 {
437 mergedOutputFileSP = TFile::Open(mergedOutputFileNameSP.Data(),"READ");
438 if(mergedOutputFileSP)
439 {
440 mergedOutputFileSP->GetObject("cobjSP",mergedOutputListSP);
441 mergedOutputFileSP->Close();
442 if(mergedOutputListSP)
443 {
444 AliFlowCommonHistResults *spCommonHistRes = dynamic_cast<AliFlowCommonHistResults*>
445 (mergedOutputListSP->FindObject("AliFlowCommonHistResultsSP"));
446 if(spCommonHistRes && spCommonHistRes->GetHistIntFlow())
447 {
448 mergedValueSP = (spCommonHistRes->GetHistIntFlow())->GetBinContent(1);
449 mergedErrorSP = (spCommonHistRes->GetHistIntFlow())->GetBinError(1);
450 }
451 }
452 } // end of if(mergedOutputFileSP)
453 } // end of else
e47370f7 454
6a6afe42 455 // GFC:
456 TString mergedOutputFileNameGFC(pwd.Data());
457 ((mergedOutputFileNameGFC+="outputGFCanalysis")+=type.Data())+=".root";
458 TFile *mergedOutputFileGFC = NULL;
459 TList *mergedOutputListGFC = NULL;
460 Double_t mergedValueGFC2 = 0.;
461 Double_t mergedErrorGFC2 = 0.;
462 Double_t mergedValueGFC4 = 0.;
463 Double_t mergedErrorGFC4 = 0.;
464 Double_t mergedValueGFC6 = 0.;
465 Double_t mergedErrorGFC6 = 0.;
466 Double_t mergedValueGFC8 = 0.;
467 Double_t mergedErrorGFC8 = 0.;
468 if(gSystem->AccessPathName(mergedOutputFileNameGFC.Data(),kFileExists))
469 {
470 cout<<"WARNING: You do not have a merged output file "<<mergedOutputFileNameGFC.Data()<<endl;
471 } else
472 {
473 mergedOutputFileGFC = TFile::Open(mergedOutputFileNameGFC.Data(),"READ");
474 if(mergedOutputFileGFC)
475 {
476 mergedOutputFileGFC->GetObject("cobjGFC",mergedOutputListGFC);
477 mergedOutputFileGFC->Close();
478 if(mergedOutputListGFC)
479 {
480 AliFlowCommonHistResults *gfc2CommonHistRes = dynamic_cast<AliFlowCommonHistResults*>
481 (mergedOutputListGFC->FindObject("AliFlowCommonHistResults2ndOrderGFC"));
482 AliFlowCommonHistResults *gfc4CommonHistRes = dynamic_cast<AliFlowCommonHistResults*>
483 (mergedOutputListGFC->FindObject("AliFlowCommonHistResults4thOrderGFC"));
484 AliFlowCommonHistResults *gfc6CommonHistRes = dynamic_cast<AliFlowCommonHistResults*>
485 (mergedOutputListGFC->FindObject("AliFlowCommonHistResults6thOrderGFC"));
486 AliFlowCommonHistResults *gfc8CommonHistRes = dynamic_cast<AliFlowCommonHistResults*>
487 (mergedOutputListGFC->FindObject("AliFlowCommonHistResults8thOrderGFC"));
488 if(gfc2CommonHistRes && gfc2CommonHistRes->GetHistIntFlow())
489 {
490 mergedValueGFC2 = (gfc2CommonHistRes->GetHistIntFlow())->GetBinContent(1);
491 mergedErrorGFC2 = (gfc2CommonHistRes->GetHistIntFlow())->GetBinError(1);
492 }
493 if(gfc4CommonHistRes && gfc4CommonHistRes->GetHistIntFlow())
494 {
495 mergedValueGFC4 = (gfc4CommonHistRes->GetHistIntFlow())->GetBinContent(1);
496 mergedErrorGFC4 = (gfc4CommonHistRes->GetHistIntFlow())->GetBinError(1);
497 }
498 if(gfc6CommonHistRes && gfc6CommonHistRes->GetHistIntFlow())
499 {
500 mergedValueGFC6 = (gfc6CommonHistRes->GetHistIntFlow())->GetBinContent(1);
501 mergedErrorGFC6 = (gfc6CommonHistRes->GetHistIntFlow())->GetBinError(1);
502 }
503 if(gfc8CommonHistRes && gfc8CommonHistRes->GetHistIntFlow())
504 {
505 mergedValueGFC8 = (gfc8CommonHistRes->GetHistIntFlow())->GetBinContent(1);
506 mergedErrorGFC8 = (gfc8CommonHistRes->GetHistIntFlow())->GetBinError(1);
507 }
508 }
509 } // end of if(mergedOutputFileGFC)
510 } // end of else
e47370f7 511
6a6afe42 512 // QC:
513 TString mergedOutputFileNameQC(pwd.Data());
514 ((mergedOutputFileNameQC+="outputQCanalysis")+=type.Data())+=".root";
515 TFile *mergedOutputFileQC = NULL;
516 TList *mergedOutputListQC = NULL;
517 Double_t mergedValueQC2 = 0.;
518 Double_t mergedErrorQC2 = 0.;
519 Double_t mergedValueQC4 = 0.;
520 Double_t mergedErrorQC4 = 0.;
521 Double_t mergedValueQC6 = 0.;
522 Double_t mergedErrorQC6 = 0.;
523 Double_t mergedValueQC8 = 0.;
524 Double_t mergedErrorQC8 = 0.;
525 if(gSystem->AccessPathName(mergedOutputFileNameQC.Data(),kFileExists))
526 {
527 cout<<"WARNING: You do not have a merged output file "<<mergedOutputFileNameQC.Data()<<endl;
528 } else
529 {
530 mergedOutputFileQC = TFile::Open(mergedOutputFileNameQC.Data(),"READ");
531 if(mergedOutputFileQC)
532 {
533 mergedOutputFileQC->GetObject("cobjQC",mergedOutputListQC);
534 mergedOutputFileQC->Close();
535 if(mergedOutputListQC)
536 {
537 AliFlowCommonHistResults *qc2CommonHistRes = dynamic_cast<AliFlowCommonHistResults*>
538 (mergedOutputListQC->FindObject("AliFlowCommonHistResults2ndOrderQC"));
539 AliFlowCommonHistResults *qc4CommonHistRes = dynamic_cast<AliFlowCommonHistResults*>
540 (mergedOutputListQC->FindObject("AliFlowCommonHistResults4thOrderQC"));
541 AliFlowCommonHistResults *qc6CommonHistRes = dynamic_cast<AliFlowCommonHistResults*>
542 (mergedOutputListQC->FindObject("AliFlowCommonHistResults6thOrderQC"));
543 AliFlowCommonHistResults *qc8CommonHistRes = dynamic_cast<AliFlowCommonHistResults*>
544 (mergedOutputListQC->FindObject("AliFlowCommonHistResults8thOrderQC"));
545 if(qc2CommonHistRes && qc2CommonHistRes->GetHistIntFlow())
546 {
547 mergedValueQC2 = (qc2CommonHistRes->GetHistIntFlow())->GetBinContent(1);
548 mergedErrorQC2 = (qc2CommonHistRes->GetHistIntFlow())->GetBinError(1);
549 }
550 if(qc4CommonHistRes && qc4CommonHistRes->GetHistIntFlow())
551 {
552 mergedValueQC4 = (qc4CommonHistRes->GetHistIntFlow())->GetBinContent(1);
553 mergedErrorQC4 = (qc4CommonHistRes->GetHistIntFlow())->GetBinError(1);
554 }
555 if(qc6CommonHistRes && qc6CommonHistRes->GetHistIntFlow())
556 {
557 mergedValueQC6 = (qc6CommonHistRes->GetHistIntFlow())->GetBinContent(1);
558 mergedErrorQC6 = (qc6CommonHistRes->GetHistIntFlow())->GetBinError(1);
559 }
560 if(qc8CommonHistRes && qc8CommonHistRes->GetHistIntFlow())
561 {
562 mergedValueQC8 = (qc8CommonHistRes->GetHistIntFlow())->GetBinContent(1);
563 mergedErrorQC8 = (qc8CommonHistRes->GetHistIntFlow())->GetBinError(1);
564 }
565 }
566 } // end of if(mergedOutputFileGFC)
567 } // end of else
568
569 // FQD:
570 TString mergedOutputFileNameFQD(pwd.Data());
571 ((mergedOutputFileNameFQD+="outputFQDanalysis")+=type.Data())+=".root";
572 TFile *mergedOutputFileFQD = NULL;
573 TList *mergedOutputListFQD = NULL;
574 Double_t mergedValueFQD = 0.;
575 Double_t mergedErrorFQD = 0.;
576 if(gSystem->AccessPathName(mergedOutputFileNameFQD.Data(),kFileExists))
577 {
578 cout<<"WARNING: You do not have a merged output file "<<mergedOutputFileNameFQD.Data()<<endl;
579 } else
580 {
581 mergedOutputFileFQD = TFile::Open(mergedOutputFileNameFQD.Data(),"READ");
582 if(mergedOutputFileFQD)
583 {
584 mergedOutputFileFQD->GetObject("cobjFQD",mergedOutputListFQD);
585 mergedOutputFileFQD->Close();
586 if(mergedOutputListFQD)
587 {
588 AliFlowCommonHistResults *fqdCommonHistRes = dynamic_cast<AliFlowCommonHistResults*>
589 (mergedOutputListFQD->FindObject("AliFlowCommonHistResultsFQD"));
590 if(fqdCommonHistRes && fqdCommonHistRes->GetHistIntFlow())
591 {
592 mergedValueFQD = (fqdCommonHistRes->GetHistIntFlow())->GetBinContent(1);
593 mergedErrorFQD = (fqdCommonHistRes->GetHistIntFlow())->GetBinError(1);
594 }
595 }
596 } // end of if(mergedOutputFileFQD)
597 } // end of else
598
48385911 599 // LYZ1:
600 TString mergedOutputFileNameLYZ1(pwd.Data());
601 ((mergedOutputFileNameLYZ1+="outputLYZ1analysis")+=type.Data())+=".root";
602 TFile *mergedOutputFileLYZ1 = NULL;
603 TList *mergedOutputListLYZ1 = NULL;
604 Double_t mergedValueLYZ1 = 0.;
605 Double_t mergedErrorLYZ1 = 0.;
606 if(gSystem->AccessPathName(mergedOutputFileNameLYZ1.Data(),kFileExists))
607 {
608 cout<<"WARNING: You do not have a merged output file "<<mergedOutputFileNameLYZ1.Data()<<endl;
609 } else
610 {
611 mergedOutputFileLYZ1 = TFile::Open(mergedOutputFileNameLYZ1.Data(),"READ");
612 if(mergedOutputFileLYZ1)
613 {
614 mergedOutputFileLYZ1->GetObject("cobjLYZ1",mergedOutputListLYZ1);
615 mergedOutputFileLYZ1->Close();
616 if(mergedOutputListLYZ1)
617 {
618 AliFlowCommonHistResults *lyz1CommonHistRes = dynamic_cast<AliFlowCommonHistResults*>
619 (mergedOutputListLYZ1->FindObject("AliFlowCommonHistResultsLYZ1"));
620 if(lyz1CommonHistRes && lyz1CommonHistRes->GetHistIntFlow())
621 {
622 mergedValueLYZ1 = (lyz1CommonHistRes->GetHistIntFlow())->GetBinContent(1);
623 mergedErrorLYZ1 = (lyz1CommonHistRes->GetHistIntFlow())->GetBinError(1);
624 }
625 }
626 } // end of if(mergedOutputFileLYZ1)
627 } // end of else
6a6afe42 628
b78897bc 629 // removing the title and stat. box from all histograms:
630 // gStyle->SetOptTitle(0);
e47370f7 631 gStyle->SetOptStat(0);
632
633 // box width:
634 const Double_t boxWidth = 0.25;
635
636 // the number of different methods:
637 const Int_t nMethods = 13;
638
6a6afe42 639 // the number of small statistics runs:
e47370f7 640 const Int_t nPoints = counter;
641
642 // booking the style histogram for the integrated flow results from all methods for NONAME, RPs and POIs:
e47370f7 643 TH1D* intFlowAll = new TH1D("intFlowAll","Integrated Flow",nMethods,0,nMethods);
644 //intFlowAll->SetLabelSize(0.036,"X");
645 //intFlowAll->SetLabelSize(0.036,"Y");
646 //intFlowAll->SetMarkerStyle(markerStyle);
647 //intFlowAll->SetMarkerColor(markerColor);
b78897bc 648 (intFlowAll->GetYaxis())->SetTickLength(0.01);
e47370f7 649 (intFlowAll->GetXaxis())->SetBinLabel(binMCEP,"v_{2}{MC}");
650 (intFlowAll->GetXaxis())->SetBinLabel(binSP,"v_{2}{SP}");
651 (intFlowAll->GetXaxis())->SetBinLabel(binGFC2,"v_{2}{2,GFC}");
652 (intFlowAll->GetXaxis())->SetBinLabel(binQC2,"v_{2}{2,QC}");
653 (intFlowAll->GetXaxis())->SetBinLabel(binGFC4,"v_{2}{4,GFC}");
654 (intFlowAll->GetXaxis())->SetBinLabel(binQC4,"v_{2}{4,QC}");
655 (intFlowAll->GetXaxis())->SetBinLabel(binGFC6,"v_{2}{6,GFC}");
656 (intFlowAll->GetXaxis())->SetBinLabel(binQC6,"v_{2}{6,QC}");
657 (intFlowAll->GetXaxis())->SetBinLabel(binGFC8,"v_{2}{8,GFC}");
658 (intFlowAll->GetXaxis())->SetBinLabel(binQC8,"v_{2}{8,QC}");
659 (intFlowAll->GetXaxis())->SetBinLabel(binFQD,"v_{2}{FQD}");
660 (intFlowAll->GetXaxis())->SetBinLabel(binLYZ1,"v_{2}{LYZ}");
661 (intFlowAll->GetXaxis())->SetBinLabel(binLYZEP,"v_{2}{LYZEP}");
e47370f7 662
663 //=============================================================================
6a6afe42 664 // NONAME histogram
e47370f7 665 //=============================================================================
666
667 TH1D *intFlowNONAME = new TH1D(*intFlowAll);
668
669 Double_t mcepNONAME[nPoints] = {0.};
670 Double_t spNONAME[nPoints] = {0.};
671 Double_t gfc2NONAME[nPoints] = {0.};
672 Double_t gfc4NONAME[nPoints] = {0.};
673 Double_t gfc6NONAME[nPoints] = {0.};
674 Double_t gfc8NONAME[nPoints] = {0.};
675 Double_t qc2NONAME[nPoints] = {0.};
676 Double_t qc4NONAME[nPoints] = {0.};
677 Double_t qc6NONAME[nPoints] = {0.};
678 Double_t qc8NONAME[nPoints] = {0.};
679 Double_t fqdNONAME[nPoints] = {0.};
680 Double_t lyz1NONAME[nPoints] = {0.};
681 Double_t lyzepNONAME[nPoints] = {0.};
682
683 for(Int_t i=0;i<nPoints;i++)
684 {
685 mcepNONAME[i]=binMCEP-0.5;
686 spNONAME[i]=binSP-0.5;
687 gfc2NONAME[i]=binGFC2-0.5;
688 gfc4NONAME[i]=binGFC4-0.5;
689 gfc6NONAME[i]=binGFC6-0.5;
690 gfc8NONAME[i]=binGFC8-0.5;
691 qc2NONAME[i]=binQC2-0.5;
692 qc4NONAME[i]=binQC4-0.5;
693 qc6NONAME[i]=binQC6-0.5;
694 qc8NONAME[i]=binQC8-0.5;
695 fqdNONAME[i]=binFQD-0.5;
696 lyz1NONAME[i]=binLYZ1-0.5;
697 lyzepNONAME[i]=binLYZEP-0.5;
698 }
699
700 // MCEP:
48385911 701 TGraphErrors *mcepMeanNONAME = new TGraphErrors(1);
702 mcepMeanNONAME->SetPoint(0,binMCEP-0.5,mergedValueMCEP);
703 mcepMeanNONAME->SetPointError(0,0,mergedErrorMCEP);
6a6afe42 704 mcepMeanNONAME->SetMarkerStyle(25);
705 mcepMeanNONAME->SetMarkerColor(kBlack);
48385911 706 mcepMeanNONAME->SetLineColor(kBlack);
6a6afe42 707 mcepMeanNONAME->SetMarkerSize(1.25);
708
e47370f7 709 TGraph* mcepTGraphNONAME = new TGraph(nPoints, mcepNONAME, mcepValueNONAME);
fd46c3dd 710 mcepTGraphNONAME->SetMarkerStyle(21);
48385911 711 mcepTGraphNONAME->SetMarkerColor(kGray+1);
fd46c3dd 712 mcepTGraphNONAME->SetMarkerSize(0.75);
e47370f7 713
714 TGraph *mcepBoxNONAME = new TGraph(5);
6a6afe42 715 mcepBoxNONAME->SetPoint(0,(binMCEP-0.5)-boxWidth,mcepMinValueNONAME);
716 mcepBoxNONAME->SetPoint(1,(binMCEP-0.5)+boxWidth,mcepMinValueNONAME);
717 mcepBoxNONAME->SetPoint(2,(binMCEP-0.5)+boxWidth,mcepMaxValueNONAME);
718 mcepBoxNONAME->SetPoint(3,(binMCEP-0.5)-boxWidth,mcepMaxValueNONAME);
719 mcepBoxNONAME->SetPoint(4,(binMCEP-0.5)-boxWidth,mcepMinValueNONAME);
e47370f7 720 mcepBoxNONAME->SetFillStyle(1001);
721 mcepBoxNONAME->SetFillColor(kGray);
6a6afe42 722
e47370f7 723 // SP:
48385911 724 TGraphErrors *spMeanNONAME = new TGraphErrors(1);
6a6afe42 725 spMeanNONAME->SetPoint(0,binSP-0.5,mergedValueSP);
48385911 726 spMeanNONAME->SetPointError(0,0,mergedErrorSP);
6a6afe42 727 spMeanNONAME->SetMarkerStyle(25);
48385911 728 spMeanNONAME->SetMarkerColor(kBlack);
729 spMeanNONAME->SetLineColor(kBlack);
6a6afe42 730 spMeanNONAME->SetMarkerSize(1.25);
731
e47370f7 732 TGraph* spTGraphNONAME = new TGraph(nPoints, spNONAME, spValueNONAME);
fd46c3dd 733 spTGraphNONAME->SetMarkerStyle(21);
48385911 734 spTGraphNONAME->SetMarkerColor(kViolet-8);
fd46c3dd 735 spTGraphNONAME->SetMarkerSize(0.75);
e47370f7 736
737 TGraph *spBoxNONAME = new TGraph(5);
6a6afe42 738 spBoxNONAME->SetPoint(0,(binSP-0.5)-boxWidth,spMinValueNONAME);
739 spBoxNONAME->SetPoint(1,(binSP-0.5)+boxWidth,spMinValueNONAME);
740 spBoxNONAME->SetPoint(2,(binSP-0.5)+boxWidth,spMaxValueNONAME);
741 spBoxNONAME->SetPoint(3,(binSP-0.5)-boxWidth,spMaxValueNONAME);
742 spBoxNONAME->SetPoint(4,(binSP-0.5)-boxWidth,spMinValueNONAME);
e47370f7 743 spBoxNONAME->SetFillStyle(1001);
744 spBoxNONAME->SetFillColor(kViolet-9);
745
746 // GFC{2}:
48385911 747 TGraphErrors *gfc2MeanNONAME = new TGraphErrors(1);
6a6afe42 748 gfc2MeanNONAME->SetPoint(0,binGFC2-0.5,mergedValueGFC2);
48385911 749 gfc2MeanNONAME->SetPointError(0,0,mergedErrorGFC2);
6a6afe42 750 gfc2MeanNONAME->SetMarkerStyle(25);
48385911 751 gfc2MeanNONAME->SetMarkerColor(kBlack);
752 gfc2MeanNONAME->SetLineColor(kBlack);
6a6afe42 753 gfc2MeanNONAME->SetMarkerSize(1.25);
754
e47370f7 755 TGraph* gfc2TGraphNONAME = new TGraph(nPoints, gfc2NONAME, gfc2ValueNONAME);
fd46c3dd 756 gfc2TGraphNONAME->SetMarkerStyle(21);
48385911 757 gfc2TGraphNONAME->SetMarkerColor(kBlue-9);
fd46c3dd 758 gfc2TGraphNONAME->SetMarkerSize(0.75);
e47370f7 759
760 TGraph *gfc2BoxNONAME = new TGraph(5);
6a6afe42 761 gfc2BoxNONAME->SetPoint(0,(binGFC2-0.5)-boxWidth,gfc2MinValueNONAME);
762 gfc2BoxNONAME->SetPoint(1,(binGFC2-0.5)+boxWidth,gfc2MinValueNONAME);
763 gfc2BoxNONAME->SetPoint(2,(binGFC2-0.5)+boxWidth,gfc2MaxValueNONAME);
764 gfc2BoxNONAME->SetPoint(3,(binGFC2-0.5)-boxWidth,gfc2MaxValueNONAME);
765 gfc2BoxNONAME->SetPoint(4,(binGFC2-0.5)-boxWidth,gfc2MinValueNONAME);
e47370f7 766 gfc2BoxNONAME->SetFillStyle(1001);
767 gfc2BoxNONAME->SetFillColor(kBlue-10);
768
769 // GFC{4}:
48385911 770 TGraphErrors *gfc4MeanNONAME = new TGraphErrors(1);
6a6afe42 771 gfc4MeanNONAME->SetPoint(0,binGFC4-0.5,mergedValueGFC4);
48385911 772 gfc4MeanNONAME->SetPointError(0,0,mergedErrorGFC4);
6a6afe42 773 gfc4MeanNONAME->SetMarkerStyle(25);
48385911 774 gfc4MeanNONAME->SetMarkerColor(kBlack);
775 gfc4MeanNONAME->SetLineColor(kBlack);
6a6afe42 776 gfc4MeanNONAME->SetMarkerSize(1.25);
777
e47370f7 778 TGraph* gfc4TGraphNONAME = new TGraph(nPoints, gfc4NONAME, gfc4ValueNONAME);
fd46c3dd 779 gfc4TGraphNONAME->SetMarkerStyle(21);
48385911 780 gfc4TGraphNONAME->SetMarkerColor(kBlue-9);
fd46c3dd 781 gfc4TGraphNONAME->SetMarkerSize(0.75);
e47370f7 782
783 TGraph *gfc4BoxNONAME = new TGraph(5);
6a6afe42 784 gfc4BoxNONAME->SetPoint(0,(binGFC4-0.5)-boxWidth,gfc4MinValueNONAME);
785 gfc4BoxNONAME->SetPoint(1,(binGFC4-0.5)+boxWidth,gfc4MinValueNONAME);
786 gfc4BoxNONAME->SetPoint(2,(binGFC4-0.5)+boxWidth,gfc4MaxValueNONAME);
787 gfc4BoxNONAME->SetPoint(3,(binGFC4-0.5)-boxWidth,gfc4MaxValueNONAME);
788 gfc4BoxNONAME->SetPoint(4,(binGFC4-0.5)-boxWidth,gfc4MinValueNONAME);
e47370f7 789 gfc4BoxNONAME->SetFillStyle(1001);
790 gfc4BoxNONAME->SetFillColor(kBlue-10);
6a6afe42 791
e47370f7 792 // GFC{6}:
48385911 793 TGraphErrors *gfc6MeanNONAME = new TGraphErrors(1);
6a6afe42 794 gfc6MeanNONAME->SetPoint(0,binGFC6-0.5,mergedValueGFC6);
48385911 795 gfc6MeanNONAME->SetPointError(0,0,mergedErrorGFC6);
6a6afe42 796 gfc6MeanNONAME->SetMarkerStyle(25);
48385911 797 gfc6MeanNONAME->SetMarkerColor(kBlack);
798 gfc6MeanNONAME->SetLineColor(kBlack);
6a6afe42 799 gfc6MeanNONAME->SetMarkerSize(1.25);
800
e47370f7 801 TGraph* gfc6TGraphNONAME = new TGraph(nPoints, gfc6NONAME, gfc6ValueNONAME);
fd46c3dd 802 gfc6TGraphNONAME->SetMarkerStyle(21);
48385911 803 gfc6TGraphNONAME->SetMarkerColor(kBlue-9);
fd46c3dd 804 gfc6TGraphNONAME->SetMarkerSize(0.75);
e47370f7 805
806 TGraph *gfc6BoxNONAME = new TGraph(5);
6a6afe42 807 gfc6BoxNONAME->SetPoint(0,(binGFC6-0.5)-boxWidth,gfc6MinValueNONAME);
808 gfc6BoxNONAME->SetPoint(1,(binGFC6-0.5)+boxWidth,gfc6MinValueNONAME);
809 gfc6BoxNONAME->SetPoint(2,(binGFC6-0.5)+boxWidth,gfc6MaxValueNONAME);
810 gfc6BoxNONAME->SetPoint(3,(binGFC6-0.5)-boxWidth,gfc6MaxValueNONAME);
811 gfc6BoxNONAME->SetPoint(4,(binGFC6-0.5)-boxWidth,gfc6MinValueNONAME);
e47370f7 812 gfc6BoxNONAME->SetFillStyle(1001);
813 gfc6BoxNONAME->SetFillColor(kBlue-10);
6a6afe42 814
e47370f7 815 // GFC{8}:
48385911 816 TGraphErrors *gfc8MeanNONAME = new TGraphErrors(1);
6a6afe42 817 gfc8MeanNONAME->SetPoint(0,binGFC8-0.5,mergedValueGFC8);
48385911 818 gfc8MeanNONAME->SetPointError(0,0,mergedErrorGFC8);
6a6afe42 819 gfc8MeanNONAME->SetMarkerStyle(25);
48385911 820 gfc8MeanNONAME->SetMarkerColor(kBlack);
821 gfc8MeanNONAME->SetLineColor(kBlack);
6a6afe42 822 gfc8MeanNONAME->SetMarkerSize(1.25);
823
e47370f7 824 TGraph* gfc8TGraphNONAME = new TGraph(nPoints, gfc8NONAME, gfc8ValueNONAME);
fd46c3dd 825 gfc8TGraphNONAME->SetMarkerStyle(21);
48385911 826 gfc8TGraphNONAME->SetMarkerColor(kBlue-9);
fd46c3dd 827 gfc8TGraphNONAME->SetMarkerSize(0.75);
e47370f7 828
829 TGraph *gfc8BoxNONAME = new TGraph(5);
6a6afe42 830 gfc8BoxNONAME->SetPoint(0,(binGFC8-0.5)-boxWidth,gfc8MinValueNONAME);
831 gfc8BoxNONAME->SetPoint(1,(binGFC8-0.5)+boxWidth,gfc8MinValueNONAME);
832 gfc8BoxNONAME->SetPoint(2,(binGFC8-0.5)+boxWidth,gfc8MaxValueNONAME);
833 gfc8BoxNONAME->SetPoint(3,(binGFC8-0.5)-boxWidth,gfc8MaxValueNONAME);
834 gfc8BoxNONAME->SetPoint(4,(binGFC8-0.5)-boxWidth,gfc8MinValueNONAME);
e47370f7 835 gfc8BoxNONAME->SetFillStyle(1001);
836 gfc8BoxNONAME->SetFillColor(kBlue-10);
837
838 // QC{2}:
48385911 839 TGraphErrors *qc2MeanNONAME = new TGraphErrors(1);
6a6afe42 840 qc2MeanNONAME->SetPoint(0,binQC2-0.5,mergedValueQC2);
48385911 841 qc2MeanNONAME->SetPointError(0,0,mergedErrorQC2);
6a6afe42 842 qc2MeanNONAME->SetMarkerStyle(25);
48385911 843 qc2MeanNONAME->SetMarkerColor(kBlack);
844 qc2MeanNONAME->SetLineColor(kBlack);
6a6afe42 845 qc2MeanNONAME->SetMarkerSize(1.25);
846
e47370f7 847 TGraph* qc2TGraphNONAME = new TGraph(nPoints, qc2NONAME, qc2ValueNONAME);
fd46c3dd 848 qc2TGraphNONAME->SetMarkerStyle(21);
48385911 849 qc2TGraphNONAME->SetMarkerColor(kRed-7);
fd46c3dd 850 qc2TGraphNONAME->SetMarkerSize(0.75);
e47370f7 851
852 TGraph *qc2BoxNONAME = new TGraph(5);
6a6afe42 853 qc2BoxNONAME->SetPoint(0,(binQC2-0.5)-boxWidth,qc2MinValueNONAME);
854 qc2BoxNONAME->SetPoint(1,(binQC2-0.5)+boxWidth,qc2MinValueNONAME);
855 qc2BoxNONAME->SetPoint(2,(binQC2-0.5)+boxWidth,qc2MaxValueNONAME);
856 qc2BoxNONAME->SetPoint(3,(binQC2-0.5)-boxWidth,qc2MaxValueNONAME);
857 qc2BoxNONAME->SetPoint(4,(binQC2-0.5)-boxWidth,qc2MinValueNONAME);
e47370f7 858 qc2BoxNONAME->SetFillStyle(1001);
859 qc2BoxNONAME->SetFillColor(kRed-10);
860
861 // QC{4}:
48385911 862 TGraphErrors *qc4MeanNONAME = new TGraphErrors(1);
6a6afe42 863 qc4MeanNONAME->SetPoint(0,binQC4-0.5,mergedValueQC4);
48385911 864 qc4MeanNONAME->SetPointError(0,0,mergedErrorQC4);
6a6afe42 865 qc4MeanNONAME->SetMarkerStyle(25);
48385911 866 qc4MeanNONAME->SetMarkerColor(kBlack);
867 qc4MeanNONAME->SetLineColor(kBlack);
6a6afe42 868 qc4MeanNONAME->SetMarkerSize(1.25);
869
e47370f7 870 TGraph* qc4TGraphNONAME = new TGraph(nPoints, qc4NONAME, qc4ValueNONAME);
fd46c3dd 871 qc4TGraphNONAME->SetMarkerStyle(21);
48385911 872 qc4TGraphNONAME->SetMarkerColor(kRed-7);
fd46c3dd 873 qc4TGraphNONAME->SetMarkerSize(0.75);
e47370f7 874
875 TGraph *qc4BoxNONAME = new TGraph(5);
6a6afe42 876 qc4BoxNONAME->SetPoint(0,(binQC4-0.5)-boxWidth,qc4MinValueNONAME);
877 qc4BoxNONAME->SetPoint(1,(binQC4-0.5)+boxWidth,qc4MinValueNONAME);
878 qc4BoxNONAME->SetPoint(2,(binQC4-0.5)+boxWidth,qc4MaxValueNONAME);
879 qc4BoxNONAME->SetPoint(3,(binQC4-0.5)-boxWidth,qc4MaxValueNONAME);
880 qc4BoxNONAME->SetPoint(4,(binQC4-0.5)-boxWidth,qc4MinValueNONAME);
e47370f7 881 qc4BoxNONAME->SetFillStyle(1001);
882 qc4BoxNONAME->SetFillColor(kRed-10);
6a6afe42 883
e47370f7 884 // QC{6}:
48385911 885 TGraphErrors *qc6MeanNONAME = new TGraphErrors(1);
6a6afe42 886 qc6MeanNONAME->SetPoint(0,binQC6-0.5,mergedValueQC6);
48385911 887 qc6MeanNONAME->SetPointError(0,0,mergedErrorQC6);
6a6afe42 888 qc6MeanNONAME->SetMarkerStyle(25);
48385911 889 qc6MeanNONAME->SetMarkerColor(kBlack);
890 qc6MeanNONAME->SetLineColor(kBlack);
6a6afe42 891 qc6MeanNONAME->SetMarkerSize(1.25);
892
e47370f7 893 TGraph* qc6TGraphNONAME = new TGraph(nPoints, qc6NONAME, qc6ValueNONAME);
fd46c3dd 894 qc6TGraphNONAME->SetMarkerStyle(21);
48385911 895 qc6TGraphNONAME->SetMarkerColor(kRed-7);
fd46c3dd 896 qc6TGraphNONAME->SetMarkerSize(0.75);
e47370f7 897
898 TGraph *qc6BoxNONAME = new TGraph(5);
6a6afe42 899 qc6BoxNONAME->SetPoint(0,(binQC6-0.5)-boxWidth,qc6MinValueNONAME);
900 qc6BoxNONAME->SetPoint(1,(binQC6-0.5)+boxWidth,qc6MinValueNONAME);
901 qc6BoxNONAME->SetPoint(2,(binQC6-0.5)+boxWidth,qc6MaxValueNONAME);
902 qc6BoxNONAME->SetPoint(3,(binQC6-0.5)-boxWidth,qc6MaxValueNONAME);
903 qc6BoxNONAME->SetPoint(4,(binQC6-0.5)-boxWidth,qc6MinValueNONAME);
e47370f7 904 qc6BoxNONAME->SetFillStyle(1001);
905 qc6BoxNONAME->SetFillColor(kRed-10);
6a6afe42 906
e47370f7 907 // QC{8}:
48385911 908 TGraphErrors *qc8MeanNONAME = new TGraphErrors(1);
6a6afe42 909 qc8MeanNONAME->SetPoint(0,binQC8-0.5,mergedValueQC8);
48385911 910 qc8MeanNONAME->SetPointError(0,0,mergedErrorQC8);
6a6afe42 911 qc8MeanNONAME->SetMarkerStyle(25);
48385911 912 qc8MeanNONAME->SetMarkerColor(kBlack);
913 qc8MeanNONAME->SetLineColor(kBlack);
6a6afe42 914 qc8MeanNONAME->SetMarkerSize(1.25);
915
e47370f7 916 TGraph* qc8TGraphNONAME = new TGraph(nPoints, qc8NONAME, qc8ValueNONAME);
fd46c3dd 917 qc8TGraphNONAME->SetMarkerStyle(21);
48385911 918 qc8TGraphNONAME->SetMarkerColor(kRed-7);
fd46c3dd 919 qc8TGraphNONAME->SetMarkerSize(0.75);
e47370f7 920
921 TGraph *qc8BoxNONAME = new TGraph(5);
6a6afe42 922 qc8BoxNONAME->SetPoint(0,(binQC8-0.5)-boxWidth,qc8MinValueNONAME);
923 qc8BoxNONAME->SetPoint(1,(binQC8-0.5)+boxWidth,qc8MinValueNONAME);
924 qc8BoxNONAME->SetPoint(2,(binQC8-0.5)+boxWidth,qc8MaxValueNONAME);
925 qc8BoxNONAME->SetPoint(3,(binQC8-0.5)-boxWidth,qc8MaxValueNONAME);
926 qc8BoxNONAME->SetPoint(4,(binQC8-0.5)-boxWidth,qc8MinValueNONAME);
e47370f7 927 qc8BoxNONAME->SetFillStyle(1001);
928 qc8BoxNONAME->SetFillColor(kRed-10);
929
930 // FQD:
48385911 931 TGraphErrors *fqdMeanNONAME = new TGraphErrors(1);
6a6afe42 932 fqdMeanNONAME->SetPoint(0,binFQD-0.5,mergedValueFQD);
48385911 933 fqdMeanNONAME->SetPointError(0,0,mergedErrorFQD);
6a6afe42 934 fqdMeanNONAME->SetMarkerStyle(25);
48385911 935 fqdMeanNONAME->SetMarkerColor(kBlack);
936 fqdMeanNONAME->SetLineColor(kBlack);
6a6afe42 937 fqdMeanNONAME->SetMarkerSize(1.25);
938
e47370f7 939 TGraph* fqdTGraphNONAME = new TGraph(nPoints, fqdNONAME, fqdValueNONAME);
fd46c3dd 940 fqdTGraphNONAME->SetMarkerStyle(21);
48385911 941 fqdTGraphNONAME->SetMarkerColor(kOrange-8);
fd46c3dd 942 fqdTGraphNONAME->SetMarkerSize(0.75);
e47370f7 943
944 TGraph *fqdBoxNONAME = new TGraph(5);
6a6afe42 945 fqdBoxNONAME->SetPoint(0,(binFQD-0.5)-boxWidth,fqdMinValueNONAME);
946 fqdBoxNONAME->SetPoint(1,(binFQD-0.5)+boxWidth,fqdMinValueNONAME);
947 fqdBoxNONAME->SetPoint(2,(binFQD-0.5)+boxWidth,fqdMaxValueNONAME);
948 fqdBoxNONAME->SetPoint(3,(binFQD-0.5)-boxWidth,fqdMaxValueNONAME);
949 fqdBoxNONAME->SetPoint(4,(binFQD-0.5)-boxWidth,fqdMinValueNONAME);
e47370f7 950 fqdBoxNONAME->SetFillStyle(1001);
951 fqdBoxNONAME->SetFillColor(kOrange-9);
952
48385911 953 // LYZ1:
954 TGraphErrors *lyz1MeanNONAME = new TGraphErrors(1);
955 lyz1MeanNONAME->SetPoint(0,binLYZ1-0.5,mergedValueLYZ1);
956 lyz1MeanNONAME->SetPointError(0,0,mergedErrorLYZ1);
957 lyz1MeanNONAME->SetMarkerStyle(25);
958 lyz1MeanNONAME->SetMarkerColor(kBlack);
959 lyz1MeanNONAME->SetLineColor(kBlack);
960 lyz1MeanNONAME->SetMarkerSize(1.25);
961
962 TGraph* lyz1TGraphNONAME = new TGraph(nPoints, lyz1NONAME, lyz1ValueNONAME);
963 lyz1TGraphNONAME->SetMarkerStyle(21);
964 lyz1TGraphNONAME->SetMarkerColor(kYellow-5);
965 lyz1TGraphNONAME->SetMarkerSize(0.75);
966
967 TGraph *lyz1BoxNONAME = new TGraph(5);
968 lyz1BoxNONAME->SetPoint(0,(binLYZ1-0.5)-boxWidth,lyz1MinValueNONAME);
969 lyz1BoxNONAME->SetPoint(1,(binLYZ1-0.5)+boxWidth,lyz1MinValueNONAME);
970 lyz1BoxNONAME->SetPoint(2,(binLYZ1-0.5)+boxWidth,lyz1MaxValueNONAME);
971 lyz1BoxNONAME->SetPoint(3,(binLYZ1-0.5)-boxWidth,lyz1MaxValueNONAME);
972 lyz1BoxNONAME->SetPoint(4,(binLYZ1-0.5)-boxWidth,lyz1MinValueNONAME);
973 lyz1BoxNONAME->SetFillStyle(1001);
974 lyz1BoxNONAME->SetFillColor(kYellow-8);
975
e47370f7 976 TCanvas* intFlowCanvasNONAME = new TCanvas("Integrated Flow NONAME","Integrated Flow NONAME",1000,600);
977
978 intFlowCanvasNONAME->Divide(2,1);
979
980 // 1st pad is for plot:
981 (intFlowCanvasNONAME->cd(1))->SetPad(0.0,0.0,0.75,1.0);
982
6a6afe42 983
e47370f7 984 if(intFlowNONAME)
985 {
b78897bc 986 TString intFlowNameNONAME("Superimposing ");
6a6afe42 987 intFlowNameNONAME+=counter;
b78897bc 988 intFlowNameNONAME+=" independent runs";
989 intFlowNONAME->SetTitle(intFlowNameNONAME.Data());
e47370f7 990 (intFlowNONAME->GetYaxis())->SetRangeUser(0,0.20);
991 intFlowNONAME->Draw();
992 }
993
6a6afe42 994 // MCEP:
b78897bc 995 if(mcepBoxNONAME && mcepMinValueNONAME < 1000.) mcepBoxNONAME->Draw("LFSAME");
e47370f7 996 if(mcepTGraphNONAME) mcepTGraphNONAME->Draw("PSAME");
6a6afe42 997 if(mcepMeanNONAME) mcepMeanNONAME->Draw("PSAME");
e47370f7 998
6a6afe42 999 // SP:
b78897bc 1000 if(spBoxNONAME && spMinValueNONAME < 1000.) spBoxNONAME->Draw("LFSAME");
e47370f7 1001 if(spTGraphNONAME) spTGraphNONAME->Draw("PSAME");
6a6afe42 1002 if(spMeanNONAME) spMeanNONAME->Draw("PSAME");
e47370f7 1003
6a6afe42 1004 // GFC{2}:
b78897bc 1005 if(gfc2BoxNONAME && gfc2MinValueNONAME < 1000.) gfc2BoxNONAME->Draw("LFSAME");
e47370f7 1006 if(gfc2TGraphNONAME) gfc2TGraphNONAME->Draw("PSAME");
6a6afe42 1007 if(gfc2MeanNONAME) gfc2MeanNONAME->Draw("PSAME");
1008
1009 // GFC{4}:
b78897bc 1010 if(gfc4BoxNONAME && gfc4MinValueNONAME < 1000.) gfc4BoxNONAME->Draw("LFSAME");
e47370f7 1011 if(gfc4TGraphNONAME) gfc4TGraphNONAME->Draw("PSAME");
6a6afe42 1012 if(gfc4MeanNONAME) gfc4MeanNONAME->Draw("PSAME");
1013
1014 // GFC{6}:
b78897bc 1015 if(gfc6BoxNONAME && gfc6MinValueNONAME < 1000.) gfc6BoxNONAME->Draw("LFSAME");
e47370f7 1016 if(gfc6TGraphNONAME) gfc6TGraphNONAME->Draw("PSAME");
6a6afe42 1017 if(gfc6MeanNONAME) gfc6MeanNONAME->Draw("PSAME");
1018
1019 // GFC{8}:
b78897bc 1020 if(gfc8BoxNONAME && gfc8MinValueNONAME < 1000.) gfc8BoxNONAME->Draw("LFSAME");
e47370f7 1021 if(gfc8TGraphNONAME) gfc8TGraphNONAME->Draw("PSAME");
6a6afe42 1022 if(gfc8MeanNONAME) gfc8MeanNONAME->Draw("PSAME");
e47370f7 1023
6a6afe42 1024 // QC{2}:
b78897bc 1025 if(qc2BoxNONAME && qc2MinValueNONAME < 1000.) qc2BoxNONAME->Draw("LFSAME");
e47370f7 1026 if(qc2TGraphNONAME) qc2TGraphNONAME->Draw("PSAME");
6a6afe42 1027 if(qc2MeanNONAME) qc2MeanNONAME->Draw("PSAME");
1028
1029 // QC{4}:
b78897bc 1030 if(qc4BoxNONAME && qc4MinValueNONAME < 1000.) qc4BoxNONAME->Draw("LFSAME");
e47370f7 1031 if(qc4TGraphNONAME) qc4TGraphNONAME->Draw("PSAME");
6a6afe42 1032 if(qc4MeanNONAME) qc4MeanNONAME->Draw("PSAME");
1033
1034 // QC{6}:
b78897bc 1035 if(qc6BoxNONAME && qc6MinValueNONAME < 1000.) qc6BoxNONAME->Draw("LFSAME");
e47370f7 1036 if(qc6TGraphNONAME) qc6TGraphNONAME->Draw("PSAME");
6a6afe42 1037 if(qc6MeanNONAME) qc6MeanNONAME->Draw("PSAME");
1038
1039 // QC{8}:
b78897bc 1040 if(qc8BoxNONAME && qc8MinValueNONAME < 1000.) qc8BoxNONAME->Draw("LFSAME");
e47370f7 1041 if(qc8TGraphNONAME) qc8TGraphNONAME->Draw("PSAME");
6a6afe42 1042 if(qc8MeanNONAME) qc8MeanNONAME->Draw("PSAME");
e47370f7 1043
6a6afe42 1044 // FQD:
b78897bc 1045 if(fqdBoxNONAME && fqdMinValueNONAME < 1000.) fqdBoxNONAME->Draw("LFSAME");
e47370f7 1046 if(fqdTGraphNONAME) fqdTGraphNONAME->Draw("PSAME");
6a6afe42 1047 if(fqdMeanNONAME) fqdMeanNONAME->Draw("PSAME");
1048
48385911 1049 // LYZ1:
1050 if(lyz1BoxNONAME && lyz1MinValueNONAME < 1000.) lyz1BoxNONAME->Draw("LFSAME");
1051 if(lyz1TGraphNONAME) lyz1TGraphNONAME->Draw("PSAME");
1052 if(lyz1MeanNONAME) lyz1MeanNONAME->Draw("PSAME");
b78897bc 1053
1054 // 2nd pad is for legend:
e47370f7 1055 (intFlowCanvasNONAME->cd(2))->SetPad(0.75,0.0,1.0,1.0);
6a6afe42 1056
b78897bc 1057 // count real estimates:
1058 Int_t mcepCountRealNONAME = 0;
1059 Int_t spCountRealNONAME = 0;
1060 Int_t gfc2CountRealNONAME = 0;
1061 Int_t gfc4CountRealNONAME = 0;
1062 Int_t gfc6CountRealNONAME = 0;
1063 Int_t gfc8CountRealNONAME = 0;
1064 Int_t qc2CountRealNONAME = 0;
1065 Int_t qc4CountRealNONAME = 0;
1066 Int_t qc6CountRealNONAME = 0;
1067 Int_t qc8CountRealNONAME = 0;
1068 Int_t fqdCountRealNONAME = 0;
48385911 1069 Int_t lyz1CountRealNONAME = 0;
6a6afe42 1070
1071 for(Int_t i=0;i<nEstimates;i++)
b78897bc 1072 {
1073 if(mcepValueNONAME[i]>0.) mcepCountRealNONAME++;
1074 if(spValueNONAME[i]>0.) spCountRealNONAME++;
1075 if(gfc2ValueNONAME[i]>0.) gfc2CountRealNONAME++;
1076 if(gfc4ValueNONAME[i]>0.) gfc4CountRealNONAME++;
1077 if(gfc6ValueNONAME[i]>0.) gfc6CountRealNONAME++;
1078 if(gfc8ValueNONAME[i]>0.) gfc8CountRealNONAME++;
1079 if(qc2ValueNONAME[i]>0.) qc2CountRealNONAME++;
1080 if(qc4ValueNONAME[i]>0.) qc4CountRealNONAME++;
1081 if(qc6ValueNONAME[i]>0.) qc6CountRealNONAME++;
1082 if(qc8ValueNONAME[i]>0.) qc8CountRealNONAME++;
1083 if(fqdValueNONAME[i]>0.) fqdCountRealNONAME++;
48385911 1084 if(lyz1ValueNONAME[i]>0.) lyz1CountRealNONAME++;
b78897bc 1085 }
1086
1087 TPaveText *textDefaultNONAME = new TPaveText(0.05,0.67,0.95,0.90,"NDC");
1088 textDefaultNONAME->SetTextFont(72);
1089 textDefaultNONAME->SetTextSize(0.08);
1090
1091 TString *entryDefaultRealNONAME = new TString("Real estimates");
1092 //TString *entryDefaultOutOfNONAME = new TString("out of");
1093 TString *entryDefaultTotalNumberNONAME = new TString(" out of total number of ");
1094 TString *entryDefaultTotalIndNONAME = new TString("independent");
1095 TString *entryDefaultTotalSimNONAME = new TString("simulations:");
1096
1097 textDefaultNONAME->AddText(entryDefaultRealNONAME->Data());
1098 //textDefaultNONAME->AddText(entryDefaultOutOfNONAME->Data());
1099 textDefaultNONAME->AddText(entryDefaultTotalNumberNONAME->Data());
1100 textDefaultNONAME->AddText(entryDefaultTotalIndNONAME->Data());
1101 textDefaultNONAME->AddText(entryDefaultTotalSimNONAME->Data());
1102
1103 // results:
1104 TPaveText *textResultsNONAME = new TPaveText(0.05,0.12,0.95,0.60,"NDC");
1105 textResultsNONAME->SetTextFont(72);
1106 textResultsNONAME->SetTextSize(0.06);
1107
1108 // entries:
1109 TString *entryIntFlowMCNONAME = new TString("MC ................ ");
1110 TString *entryIntFlowSPNONAME = new TString("SP ................ ");
1111 TString *entryIntFlowGFC2NONAME = new TString("GFC{2} ........ ");
1112 TString *entryIntFlowGFC4NONAME = new TString("GFC{4} ........ ");
1113 TString *entryIntFlowGFC6NONAME = new TString("GFC{6} ........ ");
1114 TString *entryIntFlowGFC8NONAME = new TString("GFC{8} ........ ");
1115 TString *entryIntFlowQC2NONAME = new TString("QC{2} .......... ");
1116 TString *entryIntFlowQC4NONAME = new TString("QC{4} .......... ");
1117 TString *entryIntFlowQC6NONAME = new TString("QC{6} .......... ");
1118 TString *entryIntFlowQC8NONAME = new TString("QC{8} .......... ");
1119 TString *entryIntFlowFQDNONAME = new TString("FQD ............. ");
1120 TString *entryIntFlowLYZ1NONAME = new TString("LYZ ............. ");
1121 TString *entryIntFlowLYZEPNONAME = new TString("LYZEP ........ ");
1122
1123 if(entryIntFlowMCNONAME)
1124 {
1125 (*entryIntFlowMCNONAME)+=(Long_t)mcepCountRealNONAME;
1126 entryIntFlowMCNONAME->Append(" out of ");
1127 (*entryIntFlowMCNONAME)+=(Long_t)counter;
1128 if(textResultsNONAME)textResultsNONAME->AddText(entryIntFlowMCNONAME->Data());
1129 }
1130
1131 if(entryIntFlowSPNONAME)
1132 {
1133 (*entryIntFlowSPNONAME)+=(Long_t)spCountRealNONAME;
1134 entryIntFlowSPNONAME->Append(" out of ");
1135 (*entryIntFlowSPNONAME)+=(Long_t)counter;
1136 if(textResultsNONAME)textResultsNONAME->AddText(entryIntFlowSPNONAME->Data());
1137 }
1138
1139 if(entryIntFlowGFC2NONAME)
1140 {
1141 (*entryIntFlowGFC2NONAME)+=(Long_t)gfc2CountRealNONAME;
1142 entryIntFlowGFC2NONAME->Append(" out of ");
1143 (*entryIntFlowGFC2NONAME)+=(Long_t)counter;
1144 if(textResultsNONAME)textResultsNONAME->AddText(entryIntFlowGFC2NONAME->Data());
1145 }
1146
1147 if(entryIntFlowGFC4NONAME)
1148 {
1149 (*entryIntFlowGFC4NONAME)+=(Long_t)gfc4CountRealNONAME;
1150 entryIntFlowGFC4NONAME->Append(" out of ");
1151 (*entryIntFlowGFC4NONAME)+=(Long_t)counter;
1152 if(textResultsNONAME)textResultsNONAME->AddText(entryIntFlowGFC4NONAME->Data());
1153 }
1154
1155 if(entryIntFlowGFC6NONAME)
1156 {
1157 (*entryIntFlowGFC6NONAME)+=(Long_t)gfc6CountRealNONAME;
1158 entryIntFlowGFC6NONAME->Append(" out of ");
1159 (*entryIntFlowGFC6NONAME)+=(Long_t)counter;
1160 if(textResultsNONAME)textResultsNONAME->AddText(entryIntFlowGFC6NONAME->Data());
1161 }
e47370f7 1162
b78897bc 1163 if(entryIntFlowGFC8NONAME)
1164 {
1165 (*entryIntFlowGFC8NONAME)+=(Long_t)gfc8CountRealNONAME;
1166 entryIntFlowGFC8NONAME->Append(" out of ");
1167 (*entryIntFlowGFC8NONAME)+=(Long_t)counter;
1168 if(textResultsNONAME)textResultsNONAME->AddText(entryIntFlowGFC8NONAME->Data());
1169 }
1170
1171 if(entryIntFlowQC2NONAME)
1172 {
1173 (*entryIntFlowQC2NONAME)+=(Long_t)qc2CountRealNONAME;
1174 entryIntFlowQC2NONAME->Append(" out of ");
1175 (*entryIntFlowQC2NONAME)+=(Long_t)counter;
1176 if(textResultsNONAME)textResultsNONAME->AddText(entryIntFlowQC2NONAME->Data());
1177 }
1178
1179 if(entryIntFlowQC4NONAME)
1180 {
1181 (*entryIntFlowQC4NONAME)+=(Long_t)qc4CountRealNONAME;
1182 entryIntFlowQC4NONAME->Append(" out of ");
1183 (*entryIntFlowQC4NONAME)+=(Long_t)counter;
1184 if(textResultsNONAME)textResultsNONAME->AddText(entryIntFlowQC4NONAME->Data());
1185 }
1186
1187 if(entryIntFlowQC2NONAME)
1188 {
1189 (*entryIntFlowQC6NONAME)+=(Long_t)qc6CountRealNONAME;
1190 entryIntFlowQC6NONAME->Append(" out of ");
1191 (*entryIntFlowQC6NONAME)+=(Long_t)counter;
1192 if(textResultsNONAME)textResultsNONAME->AddText(entryIntFlowQC6NONAME->Data());
1193 }
1194
1195 if(entryIntFlowQC8NONAME)
1196 {
1197 (*entryIntFlowQC8NONAME)+=(Long_t)qc8CountRealNONAME;
1198 entryIntFlowQC8NONAME->Append(" out of ");
1199 (*entryIntFlowQC8NONAME)+=(Long_t)counter;
1200 if(textResultsNONAME)textResultsNONAME->AddText(entryIntFlowQC8NONAME->Data());
1201 }
1202
1203 if(entryIntFlowFQDNONAME)
1204 {
1205 (*entryIntFlowFQDNONAME)+=(Long_t)fqdCountRealNONAME;
1206 entryIntFlowFQDNONAME->Append(" out of ");
1207 (*entryIntFlowFQDNONAME)+=(Long_t)counter;
1208 if(textResultsNONAME)textResultsNONAME->AddText(entryIntFlowFQDNONAME->Data());
1209 }
1210
48385911 1211
b78897bc 1212 if(entryIntFlowLYZ1NONAME)
1213 {
1214 (*entryIntFlowLYZ1NONAME)+=(Long_t)lyz1CountRealNONAME;
1215 entryIntFlowLYZ1NONAME->Append(" out of ");
1216 (*entryIntFlowLYZ1NONAME)+=(Long_t)counter;
1217 if(textResultsNONAME)textResultsNONAME->AddText(entryIntFlowLYZ1NONAME->Data());
1218 }
1219
48385911 1220 /*
b78897bc 1221 if(entryIntFlowLYZEPNONAME)
1222 {
1223 (*entryIntFlowLYZEPNONAME)+=(Long_t)lyzepCountRealNONAME;
1224 entryIntFlowLYZEPNONAME->Append(" out of ");
1225 (*entryIntFlowLYZEPNONAME)+=(Long_t)counter;
1226 if(textResultsNONAME)textResultsNONAME->AddText(entryIntFlowLYZEPNONAME->Data());
1227 }
6a6afe42 1228 */
b78897bc 1229
1230 if(textDefaultNONAME) textDefaultNONAME->Draw();
1231 if(textResultsNONAME) textResultsNONAME->Draw();
1232
e47370f7 1233}
1234
b78897bc 1235void LoadSpreadLibraries(const libModes mode) {
e47370f7 1236
1237 //--------------------------------------
1238 // Load the needed libraries most of them already loaded by aliroot
1239 //--------------------------------------
1240 gSystem->Load("libTree.so");
1241 gSystem->Load("libGeom.so");
1242 gSystem->Load("libVMC.so");
1243 gSystem->Load("libXMLIO.so");
1244 gSystem->Load("libPhysics.so");
1245
1246 //----------------------------------------------------------
1247 // >>>>>>>>>>> Local mode <<<<<<<<<<<<<<
1248 //----------------------------------------------------------
1249 if (mode==mLocal) {
1250 //--------------------------------------------------------
1251 // If you want to use already compiled libraries
1252 // in the aliroot distribution
1253 //--------------------------------------------------------
1254
1255 //==================================================================================
1256 //load needed libraries:
1257 gSystem->AddIncludePath("-I$ROOTSYS/include");
1258 gSystem->Load("libTree.so");
1259
1260 // for AliRoot
1261 gSystem->AddIncludePath("-I$ALICE_ROOT/include");
1262 gSystem->Load("libANALYSIS.so");
1263 gSystem->Load("libPWG2flowCommon.so");
1264 cerr<<"libPWG2flowCommon.so loaded ..."<<endl;
1265
1266 }
1267
1268 else if (mode==mLocalSource) {
1269
1270 // In root inline compile
1271
1272 // Constants
1273 gROOT->LoadMacro("AliFlowCommon/AliFlowCommonConstants.cxx+");
1274 gROOT->LoadMacro("AliFlowCommon/AliFlowLYZConstants.cxx+");
1275 gROOT->LoadMacro("AliFlowCommon/AliFlowCumuConstants.cxx+");
1276
1277 // Flow event
1278 gROOT->LoadMacro("AliFlowCommon/AliFlowVector.cxx+");
1279 gROOT->LoadMacro("AliFlowCommon/AliFlowTrackSimple.cxx+");
1280 gROOT->LoadMacro("AliFlowCommon/AliFlowEventSimple.cxx+");
1281
1282 // Cuts
1283 gROOT->LoadMacro("AliFlowCommon/AliFlowTrackSimpleCuts.cxx+");
1284
1285 // Output histosgrams
1286 gROOT->LoadMacro("AliFlowCommon/AliFlowCommonHist.cxx+");
1287 gROOT->LoadMacro("AliFlowCommon/AliFlowCommonHistResults.cxx+");
1288 gROOT->LoadMacro("AliFlowCommon/AliFlowLYZHist1.cxx+");
1289 gROOT->LoadMacro("AliFlowCommon/AliFlowLYZHist2.cxx+");
1290
1291 cout << "finished loading macros!" << endl;
1292
1293 }
1294
1295
1296}
1297
1298