]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/FLOW/macros/CompareFlowResults.C
Bug fix in the calculation of cluster and sharing bitmap (Adam)
[u/mrichter/AliRoot.git] / PWG2 / FLOW / macros / CompareFlowResults.C
CommitLineData
8c5ec46a 1//type of analysis can be: ESD, AOD, MC, ESDMC0, ESDMC1
2//const TString type = "ESD";
694e0378 3void CompareFlowResults(TString type="ESD")
9d3cbee7 4{
8c5ec46a 5 //load needed libraries:
2a413443 6 gSystem->AddIncludePath("-I$ROOTSYS/include");
8c5ec46a 7 gSystem->Load("libTree.so");
2a413443 8
9 // for AliRoot
10 gSystem->AddIncludePath("-I$ALICE_ROOT/include");
8c5ec46a 11 gSystem->Load("libANALYSIS.so");
29b61d43 12 gSystem->Load("libPWG2flowCommon.so");
13 cerr<<"libPWG2flowCommon.so loaded ..."<<endl;
8c5ec46a 14
2a413443 15 // for root load histrogram classes
16 // output histosgrams
17 // gROOT->LoadMacro("code/AliFlowCommonHist.cxx+");
18 // gROOT->LoadMacro("code/AliFlowCommonHistResults.cxx+");
19 // gROOT->LoadMacro("code/AliFlowLYZHist1.cxx+");
20 // gROOT->LoadMacro("code/AliFlowLYZHist2.cxx+");
8c5ec46a 21
22
23 //==================================================================================
24 // set here which plots will be shown by default
25 //==================================================================================
26 //RP = particles used to determine the reaction plane
694e0378 27 Bool_t plotIntFlowRP = kFALSE; //integrated flow RP
8c5ec46a 28 Bool_t plotDiffFlowPtRP = kFALSE; //differential flow (Pt,RP)
29 Bool_t plotDiffFlowEtaRP = kFALSE; //differential flow (Eta,RP)
30 //POI = particle of interest
694e0378 31 Bool_t plotIntFlowPOI = kTRUE; //integrated flow POI
32 Bool_t plotDiffFlowPtPOI = kTRUE; //differential flow (Pt,POI)
7d02d77f 33 Bool_t plotDiffFlowEtaPOI = kTRUE; //differential flow (Eta,POI)
8c5ec46a 34 //==================================================================================
35
36
37
38
39 //==================================================================================
40 // accessing output files
41 //==================================================================================
42
43 //open the output files:
44 TString inputFileNameMCEP = "outputMCEPanalysis";
45 TFile* fileMCEP = NULL;
46 fileMCEP = TFile::Open(((inputFileNameMCEP.Append(type)).Append(".root")).Data(), "READ");
47
48 TString inputFileNameLYZ1 = "outputLYZ1analysis";
49 TFile* fileLYZ1 = NULL;
50 fileLYZ1 = TFile::Open(((inputFileNameLYZ1.Append(type)).Append(".root")).Data(), "READ");
51
52 TString inputFileNameLYZ2 = "outputLYZ2analysis";
53 TFile* fileLYZ2 = NULL;
54 fileLYZ2 = TFile::Open(((inputFileNameLYZ2.Append(type)).Append(".root")).Data(), "READ");
55
56 TString inputFileNameLYZEP = "outputLYZEPanalysis";
57 TFile* fileLYZEP = NULL;
58 fileLYZEP = TFile::Open(((inputFileNameLYZEP.Append(type)).Append(".root")).Data(), "READ");
59
60 TString inputFileNameFQD = "outputFQDanalysis";
61 TFile* fileFQD = NULL;
62 fileFQD = TFile::Open(((inputFileNameFQD.Append(type)).Append(".root")).Data(), "READ");
63
64 TString inputFileNameGFC = "outputGFCanalysis";
65 TFile* fileGFC = NULL;
66 fileGFC = TFile::Open(((inputFileNameGFC.Append(type)).Append(".root")).Data(), "READ");
67
68 TString inputFileNameQC = "outputQCanalysis";
69 TFile* fileQC = NULL;
70 fileQC = TFile::Open(((inputFileNameQC.Append(type)).Append(".root")).Data(), "READ");
71 //==================================================================================
1fca9c90 72
a88e5ac2 73
a88e5ac2 74
9d3cbee7 75
8c5ec46a 76 //==================================================================================
77 // cosmetics
78 //==================================================================================
79 //removing the title and stat. box from all histograms:
80 gStyle->SetOptTitle(0);
81 gStyle->SetOptStat(0);
82
83 //choosing the style and color of mesh for MC error bands:
84 Int_t meshStyle = 1001;
85 Int_t meshColor = kRed-10;
86
87 //marker style and color (int. flow)
88 Int_t markerStyle = 21;
89 Int_t markerColor = kRed-3;
90 //==================================================================================
91
92
93
94
95 //==================================================================================
96 // INTEGRATED FLOW
97 //==================================================================================
98 //the number of different methods:
99 const Int_t nMethods=12;
100
101 //booking the histogram for the integrated flow results from all methods:
102 TH1D* intFlowAll = new TH1D("intFlowAll","Integrated Flow",nMethods,0,nMethods);
103 //intFlowAll->SetLabelSize(0.036,"X");
104 //intFlowAll->SetLabelSize(0.036,"Y");
105 intFlowAll->SetMarkerStyle(markerStyle);
106 intFlowAll->SetMarkerColor(markerColor);
107 (intFlowAll->GetXaxis())->SetBinLabel(1,"v_{2}{MC}");
108 (intFlowAll->GetXaxis())->SetBinLabel(2,"v_{2}{2,GFC}");
109 (intFlowAll->GetXaxis())->SetBinLabel(3,"v_{2}{2,QC}");
110 (intFlowAll->GetXaxis())->SetBinLabel(4,"v_{2}{4,GFC}");
111 (intFlowAll->GetXaxis())->SetBinLabel(5,"v_{2}{4,QC}");
112 (intFlowAll->GetXaxis())->SetBinLabel(6,"v_{2}{6,GFC}");
113 (intFlowAll->GetXaxis())->SetBinLabel(7,"v_{2}{6,QC}");
114 (intFlowAll->GetXaxis())->SetBinLabel(8,"v_{2}{8,GFC}");
115 (intFlowAll->GetXaxis())->SetBinLabel(9,"v_{2}{8,QC}");
116 (intFlowAll->GetXaxis())->SetBinLabel(10,"v_{2}{FQD}");
117 (intFlowAll->GetXaxis())->SetBinLabel(11,"v_{2}{LYZ}");
118 (intFlowAll->GetXaxis())->SetBinLabel(12,"v_{2}{LYZEP}");
119
120 //booking the graph to store flow values and errors from all methods:
121 Double_t x[nMethods] = {0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5, 10.5, 11.5};
122 Double_t xError[nMethods] = {0.};
123 Double_t flowValue[nMethods] = {0.};//to be removed
124 Double_t flowError[nMethods] = {0.};//to be removed
125 Double_t flowValueRP[nMethods] = {0.};
126 Double_t flowErrorRP[nMethods] = {0.};
127 Double_t flowValuePOI[nMethods] = {0.};
128 Double_t flowErrorPOI[nMethods] = {0.};
129
130 //accessing the results for each method:
131 //MCEP = Monte Carlo Event Plane
132 TList *pListMCEP = NULL;
133 AliFlowCommonHist *mcepCommonHist = NULL;
134 AliFlowCommonHistResults *mcepCommonHistRes = NULL;
135 if(fileMCEP) {
136 fileMCEP->GetObject("cobjMCEP",pListMCEP);
137 if(pListMCEP) {
138 mcepCommonHist = dynamic_cast<AliFlowCommonHist*> (pListMCEP->FindObject("AliFlowCommonHistMCEP"));
139 mcepCommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (pListMCEP->FindObject("AliFlowCommonHistResultsMCEP"));
140 if(mcepCommonHistRes) {
141 flowValue[0] = (mcepCommonHistRes->GetHistIntFlow())->GetBinContent(1);//to be removed
142 flowError[0] = (mcepCommonHistRes->GetHistIntFlow())->GetBinError(1);//to be removed
143 flowValueRP[0] = (mcepCommonHistRes->GetHistIntFlowRP())->GetBinContent(1);
144 flowErrorRP[0] = (mcepCommonHistRes->GetHistIntFlowRP())->GetBinError(1);
145 flowValuePOI[0] = (mcepCommonHistRes->GetHistIntFlowPOI())->GetBinContent(1);
146 flowErrorPOI[0] = (mcepCommonHistRes->GetHistIntFlowPOI())->GetBinError(1);
147 }
148 }
a88e5ac2 149 }
8c5ec46a 150
151 //LYZ1 = Lee-Yang Zeros (1st run)
152 TList *pListLYZ1 = NULL;
153 AliFlowCommonHist *lyz1CommonHist = NULL;
154 AliFlowCommonHistResults *lyz1CommonHistRes = NULL;
155 if(fileLYZ1) {
156 fileLYZ1->GetObject("cobjLYZ1",pListLYZ1);
157 if(pListLYZ1) {
158 lyz1CommonHist = dynamic_cast<AliFlowCommonHist*> (pListLYZ1->FindObject("AliFlowCommonHistLYZ1"));
159 lyz1CommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (pListLYZ1->FindObject("AliFlowCommonHistResultsLYZ1"));
160 if(lyz1CommonHistRes) {
161 flowValue[10] = (lyz1CommonHistRes->GetHistIntFlow())->GetBinContent(1);//to be removed
162 flowError[10] = (lyz1CommonHistRes->GetHistIntFlow())->GetBinError(1);//to be removed
163 flowValueRP[10] = (lyz1CommonHistRes->GetHistIntFlowRP())->GetBinContent(1);
164 flowErrorRP[10] = (lyz1CommonHistRes->GetHistIntFlowRP())->GetBinError(1);
165 flowValuePOI[10] = (lyz1CommonHistRes->GetHistIntFlowPOI())->GetBinContent(1);
166 flowErrorPOI[10] = (lyz1CommonHistRes->GetHistIntFlowPOI())->GetBinError(1);
167 }
168 }
a88e5ac2 169 }
8c5ec46a 170
171 //LYZ2 = Lee-Yang Zeros (2nd run) (needed only for differential flow)
172 TList *pListLYZ2 = NULL;
173 AliFlowCommonHist *lyz2CommonHist = NULL;
174 AliFlowCommonHistResults *lyz2CommonHistRes = NULL;
175 if(fileLYZ2) {
176 fileLYZ2->GetObject("cobjLYZ2",pListLYZ2);
177 if(pListLYZ2) {
178 lyz2CommonHist = dynamic_cast<AliFlowCommonHist*> (pListLYZ2->FindObject("AliFlowCommonHistLYZ2"));
179 lyz2CommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (pListLYZ2->FindObject("AliFlowCommonHistResultsLYZ2"));
180 }
9d3cbee7 181 }
8c5ec46a 182
183 //LYZEP = Lee-Yang Zeros Event Plane
184 TList *pListLYZEP = NULL;
185 AliFlowCommonHist *lyzepCommonHist = NULL;
186 AliFlowCommonHistResults *lyzepCommonHistRes = NULL;
187 if(fileLYZEP) {
188 fileLYZEP->GetObject("cobjLYZEP",pListLYZEP);
189 if(pListLYZEP) {
190 lyzepCommonHist = dynamic_cast<AliFlowCommonHist*> (pListLYZEP->FindObject("AliFlowCommonHistLYZEP"));
191 lyzepCommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (pListLYZEP->FindObject("AliFlowCommonHistResultsLYZEP"));
192 if(lyzepCommonHistRes) {
193 flowValue[11] = (lyzepCommonHistRes->GetHistIntFlow())->GetBinContent(1);//to be removed
194 //flowError[11] = (lyzepCommonHistRes->GetHistIntFlow())->GetBinError(1);//to be removed
195 flowValueRP[11] = (lyzepCommonHistRes->GetHistIntFlowRP())->GetBinContent(1);
196 //flowErrorRP[11] = (lyzepCommonHistRes->GetHistIntFlowRP())->GetBinError(1);
197 flowValuePOI[11] = (lyzepCommonHistRes->GetHistIntFlowPOI())->GetBinContent(1);
198 //flowErrorPOI[11] = (lyzepCommonHistRes->GetHistIntFlowPOI())->GetBinError(1);
199 }
200 }
9d3cbee7 201 }
9d3cbee7 202
8c5ec46a 203 //FQD = Fitting q-distribution
204 TList *pListFQD = NULL;
205 AliFlowCommonHist *fqdCommonHist = NULL;
206 AliFlowCommonHistResults *fqdCommonHistRes = NULL;
207 if(fileFQD) {
208 fileFQD->GetObject("cobjFQD",pListFQD);
209 if(pListFQD) {
210 fqdCommonHist = dynamic_cast<AliFlowCommonHist*> (pListFQD->FindObject("AliFlowCommonHistFQD"));
211 fqdCommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (pListFQD->FindObject("AliFlowCommonHistResultsFQD"));
212 if(fqdCommonHistRes) {
213 flowValue[9] = (fqdCommonHistRes->GetHistIntFlow())->GetBinContent(1);//to be removed
214 flowError[9] = (fqdCommonHistRes->GetHistIntFlow())->GetBinError(1);//to be removed
215 flowValueRP[9] = (fqdCommonHistRes->GetHistIntFlowRP())->GetBinContent(1);
216 flowErrorRP[9] = (fqdCommonHistRes->GetHistIntFlowRP())->GetBinError(1);
217 flowValuePOI[9] = (fqdCommonHistRes->GetHistIntFlowPOI())->GetBinContent(1);
218 flowErrorPOI[9] = (fqdCommonHistRes->GetHistIntFlowPOI())->GetBinError(1);
219 }
220 }
9d3cbee7 221 }
a88e5ac2 222
8c5ec46a 223 //GFC = Generating Function Cumulants
224 TList *pListGFC = NULL;
225 AliFlowCommonHist *gfcCommonHist = NULL;
226 AliFlowCommonHistResults *gfcCommonHistRes2 = NULL;
227 AliFlowCommonHistResults *gfcCommonHistRes4 = NULL;
228 AliFlowCommonHistResults *gfcCommonHistRes6 = NULL;
229 AliFlowCommonHistResults *gfcCommonHistRes8 = NULL;
230 if(fileGFC) {
231 fileGFC->GetObject("cobjGFC",pListGFC);
232 if(pListGFC) {
233 gfcCommonHist = dynamic_cast<AliFlowCommonHist*> (pListGFC->FindObject("AliFlowCommonHistGFC"));
234 gfcCommonHistRes2 = dynamic_cast<AliFlowCommonHistResults*> (pListGFC->FindObject("AliFlowCommonHistResults2ndOrderGFC"));
235 if(gfcCommonHistRes2) {
236 flowValue[1] = (gfcCommonHistRes2->GetHistIntFlow())->GetBinContent(1);//to be removed
237 flowError[1] = (gfcCommonHistRes2->GetHistIntFlow())->GetBinError(1);//to be removed
238 flowValueRP[1] = (gfcCommonHistRes2->GetHistIntFlowRP())->GetBinContent(1);
239 flowErrorRP[1] = (gfcCommonHistRes2->GetHistIntFlowRP())->GetBinError(1);
240 flowValuePOI[1] = (gfcCommonHistRes2->GetHistIntFlowPOI())->GetBinContent(1);
241 flowErrorPOI[1] = (gfcCommonHistRes2->GetHistIntFlowPOI())->GetBinError(1);
242 }
243 gfcCommonHistRes4 = dynamic_cast<AliFlowCommonHistResults*> (pListGFC->FindObject("AliFlowCommonHistResults4thOrderGFC"));
244 if(gfcCommonHistRes4) {
245 flowValue[3] = (gfcCommonHistRes4->GetHistIntFlow())->GetBinContent(1);//to be removed
246 flowError[3] = (gfcCommonHistRes4->GetHistIntFlow())->GetBinError(1);//to be removed
247 flowValueRP[3] = (gfcCommonHistRes4->GetHistIntFlowRP())->GetBinContent(1);
248 flowErrorRP[3] = (gfcCommonHistRes4->GetHistIntFlowRP())->GetBinError(1);
249 flowValuePOI[3] = (gfcCommonHistRes4->GetHistIntFlowPOI())->GetBinContent(1);
250 flowErrorPOI[3] = (gfcCommonHistRes4->GetHistIntFlowPOI())->GetBinError(1);
251 }
252 gfcCommonHistRes6 = dynamic_cast<AliFlowCommonHistResults*> (pListGFC->FindObject("AliFlowCommonHistResults6thOrderGFC"));
253 if(gfcCommonHistRes6) {
254 flowValue[5] = (gfcCommonHistRes6->GetHistIntFlow())->GetBinContent(1);//to be removed
255 flowError[5] = (gfcCommonHistRes6->GetHistIntFlow())->GetBinError(1);//to be removed
256 flowValueRP[5] = (gfcCommonHistRes6->GetHistIntFlowRP())->GetBinContent(1);
257 flowErrorRP[5] = (gfcCommonHistRes6->GetHistIntFlowRP())->GetBinError(1);
258 flowValuePOI[5] = (gfcCommonHistRes6->GetHistIntFlowPOI())->GetBinContent(1);
259 flowErrorPOI[5] = (gfcCommonHistRes6->GetHistIntFlowPOI())->GetBinError(1);
260 }
261 gfcCommonHistRes8 = dynamic_cast<AliFlowCommonHistResults*> (pListGFC->FindObject("AliFlowCommonHistResults8thOrderGFC"));
262 if(gfcCommonHistRes8) {
263 flowValue[7] = (gfcCommonHistRes8->GetHistIntFlow())->GetBinContent(1);//to be removed
264 flowError[7] = (gfcCommonHistRes8->GetHistIntFlow())->GetBinError(1);//to be removed
265 flowValueRP[7] = (gfcCommonHistRes8->GetHistIntFlowRP())->GetBinContent(1);
266 flowErrorRP[7] = (gfcCommonHistRes8->GetHistIntFlowRP())->GetBinError(1);
267 flowValuePOI[7] = (gfcCommonHistRes8->GetHistIntFlowPOI())->GetBinContent(1);
268 flowErrorPOI[7] = (gfcCommonHistRes8->GetHistIntFlowPOI())->GetBinError(1);
269 }
270 }
9d3cbee7 271 }
1fca9c90 272
8c5ec46a 273 //QC = Q-cumulants
274 TList *pListQC = NULL;
275 AliFlowCommonHist *qcCommonHist2 = NULL;
276 AliFlowCommonHist *qcCommonHist4 = NULL;
277 AliFlowCommonHist *qcCommonHist6 = NULL;
278 AliFlowCommonHist *qcCommonHist8 = NULL;
279 AliFlowCommonHistResults *qcCommonHistRes2 = NULL;
280 AliFlowCommonHistResults *qcCommonHistRes4 = NULL;
281 AliFlowCommonHistResults *qcCommonHistRes6 = NULL;
282 AliFlowCommonHistResults *qcCommonHistRes8 = NULL;
283
284 if(fileQC) {
285 fileQC->GetObject("cobjQC",pListQC);
286 if(pListQC) {
287 qcCommonHist2 = dynamic_cast<AliFlowCommonHist*> (pListQC->FindObject("AliFlowCommonHist2ndOrderQC"));
288 qcCommonHistRes2 = dynamic_cast<AliFlowCommonHistResults*> (pListQC->FindObject("AliFlowCommonHistResults2ndOrderQC"));
289 if(qcCommonHistRes2) {
290 flowValue[2] = (qcCommonHistRes2->GetHistIntFlow())->GetBinContent(1);//to be removed
291 //flowError[2] = (qcCommonHistRes2->GetHistIntFlow())->GetBinError(1);//to be removed
292 flowValueRP[2] = (qcCommonHistRes2->GetHistIntFlowRP())->GetBinContent(1);
293 //flowErrorRP[2] = (qcCommonHistRes2->GetHistIntFlowRP())->GetBinError(1);
294 flowValuePOI[2] = (qcCommonHistRes2->GetHistIntFlowPOI())->GetBinContent(1);
295 //flowErrorPOI[2] = (qcCommonHistRes2->GetHistIntFlowPOI())->GetBinError(1);
296 }
297 qcCommonHist4 = dynamic_cast<AliFlowCommonHist*> (pListQC->FindObject("AliFlowCommonHist4thOrderQC"));
298 qcCommonHistRes4 = dynamic_cast<AliFlowCommonHistResults*> (pListQC->FindObject("AliFlowCommonHistResults4thOrderQC"));
299 if(qcCommonHistRes4) {
300 flowValue[4] = (qcCommonHistRes4->GetHistIntFlow())->GetBinContent(1);//to be removed
301 //flowError[4] = (qcCommonHistRes4->GetHistIntFlow())->GetBinError(1);//to be removed
302 flowValueRP[4] = (qcCommonHistRes4->GetHistIntFlowRP())->GetBinContent(1);
303 //flowErrorRP[4] = (qcCommonHistRes4->GetHistIntFlowRP())->GetBinError(1);
304 flowValuePOI[4] = (qcCommonHistRes4->GetHistIntFlowPOI())->GetBinContent(1);
305 //flowErrorPOI[4] = (qcCommonHistRes4->GetHistIntFlowPOI())->GetBinError(1);
306 }
307 qcCommonHist6 = dynamic_cast<AliFlowCommonHist*> (pListQC->FindObject("AliFlowCommonHist6thOrderQC"));
308 qcCommonHistRes6 = dynamic_cast<AliFlowCommonHistResults*> (pListQC->FindObject("AliFlowCommonHistResults6thOrderQC"));
309 if(qcCommonHistRes6) {
310 flowValue[6] = (qcCommonHistRes6->GetHistIntFlow())->GetBinContent(1);//to be removed
311 //flowError[6] = (qcCommonHistRes6->GetHistIntFlow())->GetBinError(1);//to be removed
312 flowValueRP[6] = (qcCommonHistRes6->GetHistIntFlowRP())->GetBinContent(1);
313 //flowErrorRP[6] = (qcCommonHistRes6->GetHistIntFlowRP())->GetBinError(1);
314 flowValuePOI[6] = (qcCommonHistRes6->GetHistIntFlowPOI())->GetBinContent(1);
315 //flowErrorPOI[6] = (qcCommonHistRes6->GetHistIntFlowPOI())->GetBinError(1);
316 }
317 qcCommonHist8 = dynamic_cast<AliFlowCommonHist*> (pListQC->FindObject("AliFlowCommonHist8thOrderQC"));
318 qcCommonHistRes8 = dynamic_cast<AliFlowCommonHistResults*> (pListQC->FindObject("AliFlowCommonHistResults8thOrderQC"));
319 if(qcCommonHistRes8) {
320 flowValue[8] = (qcCommonHistRes8->GetHistIntFlow())->GetBinContent(1);//to be removed
321 //flowError[8] = (qcCommonHistRes8->GetHistIntFlow())->GetBinError(1);//to be removed
322 flowValueRP[8] = (qcCommonHistRes8->GetHistIntFlowRP())->GetBinContent(1);
323 //flowErrorRP[8] = (qcCommonHistRes8->GetHistIntFlowRP())->GetBinError(1);
324 flowValuePOI[8] = (qcCommonHistRes8->GetHistIntFlowPOI())->GetBinContent(1);
325 //flowErrorPOI[8] = (qcCommonHistRes8->GetHistIntFlowPOI())->GetBinError(1);
326 }
327 }
328 }
329
330 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
331 // !!!! to be removed !!!!
332 Double_t dMax=flowValue[0]+flowError[0];
333 Double_t dMin=flowValue[0]-flowError[0];
334
335 for(Int_t i=1;i<nMethods;i++) {
336 if(!(flowValue[i]==0. && flowError[i]==0.)) {
337 if(dMax<flowValue[i]+flowError[i]) dMax=flowValue[i]+flowError[i];
338 if(dMin>flowValue[i]-flowError[i]) dMin=flowValue[i]-flowError[i];
339 }
340 }
341 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
a88e5ac2 342
1fca9c90 343 //RP:
8c5ec46a 344 Double_t dMaxRP=flowValueRP[0]+flowErrorRP[0];
345 Double_t dMinRP=flowValueRP[0]-flowErrorRP[0];
346
347 for(Int_t i=1;i<nMethods;i++) {
348 if(!(flowValueRP[i]==0. && flowErrorRP[i]==0.)) {
349 if(dMaxRP<flowValueRP[i]+flowErrorRP[i]) dMaxRP=flowValueRP[i]+flowErrorRP[i];
350 if(dMinRP>flowValueRP[i]-flowErrorRP[i]) dMinRP=flowValueRP[i]-flowErrorRP[i];
351 }
352 }
1fca9c90 353
354 //POI:
8c5ec46a 355 Double_t dMaxPOI=flowValuePOI[0]+flowErrorPOI[0];
356 Double_t dMinPOI=flowValuePOI[0]-flowErrorPOI[0];
a88e5ac2 357
8c5ec46a 358 for(Int_t i=1;i<nMethods;i++) {
359 if(!(flowValuePOI[i]==0. && flowErrorPOI[i]==0.)) {
360 if(dMaxPOI<flowValuePOI[i]+flowErrorPOI[i]) dMaxPOI=flowValuePOI[i]+flowErrorPOI[i];
361 if(dMinPOI>flowValuePOI[i]-flowErrorPOI[i]) dMinPOI=flowValuePOI[i]-flowErrorPOI[i];
362 }
363 }
364
365 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
366 // !!!! to be removed !!!!
367 TGraph* flowResults = new TGraphErrors(nMethods, x, flowValue, xError, flowError);
368
369 flowResults->SetMarkerStyle(markerStyle);
370 flowResults->SetMarkerColor(markerColor);
371 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
1fca9c90 372
8c5ec46a 373 //RP:
374 TGraph* flowResultsRP = new TGraphErrors(nMethods, x, flowValueRP, xError, flowErrorRP);
375
376 flowResultsRP->SetMarkerStyle(markerStyle);
377 flowResultsRP->SetMarkerColor(markerColor);
378
379 //POI:
380 TGraph* flowResultsPOI = new TGraphErrors(nMethods, x, flowValuePOI, xError, flowErrorPOI);
381
382 flowResultsPOI->SetMarkerStyle(markerStyle);
383 flowResultsPOI->SetMarkerColor(markerColor);
384
385 //-----------------------------------------------------------------------------------
386
387 //----------------------------------------------------------------------------------
388 //cosmetics: mesh for MC error bands (integrated flow)
389 TGraph* pMesh = NULL;//to be removed
390 TGraph* pMeshRP = NULL;
391 TGraph* pMeshPOI = NULL;
392
393 if(intFlowAll && mcepCommonHistRes) {
394 //Double_t valueMC = intFlowAll->GetBinContent(1);
395 //Double_t errorMC = intFlowAll->GetBinError(1);
396 //Int_t nPts = intFlowAll->GetNbinsX();
397
398 Int_t nPts = nMethods;
399 Double_t valueMC = flowValue[0];//to be removed
400 Double_t errorMC = flowError[0];//to be removed
401 Double_t valueMCRP = flowValueRP[0];
402 Double_t errorMCRP = flowErrorRP[0];
403 Double_t valueMCPOI = flowValuePOI[0];
404 Double_t errorMCPOI = flowErrorPOI[0];
405
406 pMesh = new TGraph(nPts);//to be removed
407 pMeshRP = new TGraph(nPts);
408 pMeshPOI = new TGraph(nPts);
409
410 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
411 // !!!! to be removed !!!!
412 pMesh->SetPoint(1,0,valueMC+errorMC);
413 pMesh->SetPoint(2,nPts+1,valueMC+errorMC);
414 pMesh->SetPoint(3,nPts+1,valueMC-errorMC);
415 pMesh->SetPoint(4,0,valueMC-errorMC);
416 pMesh->SetPoint(5,0,valueMC+errorMC);
417
418 pMesh->SetFillStyle(meshStyle);
419 pMesh->SetFillColor(meshColor);
420 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
421
422 //RP:
423 pMeshRP->SetPoint(1,0,valueMCRP+errorMCRP);
424 pMeshRP->SetPoint(2,nPts+1,valueMCRP+errorMCRP);
425 pMeshRP->SetPoint(3,nPts+1,valueMCRP-errorMCRP);
426 pMeshRP->SetPoint(4,0,valueMCRP-errorMCRP);
427 pMeshRP->SetPoint(5,0,valueMCRP+errorMCRP);
428
429 pMeshRP->SetFillStyle(meshStyle);
430 pMeshRP->SetFillColor(meshColor);
431
432 //POI:
433 pMeshPOI->SetPoint(1,0,valueMCPOI+errorMCPOI);
434 pMeshPOI->SetPoint(2,nPts+1,valueMCPOI+errorMCPOI);
435 pMeshPOI->SetPoint(3,nPts+1,valueMCPOI-errorMCPOI);
436 pMeshPOI->SetPoint(4,0,valueMCPOI-errorMCPOI);
437 pMeshPOI->SetPoint(5,0,valueMCPOI+errorMCPOI);
438
439 pMeshPOI->SetFillStyle(meshStyle);
440 pMeshPOI->SetFillColor(meshColor);
441 }
442 //----------------------------------------------------------------------------------
1fca9c90 443
1fca9c90 444
8c5ec46a 445 //----------------------------------------------------------------------------------
446 //cosmetics: text (integrated flow)
447 //default text:
448 TPaveText *textDefault = new TPaveText(0.05,0.77,0.95,0.90,"NDC");
449 textDefault->SetTextFont(72);
450 textDefault->SetTextSize(0.08);
451 //textDefault->SetLineColor(kFALSE);
452 //textDefault->SetShadowColor(kFALSE);
453
454 TString *entryDefaultAvM = new TString("Average Multiplicity");
455 TString *entryDefaultAnd = new TString("and");
456 TString *entryDefaultNumOfEvts = new TString("Number of Events:");
457
458 textDefault->AddText(entryDefaultAvM->Data());
459 textDefault->AddText(entryDefaultAnd->Data());
460 textDefault->AddText(entryDefaultNumOfEvts->Data());
461
462 //results:
463 TPaveText *textResults = new TPaveText(0.05,0.12,0.95,0.70,"NDC");//to be removed
464 textResults->SetTextFont(72);//to be removed
465 textResults->SetTextSize(0.06);//to be removed
466 //textResults->SetLineColor(kFALSE);
467 //textResults->SetShadowColor(kFALSE);
468
469 //results (RP):
470 TPaveText *textResultsRP = new TPaveText(0.05,0.12,0.95,0.70,"NDC");
471 textResultsRP->SetTextFont(72);
472 textResultsRP->SetTextSize(0.06);
473
474 //results (POI):
475 TPaveText *textResultsPOI = new TPaveText(0.05,0.12,0.95,0.70,"NDC");
476 textResultsPOI->SetTextFont(72);
477 textResultsPOI->SetTextSize(0.06);
478
479 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
480 // !!!! to be removed !!!!!!
481 TString *entryMC = new TString("MC ...... ");
482 TString *entryGFC = new TString("GFC ..... ");
483 TString *entryQC2 = new TString("QC{2} ... ");
484 TString *entryQC4 = new TString("QC{4} ... ");
485 TString *entryQC6 = new TString("QC{6} ... ");
486 TString *entryQC8 = new TString("QC{8} ... ");
487 TString *entryFQD = new TString("FQD ..... ");
488 TString *entryLYZ1 = new TString("LYZ ..... ");
489 TString *entryLYZEP = new TString("LYZEP ... ");
490 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
491
492 //RP:
493 TString *entryMCRP = new TString("MC ...... ");
494 TString *entryGFCRP = new TString("GFC ..... ");
495 TString *entryQC2RP = new TString("QC{2} ... ");
496 TString *entryQC4RP = new TString("QC{4} ... ");
497 TString *entryQC6RP = new TString("QC{6} ... ");
498 TString *entryQC8RP = new TString("QC{8} ... ");
499 TString *entryFQDRP = new TString("FQD ..... ");
500 TString *entryLYZ1RP = new TString("LYZ ..... ");
501 TString *entryLYZEPRP = new TString("LYZEP ... ");
1fca9c90 502
8c5ec46a 503 //POI:
504 TString *entryMCPOI = new TString("MC ...... ");
505 TString *entryGFCPOI = new TString("GFC ..... ");
506 TString *entryQC2POI = new TString("QC{2} ... ");
507 TString *entryQC4POI = new TString("QC{4} ... ");
508 TString *entryQC6POI = new TString("QC{6} ... ");
509 TString *entryQC8POI = new TString("QC{8} ... ");
510 TString *entryFQDPOI = new TString("FQD ..... ");
511 TString *entryLYZ1POI = new TString("LYZ ..... ");
512 TString *entryLYZEPPOI = new TString("LYZEP ... ");
513
514 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
515 // !!!! to be removed !!!!
516 Double_t avMultMC=0.;
517 Long_t nEvtsMC=0;
518
519 Double_t avMultGFC=0.;
520 Long_t nEvtsGFC=0;
521
522 Double_t avMultQC2=0., avMultQC4=0., avMultQC6=0., avMultQC8=0.;
523 Long_t nEvtsQC2=0, nEvtsQC4=0, nEvtsQC6=0, nEvtsQC8=0;
524
525 Double_t avMultFQD=0.;
526 Long_t nEvtsFQD=0;
527
528 Double_t avMultLYZ1=0.;
529 Long_t nEvtsLYZ1=0;
530
531 Double_t avMultLYZEP=0.;
532 Long_t nEvtsLYZEP=0;
533 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
534
535 //RP:
536 Double_t avMultMCRP=0.;
537 Long_t nEvtsMCRP=0;
538
539 Double_t avMultGFCRP=0.;
540 Long_t nEvtsGFCRP=0;
541
542 Double_t avMultQC2RP=0., avMultQC4RP=0., avMultQC6RP=0., avMultQC8RP=0.;
543 Long_t nEvtsQC2RP=0, nEvtsQC4RP=0, nEvtsQC6RP=0, nEvtsQC8RP=0;
544
545 Double_t avMultFQDRP=0.;
546 Long_t nEvtsFQDRP=0;
547
548 Double_t avMultLYZ1RP=0.;
549 Long_t nEvtsLYZ1RP=0;
550
551 Double_t avMultLYZEPRP=0.;
552 Long_t nEvtsLYZEPRP=0;
553
554 //POI:
555 Double_t avMultMCPOI=0.;
556 Long_t nEvtsMCPOI=0;
557
558 Double_t avMultGFCPOI=0.;
559 Long_t nEvtsGFCPOI=0;
560
561 Double_t avMultQC2POI=0., avMultQC4POI=0., avMultQC6POI=0., avMultQC8POI=0.;
562 Long_t nEvtsQC2POI=0, nEvtsQC4POI=0, nEvtsQC6POI=0, nEvtsQC8POI=0;
563
564 Double_t avMultFQDPOI=0.;
565 Long_t nEvtsFQDPOI=0;
566
567 Double_t avMultLYZ1POI=0.;
568 Long_t nEvtsLYZ1POI=0;
569
570 Double_t avMultLYZEPPOI=0.;
571 Long_t nEvtsLYZEPPOI=0;
572
573 //MC:
574 if(mcepCommonHist) {
575 avMultMC = (mcepCommonHist->GetHistMultInt())->GetMean();//to be removed
576 nEvtsMC = (mcepCommonHist->GetHistMultInt())->GetEntries();//to be removed
577 avMultMCRP = (mcepCommonHist->GetHistMultInt())->GetMean();
578 nEvtsMCRP = (mcepCommonHist->GetHistMultInt())->GetEntries();
579 avMultMCPOI = (mcepCommonHist->GetHistMultDiff())->GetMean();
580 nEvtsMCPOI = (mcepCommonHist->GetHistMultDiff())->GetEntries();
581 }
582 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
583 // !!!! to be removed !!!!
584 if(entryMC) {
585 entryMC->Append("M = ");
586 (*entryMC)+=(Long_t)avMultMC;
587 entryMC->Append(", N = ");
588 (*entryMC)+=(Long_t)nEvtsMC;
589 }
1fca9c90 590 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
8c5ec46a 591 if(entryMCRP) {
592 entryMCRP->Append("M = ");
593 (*entryMCRP)+=(Long_t)avMultMCRP;
594 entryMCRP->Append(", N = ");
595 (*entryMCRP)+=(Long_t)nEvtsMCRP;
596 }
597 if(entryMCPOI) {
598 entryMCPOI->Append("M = ");
599 (*entryMCPOI)+=(Long_t)avMultMCPOI;
600 entryMCPOI->Append(", N = ");
601 (*entryMCPOI)+=(Long_t)nEvtsMCPOI;
1fca9c90 602 }
603
a88e5ac2 604 //GFC:
8c5ec46a 605 if(gfcCommonHist) {
606 avMultGFC = (gfcCommonHist->GetHistMultInt())->GetMean();//to be removed
607 nEvtsGFC = (gfcCommonHist->GetHistMultInt())->GetEntries();//to be removed
608 avMultGFCRP = (gfcCommonHist->GetHistMultInt())->GetMean();
609 nEvtsGFCRP = (gfcCommonHist->GetHistMultInt())->GetEntries();
610 avMultGFCPOI = (gfcCommonHist->GetHistMultDiff())->GetMean();
611 nEvtsGFCPOI = (gfcCommonHist->GetHistMultDiff())->GetEntries();
a88e5ac2 612 }
1fca9c90 613 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
614 // !!!! to be removed !!!!
8c5ec46a 615 if(entryGFC) {
616 entryGFC->Append("M = ");
617 (*entryGFC)+=(Long_t)avMultGFC;
618 entryGFC->Append(", N = ");
619 (*entryGFC)+=(Long_t)nEvtsGFC;
a88e5ac2 620 }
1fca9c90 621 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
8c5ec46a 622 if(entryGFCRP) {
623 entryGFCRP->Append("M = ");
624 (*entryGFCRP)+=(Long_t)avMultGFCRP;
625 entryGFCRP->Append(", N = ");
626 (*entryGFCRP)+=(Long_t)nEvtsGFCRP;
1fca9c90 627 }
8c5ec46a 628 if(entryGFCPOI) {
629 entryGFCPOI->Append("M = ");
630 (*entryGFCPOI)+=(Long_t)avMultGFCPOI;
631 entryGFCPOI->Append(", N = ");
632 (*entryGFCPOI)+=(Long_t)nEvtsGFCPOI;
1fca9c90 633 }
a88e5ac2 634
635 //QC:
8c5ec46a 636 if(qcCommonHist2) {
637 avMultQC2 = (qcCommonHist2->GetHistMultInt())->GetMean();//to be removed
638 nEvtsQC2 = (qcCommonHist2->GetHistMultInt())->GetEntries();//to be removed
639 avMultQC2RP = (qcCommonHist2->GetHistMultInt())->GetMean();
640 nEvtsQC2RP = (qcCommonHist2->GetHistMultInt())->GetEntries();
641 avMultQC2POI = (qcCommonHist2->GetHistMultDiff())->GetMean();
642 nEvtsQC2POI = (qcCommonHist2->GetHistMultDiff())->GetEntries();
1fca9c90 643 }
644 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
645 // !!!! to be removed !!!!
a88e5ac2 646 if(entryQC2)
647 {
70288839 648 entryQC2->Append("M = ");
649 (*entryQC2)+=(Long_t)avMultQC2;
650 entryQC2->Append(", N = ");
651 (*entryQC2)+=(Long_t)nEvtsQC2;
70288839 652 }
1fca9c90 653 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
654 if(entryQC2RP)
655 {
656 entryQC2RP->Append("M = ");
657 (*entryQC2RP)+=(Long_t)avMultQC2RP;
658 entryQC2RP->Append(", N = ");
659 (*entryQC2RP)+=(Long_t)nEvtsQC2RP;
660 }
661 if(entryQC2POI)
662 {
663 entryQC2POI->Append("M = ");
664 (*entryQC2POI)+=(Long_t)avMultQC2POI;
665 entryQC2POI->Append(", N = ");
666 (*entryQC2POI)+=(Long_t)nEvtsQC2POI;
667 }
668
70288839 669 if(qcCommonHist4)
670 {
1fca9c90 671 avMultQC4 = (qcCommonHist4->GetHistMultInt())->GetMean();//to be removed
672 nEvtsQC4 = (qcCommonHist4->GetHistMultInt())->GetEntries();//to be removed
673 avMultQC4RP = (qcCommonHist4->GetHistMultInt())->GetMean();
674 nEvtsQC4RP = (qcCommonHist4->GetHistMultInt())->GetEntries();
675 avMultQC4POI = (qcCommonHist4->GetHistMultDiff())->GetMean();
676 nEvtsQC4POI = (qcCommonHist4->GetHistMultDiff())->GetEntries();
a88e5ac2 677 }
1fca9c90 678 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
679 // !!!! to be removed !!!!
a88e5ac2 680 if(entryQC4)
681 {
70288839 682 entryQC4->Append("M = ");
683 (*entryQC4)+=(Long_t)avMultQC4;
684 entryQC4->Append(", N = ");
685 (*entryQC4)+=(Long_t)nEvtsQC4;
70288839 686 }
1fca9c90 687 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
688 if(entryQC4RP)
689 {
690 entryQC4RP->Append("M = ");
691 (*entryQC4RP)+=(Long_t)avMultQC4RP;
692 entryQC4RP->Append(", N = ");
693 (*entryQC4RP)+=(Long_t)nEvtsQC4RP;
694 }
695 if(entryQC4POI)
696 {
697 entryQC4POI->Append("M = ");
698 (*entryQC4POI)+=(Long_t)avMultQC4POI;
699 entryQC4POI->Append(", N = ");
700 (*entryQC4POI)+=(Long_t)nEvtsQC4POI;
701 }
702
a88e5ac2 703 if(qcCommonHist6)
704 {
1fca9c90 705 avMultQC6 = (qcCommonHist6->GetHistMultInt())->GetMean();//to be removed
706 nEvtsQC6 = (qcCommonHist6->GetHistMultInt())->GetEntries();//to be removed
707 avMultQC6RP = (qcCommonHist6->GetHistMultInt())->GetMean();
708 nEvtsQC6RP = (qcCommonHist6->GetHistMultInt())->GetEntries();
709 avMultQC6POI = (qcCommonHist6->GetHistMultDiff())->GetMean();
710 nEvtsQC6POI = (qcCommonHist6->GetHistMultDiff())->GetEntries();
a88e5ac2 711 }
1fca9c90 712 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
713 // !!!! to be removed !!!!
a88e5ac2 714 if(entryQC6)
715 {
716 entryQC6->Append("M = ");
717 (*entryQC6)+=(Long_t)avMultQC6;
718 entryQC6->Append(", N = ");
719 (*entryQC6)+=(Long_t)nEvtsQC6;
720 }
1fca9c90 721 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
722 if(entryQC6RP)
723 {
724 entryQC6RP->Append("M = ");
725 (*entryQC6RP)+=(Long_t)avMultQC6RP;
726 entryQC6RP->Append(", N = ");
727 (*entryQC6RP)+=(Long_t)nEvtsQC6RP;
728 }
729 if(entryQC6POI)
730 {
731 entryQC6POI->Append("M = ");
732 (*entryQC6POI)+=(Long_t)avMultQC6POI;
733 entryQC6POI->Append(", N = ");
734 (*entryQC6POI)+=(Long_t)nEvtsQC6POI;
735 }
736
a88e5ac2 737 if(qcCommonHist8)
738 {
1fca9c90 739 avMultQC8 = (qcCommonHist8->GetHistMultInt())->GetMean();//to be removed
740 nEvtsQC8 = (qcCommonHist8->GetHistMultInt())->GetEntries();//to be removed
741 avMultQC8RP = (qcCommonHist8->GetHistMultInt())->GetMean();
742 nEvtsQC8RP = (qcCommonHist8->GetHistMultInt())->GetEntries();
743 avMultQC8POI = (qcCommonHist8->GetHistMultDiff())->GetMean();
744 nEvtsQC8POI = (qcCommonHist8->GetHistMultDiff())->GetEntries();
a88e5ac2 745 }
1fca9c90 746 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
747 // !!!! to be removed !!!!
a88e5ac2 748 if(entryQC8)
749 {
750 entryQC8->Append("M = ");
751 (*entryQC8)+=(Long_t)avMultQC8;
752 entryQC8->Append(", N = ");
753 (*entryQC8)+=(Long_t)nEvtsQC8;
754 }
1fca9c90 755 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
756 if(entryQC8RP)
757 {
758 entryQC8RP->Append("M = ");
759 (*entryQC8RP)+=(Long_t)avMultQC8RP;
760 entryQC8RP->Append(", N = ");
761 (*entryQC8RP)+=(Long_t)nEvtsQC8RP;
762 }
763 if(entryQC8POI)
764 {
765 entryQC8POI->Append("M = ");
766 (*entryQC8POI)+=(Long_t)avMultQC8POI;
767 entryQC8POI->Append(", N = ");
768 (*entryQC8POI)+=(Long_t)nEvtsQC8POI;
769 }
770
a88e5ac2 771 //FQD:
772 if(fqdCommonHist)
773 {
1fca9c90 774 avMultFQD = (fqdCommonHist->GetHistMultInt())->GetMean();//to be removed
775 nEvtsFQD = (fqdCommonHist->GetHistMultInt())->GetEntries();//to be removed
776 avMultFQDRP = (fqdCommonHist->GetHistMultInt())->GetMean();
777 nEvtsFQDRP = (fqdCommonHist->GetHistMultInt())->GetEntries();
778 avMultFQDPOI = (fqdCommonHist->GetHistMultDiff())->GetMean();
779 nEvtsFQDPOI = (fqdCommonHist->GetHistMultDiff())->GetEntries();
a88e5ac2 780 }
1fca9c90 781 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
782 // !!!! to be removed !!!!
a88e5ac2 783 if(entryFQD)
784 {
785 entryFQD->Append("M = ");
786 (*entryFQD)+=(Long_t)avMultFQD;
787 entryFQD->Append(", N = ");
788 (*entryFQD)+=(Long_t)nEvtsFQD;
789 }
1fca9c90 790 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
791 if(entryFQDRP)
792 {
793 entryFQDRP->Append("M = ");
794 (*entryFQDRP)+=(Long_t)avMultFQDRP;
795 entryFQDRP->Append(", N = ");
796 (*entryFQDRP)+=(Long_t)nEvtsFQDRP;
797 }
798 if(entryFQDPOI)
799 {
800 entryFQDPOI->Append("M = ");
801 (*entryFQDPOI)+=(Long_t)avMultFQDPOI;
802 entryFQDPOI->Append(", N = ");
803 (*entryFQDPOI)+=(Long_t)nEvtsFQDPOI;
804 }
805
a88e5ac2 806 //LYZ1:
807 if(lyz1CommonHist)
808 {
1fca9c90 809 avMultLYZ1 = (lyz1CommonHist->GetHistMultInt())->GetMean();//to be removed
810 nEvtsLYZ1 = (lyz1CommonHist->GetHistMultInt())->GetEntries();//to be removed
811 avMultLYZ1RP = (lyz1CommonHist->GetHistMultInt())->GetMean();
812 nEvtsLYZ1RP = (lyz1CommonHist->GetHistMultInt())->GetEntries();
813 avMultLYZ1POI = (lyz1CommonHist->GetHistMultDiff())->GetMean();
814 nEvtsLYZ1POI = (lyz1CommonHist->GetHistMultDiff())->GetEntries();
a88e5ac2 815 }
1fca9c90 816 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
817 // !!!! to be removed !!!!
a88e5ac2 818 if(entryLYZ1)
819 {
820 entryLYZ1->Append("M = ");
821 (*entryLYZ1)+=(Long_t)avMultLYZ1;
822 entryLYZ1->Append(", N = ");
823 (*entryLYZ1)+=(Long_t)nEvtsLYZ1;
824 }
1fca9c90 825 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
826 if(entryLYZ1RP)
827 {
828 entryLYZ1RP->Append("M = ");
829 (*entryLYZ1RP)+=(Long_t)avMultLYZ1RP;
830 entryLYZ1RP->Append(", N = ");
831 (*entryLYZ1RP)+=(Long_t)nEvtsLYZ1RP;
832 }
833 if(entryLYZ1POI)
834 {
835 entryLYZ1POI->Append("M = ");
836 (*entryLYZ1POI)+=(Long_t)avMultLYZ1POI;
837 entryLYZ1POI->Append(", N = ");
838 (*entryLYZ1POI)+=(Long_t)nEvtsLYZ1POI;
839 }
70288839 840
a88e5ac2 841 //LYZEP:
842 if(lyzepCommonHist)
70288839 843 {
e83922f2 844 avMultLYZEP = (lyzepCommonHist->GetHistMultInt())->GetMean();//to be removed
1fca9c90 845 nEvtsLYZEP = (lyzepCommonHist->GetHistMultInt())->GetEntries();//to be removed
e83922f2 846 avMultLYZEPRP = (lyzepCommonHist->GetHistMultInt())->GetMean();
1fca9c90 847 nEvtsLYZEPRP = (lyzepCommonHist->GetHistMultInt())->GetEntries();
e83922f2 848 avMultLYZEPPOI = (lyzepCommonHist->GetHistMultDiff())->GetMean();
1fca9c90 849 nEvtsLYZEPPOI = (lyzepCommonHist->GetHistMultDiff())->GetEntries();
70288839 850 }
1fca9c90 851 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
852 // !!!! to be removed !!!!
a88e5ac2 853 if(entryLYZEP)
70288839 854 {
a88e5ac2 855 entryLYZEP->Append("M = ");
856 (*entryLYZEP)+=(Long_t)avMultLYZEP;
857 entryLYZEP->Append(", N = ");
858 (*entryLYZEP)+=(Long_t)nEvtsLYZEP;
70288839 859 }
1fca9c90 860 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
861 if(entryLYZEPRP)
862 {
863 entryLYZEPRP->Append("M = ");
864 (*entryLYZEPRP)+=(Long_t)avMultLYZEPRP;
865 entryLYZEPRP->Append(", N = ");
866 (*entryLYZEPRP)+=(Long_t)nEvtsLYZEPRP;
867 }
868 if(entryLYZEPPOI)
869 {
870 entryLYZEPPOI->Append("M = ");
871 (*entryLYZEPPOI)+=(Long_t)avMultLYZEPPOI;
872 entryLYZEPPOI->Append(", N = ");
873 (*entryLYZEPPOI)+=(Long_t)nEvtsLYZEPPOI;
874 }
875
876 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
877 // !!!! to be removed !!!!
a88e5ac2 878 if(textResults)
70288839 879 {
a88e5ac2 880 textResults->AddText(entryMC->Data());
881 textResults->AddText(entryGFC->Data());
882 textResults->AddText(entryQC2->Data());
883 textResults->AddText(entryQC4->Data());
884 textResults->AddText(entryQC6->Data());
885 textResults->AddText(entryQC8->Data());
886 textResults->AddText(entryFQD->Data());
887 textResults->AddText(entryLYZ1->Data());
888 textResults->AddText(entryLYZEP->Data());
70288839 889 }
1fca9c90 890 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
891 //RP:
892 if(textResultsRP)
893 {
894 textResultsRP->AddText(entryMCRP->Data());
895 textResultsRP->AddText(entryGFCRP->Data());
896 textResultsRP->AddText(entryQC2RP->Data());
897 textResultsRP->AddText(entryQC4RP->Data());
898 textResultsRP->AddText(entryQC6RP->Data());
899 textResultsRP->AddText(entryQC8RP->Data());
900 textResultsRP->AddText(entryFQDRP->Data());
901 textResultsRP->AddText(entryLYZ1RP->Data());
902 textResultsRP->AddText(entryLYZEPRP->Data());
903 }
904 //POI:
905 if(textResultsPOI)
906 {
907 textResultsPOI->AddText(entryMCPOI->Data());
908 textResultsPOI->AddText(entryGFCPOI->Data());
909 textResultsPOI->AddText(entryQC2POI->Data());
910 textResultsPOI->AddText(entryQC4POI->Data());
911 textResultsPOI->AddText(entryQC6POI->Data());
912 textResultsPOI->AddText(entryQC8POI->Data());
913 textResultsPOI->AddText(entryFQDPOI->Data());
914 textResultsPOI->AddText(entryLYZ1POI->Data());
915 textResultsPOI->AddText(entryLYZEPPOI->Data());
916 }
a88e5ac2 917 //----------------------------------------------------------------------------------
70288839 918
1fca9c90 919 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
920 // !!!! to be removed !!!!
70288839 921 //----------------------------------------------------------------------------------
a88e5ac2 922 //final drawing for integrated flow:
923 TCanvas* intFlowAllCanvas = new TCanvas("Integrated Flow","Integrated Flow",1000,600);
6f62c2a7 924
a88e5ac2 925 intFlowAllCanvas->Divide(2,1);
6f62c2a7 926
a88e5ac2 927 //1st pad is for plot:
928 (intFlowAllCanvas->cd(1))->SetPad(0.0,0.0,0.75,1.0);
9d3cbee7 929
a88e5ac2 930 if(intFlowAll)
931 {
932 if(dMin>0. && dMax>0.)
933 {
934 (intFlowAll->GetYaxis())->SetRangeUser(0.9744*dMin,1.0144*dMax);
935 } else if(dMin<0. && dMax>0.)
936 {
937 if(!(-1.*dMin<4.*dMax))
938 {
939 (intFlowAll->GetYaxis())->SetRangeUser(1.0266*dMin,1.0144*dMax);
940 } else {(intFlowAll->GetYaxis())->SetRangeUser(1.1266*dMin,1.0144*dMax);}
941 } else if(dMin<0. && dMax<0.)
942 {
943 (intFlowAll->GetYaxis())->SetRangeUser(1.0266*dMin,0.9866*dMax);
944 }
945 intFlowAll->Draw("E1");
e83922f2 946 }
947
a88e5ac2 948 if(pMesh) pMesh->Draw("LFSAME");
949
950 if(flowResults) flowResults->Draw("PSAME");
951
952 //2nd pad is for legend:
953 (intFlowAllCanvas->cd(2))->SetPad(0.75,0.0,1.0,1.0);
954
955 if(textDefault)
956 {
957 textDefault->Draw();
958 textResults->Draw();
959 }
e83922f2 960
a88e5ac2 961 //----------------------------------------------------------------------------------
1fca9c90 962 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
963
e83922f2 964
965
e83922f2 966
1fca9c90 967 //----------------------------------------------------------------------------------
968 //final drawing for integrated flow of RP (i.e. of particles used to determine the reaction plane):
e83922f2 969 if(plotIntFlowRP)
970 {
971 TCanvas* intFlowAllCanvasRP = new TCanvas("Integrated Flow RP","Integrated Flow RP",1000,600);
1fca9c90 972
e83922f2 973 intFlowAllCanvasRP->Divide(2,1);
1fca9c90 974
e83922f2 975 //1st pad is for plot:
976 (intFlowAllCanvasRP->cd(1))->SetPad(0.0,0.0,0.75,1.0);
1fca9c90 977
694e0378 978 TH1D *intFlowAllRP = new TH1D(*intFlowAll);
979
e83922f2 980 if(intFlowAllRP)
981 {
982 if(dMinRP>0. && dMaxRP>0.)
983 {
984 (intFlowAllRP->GetYaxis())->SetRangeUser(0.9744*dMinRP,1.0144*dMaxRP);
985 } else if(dMinRP<0. && dMaxRP>0.)
986 {
987 if(!(-1.*dMinRP<4.*dMaxRP))
988 {
989 (intFlowAllRP->GetYaxis())->SetRangeUser(1.0266*dMinRP,1.0144*dMaxRP);
990 } else {(intFlowAllRP->GetYaxis())->SetRangeUser(1.1266*dMinRP,1.0144*dMaxRP);}
991 } else if(dMinRP<0. && dMaxRP<0.)
992 {
993 (intFlowAllRP->GetYaxis())->SetRangeUser(1.0266*dMinRP,0.9866*dMaxRP);
994 }
995 intFlowAllRP->Draw("E1");
996 }
694e0378 997
e83922f2 998 if(pMeshRP) pMeshRP->Draw("LFSAME");
999
1000 if(flowResultsRP) flowResultsRP->Draw("PSAME");
1fca9c90 1001
e83922f2 1002 //2nd pad is for legend:
1003 (intFlowAllCanvasRP->cd(2))->SetPad(0.75,0.0,1.0,1.0);
1004
1005 if(textDefault) textDefault->Draw();
1fca9c90 1006
e83922f2 1007 if(textResultsRP) textResultsRP->Draw();
1008 }//end of if(plotIntFlowRP}
1fca9c90 1009 //----------------------------------------------------------------------------------
1010
1011 //----------------------------------------------------------------------------------
1012 //final drawing for integrated flow of POI (i.e. of particles of interest):
e83922f2 1013 if(plotIntFlowPOI)
1014 {
1015 TCanvas* intFlowAllCanvasPOI = new TCanvas("Integrated Flow POI","Integrated Flow POI",1000,600);
1fca9c90 1016
e83922f2 1017 intFlowAllCanvasPOI->Divide(2,1);
1fca9c90 1018
e83922f2 1019 //1st pad is for plot:
1020 (intFlowAllCanvasPOI->cd(1))->SetPad(0.0,0.0,0.75,1.0);
1021
694e0378 1022 TH1D *intFlowAllPOI = new TH1D(*intFlowAll);
1023
e83922f2 1024 if(intFlowAllPOI)
1fca9c90 1025 {
e83922f2 1026 if(dMinPOI>0. && dMaxPOI>0.)
1027 {
1028 (intFlowAllPOI->GetYaxis())->SetRangeUser(0.9744*dMinPOI,1.0144*dMaxPOI);
1029 } else if(dMinPOI<0. && dMaxPOI>0.)
1030 {
1031 if(!(-1.*dMinPOI<4.*dMaxPOI))
1032 {
1033 (intFlowAllPOI->GetYaxis())->SetRangeUser(1.0266*dMinPOI,1.0144*dMaxPOI);
1034 } else {(intFlowAllPOI->GetYaxis())->SetRangeUser(1.1266*dMinPOI,1.0144*dMaxPOI);}
1035 } else if(dMinPOI<0. && dMaxPOI<0.)
1036 {
1037 (intFlowAllPOI->GetYaxis())->SetRangeUser(1.0266*dMinPOI,0.9866*dMaxPOI);
1038 }
1039 intFlowAllPOI->Draw("E1");
1040 }
1fca9c90 1041
e83922f2 1042 if(pMeshPOI) pMeshPOI->Draw("LFSAME");
1043
1044 if(flowResultsPOI) flowResultsPOI->Draw("PSAME");
1fca9c90 1045
e83922f2 1046 //2nd pad is for legend:
1047 (intFlowAllCanvasPOI->cd(2))->SetPad(0.75,0.0,1.0,1.0);
1048
1049 if(textDefault) textDefault->Draw();
1fca9c90 1050
e83922f2 1051 if(textResultsPOI) textResultsPOI->Draw();
1052 }// end of if(plotIntFlowPOI)
1fca9c90 1053 //----------------------------------------------------------------------------------
1054
9d3cbee7 1055 //==================================================================================
e83922f2 1056
1057
1058
9d3cbee7 1059
1060 //==================================================================================
1061 // DIFFERENTIAL FLOW
1062 //==================================================================================
70288839 1063 Int_t iNbinsPt = AliFlowCommonConstants::GetNbinsPt();
1064 Double_t dPtMin = AliFlowCommonConstants::GetPtMin();
1065 Double_t dPtMax = AliFlowCommonConstants::GetPtMax();
1066
1fca9c90 1067 Int_t iNbinsEta = AliFlowCommonConstants::GetNbinsEta();
1068 Double_t dEtaMin = AliFlowCommonConstants::GetEtaMin();
1069 Double_t dEtaMax = AliFlowCommonConstants::GetEtaMax();
1070
a88e5ac2 1071 //----------------------------------------------------------------------------------
1fca9c90 1072 //cosmetics: the style histogram for differential flow (pt):
1073 TH1D *styleHistPt = new TH1D("styleHistPt","styleHistPt",iNbinsPt,dPtMin,dPtMax);
1074 styleHistPt->SetTitle("Differential Flow");
1075 styleHistPt->SetXTitle("p_{t} [GeV]");
1076 styleHistPt->SetYTitle("v_{n}");
1077
1078 //cosmetics: the style histogram for differential flow (eta):
1079 TH1D *styleHistEta = new TH1D("styleHistEta","styleHistEta",iNbinsEta,dEtaMin,dEtaMax);
1080 styleHistEta->SetTitle("Differential Flow");
1081 styleHistEta->SetXTitle("#eta");
1082 styleHistEta->SetYTitle("v_{n}");
7d02d77f 1083
1084 //cosmetics: marker style and color for each method:
1085 //MC:
1086 Int_t markerStyleMC = 20;//full circle
1087 Int_t markerColorMC = kRed;
1088 //GFC{2}
1089 Int_t markerStyleGFC2 = 21;//full square
1090 Int_t markerColorGFC2 = kAzure-7;
1091 //GFC{4}
1092 Int_t markerStyleGFC4 = 20;//full circle
1093 Int_t markerColorGFC4 = kAzure+3;
1094 //GFC{6}
1095 Int_t markerStyleGFC6 = 25;//open circle
1096 Int_t markerColorGFC6 = kAzure-7;
1097 //GFC{8}
1098 Int_t markerStyleGFC8 = 24;//open square
1099 Int_t markerColorGFC8 = kAzure+3;
1100 //QC{2}
1101 Int_t markerStyleQC2 = 21;//full square
1102 Int_t markerColorQC2 = kOrange-7;
1103 //QC{4}
1104 Int_t markerStyleQC4 = 20;//full circle
1105 Int_t markerColorQC4 = kOrange+3;
1106 //QC{6}
1107 Int_t markerStyleQC6 = 25;//open circle
1108 Int_t markerColorQC6 = kOrange-7;
1109 //QC{8}
1110 Int_t markerStyleQC8 = 24;//open square
1111 Int_t markerColorQC8 = kOrange+3;
1112 //LYZ2
1113 Int_t markerStyleLYZ2 = 22;//full triangle
1114 Int_t markerColorLYZ2 = kYellow+3;
1115 //LYZEP
1116 Int_t markerStyleLYZEP = 26;//open triangle
1117 Int_t markerColorLYZEP = kYellow+3;
a88e5ac2 1118 //----------------------------------------------------------------------------------
9d3cbee7 1119
1fca9c90 1120
1121
1122 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
1123 // !!!! to be removed !!!!
a88e5ac2 1124 //----------------------------------------------------------------------------------
1125 //cosmetics: Monte Carlo error bands for differential flow
1126 TGraph* pMeshDiffFlow = NULL;
1127 if(mcepCommonHistRes)
1128 {
7d02d77f 1129 Int_t nPtsDiffFlow = (mcepCommonHistRes->GetHistDiffFlow())->GetNbinsX();
a88e5ac2 1130 Double_t binWidth = (mcepCommonHistRes->GetHistDiffFlow())->GetBinWidth(1);//assuming that all bins have the same width
1131
7d02d77f 1132 pMeshDiffFlow = new TGraph(2*nPtsDiffFlow+1);
a88e5ac2 1133
1134 Double_t valueMC=0., errorMC=0.;
7d02d77f 1135 for(Int_t i=1;i<nPtsDiffFlow+1;i++)
a88e5ac2 1136 {
1137 valueMC = (mcepCommonHistRes->GetHistDiffFlow())->GetBinContent(i);
1138 errorMC = (mcepCommonHistRes->GetHistDiffFlow())->GetBinError(i);
1139 pMeshDiffFlow->SetPoint(i,(i-0.5)*binWidth,valueMC+errorMC);
1140 }
7d02d77f 1141 for(Int_t i=nPtsDiffFlow+1;i<2*nPtsDiffFlow+1;i++)
a88e5ac2 1142 {
7d02d77f 1143 valueMC = (mcepCommonHistRes->GetHistDiffFlow())->GetBinContent(2*nPtsDiffFlow+1-i);
1144 errorMC = (mcepCommonHistRes->GetHistDiffFlow())->GetBinError(2*nPtsDiffFlow+1-i);
1145 pMeshDiffFlow->SetPoint(i,(2*nPtsDiffFlow-i+0.5)*binWidth,valueMC-errorMC);
a88e5ac2 1146 }
7d02d77f 1147 pMeshDiffFlow->SetPoint(2*nPtsDiffFlow+1,0.5*binWidth,valueMC+errorMC);
a88e5ac2 1148 pMeshDiffFlow->SetFillStyle(meshStyle);
1149 pMeshDiffFlow->SetFillColor(meshColor);
1150 }
1151 //----------------------------------------------------------------------------------
1fca9c90 1152 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
1153
1fca9c90 1154 //----------------------------------------------------------------------------------
1155 //RP:
1156 //cosmetics: Monte Carlo error bands for differential flow (Pt)
1157 TGraph* pMeshDiffFlowPtRP = NULL;
1158 if(mcepCommonHistRes)
1159 {
7d02d77f 1160 Int_t nBinsDiffFlowPtRP = (mcepCommonHistRes->GetHistDiffFlowPtRP())->GetNbinsX();
1fca9c90 1161 Double_t binWidthPtRP = (mcepCommonHistRes->GetHistDiffFlowPtRP())->GetBinWidth(1);//assuming that all bins have the same width
7d02d77f 1162
1163 //counting the non-empty bins:
1164 Int_t nNonEmptyBinsDiffFlowPtRP=0;
1165 for(Int_t i=1;i<nBinsDiffFlowPtRP+1;i++)
1166 {
1167 if(!(mcepCommonHistRes->GetHistDiffFlowPtRP())->GetBinError(i)==0.0))
1168 {
1169 nNonEmptyBinsDiffFlowPtRP++;
1170 }
1171 }
1fca9c90 1172
7d02d77f 1173 pMeshDiffFlowPtRP = new TGraph(2*nNonEmptyBinsDiffFlowPtRP+1);
1fca9c90 1174
7d02d77f 1175 Double_t valueMCPtRP=0.,errorMCPtRP=0.;
1176 Int_t countDiffFlowPtRP=1;
1177 Double_t xFirstDiffFlowPtRP=0.,yUpFirstDiffFlowPtRP=0.;//needed to close up the mesh
1178 for(Int_t i=1;i<nBinsDiffFlowPtRP+1;i++)
1fca9c90 1179 {
7d02d77f 1180 //setting up the upper limit of the mesh:
1fca9c90 1181 valueMCPtRP = (mcepCommonHistRes->GetHistDiffFlowPtRP())->GetBinContent(i);
7d02d77f 1182 errorMCPtRP = (mcepCommonHistRes->GetHistDiffFlowPtRP())->GetBinError(i);
1183 if(!(errorMCPtRP==0.0))
1184 {
1185 pMeshDiffFlowPtRP->SetPoint(countDiffFlowPtRP++,(i-0.5)*binWidthPtRP+dPtMin,valueMCPtRP+errorMCPtRP);
1186 if(xFirstDiffFlowPtRP==0.)
1187 {
1188 xFirstDiffFlowPtRP=(i-0.5)*binWidthPtRP+dPtMin;
1189 yUpFirstDiffFlowPtRP=valueMCPtRP+errorMCPtRP;
1190 }
1191 }
1192 }
1193 for(Int_t i=nBinsDiffFlowPtRP+1;i<2*nBinsDiffFlowPtRP+1;i++)
1194 {
1195 //setting up the lower limit of the mesh:
1196 valueMCPtRP = (mcepCommonHistRes->GetHistDiffFlowPtRP())->GetBinContent(2*nBinsDiffFlowPtRP+1-i);
1197 errorMCPtRP = (mcepCommonHistRes->GetHistDiffFlowPtRP())->GetBinError(2*nBinsDiffFlowPtRP+1-i);
1198 if(!(errorMCPtRP==0.0))
1199 {
1200 pMeshDiffFlowPtRP->SetPoint(countDiffFlowPtRP++,(2*nBinsDiffFlowPtRP-i+0.5)*binWidthPtRP+dPtMin,valueMCPtRP-errorMCPtRP);
1201 }
1202 }
1203 //closing the mesh area:
1204 pMeshDiffFlowPtRP->SetPoint(2*nNonEmptyBinsDiffFlowPtRP+1,xFirstDiffFlowPtRP,yUpFirstDiffFlowPtRP);
1205
1206 //setting the mesh style and color:
1fca9c90 1207 pMeshDiffFlowPtRP->SetFillStyle(meshStyle);
1208 pMeshDiffFlowPtRP->SetFillColor(meshColor);
1209 }
7d02d77f 1210
1fca9c90 1211 //cosmetics: Monte Carlo error bands for differential flow (Eta)
1212 TGraph* pMeshDiffFlowEtaRP = NULL;
1213 if(mcepCommonHistRes)
1214 {
7d02d77f 1215 Int_t nBinsDiffFlowEtaRP = (mcepCommonHistRes->GetHistDiffFlowEtaRP())->GetNbinsX();
1fca9c90 1216 Double_t binWidthEtaRP = (mcepCommonHistRes->GetHistDiffFlowEtaRP())->GetBinWidth(1);//assuming that all bins have the same width
e83922f2 1217
7d02d77f 1218 //counting the non-empty bins:
1219 Int_t nNonEmptyBinsDiffFlowEtaRP=0;
1220 for(Int_t i=1;i<nBinsDiffFlowEtaRP+1;i++)
1fca9c90 1221 {
7d02d77f 1222 if(!(mcepCommonHistRes->GetHistDiffFlowEtaRP())->GetBinError(i)==0.0))
1223 {
1224 nNonEmptyBinsDiffFlowEtaRP++;
1225 }
1fca9c90 1226 }
7d02d77f 1227
1228 pMeshDiffFlowEtaRP = new TGraph(2*nNonEmptyBinsDiffFlowEtaRP+1);
1229
1230 Double_t valueMCEtaRP=0.,errorMCEtaRP=0.;
1231 Int_t countDiffFlowEtaRP=1;
1232 Double_t xFirstDiffFlowEtaRP=0.,yUpFirstDiffFlowEtaRP=0.;//needed to close up the mesh
1233 for(Int_t i=1;i<nBinsDiffFlowEtaRP+1;i++)
1fca9c90 1234 {
7d02d77f 1235 //setting up the upper limit of the mesh:
1236 valueMCEtaRP = (mcepCommonHistRes->GetHistDiffFlowEtaRP())->GetBinContent(i);
1237 errorMCEtaRP = (mcepCommonHistRes->GetHistDiffFlowEtaRP())->GetBinError(i);
1238 if(!(errorMCEtaRP==0.0))
1239 {
1240 pMeshDiffFlowEtaRP->SetPoint(countDiffFlowEtaRP++,(i-0.5)*binWidthEtaRP+dEtaMin,valueMCEtaRP+errorMCEtaRP);
1241 if(xFirstDiffFlowEtaRP==0.)
1242 {
1243 xFirstDiffFlowEtaRP=(i-0.5)*binWidthEtaRP+dEtaMin;
1244 yUpFirstDiffFlowEtaRP=valueMCEtaRP+errorMCEtaRP;
1245 }
1246 }
1247 }
1248 for(Int_t i=nBinsDiffFlowEtaRP+1;i<2*nBinsDiffFlowEtaRP+1;i++)
1249 {
1250 //setting up the lower limit of the mesh:
1251 valueMCEtaRP = (mcepCommonHistRes->GetHistDiffFlowEtaRP())->GetBinContent(2*nBinsDiffFlowEtaRP+1-i);
1252 errorMCEtaRP = (mcepCommonHistRes->GetHistDiffFlowEtaRP())->GetBinError(2*nBinsDiffFlowEtaRP+1-i);
1253 if(!(errorMCEtaRP==0.0))
1254 {
1255 pMeshDiffFlowEtaRP->SetPoint(countDiffFlowEtaRP++,(2*nBinsDiffFlowEtaRP-i+0.5)*binWidthEtaRP+dEtaMin,valueMCEtaRP-errorMCEtaRP);
1256 }
1257 }
1258 //closing the mesh area:
1259 pMeshDiffFlowEtaRP->SetPoint(2*nNonEmptyBinsDiffFlowEtaRP+1,xFirstDiffFlowEtaRP,yUpFirstDiffFlowEtaRP);
1260
1261 //setting the mesh style and color:
1fca9c90 1262 pMeshDiffFlowEtaRP->SetFillStyle(meshStyle);
1263 pMeshDiffFlowEtaRP->SetFillColor(meshColor);
1264 }
1265 //----------------------------------------------------------------------------------
1266
1267
7d02d77f 1268
1269
1fca9c90 1270 //----------------------------------------------------------------------------------
1271 //POI:
1272 //cosmetics: Monte Carlo error bands for differential flow (Pt)
1273 TGraph* pMeshDiffFlowPtPOI = NULL;
1274 if(mcepCommonHistRes)
1275 {
7d02d77f 1276 Int_t nBinsDiffFlowPtPOI = (mcepCommonHistRes->GetHistDiffFlowPtPOI())->GetNbinsX();
1fca9c90 1277 Double_t binWidthPtPOI = (mcepCommonHistRes->GetHistDiffFlowPtPOI())->GetBinWidth(1);//assuming that all bins have the same width
7d02d77f 1278
1279 //counting the non-empty bins:
1280 Int_t nNonEmptyBinsDiffFlowPtPOI=0;
1281 for(Int_t i=1;i<nBinsDiffFlowPtPOI+1;i++)
1282 {
1283 if(!(mcepCommonHistRes->GetHistDiffFlowPtPOI())->GetBinError(i)==0.0))
1284 {
1285 nNonEmptyBinsDiffFlowPtPOI++;
1286 }
1287 }
1fca9c90 1288
7d02d77f 1289 pMeshDiffFlowPtPOI = new TGraph(2*nNonEmptyBinsDiffFlowPtPOI+1);
1fca9c90 1290
7d02d77f 1291 Double_t valueMCPtPOI=0.,errorMCPtPOI=0.;
1292 Int_t countDiffFlowPtPOI=1;
1293 Double_t xFirstDiffFlowPtPOI=0.,yUpFirstDiffFlowPtPOI=0.;//needed to close up the mesh
1294 for(Int_t i=1;i<nBinsDiffFlowPtPOI+1;i++)
1fca9c90 1295 {
7d02d77f 1296 //setting up the upper limit of the mesh:
1fca9c90 1297 valueMCPtPOI = (mcepCommonHistRes->GetHistDiffFlowPtPOI())->GetBinContent(i);
7d02d77f 1298 errorMCPtPOI = (mcepCommonHistRes->GetHistDiffFlowPtPOI())->GetBinError(i);
1299 if(!(errorMCPtPOI==0.0))
1300 {
1301 pMeshDiffFlowPtPOI->SetPoint(countDiffFlowPtPOI++,(i-0.5)*binWidthPtPOI+dPtMin,valueMCPtPOI+errorMCPtPOI);
1302 if(xFirstDiffFlowPtPOI==0.)
1303 {
1304 xFirstDiffFlowPtPOI=(i-0.5)*binWidthPtPOI+dPtMin;
1305 yUpFirstDiffFlowPtPOI=valueMCPtPOI+errorMCPtPOI;
1306 }
1307 }
1308 }
1309 for(Int_t i=nBinsDiffFlowPtPOI+1;i<2*nBinsDiffFlowPtPOI+1;i++)
1310 {
1311 //setting up the lower limit of the mesh:
1312 valueMCPtPOI = (mcepCommonHistRes->GetHistDiffFlowPtPOI())->GetBinContent(2*nBinsDiffFlowPtPOI+1-i);
1313 errorMCPtPOI = (mcepCommonHistRes->GetHistDiffFlowPtPOI())->GetBinError(2*nBinsDiffFlowPtPOI+1-i);
1314 if(!(errorMCPtPOI==0.0))
1315 {
1316 pMeshDiffFlowPtPOI->SetPoint(countDiffFlowPtPOI++,(2*nBinsDiffFlowPtPOI-i+0.5)*binWidthPtPOI+dPtMin,valueMCPtPOI-errorMCPtPOI);
1317 }
1318 }
1319 //closing the mesh area:
1320 pMeshDiffFlowPtPOI->SetPoint(2*nNonEmptyBinsDiffFlowPtPOI+1,xFirstDiffFlowPtPOI,yUpFirstDiffFlowPtPOI);
1321
1322 //setting the mesh style and color:
1fca9c90 1323 pMeshDiffFlowPtPOI->SetFillStyle(meshStyle);
1324 pMeshDiffFlowPtPOI->SetFillColor(meshColor);
1325 }
7d02d77f 1326
1fca9c90 1327 //cosmetics: Monte Carlo error bands for differential flow (Eta)
1328 TGraph* pMeshDiffFlowEtaPOI = NULL;
1329 if(mcepCommonHistRes)
1330 {
7d02d77f 1331 Int_t nBinsDiffFlowEtaPOI = (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->GetNbinsX();
1fca9c90 1332 Double_t binWidthEtaPOI = (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->GetBinWidth(1);//assuming that all bins have the same width
7d02d77f 1333
1334 //counting the non-empty bins:
1335 Int_t nNonEmptyBinsDiffFlowEtaPOI=0;
1336 for(Int_t i=1;i<nBinsDiffFlowEtaPOI+1;i++)
1337 {
1338 if(!(mcepCommonHistRes->GetHistDiffFlowEtaPOI())->GetBinError(i)==0.0))
1339 {
1340 nNonEmptyBinsDiffFlowEtaPOI++;
1341 }
1342 }
1fca9c90 1343
7d02d77f 1344 pMeshDiffFlowEtaPOI = new TGraph(2*nNonEmptyBinsDiffFlowEtaPOI+1);
a88e5ac2 1345
7d02d77f 1346 Double_t valueMCEtaPOI=0.,errorMCEtaPOI=0.;
1347 Int_t countDiffFlowEtaPOI=1;
1348 Double_t xFirstDiffFlowEtaPOI=0.,yUpFirstDiffFlowEtaPOI=0.;//needed to close up the mesh
1349 for(Int_t i=1;i<nBinsDiffFlowEtaPOI+1;i++)
1fca9c90 1350 {
7d02d77f 1351 //setting up the upper limit of the mesh:
1fca9c90 1352 valueMCEtaPOI = (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->GetBinContent(i);
7d02d77f 1353 errorMCEtaPOI = (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->GetBinError(i);
1354 if(!(errorMCEtaPOI==0.0))
1355 {
1356 pMeshDiffFlowEtaPOI->SetPoint(countDiffFlowEtaPOI++,(i-0.5)*binWidthEtaPOI+dEtaMin,valueMCEtaPOI+errorMCEtaPOI);
1357 if(xFirstDiffFlowEtaPOI==0.)
1358 {
1359 xFirstDiffFlowEtaPOI=(i-0.5)*binWidthEtaPOI+dEtaMin;
1360 yUpFirstDiffFlowEtaPOI=valueMCEtaPOI+errorMCEtaPOI;
1361 }
1362 }
1363 }
1364 for(Int_t i=nBinsDiffFlowEtaPOI+1;i<2*nBinsDiffFlowEtaPOI+1;i++)
1365 {
1366 //setting up the lower limit of the mesh:
1367 valueMCEtaPOI = (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->GetBinContent(2*nBinsDiffFlowEtaPOI+1-i);
1368 errorMCEtaPOI = (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->GetBinError(2*nBinsDiffFlowEtaPOI+1-i);
1369 if(!(errorMCEtaPOI==0.0))
1370 {
1371 pMeshDiffFlowEtaPOI->SetPoint(countDiffFlowEtaPOI++,(2*nBinsDiffFlowEtaPOI-i+0.5)*binWidthEtaPOI+dEtaMin,valueMCEtaPOI-errorMCEtaPOI);
1372 }
1373 }
1374 //closing the mesh area:
1375 pMeshDiffFlowEtaPOI->SetPoint(2*nNonEmptyBinsDiffFlowEtaPOI+1,xFirstDiffFlowEtaPOI,yUpFirstDiffFlowEtaPOI);
1376
1377 //setting the mesh style and color:
1fca9c90 1378 pMeshDiffFlowEtaPOI->SetFillStyle(meshStyle);
1379 pMeshDiffFlowEtaPOI->SetFillColor(meshColor);
7d02d77f 1380 }
1fca9c90 1381 //----------------------------------------------------------------------------------
1382
70288839 1383 //MCEP = Monte Carlo Event Plane
1fca9c90 1384 Double_t avMultDiffFlowMC=0.;//to be removed
1385 Double_t nEvtsDiffFlowMC=0;//to be removed
1386 Double_t avMultDiffFlowMCRP=0.;
1387 Double_t nEvtsDiffFlowMCRP=0;
1388 Double_t avMultDiffFlowMCPOI=0.;
1389 Double_t nEvtsDiffFlowMCPOI=0;
a88e5ac2 1390 if(fileMCEP)
9d3cbee7 1391 {
70288839 1392 if(mcepCommonHistRes)
1393 {
7d02d77f 1394 (mcepCommonHistRes->GetHistDiffFlow())->SetMarkerColor(markerColorMC);//to be removed
1395 (mcepCommonHistRes->GetHistDiffFlow())->SetMarkerStyle(markerStyleMC);//to be removed
1396 (mcepCommonHistRes->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorMC);
1397 (mcepCommonHistRes->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleMC);
1398 (mcepCommonHistRes->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorMC);
1399 (mcepCommonHistRes->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleMC);
1400 (mcepCommonHistRes->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorMC);
1401 (mcepCommonHistRes->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleMC);
1402 (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorMC);
1403 (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleMC);
a88e5ac2 1404 }
1405 if(mcepCommonHist)
1406 {
1fca9c90 1407 avMultDiffFlowMC = (mcepCommonHist->GetHistMultDiff())->GetMean();//to be removed
1408 nEvtsDiffFlowMC = (mcepCommonHist->GetHistMultDiff())->GetEntries();//to be removed
1409 avMultDiffFlowMCRP = (mcepCommonHist->GetHistMultInt())->GetMean();
1410 nEvtsDiffFlowMCRP = (mcepCommonHist->GetHistMultInt())->GetEntries();
1411 avMultDiffFlowMCPOI = (mcepCommonHist->GetHistMultDiff())->GetMean();
1412 nEvtsDiffFlowMCPOI = (mcepCommonHist->GetHistMultDiff())->GetEntries();
70288839 1413 }
1414 }
a88e5ac2 1415
9d3cbee7 1416 //GFC = Generating Function Cumulants
1fca9c90 1417 Double_t avMultDiffFlowGFC=0.;//to be removed
1418 Double_t nEvtsDiffFlowGFC=0.;//to be removed
1419 Double_t avMultDiffFlowGFCRP=0.;
1420 Double_t nEvtsDiffFlowGFCRP=0.;
1421 Double_t avMultDiffFlowGFCPOI=0.;
1422 Double_t nEvtsDiffFlowGFCPOI=0.;
a88e5ac2 1423 if(fileGFC)
9d3cbee7 1424 {
a88e5ac2 1425 if(gfcCommonHistRes2)
9d3cbee7 1426 {
7d02d77f 1427 (gfcCommonHistRes2->GetHistDiffFlow())->SetMarkerColor(markerColorGFC2);//to be removed
1428 (gfcCommonHistRes2->GetHistDiffFlow())->SetMarkerStyle(markerStyleGFC2);//to be removed
1429 (gfcCommonHistRes2->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorGFC2);
1430 (gfcCommonHistRes2->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleGFC2);
1431 (gfcCommonHistRes2->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorGFC2);
1432 (gfcCommonHistRes2->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleGFC2);
1433 (gfcCommonHistRes2->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorGFC2);
1434 (gfcCommonHistRes2->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleGFC2);
1435 (gfcCommonHistRes2->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorGFC2);
1436 (gfcCommonHistRes2->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleGFC2);
9d3cbee7 1437 }
a88e5ac2 1438 if(gfcCommonHistRes4)
9d3cbee7 1439 {
7d02d77f 1440 (gfcCommonHistRes4->GetHistDiffFlow())->SetMarkerColor(markerColorGFC4);//to be removed
1441 (gfcCommonHistRes4->GetHistDiffFlow())->SetMarkerStyle(markerStyleGFC4);//to be removed
1442 (gfcCommonHistRes4->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorGFC4);
1443 (gfcCommonHistRes4->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleGFC4);
1444 (gfcCommonHistRes4->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorGFC4);
1445 (gfcCommonHistRes4->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleGFC4);
1446 (gfcCommonHistRes4->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorGFC4);
1447 (gfcCommonHistRes4->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleGFC4);
1448 (gfcCommonHistRes4->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorGFC4);
1449 (gfcCommonHistRes4->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleGFC4);
1fca9c90 1450 }
1451 if(gfcCommonHistRes6)
1452 {
7d02d77f 1453 (gfcCommonHistRes6->GetHistDiffFlow())->SetMarkerColor(markerColorGFC6);//to be removed
1454 (gfcCommonHistRes6->GetHistDiffFlow())->SetMarkerStyle(markerStyleGFC6);//to be removed
1455 (gfcCommonHistRes6->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorGFC6);
1456 (gfcCommonHistRes6->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleGFC6);
1457 (gfcCommonHistRes6->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorGFC6);
1458 (gfcCommonHistRes6->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleGFC6);
1459 (gfcCommonHistRes6->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorGFC6);
1460 (gfcCommonHistRes6->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleGFC6);
1461 (gfcCommonHistRes6->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorGFC6);
1462 (gfcCommonHistRes6->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleGFC6);
1fca9c90 1463 }
1464 if(gfcCommonHistRes8)
1465 {
7d02d77f 1466 (gfcCommonHistRes8->GetHistDiffFlow())->SetMarkerColor(markerColorGFC8);//to be removed
1467 (gfcCommonHistRes8->GetHistDiffFlow())->SetMarkerStyle(markerStyleGFC8);//to be removed
1468 (gfcCommonHistRes8->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorGFC8);
1469 (gfcCommonHistRes8->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleGFC8);
1470 (gfcCommonHistRes8->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorGFC8);
1471 (gfcCommonHistRes8->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleGFC8);
1472 (gfcCommonHistRes8->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorGFC8);
1473 (gfcCommonHistRes8->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleGFC8);
1474 (gfcCommonHistRes8->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorGFC8);
1475 (gfcCommonHistRes8->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleGFC8);
9d3cbee7 1476 }
a88e5ac2 1477 if(gfcCommonHist)
1478 {
1fca9c90 1479 avMultDiffFlowGFC = (gfcCommonHist->GetHistMultDiff())->GetMean();//to be removed
1480 nEvtsDiffFlowGFC = (gfcCommonHist->GetHistMultDiff())->GetEntries();//to be removed
1481 avMultDiffFlowGFCRP = (gfcCommonHist->GetHistMultInt())->GetMean();
1482 nEvtsDiffFlowGFCRP = (gfcCommonHist->GetHistMultInt())->GetEntries();
1483 avMultDiffFlowGFCPOI = (gfcCommonHist->GetHistMultDiff())->GetMean();
1484 nEvtsDiffFlowGFCPOI = (gfcCommonHist->GetHistMultDiff())->GetEntries();
a88e5ac2 1485 }
9d3cbee7 1486 }
a88e5ac2 1487
9d3cbee7 1488 //QC = Q-cumulants
1fca9c90 1489 Double_t avMultDiffFlowQC2=0., avMultDiffFlowQC4=0.;//to be removed
1490 Double_t nEvtsDiffFlowQC2=0., nEvtsDiffFlowQC4=0.;//to be removed
e83922f2 1491 Double_t avMultDiffFlowQC6=0., avMultDiffFlowQC8=0.;//to be removed
1492 Double_t nEvtsDiffFlowQC6=0., nEvtsDiffFlowQC8=0.;//to be removed
1fca9c90 1493 Double_t avMultDiffFlowQC2RP=0.;
1494 Double_t nEvtsDiffFlowQC2RP=0.;
1495 Double_t avMultDiffFlowQC2POI=0.;
1496 Double_t nEvtsDiffFlowQC2POI=0.;
1497 Double_t avMultDiffFlowQC4RP=0.;
1498 Double_t nEvtsDiffFlowQC4RP=0.;
1499 Double_t avMultDiffFlowQC4POI=0.;
1500 Double_t nEvtsDiffFlowQC4POI=0.;
e83922f2 1501 Double_t avMultDiffFlowQC6RP=0.;
1502 Double_t nEvtsDiffFlowQC6RP=0.;
1503 Double_t avMultDiffFlowQC6POI=0.;
1504 Double_t nEvtsDiffFlowQC6POI=0.;
1505 Double_t avMultDiffFlowQC8RP=0.;
1506 Double_t nEvtsDiffFlowQC8RP=0.;
1507 Double_t avMultDiffFlowQC8POI=0.;
1508 Double_t nEvtsDiffFlowQC8POI=0.;
1fca9c90 1509
a88e5ac2 1510 if(fileQC)
9d3cbee7 1511 {
a88e5ac2 1512 //QC{2}
70288839 1513 if(qcCommonHistRes2)
9d3cbee7 1514 {
7d02d77f 1515 (qcCommonHistRes2->GetHistDiffFlow())->SetMarkerColor(markerColorQC2);//to be removed
1516 (qcCommonHistRes2->GetHistDiffFlow())->SetMarkerStyle(markerStyleQC2);//to be removed
1517 (qcCommonHistRes2->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorQC2);
1518 (qcCommonHistRes2->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleQC2);
1519 (qcCommonHistRes2->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorQC2);
1520 (qcCommonHistRes2->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleQC2);
1521 (qcCommonHistRes2->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorQC2);
1522 (qcCommonHistRes2->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleQC2);
1523 (qcCommonHistRes2->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorQC2);
1524 (qcCommonHistRes2->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleQC2);
9d3cbee7 1525 }
a88e5ac2 1526 if(qcCommonHist2)
1527 {
1fca9c90 1528 avMultDiffFlowQC2 = (qcCommonHist2->GetHistMultDiff())->GetMean();//to be removed
1529 nEvtsDiffFlowQC2 = (qcCommonHist2->GetHistMultDiff())->GetEntries();//to be removed
1530 avMultDiffFlowQC2RP = (qcCommonHist2->GetHistMultInt())->GetMean();
1531 nEvtsDiffFlowQC2RP = (qcCommonHist2->GetHistMultInt())->GetEntries();
1532 avMultDiffFlowQC2POI = (qcCommonHist2->GetHistMultDiff())->GetMean();
1533 nEvtsDiffFlowQC2POI = (qcCommonHist2->GetHistMultDiff())->GetEntries();
a88e5ac2 1534 }
1535 //QC{4}
70288839 1536 if(qcCommonHistRes4)
9d3cbee7 1537 {
7d02d77f 1538 (qcCommonHistRes4->GetHistDiffFlow())->SetMarkerColor(markerColorQC4);//to be removed
1539 (qcCommonHistRes4->GetHistDiffFlow())->SetMarkerStyle(markerStyleQC4);//to be removed
1540 (qcCommonHistRes4->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorQC4);
1541 (qcCommonHistRes4->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleQC4);
1542 (qcCommonHistRes4->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorQC4);
1543 (qcCommonHistRes4->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleQC4);
1544 (qcCommonHistRes4->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorQC4);
1545 (qcCommonHistRes4->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleQC4);
1546 (qcCommonHistRes4->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorQC4);
1547 (qcCommonHistRes4->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleQC4);
a88e5ac2 1548 }
1549 if(qcCommonHist4)
1550 {
1fca9c90 1551 avMultDiffFlowQC4 = (qcCommonHist4->GetHistMultDiff())->GetMean();//to be removed
1552 nEvtsDiffFlowQC4 = (qcCommonHist4->GetHistMultDiff())->GetEntries();//to be removed
1553 avMultDiffFlowQC4RP = (qcCommonHist4->GetHistMultInt())->GetMean();
1554 nEvtsDiffFlowQC4RP = (qcCommonHist4->GetHistMultInt())->GetEntries();
1555 avMultDiffFlowQC4POI = (qcCommonHist4->GetHistMultDiff())->GetMean();
1556 nEvtsDiffFlowQC4POI = (qcCommonHist4->GetHistMultDiff())->GetEntries();
9d3cbee7 1557 }
e83922f2 1558 //QC{6}
1559 if(qcCommonHistRes6)
1560 {
7d02d77f 1561 (qcCommonHistRes6->GetHistDiffFlow())->SetMarkerColor(markerColorQC6);//to be removed
1562 (qcCommonHistRes6->GetHistDiffFlow())->SetMarkerStyle(markerStyleQC6);//to be removed
1563 (qcCommonHistRes6->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorQC6);
1564 (qcCommonHistRes6->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleQC6);
1565 (qcCommonHistRes6->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorQC6);
1566 (qcCommonHistRes6->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleQC6);
1567 (qcCommonHistRes6->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorQC6);
1568 (qcCommonHistRes6->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleQC6);
1569 (qcCommonHistRes6->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorQC6);
1570 (qcCommonHistRes6->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleQC6);
e83922f2 1571 }
1572 if(qcCommonHist6)
1573 {
1574 avMultDiffFlowQC6 = (qcCommonHist6->GetHistMultDiff())->GetMean();//to be removed
1575 nEvtsDiffFlowQC6 = (qcCommonHist6->GetHistMultDiff())->GetEntries();//to be removed
1576 avMultDiffFlowQC6RP = (qcCommonHist6->GetHistMultInt())->GetMean();
1577 nEvtsDiffFlowQC6RP = (qcCommonHist6->GetHistMultInt())->GetEntries();
1578 avMultDiffFlowQC6POI = (qcCommonHist6->GetHistMultDiff())->GetMean();
1579 nEvtsDiffFlowQC6POI = (qcCommonHist6->GetHistMultDiff())->GetEntries();
1580 }
1581 //QC{8}
1582 if(qcCommonHistRes8)
1583 {
7d02d77f 1584 (qcCommonHistRes8->GetHistDiffFlow())->SetMarkerColor(markerColorQC8);//to be removed
1585 (qcCommonHistRes8->GetHistDiffFlow())->SetMarkerStyle(markerStyleQC8);//to be removed
1586 (qcCommonHistRes8->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorQC8);
1587 (qcCommonHistRes8->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleQC8);
1588 (qcCommonHistRes8->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorQC8);
1589 (qcCommonHistRes8->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleQC8);
1590 (qcCommonHistRes8->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorQC8);
1591 (qcCommonHistRes8->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleQC8);
1592 (qcCommonHistRes8->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorQC8);
1593 (qcCommonHistRes8->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleQC8);
e83922f2 1594 }
1595 if(qcCommonHist8)
1596 {
1597 avMultDiffFlowQC8 = (qcCommonHist8->GetHistMultDiff())->GetMean();//to be removed
1598 nEvtsDiffFlowQC8 = (qcCommonHist8->GetHistMultDiff())->GetEntries();//to be removed
1599 avMultDiffFlowQC8RP = (qcCommonHist8->GetHistMultInt())->GetMean();
1600 nEvtsDiffFlowQC8RP = (qcCommonHist8->GetHistMultInt())->GetEntries();
1601 avMultDiffFlowQC8POI = (qcCommonHist8->GetHistMultDiff())->GetMean();
1602 nEvtsDiffFlowQC8POI = (qcCommonHist8->GetHistMultDiff())->GetEntries();
1603 }
9d3cbee7 1604 }
70288839 1605
a88e5ac2 1606 //LYZ2 = Lee-Yang Zeros (2nd run)
1fca9c90 1607 Double_t avMultDiffFlowLYZ2=0.;//to be removed
1608 Double_t nEvtsDiffFlowLYZ2=0;//to be removed
1609 Double_t avMultDiffFlowLYZ2RP=0.;
1610 Double_t nEvtsDiffFlowLYZ2RP=0;
1611 Double_t avMultDiffFlowLYZ2POI=0.;
1612 Double_t nEvtsDiffFlowLYZ2POI=0;
a88e5ac2 1613 if(fileLYZ2)
9d3cbee7 1614 {
a88e5ac2 1615 if(lyz2CommonHistRes)
9d3cbee7 1616 {
7d02d77f 1617 (lyz2CommonHistRes->GetHistDiffFlow())->SetMarkerColor(markerColorLYZ2);//to be removed
1618 (lyz2CommonHistRes->GetHistDiffFlow())->SetMarkerStyle(markerStyleLYZ2);//to be removed
1619 (lyz2CommonHistRes->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorLYZ2);
1620 (lyz2CommonHistRes->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleLYZ2);
1621 (lyz2CommonHistRes->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorLYZ2);
1622 (lyz2CommonHistRes->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleLYZ2);
1623 (lyz2CommonHistRes->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorLYZ2);
1624 (lyz2CommonHistRes->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleLYZ2);
1625 (lyz2CommonHistRes->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorLYZ2);
1626 (lyz2CommonHistRes->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleLYZ2);
a88e5ac2 1627 }
1628 if(lyz2CommonHist)
9d3cbee7 1629 {
1fca9c90 1630 avMultDiffFlowLYZ2 = (lyz2CommonHist->GetHistMultDiff())->GetMean();//to be removed
1631 nEvtsDiffFlowLYZ2 = (lyz2CommonHist->GetHistMultDiff())->GetEntries();//to be removed
1632 avMultDiffFlowLYZ2RP = (lyz2CommonHist->GetHistMultInt())->GetMean();
1633 nEvtsDiffFlowLYZ2RP = (lyz2CommonHist->GetHistMultInt())->GetEntries();
1634 avMultDiffFlowLYZ2POI = (lyz2CommonHist->GetHistMultDiff())->GetMean();
1635 nEvtsDiffFlowLYZ2POI = (lyz2CommonHist->GetHistMultDiff())->GetEntries();
9d3cbee7 1636 }
1637 }
70288839 1638
e83922f2 1639 //LYZEP = Lee-Yang Zeros Event Plane
1640 Double_t avMultDiffFlowLYZEP=0.;//to be removed
1641 Double_t nEvtsDiffFlowLYZEP=0;//to be removed
1642 Double_t avMultDiffFlowLYZEPRP=0.;
1643 Double_t nEvtsDiffFlowLYZEPRP=0;
1644 Double_t avMultDiffFlowLYZEPPOI=0.;
1645 Double_t nEvtsDiffFlowLYZEPPOI=0;
1646 if(fileLYZEP)
1647 {
1648 if(lyzepCommonHistRes)
1649 {
1650 (lyzepCommonHistRes->GetHistDiffFlow())->Scale(0.01);//to be improved
7d02d77f 1651 (lyzepCommonHistRes->GetHistDiffFlow())->SetMarkerColor(markerColorLYZEP);//to be removed
1652 (lyzepCommonHistRes->GetHistDiffFlow())->SetMarkerStyle(markerStyleLYZEP);//to be removed
1653 (lyzepCommonHistRes->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorLYZEP);
1654 (lyzepCommonHistRes->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleLYZEP);
1655 (lyzepCommonHistRes->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorLYZEP);
1656 (lyzepCommonHistRes->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleLYZEP);
1657 (lyzepCommonHistRes->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorLYZEP);
1658 (lyzepCommonHistRes->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleLYZEP);
1659 (lyzepCommonHistRes->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorLYZEP);
1660 (lyzepCommonHistRes->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleLYZEP);
e83922f2 1661 }
1662 if(lyzepCommonHist)
1663 {
1664 avMultDiffFlowLYZEP = (lyzepCommonHist->GetHistMultDiff())->GetMean();//to be removed
1665 nEvtsDiffFlowLYZEP = (lyzepCommonHist->GetHistMultDiff())->GetEntries();//to be removed
1666 avMultDiffFlowLYZEPRP = (lyzepCommonHist->GetHistMultInt())->GetMean();
1667 nEvtsDiffFlowLYZEPRP = (lyzepCommonHist->GetHistMultInt())->GetEntries();
1668 avMultDiffFlowLYZEPPOI = (lyzepCommonHist->GetHistMultDiff())->GetMean();
1669 nEvtsDiffFlowLYZEPPOI = (lyzepCommonHist->GetHistMultDiff())->GetEntries();
1670 }
1671 }
1672
1fca9c90 1673 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
1674 // !!!! to be removed !!!!
a88e5ac2 1675 //----------------------------------------------------------------------------------
1676 //final drawing for differential flow:
1677 TCanvas* diffFlowAllCanvas = new TCanvas("Differential Flow","Differential Flow",1000,600);
70288839 1678
a88e5ac2 1679 diffFlowAllCanvas->Divide(2,1);
70288839 1680
a88e5ac2 1681 //1st pad is for plot:
1682 (diffFlowAllCanvas->cd(1))->SetPad(0.0,0.0,0.75,1.0);
1fca9c90 1683
1684 if(styleHistPt)
70288839 1685 {
1fca9c90 1686 styleHistPt->Draw();
70288839 1687 }
1fca9c90 1688
a88e5ac2 1689 if(pMeshDiffFlow)
70288839 1690 {
a88e5ac2 1691 pMeshDiffFlow->Draw("LFSAME");
70288839 1692 }
a88e5ac2 1693 //MC
1694 if(mcepCommonHistRes)
1695 {
1fca9c90 1696 (mcepCommonHistRes->GetHistDiffFlow())->Draw("E1PSAME");
a88e5ac2 1697 }
1698 //GFC
1699 if(gfcCommonHistRes2)
1700 {
1701 (gfcCommonHistRes2->GetHistDiffFlow())->Draw("E1PSAME");
1702 }
1703 if(gfcCommonHistRes4)
1704 {
1705 (gfcCommonHistRes4->GetHistDiffFlow())->Draw("E1PSAME");
1706 }
1fca9c90 1707 if(gfcCommonHistRes6)
1708 {
1709 (gfcCommonHistRes6->GetHistDiffFlow())->Draw("E1PSAME");
1710 }
1711 if(gfcCommonHistRes8)
1712 {
1713 (gfcCommonHistRes8->GetHistDiffFlow())->Draw("E1PSAME");
1714 }
a88e5ac2 1715 //QC
1716 if(qcCommonHistRes2)
1717 {
1718 (qcCommonHistRes2->GetHistDiffFlow())->Draw("E1PSAME");
1719 }
1720 if(qcCommonHistRes4)
1721 {
1722 (qcCommonHistRes4->GetHistDiffFlow())->Draw("E1PSAME");
1723 }
1724 //LYZ2
1725 if(lyz2CommonHistRes)
1726 {
1727 (lyz2CommonHistRes->GetHistDiffFlow())->Draw("E1PSAME");
70288839 1728 }
e83922f2 1729 //LYZEP
1730 if(lyzepCommonHistRes)
1731 {
1732 (lyzepCommonHistRes->GetHistDiffFlow())->Draw("E1PSAME");
1733 }
70288839 1734
a88e5ac2 1735 //2nd pad is for legend:
1736 (diffFlowAllCanvas->cd(2))->SetPad(0.75,0.0,1.0,1.0);
1737
1738 TLegend* legendDiffFlow = new TLegend(0.02,0.25,0.97,0.75);
1739 legendDiffFlow->SetTextFont(72);
1740 legendDiffFlow->SetTextSize(0.06);
1741
1742 //legend's entries:
1743 TString *entryDiffMC = new TString("MC ....... ");
1744 TString *entryDiffGFC2 = new TString("GFC{2} ... ");
1745 TString *entryDiffGFC4 = new TString("GFC{4} ... ");
1fca9c90 1746 TString *entryDiffGFC6 = new TString("GFC{6} ... ");
1747 TString *entryDiffGFC8 = new TString("GFC{8} ... ");
a88e5ac2 1748 TString *entryDiffQC2 = new TString("QC{2} .... ");
1749 TString *entryDiffQC4 = new TString("QC{4} .... ");
1750 TString *entryDiffLYZ2 = new TString("LYZ ...... ");
e83922f2 1751 TString *entryDiffLYZEP = new TString("LYZEP ... ");
a88e5ac2 1752
1753 //MC
70288839 1754 if(mcepCommonHistRes)
6f62c2a7 1755 {
a88e5ac2 1756 (mcepCommonHistRes->GetHistDiffFlow())->SetFillStyle(meshStyle);
1757 (mcepCommonHistRes->GetHistDiffFlow())->SetFillColor(meshColor);
1758 entryDiffMC->Append("M = ");
1759 (*entryDiffMC)+=(Long_t)avMultDiffFlowMC;
1760 entryDiffMC->Append(", N = ");
1761 (*entryDiffMC)+=(Long_t)nEvtsDiffFlowMC;
1762 legendDiffFlow->AddEntry(mcepCommonHistRes->GetHistDiffFlow(),entryDiffMC->Data(),"f");
1763 }
6f62c2a7 1764
a88e5ac2 1765 //GFC
1766 if(gfcCommonHistRes2)
1767 {
1768 entryDiffGFC2->Append("M = ");
1769 (*entryDiffGFC2)+=(Long_t)avMultDiffFlowGFC;
1770 entryDiffGFC2->Append(", N = ");
1771 (*entryDiffGFC2)+=(Long_t)nEvtsDiffFlowGFC;
1772 legendDiffFlow->AddEntry(gfcCommonHistRes2->GetHistDiffFlow(),entryDiffGFC2->Data(),"p");
1773 }
1774 if(gfcCommonHistRes4)
1775 {
1776 entryDiffGFC4->Append("M = ");
1777 (*entryDiffGFC4)+=(Long_t)avMultDiffFlowGFC;
1778 entryDiffGFC4->Append(", N = ");
1779 (*entryDiffGFC4)+=(Long_t)nEvtsDiffFlowGFC;
1780 legendDiffFlow->AddEntry(gfcCommonHistRes4->GetHistDiffFlow(),entryDiffGFC4->Data(),"p");
1781 }
1fca9c90 1782 if(gfcCommonHistRes6)
1783 {
1784 entryDiffGFC6->Append("M = ");
1785 (*entryDiffGFC6)+=(Long_t)avMultDiffFlowGFC;
1786 entryDiffGFC6->Append(", N = ");
1787 (*entryDiffGFC6)+=(Long_t)nEvtsDiffFlowGFC;
1788 legendDiffFlow->AddEntry(gfcCommonHistRes6->GetHistDiffFlow(),entryDiffGFC6->Data(),"p");
1789 }
1790 if(gfcCommonHistRes8)
1791 {
1792 entryDiffGFC8->Append("M = ");
1793 (*entryDiffGFC8)+=(Long_t)avMultDiffFlowGFC;
1794 entryDiffGFC8->Append(", N = ");
1795 (*entryDiffGFC8)+=(Long_t)nEvtsDiffFlowGFC;
1796 legendDiffFlow->AddEntry(gfcCommonHistRes8->GetHistDiffFlow(),entryDiffGFC8->Data(),"p");
1797 }
a88e5ac2 1798 //QC
1799 if(qcCommonHistRes2)
1800 {
1801 entryDiffQC2->Append("M = ");
1802 (*entryDiffQC2)+=(Long_t)avMultDiffFlowQC2;
1803 entryDiffQC2->Append(", N = ");
1804 (*entryDiffQC2)+=(Long_t)nEvtsDiffFlowQC2;
1805 legendDiffFlow->AddEntry(qcCommonHistRes2->GetHistDiffFlow(),entryDiffQC2->Data(),"p");
1806 }
1807 if(qcCommonHistRes4)
1808 {
1809 entryDiffQC4->Append("M = ");
1810 (*entryDiffQC4)+=(Long_t)avMultDiffFlowQC4;
1811 entryDiffQC4->Append(", N = ");
1812 (*entryDiffQC4)+=(Long_t)nEvtsDiffFlowQC4;
1813 legendDiffFlow->AddEntry(qcCommonHistRes4->GetHistDiffFlow(),entryDiffQC4->Data(),"p");
1814 }
6f62c2a7 1815
a88e5ac2 1816 //LYZ
1817 if(lyz2CommonHistRes)
1818 {
1819 entryDiffLYZ2->Append("M = ");
1820 (*entryDiffLYZ2)+=(Long_t)avMultDiffFlowLYZ2;
1821 entryDiffLYZ2->Append(", N = ");
1822 (*entryDiffLYZ2)+=(Long_t)nEvtsDiffFlowLYZ2;
1823 legendDiffFlow->AddEntry(lyz2CommonHistRes->GetHistDiffFlow(),entryDiffLYZ2->Data(),"p");
1824 }
e83922f2 1825
1826 //LYZEP
1827 if(lyzepCommonHistRes)
1828 {
1829 entryDiffLYZEP->Append("M = ");
1830 (*entryDiffLYZEP)+=(Long_t)avMultDiffFlowLYZEP;
1831 entryDiffLYZEP->Append(", N = ");
1832 (*entryDiffLYZEP)+=(Long_t)nEvtsDiffFlowLYZEP;
1833 legendDiffFlow->AddEntry(lyzepCommonHistRes->GetHistDiffFlow(),entryDiffLYZEP->Data(),"p");
1834 }
1835
a88e5ac2 1836
1837 //drawing finally the legend in the 2nd pad:
1838 if(legendDiffFlow)
1839 {
1fca9c90 1840 legendDiffFlow->SetMargin(0.15);
a88e5ac2 1841 legendDiffFlow->Draw();
1842 }
1fca9c90 1843 //----------------------------------------------------------------------------------
1844 //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
1845
1846
1847 //----------------------------------------------------------------------------------
1848 //final drawing for differential flow (Pt, RP):
e83922f2 1849 //set here the results of which methods will be plotted by default:
1850 Bool_t plotMCPtRP = kFALSE;
1851 Bool_t plotGFC2PtRP = kTRUE;
1852 Bool_t plotGFC4PtRP = kTRUE;
1853 Bool_t plotGFC6PtRP = kTRUE;
1854 Bool_t plotGFC8PtRP = kTRUE;
1855 Bool_t plotQC2PtRP = kTRUE;
1856 Bool_t plotQC4PtRP = kTRUE;
1857 Bool_t plotQC6PtRP = kTRUE;
1858 Bool_t plotQC8PtRP = kTRUE;
1859 Bool_t plotLYZ2PtRP = kTRUE;
1860 Bool_t plotLYZEPPtRP = kTRUE;
1861 if(plotDiffFlowPtRP)
1862 {
1863 TCanvas* diffFlowPtAllCanvasRP = new TCanvas("Differential Flow (Pt) of RP","Differential Flow (Pt) of RP ",1000,600);
1864
1865 diffFlowPtAllCanvasRP->Divide(2,1);
1fca9c90 1866
e83922f2 1867 //1st pad is for plot:
1868 (diffFlowPtAllCanvasRP->cd(1))->SetPad(0.0,0.0,0.75,1.0);
6f62c2a7 1869
e83922f2 1870 if(styleHistPt)
1871 {
1872 (styleHistPt->GetYaxis())->SetRangeUser(-0.3,1.0);
1873 styleHistPt->Draw();
1874 }
1875 if(pMeshDiffFlowPtRP)
1876 {
1877 pMeshDiffFlowPtRP->Draw("LFSAME");
1878 }
1fca9c90 1879
e83922f2 1880 //MC
1881 if(plotMCPtRP && mcepCommonHistRes)
1882 {
1883 (mcepCommonHistRes->GetHistDiffFlowPtRP())->Draw("E1PSAME");
1884 }
1885 //GFC
7d02d77f 1886 if(plotGFC2PtRP && gfcCommonHistRes2)Pt
e83922f2 1887 {
1888 (gfcCommonHistRes2->GetHistDiffFlowPtRP())->Draw("E1PSAME");
1889 }
1890 if(plotGFC4PtRP && gfcCommonHistRes4)
1891 {
1892 (gfcCommonHistRes4->GetHistDiffFlowPtRP())->Draw("E1PSAME");
1893 }
1894 if(plotGFC6PtRP && gfcCommonHistRes6)
1895 {
1896 (gfcCommonHistRes6->GetHistDiffFlowPtRP())->Draw("E1PSAME");
1897 }
1898 if(plotGFC8PtRP && gfcCommonHistRes8)
1899 {
1900 (gfcCommonHistRes8->GetHistDiffFlowPtRP())->Draw("E1PSAME");
1901 }
1902 //QC
1903 if(plotQC2PtRP && qcCommonHistRes2)
1904 {
1905 (qcCommonHistRes2->GetHistDiffFlowPtRP())->Draw("E1PSAME");
1906 }
1907 if(plotQC4PtRP && qcCommonHistRes4)
1908 {
1909 (qcCommonHistRes4->GetHistDiffFlowPtRP())->Draw("E1PSAME");
1910 }
1911 if(plotQC6PtRP && qcCommonHistRes6)
1912 {
7d02d77f 1913 //(qcCommonHistRes6->GetHistDiffFlowPtRP())->Draw("E1PSAME");
e83922f2 1914 }
1915 if(plotQC8PtRP && qcCommonHistRes8)
1916 {
7d02d77f 1917 //(qcCommonHistRes8->GetHistDiffFlowPtRP())->Draw("E1PSAME");
e83922f2 1918 }
1919 //LYZ2
1920 if(plotLYZ2PtRP && lyz2CommonHistRes)
1921 {
1922 (lyz2CommonHistRes->GetHistDiffFlowPtRP())->Draw("E1PSAME");
1923 }
1924 //LYZEP
1925 if(plotLYZEPPtRP && lyzepCommonHistRes)
1926 {
1927 (lyzepCommonHistRes->GetHistDiffFlowPtRP())->Draw("E1PSAME");
1928 }
1fca9c90 1929
e83922f2 1930 //2nd pad is for legend:
1931 (diffFlowPtAllCanvasRP->cd(2))->SetPad(0.75,0.0,1.0,1.0);
1932
1933 TLegend* legendDiffFlowPtRP = new TLegend(0.02,0.25,0.97,0.75);
1934 legendDiffFlowPtRP->SetTextFont(72);
1935 legendDiffFlowPtRP->SetTextSize(0.06);
1936
7d02d77f 1937 //legend's entries:Pt
e83922f2 1938 TString *entryDiffMCPtRP = new TString("MC ....... ");
1939 TString *entryDiffGFC2PtRP = new TString("GFC{2} ... ");
1940 TString *entryDiffGFC4PtRP = new TString("GFC{4} ... ");
1941 TString *entryDiffGFC6PtRP = new TString("GFC{6} ... ");
1942 TString *entryDiffGFC8PtRP = new TString("GFC{8} ... ");
1943 TString *entryDiffQC2PtRP = new TString("QC{2} .... ");
1944 TString *entryDiffQC4PtRP = new TString("QC{4} .... ");
1945 TString *entryDiffQC6PtRP = new TString("QC{6} .... ");
1946 TString *entryDiffQC8PtRP = new TString("QC{8} .... ");
1947 TString *entryDiffLYZ2PtRP = new TString("LYZ ...... ");
1948 TString *entryDiffLYZEPPtRP = new TString("LYZEP ... ");
1949
1950 //MC
1951 if(mcepCommonHistRes)
1952 {
1953 (mcepCommonHistRes->GetHistDiffFlowPtRP())->SetFillStyle(meshStyle);
1954 (mcepCommonHistRes->GetHistDiffFlowPtRP())->SetFillColor(meshColor);
1955 entryDiffMCPtRP->Append("M = ");
1956 (*entryDiffMCPtRP)+=(Long_t)avMultDiffFlowMCRP;
1957 entryDiffMCPtRP->Append(", N = ");
1958 (*entryDiffMCPtRP)+=(Long_t)nEvtsDiffFlowMCRP;
1959 legendDiffFlowPtRP->AddEntry(mcepCommonHistRes->GetHistDiffFlowPtRP(),entryDiffMCPtRP->Data(),"f");
1960 }
1fca9c90 1961
e83922f2 1962 //GFC
1963 if(plotGFC2PtRP && gfcCommonHistRes2)
1964 {
1965 entryDiffGFC2PtRP->Append("M = ");
1966 (*entryDiffGFC2PtRP)+=(Long_t)avMultDiffFlowGFCRP;
1967 entryDiffGFC2PtRP->Append(", N = ");
1968 (*entryDiffGFC2PtRP)+=(Long_t)nEvtsDiffFlowGFCRP;
1969 legendDiffFlowPtRP->AddEntry(gfcCommonHistRes2->GetHistDiffFlowPtRP(),entryDiffGFC2PtRP->Data(),"p");
1970 }
1971 if(plotGFC4PtRP && gfcCommonHistRes4)
1972 {
1973 entryDiffGFC4PtRP->Append("M = ");
1974 (*entryDiffGFC4PtRP)+=(Long_t)avMultDiffFlowGFCRP;
1975 entryDiffGFC4PtRP->Append(", N = ");
1976 (*entryDiffGFC4PtRP)+=(Long_t)nEvtsDiffFlowGFCRP;
1977 legendDiffFlowPtRP->AddEntry(gfcCommonHistRes4->GetHistDiffFlowPtRP(),entryDiffGFC4PtRP->Data(),"p");
1978 }
1979 if(plotGFC6PtRP && gfcCommonHistRes6)
1980 {
1981 entryDiffGFC6PtRP->Append("M = ");
1982 (*entryDiffGFC6PtRP)+=(Long_t)avMultDiffFlowGFCRP;
1983 entryDiffGFC6PtRP->Append(", N = ");
1984 (*entryDiffGFC6PtRP)+=(Long_t)nEvtsDiffFlowGFCRP;
1985 legendDiffFlowPtRP->AddEntry(gfcCommonHistRes6->GetHistDiffFlowPtRP(),entryDiffGFC6PtRP->Data(),"p");
1986 }
1987 if(plotGFC8PtRP && gfcCommonHistRes8)
1988 {
1989 entryDiffGFC8PtRP->Append("M = ");
1990 (*entryDiffGFC8PtRP)+=(Long_t)avMultDiffFlowGFCRP;
1991 entryDiffGFC8PtRP->Append(", N = ");
1992 (*entryDiffGFC8PtRP)+=(Long_t)nEvtsDiffFlowGFCRP;
1993 legendDiffFlowPtRP->AddEntry(gfcCommonHistRes8->GetHistDiffFlowPtRP(),entryDiffGFC8PtRP->Data(),"p");
1994 }
1995
1996 //QC
1997 if(plotQC2PtRP && qcCommonHistRes2)
1998 {
1999 entryDiffQC2PtRP->Append("M = ");
2000 (*entryDiffQC2PtRP)+=(Long_t)avMultDiffFlowQC2RP;
2001 entryDiffQC2PtRP->Append(", N = ");
2002 (*entryDiffQC2PtRP)+=(Long_t)nEvtsDiffFlowQC2RP;
2003 legendDiffFlowPtRP->AddEntry(qcCommonHistRes2->GetHistDiffFlowPtRP(),entryDiffQC2PtRP->Data(),"p");
2004 }
2005 if(plotQC4PtRP && qcCommonHistRes4)
2006 {
2007 entryDiffQC4PtRP->Append("M = ");
2008 (*entryDiffQC4PtRP)+=(Long_t)avMultDiffFlowQC4RP;
2009 entryDiffQC4PtRP->Append(", N = ");
2010 (*entryDiffQC4PtRP)+=(Long_t)nEvtsDiffFlowQC4RP;
2011 legendDiffFlowPtRP->AddEntry(qcCommonHistRes4->GetHistDiffFlowPtRP(),entryDiffQC4PtRP->Data(),"p");
2012 }
2013 if(plotQC6PtRP && qcCommonHistRes6)
2014 {
2015 entryDiffQC6PtRP->Append("M = ");
2016 (*entryDiffQC6PtRP)+=(Long_t)avMultDiffFlowQC6RP;
2017 entryDiffQC6PtRP->Append(", N = ");
2018 (*entryDiffQC6PtRP)+=(Long_t)nEvtsDiffFlowQC6RP;
2019 legendDiffFlowPtRP->AddEntry(qcCommonHistRes6->GetHistDiffFlowPtRP(),entryDiffQC6PtRP->Data(),"p");
2020 }
2021 if(plotQC8PtRP && qcCommonHistRes8)
2022 {
2023 entryDiffQC8PtRP->Append("M = ");
2024 (*entryDiffQC8PtRP)+=(Long_t)avMultDiffFlowQC8RP;
2025 entryDiffQC8PtRP->Append(", N = ");
2026 (*entryDiffQC8PtRP)+=(Long_t)nEvtsDiffFlowQC8RP;
2027 legendDiffFlowPtRP->AddEntry(qcCommonHistRes8->GetHistDiffFlowPtRP(),entryDiffQC8PtRP->Data(),"p");
2028 }
2029
2030 //LYZ2
2031 if(plotLYZ2PtRP && lyz2CommonHistRes)
2032 {
2033 entryDiffLYZ2PtRP->Append("M = ");
2034 (*entryDiffLYZ2PtRP)+=(Long_t)avMultDiffFlowLYZ2RP;
2035 entryDiffLYZ2PtRP->Append(", N = ");
2036 (*entryDiffLYZ2PtRP)+=(Long_t)nEvtsDiffFlowLYZ2RP;
2037 legendDiffFlowPtRP->AddEntry(lyz2CommonHistRes->GetHistDiffFlowPtRP(),entryDiffLYZ2PtRP->Data(),"p");
2038 }
2039
2040 //LYZEP
2041 if(plotLYZEPPtRP && lyzepCommonHistRes)
2042 {
2043 entryDiffLYZEPPtRP->Append("M = ");
2044 (*entryDiffLYZEPPtRP)+=(Long_t)avMultDiffFlowLYZEPRP;
2045 entryDiffLYZEPPtRP->Append(", N = ");
2046 (*entryDiffLYZEPPtRP)+=(Long_t)nEvtsDiffFlowLYZEPRP;
2047 legendDiffFlowPtRP->AddEntry(lyzepCommonHistRes->GetHistDiffFlowPtRP(),entryDiffLYZEPPtRP->Data(),"p");
2048 }
1fca9c90 2049
e83922f2 2050 //drawing finally the legend in the 2nd pad:
2051 if(legendDiffFlowPtRP)
2052 {
2053 legendDiffFlowPtRP->SetMargin(0.15);
2054 legendDiffFlowPtRP->Draw();
2055 }
2056 }// end of if(plotDiffFlowPtRP)
1fca9c90 2057 //----------------------------------------------------------------------------------
2058
2059
2060 //----------------------------------------------------------------------------------
2061 //final drawing for differential flow (Eta, RP):
e83922f2 2062 //set here the results of which methods will be plotted by default:
2063 Bool_t plotMCEtaRP = kFALSE;
2064 Bool_t plotGFC2EtaRP = kTRUE;
2065 Bool_t plotGFC4EtaRP = kTRUE;
2066 Bool_t plotGFC6EtaRP = kTRUE;
2067 Bool_t plotGFC8EtaRP = kTRUE;
2068 Bool_t plotQC2EtaRP = kTRUE;
2069 Bool_t plotQC4EtaRP = kTRUE;
2070 Bool_t plotQC6EtaRP = kTRUE;
2071 Bool_t plotQC8EtaRP = kTRUE;
2072 Bool_t plotLYZ2EtaRP = kTRUE;
2073 Bool_t plotLYZEPEtaRP = kTRUE;
2074 if(plotDiffFlowEtaRP)
2075 {
2076 TCanvas* diffFlowEtaAllCanvasRP = new TCanvas("Differential Flow (Eta) of RP","Differential Flow (Eta) of RP ",1000,600);
2077
2078 diffFlowEtaAllCanvasRP->Divide(2,1);
2079
2080 //1st pad is for plot:
2081 (diffFlowEtaAllCanvasRP->cd(1))->SetPad(0.0,0.0,0.75,1.0);
2082
2083 if(styleHistEta)
2084 {
2085 (styleHistEta->GetYaxis())->SetRangeUser(-0.3,1.0);
2086 styleHistEta->Draw();
2087 }
2088 if(pMeshDiffFlowEtaRP)
2089 {
2090 pMeshDiffFlowEtaRP->Draw("LFSAME");
2091 }
1fca9c90 2092
e83922f2 2093 //MC
2094 if(plotMCEtaRP && mcepCommonHistRes)
2095 {
2096 (mcepCommonHistRes->GetHistDiffFlowEtaRP())->Draw("E1PSAME");
2097 }
2098 //GFC
2099 if(plotGFC2EtaRP && gfcCommonHistRes2)
2100 {
2101 (gfcCommonHistRes2->GetHistDiffFlowEtaRP())->Draw("E1PSAME");
2102 }
2103 if(plotGFC4EtaRP && gfcCommonHistRes4)
2104 {
2105 (gfcCommonHistRes4->GetHistDiffFlowEtaRP())->Draw("E1PSAME");
2106 }
2107 if(plotGFC6EtaRP && gfcCommonHistRes6)
2108 {
2109 (gfcCommonHistRes6->GetHistDiffFlowEtaRP())->Draw("E1PSAME");
2110 }
2111 if(plotGFC8EtaRP && gfcCommonHistRes8)
2112 {
2113 (gfcCommonHistRes8->GetHistDiffFlowEtaRP())->Draw("E1PSAME");
2114 }
2115 //QC
2116 if(plotQC2EtaRP && qcCommonHistRes2)
2117 {
2118 (qcCommonHistRes2->GetHistDiffFlowEtaRP())->Draw("E1PSAME");
2119 }
2120 if(plotQC4EtaRP && qcCommonHistRes4)
2121 {
2122 (qcCommonHistRes4->GetHistDiffFlowEtaRP())->Draw("E1PSAME");
2123 }
2124 if(plotQC6EtaRP && qcCommonHistRes6)
2125 {
7d02d77f 2126 //(qcCommonHistRes6->GetHistDiffFlowEtaRP())->Draw("E1PSAME");
e83922f2 2127 }
2128 if(plotQC8EtaRP && qcCommonHistRes8)
2129 {
7d02d77f 2130 //(qcCommonHistRes8->GetHistDiffFlowEtaRP())->Draw("E1PSAME");
e83922f2 2131 }
2132 //LYZ2
2133 if(plotLYZ2EtaRP && lyz2CommonHistRes)
2134 {
2135 (lyz2CommonHistRes->GetHistDiffFlowEtaRP())->Draw("E1PSAME");
2136 }
2137 //LYZEP
2138 if(plotLYZEPEtaRP && lyzepCommonHistRes)
2139 {
2140 (lyzepCommonHistRes->GetHistDiffFlowEtaRP())->Draw("E1PSAME");
2141 }
1fca9c90 2142
e83922f2 2143 //2nd pad is for legend:
2144 (diffFlowEtaAllCanvasRP->cd(2))->SetPad(0.75,0.0,1.0,1.0);
2145
2146 TLegend* legendDiffFlowEtaRP = new TLegend(0.02,0.25,0.97,0.75);
2147 legendDiffFlowEtaRP->SetTextFont(72);
2148 legendDiffFlowEtaRP->SetTextSize(0.06);
2149
2150 //legend's entries:
2151 TString *entryDiffMCEtaRP = new TString("MC ....... ");
2152 TString *entryDiffGFC2EtaRP = new TString("GFC{2} ... ");
2153 TString *entryDiffGFC4EtaRP = new TString("GFC{4} ... ");
2154 TString *entryDiffGFC6EtaRP = new TString("GFC{6} ... ");
2155 TString *entryDiffGFC8EtaRP = new TString("GFC{8} ... ");
2156 TString *entryDiffQC2EtaRP = new TString("QC{2} .... ");
2157 TString *entryDiffQC4EtaRP = new TString("QC{4} .... ");
2158 TString *entryDiffQC6EtaRP = new TString("QC{6} .... ");
2159 TString *entryDiffQC8EtaRP = new TString("QC{8} .... ");
2160 TString *entryDiffLYZ2EtaRP = new TString("LYZ ...... ");
2161 TString *entryDiffLYZEPEtaRP = new TString("LYZEP ... ");
2162
2163 //MC
2164 if(mcepCommonHistRes)
2165 {
2166 (mcepCommonHistRes->GetHistDiffFlowEtaRP())->SetFillStyle(meshStyle);
2167 (mcepCommonHistRes->GetHistDiffFlowEtaRP())->SetFillColor(meshColor);
2168 entryDiffMCEtaRP->Append("M = ");
2169 (*entryDiffMCEtaRP)+=(Long_t)avMultDiffFlowMCRP;
2170 entryDiffMCEtaRP->Append(", N = ");
2171 (*entryDiffMCEtaRP)+=(Long_t)nEvtsDiffFlowMCRP;
2172 legendDiffFlowEtaRP->AddEntry(mcepCommonHistRes->GetHistDiffFlowEtaRP(),entryDiffMCEtaRP->Data(),"f");
2173 }
1fca9c90 2174
e83922f2 2175 //GFC
2176 if(plotGFC2EtaRP && gfcCommonHistRes2)
2177 {
2178 entryDiffGFC2EtaRP->Append("M = ");
2179 (*entryDiffGFC2EtaRP)+=(Long_t)avMultDiffFlowGFCRP;
2180 entryDiffGFC2EtaRP->Append(", N = ");
2181 (*entryDiffGFC2EtaRP)+=(Long_t)nEvtsDiffFlowGFCRP;
2182 legendDiffFlowEtaRP->AddEntry(gfcCommonHistRes2->GetHistDiffFlowEtaRP(),entryDiffGFC2EtaRP->Data(),"p");
2183 }
2184 if(plotGFC4EtaRP && gfcCommonHistRes4)
2185 {
2186 entryDiffGFC4EtaRP->Append("M = ");
2187 (*entryDiffGFC4EtaRP)+=(Long_t)avMultDiffFlowGFCRP;
2188 entryDiffGFC4EtaRP->Append(", N = ");
2189 (*entryDiffGFC4EtaRP)+=(Long_t)nEvtsDiffFlowGFCRP;
2190 legendDiffFlowEtaRP->AddEntry(gfcCommonHistRes4->GetHistDiffFlowEtaRP(),entryDiffGFC4EtaRP->Data(),"p");
2191 }
2192 if(plotGFC6EtaRP && gfcCommonHistRes6)
2193 {
2194 entryDiffGFC6EtaRP->Append("M = ");
2195 (*entryDiffGFC6EtaRP)+=(Long_t)avMultDiffFlowGFCRP;
2196 entryDiffGFC6EtaRP->Append(", N = ");
2197 (*entryDiffGFC6EtaRP)+=(Long_t)nEvtsDiffFlowGFCRP;
2198 legendDiffFlowEtaRP->AddEntry(gfcCommonHistRes6->GetHistDiffFlowEtaRP(),entryDiffGFC6EtaRP->Data(),"p");
2199 }
2200 if(plotGFC8EtaRP && gfcCommonHistRes8)
2201 {
2202 entryDiffGFC8EtaRP->Append("M = ");
2203 (*entryDiffGFC8EtaRP)+=(Long_t)avMultDiffFlowGFCRP;
2204 entryDiffGFC8EtaRP->Append(", N = ");
2205 (*entryDiffGFC8EtaRP)+=(Long_t)nEvtsDiffFlowGFCRP;
2206 legendDiffFlowEtaRP->AddEntry(gfcCommonHistRes8->GetHistDiffFlowEtaRP(),entryDiffGFC8EtaRP->Data(),"p");
2207 }
2208
2209 //QC
2210 if(plotQC2EtaRP && qcCommonHistRes2)
2211 {
2212 entryDiffQC2EtaRP->Append("M = ");
2213 (*entryDiffQC2EtaRP)+=(Long_t)avMultDiffFlowQC2RP;
2214 entryDiffQC2EtaRP->Append(", N = ");
2215 (*entryDiffQC2EtaRP)+=(Long_t)nEvtsDiffFlowQC2RP;
2216 legendDiffFlowEtaRP->AddEntry(qcCommonHistRes2->GetHistDiffFlowEtaRP(),entryDiffQC2EtaRP->Data(),"p");
2217 }
2218 if(plotQC4EtaRP && qcCommonHistRes4)
2219 {
2220 entryDiffQC4EtaRP->Append("M = ");
2221 (*entryDiffQC4EtaRP)+=(Long_t)avMultDiffFlowQC4RP;
2222 entryDiffQC4EtaRP->Append(", N = ");
2223 (*entryDiffQC4EtaRP)+=(Long_t)nEvtsDiffFlowQC4RP;
2224 legendDiffFlowEtaRP->AddEntry(qcCommonHistRes4->GetHistDiffFlowEtaRP(),entryDiffQC4EtaRP->Data(),"p");
2225 }
2226 if(plotQC6EtaRP && qcCommonHistRes6)
2227 {
2228 entryDiffQC6EtaRP->Append("M = ");
2229 (*entryDiffQC6EtaRP)+=(Long_t)avMultDiffFlowQC6RP;
2230 entryDiffQC6EtaRP->Append(", N = ");
2231 (*entryDiffQC6EtaRP)+=(Long_t)nEvtsDiffFlowQC6RP;
2232 legendDiffFlowEtaRP->AddEntry(qcCommonHistRes6->GetHistDiffFlowEtaRP(),entryDiffQC6EtaRP->Data(),"p");
2233 }
2234 if(plotQC8EtaRP && qcCommonHistRes8)
2235 {
2236 entryDiffQC8EtaRP->Append("M = ");
2237 (*entryDiffQC8EtaRP)+=(Long_t)avMultDiffFlowQC8RP;
2238 entryDiffQC8EtaRP->Append(", N = ");
2239 (*entryDiffQC8EtaRP)+=(Long_t)nEvtsDiffFlowQC8RP;
2240 legendDiffFlowEtaRP->AddEntry(qcCommonHistRes8->GetHistDiffFlowEtaRP(),entryDiffQC8EtaRP->Data(),"p");
2241 }
1fca9c90 2242
e83922f2 2243 //LYZ2
2244 if(plotLYZ2EtaRP && lyz2CommonHistRes)
2245 {
2246 entryDiffLYZ2EtaRP->Append("M = ");
2247 (*entryDiffLYZ2EtaRP)+=(Long_t)avMultDiffFlowLYZ2RP;
2248 entryDiffLYZ2EtaRP->Append(", N = ");
2249 (*entryDiffLYZ2EtaRP)+=(Long_t)nEvtsDiffFlowLYZ2RP;
2250 legendDiffFlowEtaRP->AddEntry(lyz2CommonHistRes->GetHistDiffFlowEtaRP(),entryDiffLYZ2EtaRP->Data(),"p");
2251 }
2252
2253 //LYZEP
2254 if(plotLYZEPEtaRP && lyzepCommonHistRes)
2255 {
2256 entryDiffLYZEPEtaRP->Append("M = ");
2257 (*entryDiffLYZEPEtaRP)+=(Long_t)avMultDiffFlowLYZEPRP;
2258 entryDiffLYZEPEtaRP->Append(", N = ");
2259 (*entryDiffLYZEPEtaRP)+=(Long_t)nEvtsDiffFlowLYZEPRP;
2260 legendDiffFlowEtaRP->AddEntry(lyzepCommonHistRes->GetHistDiffFlowEtaRP(),entryDiffLYZEPEtaRP->Data(),"p");
2261 }
1fca9c90 2262
e83922f2 2263 //drawing finally the legend in the 2nd pad:
2264 if(legendDiffFlowEtaRP)
2265 {
2266 legendDiffFlowEtaRP->SetMargin(0.15);
2267 legendDiffFlowEtaRP->Draw();
2268 }
2269 }// end of if(plotDiffFlowEtaRP)
1fca9c90 2270 //----------------------------------------------------------------------------------
2271
2272 //----------------------------------------------------------------------------------
2273 //final drawing for differential flow (Pt, POI):
e83922f2 2274 //set here the results of which methods will be plotted by default:
2275 Bool_t plotMCPtPOI = kFALSE;
2276 Bool_t plotGFC2PtPOI = kTRUE;
2277 Bool_t plotGFC4PtPOI = kTRUE;
2278 Bool_t plotGFC6PtPOI = kTRUE;
2279 Bool_t plotGFC8PtPOI = kTRUE;
2280 Bool_t plotQC2PtPOI = kTRUE;
2281 Bool_t plotQC4PtPOI = kTRUE;
2282 Bool_t plotQC6PtPOI = kTRUE;
2283 Bool_t plotQC8PtPOI = kTRUE;
2284 Bool_t plotLYZ2PtPOI = kTRUE;
2285 Bool_t plotLYZEPPtPOI = kTRUE;
2286 if(plotDiffFlowPtPOI)
2287 {
2288 TCanvas* diffFlowPtAllCanvasPOI = new TCanvas("Differential Flow (Pt) of POI","Differential Flow (Pt) of POI ",1000,600);
2289
2290 diffFlowPtAllCanvasPOI->Divide(2,1);
2291
2292 //1st pad is for plot:
2293 (diffFlowPtAllCanvasPOI->cd(1))->SetPad(0.0,0.0,0.75,1.0);
2294
2295 if(styleHistPt)
2296 {
2297 (styleHistPt->GetYaxis())->SetRangeUser(-0.3,1.0);
2298 styleHistPt->Draw();
2299 }
2300 if(pMeshDiffFlowPtPOI)
2301 {
2302 pMeshDiffFlowPtPOI->Draw("LFSAME");
2303 }
1fca9c90 2304
e83922f2 2305 //MC
2306 if(plotMCPtPOI && mcepCommonHistRes)
2307 {
2308 (mcepCommonHistRes->GetHistDiffFlowPtPOI())->Draw("E1PSAME");
2309 }
2310 //GFC
2311 if(plotGFC2PtPOI && gfcCommonHistRes2)
2312 {
2313 (gfcCommonHistRes2->GetHistDiffFlowPtPOI())->Draw("E1PSAME");
2314 }
2315 if(plotGFC4PtPOI && gfcCommonHistRes4)
2316 {
2317 (gfcCommonHistRes4->GetHistDiffFlowPtPOI())->Draw("E1PSAME");
2318 }
2319 if(plotGFC6PtPOI && gfcCommonHistRes6)
2320 {
2321 (gfcCommonHistRes6->GetHistDiffFlowPtPOI())->Draw("E1PSAME");
2322 }
2323 if(plotGFC8PtPOI && gfcCommonHistRes8)
2324 {
2325 (gfcCommonHistRes8->GetHistDiffFlowPtPOI())->Draw("E1PSAME");
2326 }
2327 //QC
2328 if(plotQC2PtPOI && qcCommonHistRes2)
2329 {
2330 (qcCommonHistRes2->GetHistDiffFlowPtPOI())->Draw("E1PSAME");
2331 }
2332 if(plotQC4PtPOI && qcCommonHistRes4)
2333 {
2334 (qcCommonHistRes4->GetHistDiffFlowPtPOI())->Draw("E1PSAME");
2335 }
2336 if(plotQC6PtPOI && qcCommonHistRes6)
2337 {
7d02d77f 2338 //(qcCommonHistRes6->GetHistDiffFlowPtPOI())->Draw("E1PSAME");
e83922f2 2339 }
2340 if(plotQC8PtPOI && qcCommonHistRes8)
2341 {
7d02d77f 2342 //(qcCommonHistRes8->GetHistDiffFlowPtPOI())->Draw("E1PSAME");
e83922f2 2343 }
2344 //LYZ2
2345 if(plotLYZ2PtPOI && lyz2CommonHistRes)
2346 {
2347 (lyz2CommonHistRes->GetHistDiffFlowPtPOI())->Draw("E1PSAME");
2348 }
2349 //LYZEP
2350 if(plotLYZEPPtPOI && lyzepCommonHistRes)
2351 {
2352 (lyzepCommonHistRes->GetHistDiffFlowPtPOI())->Draw("E1PSAME");
2353 }
1fca9c90 2354
e83922f2 2355 //2nd pad is for legend:
2356 (diffFlowPtAllCanvasPOI->cd(2))->SetPad(0.75,0.0,1.0,1.0);
2357
2358 TLegend* legendDiffFlowPtPOI = new TLegend(0.02,0.25,0.97,0.75);
2359 legendDiffFlowPtPOI->SetTextFont(72);
2360 legendDiffFlowPtPOI->SetTextSize(0.06);
2361
2362 //legend's entries:
2363 TString *entryDiffMCPtPOI = new TString("MC ....... ");
2364 TString *entryDiffGFC2PtPOI = new TString("GFC{2} ... ");
2365 TString *entryDiffGFC4PtPOI = new TString("GFC{4} ... ");
2366 TString *entryDiffGFC6PtPOI = new TString("GFC{6} ... ");
2367 TString *entryDiffGFC8PtPOI = new TString("GFC{8} ... ");
2368 TString *entryDiffQC2PtPOI = new TString("QC{2} .... ");
2369 TString *entryDiffQC4PtPOI = new TString("QC{4} .... ");
2370 TString *entryDiffQC6PtPOI = new TString("QC{6} .... ");
2371 TString *entryDiffQC8PtPOI = new TString("QC{8} .... ");
2372 TString *entryDiffLYZ2PtPOI = new TString("LYZ ...... ");
2373 TString *entryDiffLYZEPPtPOI = new TString("LYZEP ... ");
2374
2375 //MC
2376 if(mcepCommonHistRes)
2377 {
2378 (mcepCommonHistRes->GetHistDiffFlowPtPOI())->SetFillStyle(meshStyle);
2379 (mcepCommonHistRes->GetHistDiffFlowPtPOI())->SetFillColor(meshColor);
2380 entryDiffMCPtPOI->Append("M = ");
2381 (*entryDiffMCPtPOI)+=(Long_t)avMultDiffFlowMCPOI;
2382 entryDiffMCPtPOI->Append(", N = ");
2383 (*entryDiffMCPtPOI)+=(Long_t)nEvtsDiffFlowMCPOI;
2384 legendDiffFlowPtPOI->AddEntry(mcepCommonHistRes->GetHistDiffFlowPtPOI(),entryDiffMCPtPOI->Data(),"f");
2385 }
1fca9c90 2386
e83922f2 2387 //GFC
2388 if(plotGFC2PtPOI && gfcCommonHistRes2)
2389 {
2390 entryDiffGFC2PtPOI->Append("M = ");
2391 (*entryDiffGFC2PtPOI)+=(Long_t)avMultDiffFlowGFCPOI;
2392 entryDiffGFC2PtPOI->Append(", N = ");
2393 (*entryDiffGFC2PtPOI)+=(Long_t)nEvtsDiffFlowGFCPOI;
2394 legendDiffFlowPtPOI->AddEntry(gfcCommonHistRes2->GetHistDiffFlowPtPOI(),entryDiffGFC2PtPOI->Data(),"p");
2395 }
2396 if(plotGFC4PtPOI && gfcCommonHistRes4)
2397 {
2398 entryDiffGFC4PtPOI->Append("M = ");
2399 (*entryDiffGFC4PtPOI)+=(Long_t)avMultDiffFlowGFCPOI;
2400 entryDiffGFC4PtPOI->Append(", N = ");
2401 (*entryDiffGFC4PtPOI)+=(Long_t)nEvtsDiffFlowGFCPOI;
2402 legendDiffFlowPtPOI->AddEntry(gfcCommonHistRes4->GetHistDiffFlowPtPOI(),entryDiffGFC4PtPOI->Data(),"p");
2403 }
2404 if(plotGFC6PtPOI && gfcCommonHistRes6)
2405 {
2406 entryDiffGFC6PtPOI->Append("M = ");
2407 (*entryDiffGFC6PtPOI)+=(Long_t)avMultDiffFlowGFCPOI;
2408 entryDiffGFC6PtPOI->Append(", N = ");
2409 (*entryDiffGFC6PtPOI)+=(Long_t)nEvtsDiffFlowGFCPOI;
2410 legendDiffFlowPtPOI->AddEntry(gfcCommonHistRes6->GetHistDiffFlowPtPOI(),entryDiffGFC6PtPOI->Data(),"p");
2411 }
2412 if(plotGFC8PtPOI && gfcCommonHistRes8)
2413 {
2414 entryDiffGFC8PtPOI->Append("M = ");
2415 (*entryDiffGFC8PtPOI)+=(Long_t)avMultDiffFlowGFCPOI;
2416 entryDiffGFC8PtPOI->Append(", N = ");
2417 (*entryDiffGFC8PtPOI)+=(Long_t)nEvtsDiffFlowGFCPOI;
2418 legendDiffFlowPtPOI->AddEntry(gfcCommonHistRes8->GetHistDiffFlowPtPOI(),entryDiffGFC8PtPOI->Data(),"p");
2419 }
2420
2421 //QC
2422 if(plotQC2PtPOI && qcCommonHistRes2)
2423 {
2424 entryDiffQC2PtPOI->Append("M = ");
2425 (*entryDiffQC2PtPOI)+=(Long_t)avMultDiffFlowQC2POI;
2426 entryDiffQC2PtPOI->Append(", N = ");
2427 (*entryDiffQC2PtPOI)+=(Long_t)nEvtsDiffFlowQC2POI;
2428 legendDiffFlowPtPOI->AddEntry(qcCommonHistRes2->GetHistDiffFlowPtPOI(),entryDiffQC2PtPOI->Data(),"p");
2429 }
2430 if(plotQC4PtPOI && qcCommonHistRes4)
2431 {
2432 entryDiffQC4PtPOI->Append("M = ");
2433 (*entryDiffQC4PtPOI)+=(Long_t)avMultDiffFlowQC4POI;
2434 entryDiffQC4PtPOI->Append(", N = ");
2435 (*entryDiffQC4PtPOI)+=(Long_t)nEvtsDiffFlowQC4POI;
2436 legendDiffFlowPtPOI->AddEntry(qcCommonHistRes4->GetHistDiffFlowPtPOI(),entryDiffQC4PtPOI->Data(),"p");
2437 }
2438 if(plotQC6PtPOI && qcCommonHistRes6)
2439 {
2440 entryDiffQC6PtPOI->Append("M = ");
2441 (*entryDiffQC6PtPOI)+=(Long_t)avMultDiffFlowQC6POI;
2442 entryDiffQC6PtPOI->Append(", N = ");
2443 (*entryDiffQC6PtPOI)+=(Long_t)nEvtsDiffFlowQC6POI;
2444 legendDiffFlowPtPOI->AddEntry(qcCommonHistRes6->GetHistDiffFlowPtPOI(),entryDiffQC6PtPOI->Data(),"p");
2445 }
2446 if(plotQC8PtPOI && qcCommonHistRes8)
2447 {
2448 entryDiffQC8PtPOI->Append("M = ");
2449 (*entryDiffQC8PtPOI)+=(Long_t)avMultDiffFlowQC8POI;
2450 entryDiffQC8PtPOI->Append(", N = ");
2451 (*entryDiffQC8PtPOI)+=(Long_t)nEvtsDiffFlowQC8POI;
2452 legendDiffFlowPtPOI->AddEntry(qcCommonHistRes8->GetHistDiffFlowPtPOI(),entryDiffQC8PtPOI->Data(),"p");
2453 }
1fca9c90 2454
e83922f2 2455 //LYZ2
2456 if(plotLYZ2PtPOI && lyz2CommonHistRes)
2457 {
2458 entryDiffLYZ2PtPOI->Append("M = ");
2459 (*entryDiffLYZ2PtPOI)+=(Long_t)avMultDiffFlowLYZ2POI;
2460 entryDiffLYZ2PtPOI->Append(", N = ");
2461 (*entryDiffLYZ2PtPOI)+=(Long_t)nEvtsDiffFlowLYZ2POI;
2462 legendDiffFlowPtPOI->AddEntry(lyz2CommonHistRes->GetHistDiffFlowPtPOI(),entryDiffLYZ2PtPOI->Data(),"p");
2463 }
2464
2465 //LYZEP
2466 if(plotLYZEPPtPOI && lyzepCommonHistRes)
2467 {
2468 entryDiffLYZEPPtPOI->Append("M = ");
2469 (*entryDiffLYZEPPtPOI)+=(Long_t)avMultDiffFlowLYZEPPOI;
2470 entryDiffLYZEPPtPOI->Append(", N = ");
2471 (*entryDiffLYZEPPtPOI)+=(Long_t)nEvtsDiffFlowLYZEPPOI;
2472 legendDiffFlowPtPOI->AddEntry(lyzepCommonHistRes->GetHistDiffFlowPtPOI(),entryDiffLYZEPPtPOI->Data(),"p");
2473 }
1fca9c90 2474
e83922f2 2475 //drawing finally the legend in the 2nd pad:
2476 if(legendDiffFlowPtPOI)
2477 {
2478 legendDiffFlowPtPOI->SetMargin(0.15);
2479 legendDiffFlowPtPOI->Draw();
2480 }
2481 }//end of if(plotDiffFlowPtPOI)
1fca9c90 2482 //----------------------------------------------------------------------------------
2483
2484
2485 //----------------------------------------------------------------------------------
2486 //final drawing for differential flow (Eta, POI):
e83922f2 2487 //set here the results of which methods will be plotted by default:
2488 Bool_t plotMCEtaPOI = kFALSE;
2489 Bool_t plotGFC2EtaPOI = kTRUE;
2490 Bool_t plotGFC4EtaPOI = kTRUE;
2491 Bool_t plotGFC6EtaPOI = kTRUE;
2492 Bool_t plotGFC8EtaPOI = kTRUE;
2493 Bool_t plotQC2EtaPOI = kTRUE;
2494 Bool_t plotQC4EtaPOI = kTRUE;
2495 Bool_t plotQC6EtaPOI = kTRUE;
2496 Bool_t plotQC8EtaPOI = kTRUE;
2497 Bool_t plotLYZ2EtaPOI = kTRUE;
2498 Bool_t plotLYZEPEtaPOI = kTRUE;
2499 if(plotDiffFlowEtaPOI)
2500 {
2501 TCanvas* diffFlowEtaAllCanvasPOI = new TCanvas("Differential Flow (Eta) of POI","Differential Flow (Eta) of POI ",1000,600);
2502
2503 diffFlowEtaAllCanvasPOI->Divide(2,1);
2504
2505 //1st pad is for plot:
2506 (diffFlowEtaAllCanvasPOI->cd(1))->SetPad(0.0,0.0,0.75,1.0);
1fca9c90 2507
e83922f2 2508 if(styleHistEta)
2509 {
2510 (styleHistEta->GetYaxis())->SetRangeUser(-0.3,1.0);
2511 styleHistEta->Draw();
2512 }
2513 if(pMeshDiffFlowEtaPOI)
2514 {
2515 pMeshDiffFlowEtaPOI->Draw("LFSAME");
2516 }
1fca9c90 2517
e83922f2 2518 //MC
2519 if(plotMCEtaPOI && mcepCommonHistRes)
2520 {
2521 (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->Draw("E1PSAME");
2522 }
2523 //GFC
2524 if(plotGFC2EtaPOI && gfcCommonHistRes2)
2525 {
2526 (gfcCommonHistRes2->GetHistDiffFlowEtaPOI())->Draw("E1PSAME");
2527 }
2528 if(plotGFC4EtaPOI && gfcCommonHistRes4)
2529 {
2530 (gfcCommonHistRes4->GetHistDiffFlowEtaPOI())->Draw("E1PSAME");
2531 }
2532 if(plotGFC6EtaPOI && gfcCommonHistRes6)
2533 {
2534 (gfcCommonHistRes6->GetHistDiffFlowEtaPOI())->Draw("E1PSAME");
2535 }
2536 if(plotGFC8EtaPOI && gfcCommonHistRes8)
2537 {
2538 (gfcCommonHistRes8->GetHistDiffFlowEtaPOI())->Draw("E1PSAME");
2539 }
2540 //QC
2541 if(plotQC2EtaPOI && qcCommonHistRes2)
2542 {
2543 (qcCommonHistRes2->GetHistDiffFlowEtaPOI())->Draw("E1PSAME");
2544 }
2545 if(plotQC4EtaPOI && qcCommonHistRes4)
2546 {
2547 (qcCommonHistRes4->GetHistDiffFlowEtaPOI())->Draw("E1PSAME");
2548 }
2549 if(plotQC6EtaPOI && qcCommonHistRes6)
2550 {
7d02d77f 2551 //(qcCommonHistRes6->GetHistDiffFlowEtaPOI())->Draw("E1PSAME");
e83922f2 2552 }
2553 if(plotQC8EtaPOI && qcCommonHistRes8)
2554 {
7d02d77f 2555 //(qcCommonHistRes8->GetHistDiffFlowEtaPOI())->Draw("E1PSAME");
e83922f2 2556 }
2557 //LYZ2
2558 if(plotLYZ2EtaPOI && lyz2CommonHistRes)
2559 {
2560 (lyz2CommonHistRes->GetHistDiffFlowEtaPOI())->Draw("E1PSAME");
2561 }
2562 //LYZEP
2563 if(plotLYZEPEtaPOI && lyzepCommonHistRes)
2564 {
2565 (lyzepCommonHistRes->GetHistDiffFlowEtaPOI())->Draw("E1PSAME");
2566 }
1fca9c90 2567
e83922f2 2568 //2nd pad is for legend:
2569 (diffFlowEtaAllCanvasPOI->cd(2))->SetPad(0.75,0.0,1.0,1.0);
2570
2571 TLegend* legendDiffFlowEtaPOI = new TLegend(0.02,0.25,0.97,0.75);
2572 legendDiffFlowEtaPOI->SetTextFont(72);
2573 legendDiffFlowEtaPOI->SetTextSize(0.06);
2574
2575 //legend's entries:
2576 TString *entryDiffMCEtaPOI = new TString("MC ....... ");
2577 TString *entryDiffGFC2EtaPOI = new TString("GFC{2} ... ");
2578 TString *entryDiffGFC4EtaPOI = new TString("GFC{4} ... ");
2579 TString *entryDiffGFC6EtaPOI = new TString("GFC{6} ... ");
2580 TString *entryDiffGFC8EtaPOI = new TString("GFC{8} ... ");
2581 TString *entryDiffQC2EtaPOI = new TString("QC{2} .... ");
2582 TString *entryDiffQC4EtaPOI = new TString("QC{4} .... ");
2583 TString *entryDiffQC6EtaPOI = new TString("QC{6} .... ");
2584 TString *entryDiffQC8EtaPOI = new TString("QC{8} .... ");
2585 TString *entryDiffLYZ2EtaPOI = new TString("LYZ ...... ");
2586 TString *entryDiffLYZEPEtaPOI = new TString("LYZEP ... ");
2587
2588 //MC
2589 if(mcepCommonHistRes)
2590 {
2591 (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->SetFillStyle(meshStyle);
2592 (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->SetFillColor(meshColor);
2593 entryDiffMCEtaPOI->Append("M = ");
2594 (*entryDiffMCEtaPOI)+=(Long_t)avMultDiffFlowMCPOI;
2595 entryDiffMCEtaPOI->Append(", N = ");
2596 (*entryDiffMCEtaPOI)+=(Long_t)nEvtsDiffFlowMCPOI;
2597 legendDiffFlowEtaPOI->AddEntry(mcepCommonHistRes->GetHistDiffFlowEtaPOI(),entryDiffMCEtaPOI->Data(),"f");
2598 }
1fca9c90 2599
e83922f2 2600 //GFC
2601 if(plotGFC2EtaPOI && gfcCommonHistRes2)
2602 {
2603 entryDiffGFC2EtaPOI->Append("M = ");
2604 (*entryDiffGFC2EtaPOI)+=(Long_t)avMultDiffFlowGFCPOI;
2605 entryDiffGFC2EtaPOI->Append(", N = ");
2606 (*entryDiffGFC2EtaPOI)+=(Long_t)nEvtsDiffFlowGFCPOI;
2607 legendDiffFlowEtaPOI->AddEntry(gfcCommonHistRes2->GetHistDiffFlowEtaPOI(),entryDiffGFC2EtaPOI->Data(),"p");
2608 }
2609 if(plotGFC4EtaPOI && gfcCommonHistRes4)
2610 {
2611 entryDiffGFC4EtaPOI->Append("M = ");
2612 (*entryDiffGFC4EtaPOI)+=(Long_t)avMultDiffFlowGFCPOI;
2613 entryDiffGFC4EtaPOI->Append(", N = ");
2614 (*entryDiffGFC4EtaPOI)+=(Long_t)nEvtsDiffFlowGFCPOI;
2615 legendDiffFlowEtaPOI->AddEntry(gfcCommonHistRes4->GetHistDiffFlowEtaPOI(),entryDiffGFC4EtaPOI->Data(),"p");
2616 }
2617 if(plotGFC6EtaPOI && gfcCommonHistRes6)
2618 {
2619 entryDiffGFC6EtaPOI->Append("M = ");
2620 (*entryDiffGFC6EtaPOI)+=(Long_t)avMultDiffFlowGFCPOI;
2621 entryDiffGFC6EtaPOI->Append(", N = ");
2622 (*entryDiffGFC6EtaPOI)+=(Long_t)nEvtsDiffFlowGFCPOI;
2623 legendDiffFlowEtaPOI->AddEntry(gfcCommonHistRes6->GetHistDiffFlowEtaPOI(),entryDiffGFC6EtaPOI->Data(),"p");
2624 }
2625 if(plotGFC8EtaPOI && gfcCommonHistRes8)
2626 {
2627 entryDiffGFC8EtaPOI->Append("M = ");
2628 (*entryDiffGFC8EtaPOI)+=(Long_t)avMultDiffFlowGFCPOI;
2629 entryDiffGFC8EtaPOI->Append(", N = ");
2630 (*entryDiffGFC8EtaPOI)+=(Long_t)nEvtsDiffFlowGFCPOI;
2631 legendDiffFlowEtaPOI->AddEntry(gfcCommonHistRes8->GetHistDiffFlowEtaPOI(),entryDiffGFC8EtaPOI->Data(),"p");
2632 }
2633
2634 //QC
2635 if(plotQC2EtaPOI && qcCommonHistRes2)
2636 {
2637 entryDiffQC2EtaPOI->Append("M = ");
2638 (*entryDiffQC2EtaPOI)+=(Long_t)avMultDiffFlowQC2POI;
2639 entryDiffQC2EtaPOI->Append(", N = ");
2640 (*entryDiffQC2EtaPOI)+=(Long_t)nEvtsDiffFlowQC2POI;
2641 legendDiffFlowEtaPOI->AddEntry(qcCommonHistRes2->GetHistDiffFlowEtaPOI(),entryDiffQC2EtaPOI->Data(),"p");
2642 }
2643 if(plotQC4EtaPOI && qcCommonHistRes4)
2644 {
2645 entryDiffQC4EtaPOI->Append("M = ");
2646 (*entryDiffQC4EtaPOI)+=(Long_t)avMultDiffFlowQC4POI;
2647 entryDiffQC4EtaPOI->Append(", N = ");
2648 (*entryDiffQC4EtaPOI)+=(Long_t)nEvtsDiffFlowQC4POI;
2649 legendDiffFlowEtaPOI->AddEntry(qcCommonHistRes4->GetHistDiffFlowEtaPOI(),entryDiffQC4EtaPOI->Data(),"p");
2650 }
2651 if(plotQC6EtaPOI && qcCommonHistRes6)
2652 {
2653 entryDiffQC6EtaPOI->Append("M = ");
2654 (*entryDiffQC6EtaPOI)+=(Long_t)avMultDiffFlowQC6POI;
2655 entryDiffQC6EtaPOI->Append(", N = ");
2656 (*entryDiffQC6EtaPOI)+=(Long_t)nEvtsDiffFlowQC6POI;
2657 legendDiffFlowEtaPOI->AddEntry(qcCommonHistRes6->GetHistDiffFlowEtaPOI(),entryDiffQC6EtaPOI->Data(),"p");
2658 }
2659 if(plotQC8EtaPOI && qcCommonHistRes8)
2660 {
2661 entryDiffQC8EtaPOI->Append("M = ");
2662 (*entryDiffQC8EtaPOI)+=(Long_t)avMultDiffFlowQC8POI;
2663 entryDiffQC8EtaPOI->Append(", N = ");
2664 (*entryDiffQC8EtaPOI)+=(Long_t)nEvtsDiffFlowQC8POI;
2665 legendDiffFlowEtaPOI->AddEntry(qcCommonHistRes8->GetHistDiffFlowEtaPOI(),entryDiffQC8EtaPOI->Data(),"p");
2666 }
1fca9c90 2667
e83922f2 2668 //LYZ2
2669 if(plotLYZ2EtaPOI && lyz2CommonHistRes)
2670 {
2671 entryDiffLYZ2EtaPOI->Append("M = ");
2672 (*entryDiffLYZ2EtaPOI)+=(Long_t)avMultDiffFlowLYZ2POI;
2673 entryDiffLYZ2EtaPOI->Append(", N = ");
2674 (*entryDiffLYZ2EtaPOI)+=(Long_t)nEvtsDiffFlowLYZ2POI;
2675 legendDiffFlowEtaPOI->AddEntry(lyz2CommonHistRes->GetHistDiffFlowEtaPOI(),entryDiffLYZ2EtaPOI->Data(),"p");
2676 }
2677
2678 //LYZEP
2679 if(plotLYZEPEtaPOI && lyzepCommonHistRes)
2680 {
2681 entryDiffLYZEPEtaPOI->Append("M = ");
2682 (*entryDiffLYZEPEtaPOI)+=(Long_t)avMultDiffFlowLYZEPPOI;
2683 entryDiffLYZEPEtaPOI->Append(", N = ");
2684 (*entryDiffLYZEPEtaPOI)+=(Long_t)nEvtsDiffFlowLYZEPPOI;
2685 legendDiffFlowEtaPOI->AddEntry(lyzepCommonHistRes->GetHistDiffFlowEtaPOI(),entryDiffLYZEPEtaPOI->Data(),"p");
2686 }
1fca9c90 2687
e83922f2 2688 //drawing finally the legend in the 2nd pad:
2689 if(legendDiffFlowEtaPOI)
2690 {
2691 legendDiffFlowEtaPOI->SetMargin(0.15);
2692 legendDiffFlowEtaPOI->Draw();
2693 }
2694 }//end of if(plotDiffFlowEtaPOI)
1fca9c90 2695 //----------------------------------------------------------------------------------
2696
2697
a88e5ac2 2698 //=====================================================================================
2699
70288839 2700}