]>
Commit | Line | Data |
---|---|---|
8c5ec46a | 1 | //type of analysis can be: ESD, AOD, MC, ESDMC0, ESDMC1 |
2 | //const TString type = "ESD"; | |
b25cc698 | 3 | |
4 | enum libModes {mLocal,mLocalSource}; | |
5 | //mLocal: Analyze data on your computer using aliroot | |
6 | //mLocalSource: Analyze data on your computer using root + source files | |
7 | ||
8 | //void compareFlowResults(TString type="",Int_t mode=mLocalSource) | |
d91e7275 | 9 | void compareFlowResults(TString type="ESD",Int_t mode=mLocal) |
da24213b | 10 | { |
b25cc698 | 11 | |
12 | // load needed libraries: | |
8d5cd720 | 13 | LoadPlotLibraries(mode); |
b25cc698 | 14 | |
d91e7275 | 15 | Bool_t plotLegendIntFlow = kTRUE; // plot legend with average multiplicity and number of events for each method in all plots for integrated flow |
b25cc698 | 16 | |
da24213b | 17 | //================================================================================== |
18 | // set here which plots will be shown by default | |
19 | //================================================================================== | |
688877b8 | 20 | Bool_t plotIntFlow = kTRUE; // integrated flow (no-name) // to be improved |
077816b6 | 21 | Bool_t plotIntFlowRelativeToMC = kTRUE; // plot |v{MC}-v{method}/v{MC}| for integrated flow (no-name) // to be improved |
da24213b | 22 | // RP = particles used to determine the reaction plane |
077816b6 | 23 | Bool_t plotIntFlowRP = kTRUE; // integrated flow RP |
24 | Bool_t plotIntFlowRelativeToMCRP = kTRUE; // plot |v{MC}-v{method}/v{MC}| for integrated flow (RP) // to be improved | |
688877b8 | 25 | Bool_t plotDiffFlowPtRP = kTRUE; // differential flow (Pt,RP) |
947cc449 | 26 | Bool_t plotDiffFlowEtaRP = kTRUE; // differential flow (Eta,RP) |
27 | Bool_t plotDiffFlowPtRelativeToMCRP = kTRUE; // plot |v{MC}-v{method}/v{MC}| as a function of pt for RPs | |
da24213b | 28 | // POI = particle of interest |
077816b6 | 29 | Bool_t plotIntFlowPOI = kTRUE; // integrated flow POI |
30 | Bool_t plotIntFlowRelativeToMCPOI = kTRUE; // plot |v{MC}-v{method}/v{MC}| for integrated flow (POI) // to be improved | |
31 | Bool_t plotDiffFlowPtPOI = kTRUE; // differential flow (Pt,POI) | |
32 | Bool_t plotDiffFlowEtaPOI = kTRUE; // differential flow (Eta,POI) | |
da24213b | 33 | //================================================================================== |
34 | ||
b25cc698 | 35 | |
da24213b | 36 | //================================================================================== |
37 | // set here which methods will be plotted by default for differential flow (Pt,RP): | |
947cc449 | 38 | Bool_t plotMCPtRP = kFALSE; |
39 | Bool_t plotSPPtRP = kTRUE; | |
40 | Bool_t plotGFC2PtRP = kTRUE; | |
41 | Bool_t plotGFC4PtRP = kTRUE; | |
42 | Bool_t plotGFC6PtRP = kTRUE; | |
43 | Bool_t plotGFC8PtRP = kTRUE; | |
44 | Bool_t plotQC2PtRP = kTRUE; | |
45 | Bool_t plotQC4PtRP = kTRUE; | |
46 | Bool_t plotQC6PtRP = kFALSE; // not calculated yet | |
47 | Bool_t plotQC8PtRP = kFALSE; // not calculated yet | |
48 | Bool_t plotLYZ2SUMPtRP = kTRUE; | |
49 | Bool_t plotLYZ2PRODPtRP = kTRUE; | |
50 | Bool_t plotLYZEPPtRP = kTRUE; | |
da24213b | 51 | |
52 | // set here which methods will be plotted by default for differential flow (Eta,RP): | |
947cc449 | 53 | Bool_t plotMCEtaRP = kFALSE; |
54 | Bool_t plotSPEtaRP = kTRUE; | |
55 | Bool_t plotGFC2EtaRP = kTRUE; | |
56 | Bool_t plotGFC4EtaRP = kTRUE; | |
57 | Bool_t plotGFC6EtaRP = kTRUE; | |
58 | Bool_t plotGFC8EtaRP = kTRUE; | |
59 | Bool_t plotQC2EtaRP = kTRUE; | |
60 | Bool_t plotQC4EtaRP = kTRUE; | |
61 | Bool_t plotQC6EtaRP = kFALSE; // not calculated yet | |
62 | Bool_t plotQC8EtaRP = kFALSE; // not calculated yet | |
63 | Bool_t plotLYZ2SUMEtaRP = kTRUE; | |
64 | Bool_t plotLYZ2PRODEtaRP = kTRUE; | |
65 | Bool_t plotLYZEPEtaRP = kTRUE; | |
da24213b | 66 | |
688877b8 | 67 | // set here which methods will be plotted by default for |v{MC}-v{method}/v{MC}| as a function of pt for RPs |
947cc449 | 68 | Bool_t plotSPRelativeToMCRP = kTRUE; |
69 | Bool_t plotGFC2RelativeToMCRP = kTRUE; | |
70 | Bool_t plotGFC4RelativeToMCRP = kTRUE; | |
71 | Bool_t plotGFC6RelativeToMCRP = kTRUE; | |
72 | Bool_t plotGFC8RelativeToMCRP = kTRUE; | |
73 | Bool_t plotQC2RelativeToMCRP = kTRUE; | |
74 | Bool_t plotQC4RelativeToMCRP = kTRUE; | |
75 | Bool_t plotQC6RelativeToMCRP = kFALSE; // not calculated yet | |
76 | Bool_t plotQC8RelativeToMCRP = kFALSE; // not calculated yet | |
77 | Bool_t plotLYZ2SUMRelativeToMCRP = kTRUE; | |
78 | Bool_t plotLYZ2PRODRelativeToMCRP = kTRUE; | |
79 | Bool_t plotLYZEPRelativeToMCRP = kTRUE; | |
688877b8 | 80 | |
da24213b | 81 | // set here which methods will be plotted by default for differential flow (Pt,POI): |
947cc449 | 82 | Bool_t plotMCPtPOI = kFALSE; |
83 | Bool_t plotSPPtPOI = kTRUE; | |
84 | Bool_t plotGFC2PtPOI = kTRUE; | |
85 | Bool_t plotGFC4PtPOI = kTRUE; | |
86 | Bool_t plotGFC6PtPOI = kTRUE; | |
87 | Bool_t plotGFC8PtPOI = kTRUE; | |
88 | Bool_t plotQC2PtPOI = kTRUE; | |
89 | Bool_t plotQC4PtPOI = kTRUE; | |
90 | Bool_t plotQC6PtPOI = kFALSE; // not calculated yet | |
91 | Bool_t plotQC8PtPOI = kFALSE; // not calculated yet | |
92 | Bool_t plotLYZ2SUMPtPOI = kTRUE; | |
93 | Bool_t plotLYZ2PRODPtPOI = kTRUE; | |
94 | Bool_t plotLYZEPPtPOI = kTRUE; | |
da24213b | 95 | |
96 | // set here which methods will be plotted by default for differential flow (Eta,POI): | |
947cc449 | 97 | Bool_t plotMCEtaPOI = kFALSE; |
98 | Bool_t plotSPEtaPOI = kTRUE; | |
99 | Bool_t plotGFC2EtaPOI = kTRUE; | |
100 | Bool_t plotGFC4EtaPOI = kTRUE; | |
101 | Bool_t plotGFC6EtaPOI = kTRUE; | |
102 | Bool_t plotGFC8EtaPOI = kTRUE; | |
103 | Bool_t plotQC2EtaPOI = kTRUE; | |
104 | Bool_t plotQC4EtaPOI = kTRUE; | |
105 | Bool_t plotQC6EtaPOI = kFALSE; // not calculated yet | |
106 | Bool_t plotQC8EtaPOI = kFALSE; // not calculated yet | |
107 | Bool_t plotLYZ2SUMEtaPOI = kTRUE; | |
108 | Bool_t plotLYZ2PRODEtaPOI = kTRUE; | |
109 | Bool_t plotLYZEPEtaPOI = kTRUE; | |
da24213b | 110 | //================================================================================== |
111 | ||
112 | ||
113 | //================================================================================== | |
905bed86 | 114 | // cosmetics: marker style (see TMarker) and color (see TAttFill) for each method: |
da24213b | 115 | // MC: |
905bed86 | 116 | Int_t markerStyleMC = 20; // full circle |
da24213b | 117 | Int_t markerColorMC = kRed; |
905bed86 | 118 | // SP: |
119 | Int_t markerStyleSP = 3; // star | |
120 | Int_t markerColorSP = kViolet-6; | |
da24213b | 121 | // GFC{2} |
905bed86 | 122 | Int_t markerStyleGFC2 = 21; // full square |
da24213b | 123 | Int_t markerColorGFC2 = kAzure-7; |
124 | // GFC{4} | |
905bed86 | 125 | Int_t markerStyleGFC4 = 20; // full circle |
da24213b | 126 | Int_t markerColorGFC4 = kAzure+3; |
127 | // GFC{6} | |
688877b8 | 128 | Int_t markerStyleGFC6 = 25; // open square |
da24213b | 129 | Int_t markerColorGFC6 = kAzure-7; |
130 | // GFC{8} | |
688877b8 | 131 | Int_t markerStyleGFC8 = 24; // open circle |
da24213b | 132 | Int_t markerColorGFC8 = kAzure+3; |
133 | // QC{2} | |
905bed86 | 134 | Int_t markerStyleQC2 = 21; // full square |
da24213b | 135 | Int_t markerColorQC2 = kOrange-7; |
136 | // QC{4} | |
905bed86 | 137 | Int_t markerStyleQC4 = 20; // full circle |
da24213b | 138 | Int_t markerColorQC4 = kOrange+3; |
139 | // QC{6} | |
688877b8 | 140 | Int_t markerStyleQC6 = 25; // open square |
da24213b | 141 | Int_t markerColorQC6 = kOrange-7; |
142 | // QC{8} | |
688877b8 | 143 | Int_t markerStyleQC8 = 24; // open circle |
da24213b | 144 | Int_t markerColorQC8 = kOrange+3; |
947cc449 | 145 | // LYZ2SUM |
146 | Int_t markerStyleLYZ2SUM = 22; // full triangle | |
147 | Int_t markerColorLYZ2SUM = kYellow+3; | |
148 | // LYZ2PROD | |
149 | Int_t markerStyleLYZ2PROD = 22; // full triangle | |
150 | Int_t markerColorLYZ2PROD = kGreen+3; | |
da24213b | 151 | // LYZEP |
905bed86 | 152 | Int_t markerStyleLYZEP = 26; // open triangle |
da24213b | 153 | Int_t markerColorLYZEP = kYellow+3; |
154 | //================================================================================== | |
155 | ||
dec3fab6 | 156 | |
157 | //================================================================================== | |
158 | // set here which result goes in which bin in the plot for integrated flow (no-name) | |
159 | // MC: | |
160 | Int_t binMC = 1; | |
161 | // SP: | |
162 | Int_t binSP = 2; | |
163 | // GFC{2} | |
164 | Int_t binGFC2 = 3; | |
165 | // GFC{4} | |
166 | Int_t binGFC4 = 5; | |
167 | // GFC{6} | |
168 | Int_t binGFC6 = 7; | |
169 | // GFC{8} | |
170 | Int_t binGFC8 = 9; | |
171 | // QC{2} | |
172 | Int_t binQC2 = 4; | |
173 | // QC{4} | |
174 | Int_t binQC4 = 6; | |
175 | // QC{6} | |
176 | Int_t binQC6 = 8; | |
177 | // QC{8} | |
178 | Int_t binQC8 = 10; | |
179 | // FQD | |
180 | Int_t binFQD = 11; | |
947cc449 | 181 | // LYZ1SUM |
182 | Int_t binLYZ1SUM = 12; | |
183 | // LYZ1PROD | |
184 | Int_t binLYZ1PROD = 13; | |
dec3fab6 | 185 | // LYZEP |
947cc449 | 186 | Int_t binLYZEP = 14; |
dec3fab6 | 187 | //================================================================================== |
188 | ||
189 | ||
190 | //================================================================================== | |
191 | // set here which result goes in which bin in the plot for integrated flow (RP) | |
192 | // MC: | |
193 | Int_t binMCRP = 1; | |
194 | // SP: | |
195 | Int_t binSPRP = 2; | |
196 | // GFC{2} | |
197 | Int_t binGFC2RP = 3; | |
198 | // GFC{4} | |
199 | Int_t binGFC4RP = 5; | |
200 | // GFC{6} | |
201 | Int_t binGFC6RP = 7; | |
202 | // GFC{8} | |
203 | Int_t binGFC8RP = 9; | |
204 | // QC{2} | |
205 | Int_t binQC2RP = 4; | |
206 | // QC{4} | |
207 | Int_t binQC4RP = 6; | |
208 | // QC{6} | |
209 | Int_t binQC6RP = 8; | |
210 | // QC{8} | |
211 | Int_t binQC8RP = 10; | |
212 | // FQD | |
213 | Int_t binFQDRP = 11; | |
947cc449 | 214 | // LYZ2SUM |
215 | Int_t binLYZ2SUMRP = 12; | |
216 | // LYZ2PROD | |
217 | Int_t binLYZ2PRODRP = 13; | |
dec3fab6 | 218 | // LYZEP |
947cc449 | 219 | Int_t binLYZEPRP = 14; |
dec3fab6 | 220 | //================================================================================== |
221 | ||
222 | ||
223 | //================================================================================== | |
224 | // set here which result goes in which bin in the plot for integrated flow (POI) | |
225 | // MC: | |
226 | Int_t binMCPOI = 1; | |
227 | // SP: | |
228 | Int_t binSPPOI = 2; | |
229 | // GFC{2} | |
230 | Int_t binGFC2POI = 3; | |
231 | // GFC{4} | |
232 | Int_t binGFC4POI = 5; | |
233 | // GFC{6} | |
234 | Int_t binGFC6POI = 7; | |
235 | // GFC{8} | |
236 | Int_t binGFC8POI = 9; | |
237 | // QC{2} | |
238 | Int_t binQC2POI = 4; | |
239 | // QC{4} | |
240 | Int_t binQC4POI = 6; | |
241 | // QC{6} | |
242 | Int_t binQC6POI = 8; | |
243 | // QC{8} | |
244 | Int_t binQC8POI = 10; | |
245 | // FQD | |
246 | Int_t binFQDPOI = 11; | |
947cc449 | 247 | // LYZ2SUM |
248 | Int_t binLYZ2SUMPOI = 12; | |
249 | // LYZ2PROD | |
250 | Int_t binLYZ2PRODPOI = 13; | |
dec3fab6 | 251 | // LYZEP |
947cc449 | 252 | Int_t binLYZEPPOI = 14; |
dec3fab6 | 253 | //================================================================================== |
b25cc698 | 254 | |
255 | ||
8c5ec46a | 256 | //================================================================================== |
257 | // accessing output files | |
258 | //================================================================================== | |
8c5ec46a | 259 | //open the output files: |
260 | TString inputFileNameMCEP = "outputMCEPanalysis"; | |
261 | TFile* fileMCEP = NULL; | |
262 | fileMCEP = TFile::Open(((inputFileNameMCEP.Append(type)).Append(".root")).Data(), "READ"); | |
263 | ||
905bed86 | 264 | TString inputFileNameSP = "outputSPanalysis"; |
265 | TFile* fileSP = NULL; | |
266 | fileSP = TFile::Open(((inputFileNameSP.Append(type)).Append(".root")).Data(), "READ"); | |
267 | ||
947cc449 | 268 | TString inputFileNameLYZ1SUM = "outputLYZ1SUManalysis"; |
269 | TFile* fileLYZ1SUM = NULL; | |
270 | fileLYZ1SUM = TFile::Open(((inputFileNameLYZ1SUM.Append(type)).Append(".root")).Data(), "READ"); | |
8c5ec46a | 271 | |
947cc449 | 272 | TString inputFileNameLYZ2SUM = "outputLYZ2SUManalysis"; |
273 | TFile* fileLYZ2SUM = NULL; | |
274 | fileLYZ2SUM = TFile::Open(((inputFileNameLYZ2SUM.Append(type)).Append(".root")).Data(), "READ"); | |
275 | ||
276 | TString inputFileNameLYZ1PROD = "outputLYZ1PRODanalysis"; | |
277 | TFile* fileLYZ1PROD = NULL; | |
278 | fileLYZ1PROD = TFile::Open(((inputFileNameLYZ1PROD.Append(type)).Append(".root")).Data(), "READ"); | |
279 | ||
280 | TString inputFileNameLYZ2PROD = "outputLYZ2PRODanalysis"; | |
281 | TFile* fileLYZ2PROD = NULL; | |
282 | fileLYZ2PROD = TFile::Open(((inputFileNameLYZ2PROD.Append(type)).Append(".root")).Data(), "READ"); | |
8c5ec46a | 283 | |
284 | TString inputFileNameLYZEP = "outputLYZEPanalysis"; | |
285 | TFile* fileLYZEP = NULL; | |
286 | fileLYZEP = TFile::Open(((inputFileNameLYZEP.Append(type)).Append(".root")).Data(), "READ"); | |
287 | ||
288 | TString inputFileNameFQD = "outputFQDanalysis"; | |
289 | TFile* fileFQD = NULL; | |
290 | fileFQD = TFile::Open(((inputFileNameFQD.Append(type)).Append(".root")).Data(), "READ"); | |
291 | ||
292 | TString inputFileNameGFC = "outputGFCanalysis"; | |
293 | TFile* fileGFC = NULL; | |
294 | fileGFC = TFile::Open(((inputFileNameGFC.Append(type)).Append(".root")).Data(), "READ"); | |
295 | ||
296 | TString inputFileNameQC = "outputQCanalysis"; | |
297 | TFile* fileQC = NULL; | |
298 | fileQC = TFile::Open(((inputFileNameQC.Append(type)).Append(".root")).Data(), "READ"); | |
299 | //================================================================================== | |
1fca9c90 | 300 | |
a88e5ac2 | 301 | |
a88e5ac2 | 302 | |
9d3cbee7 | 303 | |
8c5ec46a | 304 | //================================================================================== |
305 | // cosmetics | |
306 | //================================================================================== | |
307 | //removing the title and stat. box from all histograms: | |
308 | gStyle->SetOptTitle(0); | |
309 | gStyle->SetOptStat(0); | |
310 | ||
dec3fab6 | 311 | // plot for 'no-name' integrated flow: |
312 | // choosing the style and color of mesh for MC error bands | |
8c5ec46a | 313 | Int_t meshStyle = 1001; |
dec3fab6 | 314 | Int_t meshColor = kGray; |
8c5ec46a | 315 | |
dec3fab6 | 316 | // marker style and color |
8c5ec46a | 317 | Int_t markerStyle = 21; |
dec3fab6 | 318 | Int_t markerColor = kBlack; |
319 | ||
320 | // plot for RP's integrated flow: | |
321 | // choosing the style and color of mesh for MC error bands | |
322 | Int_t meshStyleRP = 1001; | |
323 | Int_t meshColorRP = kRed-10; | |
324 | ||
325 | // marker style and color | |
326 | Int_t markerStyleRP = 21; | |
327 | Int_t markerColorRP = kRed-3; | |
328 | ||
329 | // plot for POI's integrated flow: | |
330 | // choosing the style and color of mesh for MC error bands | |
331 | Int_t meshStylePOI = 1001; | |
332 | Int_t meshColorPOI = kBlue-10; | |
333 | ||
334 | // marker style and color | |
335 | Int_t markerStylePOI = 21; | |
336 | Int_t markerColorPOI = kBlue-3; | |
337 | ||
338 | // choosing the style and color of mesh for MC error bands in the plots for diff. flow | |
339 | // plot for differential flow (Pt,RP): | |
340 | Int_t meshStyleDiffFlowPtRP = 1001; | |
341 | Int_t meshColorDiffFlowPtRP = kRed-10; | |
342 | ||
343 | // plot for differential flow (Eta,RP): | |
344 | Int_t meshStyleDiffFlowEtaRP = 1001; | |
345 | Int_t meshColorDiffFlowEtaRP = kRed-10; | |
346 | ||
347 | // plot for differential flow (Pt,POI): | |
348 | Int_t meshStyleDiffFlowPtPOI = 1001; | |
349 | Int_t meshColorDiffFlowPtPOI = kRed-10; | |
350 | ||
351 | // plot for differential flow (Eta,POI): | |
352 | Int_t meshStyleDiffFlowEtaPOI = 1001; | |
353 | Int_t meshColorDiffFlowEtaPOI = kRed-10; | |
8c5ec46a | 354 | //================================================================================== |
355 | ||
356 | ||
357 | ||
358 | ||
359 | //================================================================================== | |
dec3fab6 | 360 | // INTEGRATED FLOW (no-name, RP and POI) |
8c5ec46a | 361 | //================================================================================== |
dec3fab6 | 362 | // the number of different methods: |
947cc449 | 363 | const Int_t nMethods=14; |
8c5ec46a | 364 | |
dec3fab6 | 365 | // booking the histogram for the integrated flow results from all methods: |
8c5ec46a | 366 | TH1D* intFlowAll = new TH1D("intFlowAll","Integrated Flow",nMethods,0,nMethods); |
95de4bf0 | 367 | if(!plotLegendIntFlow) intFlowAll->SetLabelSize(0.044,"X"); |
dec3fab6 | 368 | // intFlowAll->SetLabelSize(0.036,"Y"); |
8c5ec46a | 369 | intFlowAll->SetMarkerStyle(markerStyle); |
370 | intFlowAll->SetMarkerColor(markerColor); | |
dec3fab6 | 371 | (intFlowAll->GetXaxis())->SetBinLabel(binMC,"v_{2}{MC}"); |
372 | (intFlowAll->GetXaxis())->SetBinLabel(binSP,"v_{2}{SP}"); | |
373 | (intFlowAll->GetXaxis())->SetBinLabel(binGFC2,"v_{2}{2,GFC}"); | |
374 | (intFlowAll->GetXaxis())->SetBinLabel(binQC2,"v_{2}{2,QC}"); | |
375 | (intFlowAll->GetXaxis())->SetBinLabel(binGFC4,"v_{2}{4,GFC}"); | |
376 | (intFlowAll->GetXaxis())->SetBinLabel(binQC4,"v_{2}{4,QC}"); | |
377 | (intFlowAll->GetXaxis())->SetBinLabel(binGFC6,"v_{2}{6,GFC}"); | |
378 | (intFlowAll->GetXaxis())->SetBinLabel(binQC6,"v_{2}{6,QC}"); | |
379 | (intFlowAll->GetXaxis())->SetBinLabel(binGFC8,"v_{2}{8,GFC}"); | |
380 | (intFlowAll->GetXaxis())->SetBinLabel(binQC8,"v_{2}{8,QC}"); | |
381 | (intFlowAll->GetXaxis())->SetBinLabel(binFQD,"v_{2}{FQD}"); | |
947cc449 | 382 | (intFlowAll->GetXaxis())->SetBinLabel(binLYZ1SUM,"v_{2}{LYZ,sum}"); |
383 | (intFlowAll->GetXaxis())->SetBinLabel(binLYZ1PROD,"v_{2}{LYZ,prod}"); | |
dec3fab6 | 384 | (intFlowAll->GetXaxis())->SetBinLabel(binLYZEP,"v_{2}{LYZEP}"); |
385 | ||
386 | // booking the graph to store flow values and errors from all methods: | |
387 | Double_t x[nMethods] = {0.}; | |
388 | for(Int_t i=0;i<nMethods;i++) | |
389 | { | |
390 | x[i]=i+0.5; | |
391 | } | |
8c5ec46a | 392 | Double_t xError[nMethods] = {0.}; |
3963f25c | 393 | Double_t flowValue[nMethods] = {0.}; |
394 | Double_t flowError[nMethods] = {0.}; | |
8c5ec46a | 395 | Double_t flowValueRP[nMethods] = {0.}; |
396 | Double_t flowErrorRP[nMethods] = {0.}; | |
397 | Double_t flowValuePOI[nMethods] = {0.}; | |
398 | Double_t flowErrorPOI[nMethods] = {0.}; | |
399 | ||
dec3fab6 | 400 | // accessing the results for integrated flow for each method: |
401 | // MCEP = Monte Carlo Event Plane | |
8c5ec46a | 402 | TList *pListMCEP = NULL; |
403 | AliFlowCommonHist *mcepCommonHist = NULL; | |
404 | AliFlowCommonHistResults *mcepCommonHistRes = NULL; | |
405 | if(fileMCEP) { | |
406 | fileMCEP->GetObject("cobjMCEP",pListMCEP); | |
407 | if(pListMCEP) { | |
dec3fab6 | 408 | mcepCommonHist = dynamic_cast<AliFlowCommonHist*> (pListMCEP->FindObject("AliFlowCommonHistMCEP")); |
8c5ec46a | 409 | mcepCommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (pListMCEP->FindObject("AliFlowCommonHistResultsMCEP")); |
410 | if(mcepCommonHistRes) { | |
dec3fab6 | 411 | flowValue[binMC-1] = (mcepCommonHistRes->GetHistIntFlow())->GetBinContent(1); |
412 | flowError[binMC-1] = (mcepCommonHistRes->GetHistIntFlow())->GetBinError(1); | |
413 | flowValueRP[binMCRP-1] = (mcepCommonHistRes->GetHistIntFlowRP())->GetBinContent(1); | |
414 | flowErrorRP[binMCRP-1] = (mcepCommonHistRes->GetHistIntFlowRP())->GetBinError(1); | |
415 | flowValuePOI[binMCPOI-1] = (mcepCommonHistRes->GetHistIntFlowPOI())->GetBinContent(1); | |
416 | flowErrorPOI[binMCPOI-1] = (mcepCommonHistRes->GetHistIntFlowPOI())->GetBinError(1); | |
8c5ec46a | 417 | } |
418 | } | |
a88e5ac2 | 419 | } |
8c5ec46a | 420 | |
dec3fab6 | 421 | // SP = Scalar Product |
905bed86 | 422 | TList *pListSP = NULL; |
423 | AliFlowCommonHist *spCommonHist = NULL; | |
424 | AliFlowCommonHistResults *spCommonHistRes = NULL; | |
425 | if(fileSP) { | |
426 | fileSP->GetObject("cobjSP",pListSP); | |
427 | if(pListSP) { | |
dec3fab6 | 428 | spCommonHist = dynamic_cast<AliFlowCommonHist*> (pListSP->FindObject("AliFlowCommonHistSP")); |
905bed86 | 429 | spCommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (pListSP->FindObject("AliFlowCommonHistResultsSP")); |
430 | if(spCommonHistRes) { | |
dec3fab6 | 431 | flowValue[binSP-1] = (spCommonHistRes->GetHistIntFlow())->GetBinContent(1); |
432 | flowError[binSP-1] = (spCommonHistRes->GetHistIntFlow())->GetBinError(1); | |
433 | flowValueRP[binSPRP-1] = (spCommonHistRes->GetHistIntFlowRP())->GetBinContent(1); | |
434 | flowErrorRP[binSPRP-1] = (spCommonHistRes->GetHistIntFlowRP())->GetBinError(1); | |
435 | flowValuePOI[binSPPOI-1] = (spCommonHistRes->GetHistIntFlowPOI())->GetBinContent(1); | |
436 | flowErrorPOI[binSPPOI-1] = (spCommonHistRes->GetHistIntFlowPOI())->GetBinError(1); | |
905bed86 | 437 | } |
438 | } | |
439 | } | |
440 | ||
947cc449 | 441 | // LYZ1SUM = Lee-Yang Zeros (1st run, sum) is used to get only 'no-name' integrated flow |
442 | TList *pListLYZ1SUM = NULL; | |
443 | AliFlowCommonHist *lyz1sumCommonHist = NULL; | |
444 | AliFlowCommonHistResults *lyz1sumCommonHistRes = NULL; | |
445 | if(fileLYZ1SUM) { | |
446 | fileLYZ1SUM->GetObject("cobjLYZ1SUM",pListLYZ1SUM); | |
447 | if(pListLYZ1SUM) { | |
c49a8c1c | 448 | lyz1sumCommonHist = dynamic_cast<AliFlowCommonHist*> (pListLYZ1SUM->FindObject("AliFlowCommonHistLYZ1SUM")); |
449 | lyz1sumCommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (pListLYZ1SUM->FindObject("AliFlowCommonHistResultsLYZ1SUM")); | |
947cc449 | 450 | if(lyz1sumCommonHistRes) { |
451 | flowValue[binLYZ1SUM-1] = (lyz1sumCommonHistRes->GetHistIntFlow())->GetBinContent(1); | |
452 | flowError[binLYZ1SUM-1] = (lyz1sumCommonHistRes->GetHistIntFlow())->GetBinError(1); | |
8c5ec46a | 453 | } |
454 | } | |
a88e5ac2 | 455 | } |
8c5ec46a | 456 | |
947cc449 | 457 | // LYZ2SUM = Lee-Yang Zeros (2nd run, sum) is used to get RP's and POI's integrated flow |
458 | TList *pListLYZ2SUM = NULL; | |
459 | AliFlowCommonHist *lyz2sumCommonHist = NULL; | |
460 | AliFlowCommonHistResults *lyz2sumCommonHistRes = NULL; | |
461 | if(fileLYZ2SUM) { | |
462 | fileLYZ2SUM->GetObject("cobjLYZ2SUM",pListLYZ2SUM); | |
463 | if(pListLYZ2SUM) { | |
c49a8c1c | 464 | lyz2sumCommonHist = dynamic_cast<AliFlowCommonHist*> (pListLYZ2SUM->FindObject("AliFlowCommonHistLYZ2SUM")); |
465 | lyz2sumCommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (pListLYZ2SUM->FindObject("AliFlowCommonHistResultsLYZ2SUM")); | |
947cc449 | 466 | if(lyz2sumCommonHistRes) { |
467 | flowValueRP[binLYZ2SUMRP-1] = (lyz2sumCommonHistRes->GetHistIntFlowRP())->GetBinContent(1); | |
468 | flowErrorRP[binLYZ2SUMRP-1] = (lyz2sumCommonHistRes->GetHistIntFlowRP())->GetBinError(1); | |
469 | flowValuePOI[binLYZ2SUMPOI-1] = (lyz2sumCommonHistRes->GetHistIntFlowPOI())->GetBinContent(1); | |
470 | flowErrorPOI[binLYZ2SUMPOI-1] = (lyz2sumCommonHistRes->GetHistIntFlowPOI())->GetBinError(1); | |
471 | } | |
472 | } | |
473 | } | |
474 | ||
475 | // LYZ1PROD = Lee-Yang Zeros (1st run, product) is used to get only 'no-name' integrated flow | |
476 | TList *pListLYZ1PROD = NULL; | |
477 | AliFlowCommonHist *lyz1prodCommonHist = NULL; | |
478 | AliFlowCommonHistResults *lyz1prodCommonHistRes = NULL; | |
479 | if(fileLYZ1PROD) { | |
480 | fileLYZ1PROD->GetObject("cobjLYZ1PROD",pListLYZ1PROD); | |
481 | if(pListLYZ1PROD) { | |
c49a8c1c | 482 | lyz1prodCommonHist = dynamic_cast<AliFlowCommonHist*> (pListLYZ1PROD->FindObject("AliFlowCommonHistLYZ1PROD")); |
483 | lyz1prodCommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (pListLYZ1PROD->FindObject("AliFlowCommonHistResultsLYZ1PROD")); | |
947cc449 | 484 | if(lyz1prodCommonHistRes) { |
485 | flowValue[binLYZ1PROD-1] = (lyz1prodCommonHistRes->GetHistIntFlow())->GetBinContent(1); | |
486 | flowError[binLYZ1PROD-1] = (lyz1prodCommonHistRes->GetHistIntFlow())->GetBinError(1); | |
487 | } | |
488 | } | |
489 | } | |
490 | ||
491 | // LYZ2PROD = Lee-Yang Zeros (2nd run, product) is used to get RP's and POI's integrated flow | |
492 | TList *pListLYZ2PROD = NULL; | |
493 | AliFlowCommonHist *lyz2prodCommonHist = NULL; | |
494 | AliFlowCommonHistResults *lyz2prodCommonHistRes = NULL; | |
495 | if(fileLYZ2PROD) { | |
496 | fileLYZ2PROD->GetObject("cobjLYZ2PROD",pListLYZ2PROD); | |
497 | if(pListLYZ2PROD) { | |
c49a8c1c | 498 | lyz2prodCommonHist = dynamic_cast<AliFlowCommonHist*> (pListLYZ2PROD->FindObject("AliFlowCommonHistLYZ2PROD")); |
499 | lyz2prodCommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (pListLYZ2PROD->FindObject("AliFlowCommonHistResultsLYZ2PROD")); | |
947cc449 | 500 | if(lyz2prodCommonHistRes) { |
501 | flowValueRP[binLYZ2PRODRP-1] = (lyz2prodCommonHistRes->GetHistIntFlowRP())->GetBinContent(1); | |
502 | flowErrorRP[binLYZ2PRODRP-1] = (lyz2prodCommonHistRes->GetHistIntFlowRP())->GetBinError(1); | |
503 | flowValuePOI[binLYZ2PRODPOI-1] = (lyz2prodCommonHistRes->GetHistIntFlowPOI())->GetBinContent(1); | |
504 | flowErrorPOI[binLYZ2PRODPOI-1] = (lyz2prodCommonHistRes->GetHistIntFlowPOI())->GetBinError(1); | |
80e93fef | 505 | } |
8c5ec46a | 506 | } |
9d3cbee7 | 507 | } |
8c5ec46a | 508 | |
dec3fab6 | 509 | // LYZEP = Lee-Yang Zeros Event Plane |
8c5ec46a | 510 | TList *pListLYZEP = NULL; |
511 | AliFlowCommonHist *lyzepCommonHist = NULL; | |
512 | AliFlowCommonHistResults *lyzepCommonHistRes = NULL; | |
513 | if(fileLYZEP) { | |
514 | fileLYZEP->GetObject("cobjLYZEP",pListLYZEP); | |
515 | if(pListLYZEP) { | |
516 | lyzepCommonHist = dynamic_cast<AliFlowCommonHist*> (pListLYZEP->FindObject("AliFlowCommonHistLYZEP")); | |
517 | lyzepCommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (pListLYZEP->FindObject("AliFlowCommonHistResultsLYZEP")); | |
518 | if(lyzepCommonHistRes) { | |
dec3fab6 | 519 | flowValue[binLYZEP-1] = (lyzepCommonHistRes->GetHistIntFlow())->GetBinContent(1); |
520 | flowError[binLYZEP-1] = (lyzepCommonHistRes->GetHistIntFlow())->GetBinError(1); | |
521 | flowValueRP[binLYZEPRP-1] = (lyzepCommonHistRes->GetHistIntFlowRP())->GetBinContent(1); | |
522 | flowErrorRP[binLYZEPRP-1] = (lyzepCommonHistRes->GetHistIntFlowRP())->GetBinError(1); | |
523 | flowValuePOI[binLYZEPPOI-1] = (lyzepCommonHistRes->GetHistIntFlowPOI())->GetBinContent(1); | |
524 | flowErrorPOI[binLYZEPPOI-1] = (lyzepCommonHistRes->GetHistIntFlowPOI())->GetBinError(1); | |
8c5ec46a | 525 | } |
526 | } | |
9d3cbee7 | 527 | } |
9d3cbee7 | 528 | |
dec3fab6 | 529 | // FQD = Fitting q-distribution |
8c5ec46a | 530 | TList *pListFQD = NULL; |
531 | AliFlowCommonHist *fqdCommonHist = NULL; | |
532 | AliFlowCommonHistResults *fqdCommonHistRes = NULL; | |
533 | if(fileFQD) { | |
534 | fileFQD->GetObject("cobjFQD",pListFQD); | |
535 | if(pListFQD) { | |
536 | fqdCommonHist = dynamic_cast<AliFlowCommonHist*> (pListFQD->FindObject("AliFlowCommonHistFQD")); | |
537 | fqdCommonHistRes = dynamic_cast<AliFlowCommonHistResults*> (pListFQD->FindObject("AliFlowCommonHistResultsFQD")); | |
538 | if(fqdCommonHistRes) { | |
dec3fab6 | 539 | flowValue[binFQD-1] = (fqdCommonHistRes->GetHistIntFlow())->GetBinContent(1); |
540 | flowError[binFQD-1] = (fqdCommonHistRes->GetHistIntFlow())->GetBinError(1); | |
947cc449 | 541 | //flowValueRP[binFQDRP-1] = (fqdCommonHistRes->GetHistIntFlowRP())->GetBinContent(1); |
542 | //flowErrorRP[binFQDRP-1] = (fqdCommonHistRes->GetHistIntFlowRP())->GetBinError(1); | |
543 | //flowValuePOI[binFQDPOI-1] = (fqdCommonHistRes->GetHistIntFlowPOI())->GetBinContent(1); | |
544 | //flowErrorPOI[binFQDPOI-1] = (fqdCommonHistRes->GetHistIntFlowPOI())->GetBinError(1); | |
8c5ec46a | 545 | } |
546 | } | |
9d3cbee7 | 547 | } |
a88e5ac2 | 548 | |
dec3fab6 | 549 | // GFC = Generating Function Cumulants |
8c5ec46a | 550 | TList *pListGFC = NULL; |
551 | AliFlowCommonHist *gfcCommonHist = NULL; | |
552 | AliFlowCommonHistResults *gfcCommonHistRes2 = NULL; | |
553 | AliFlowCommonHistResults *gfcCommonHistRes4 = NULL; | |
554 | AliFlowCommonHistResults *gfcCommonHistRes6 = NULL; | |
555 | AliFlowCommonHistResults *gfcCommonHistRes8 = NULL; | |
556 | if(fileGFC) { | |
557 | fileGFC->GetObject("cobjGFC",pListGFC); | |
558 | if(pListGFC) { | |
559 | gfcCommonHist = dynamic_cast<AliFlowCommonHist*> (pListGFC->FindObject("AliFlowCommonHistGFC")); | |
560 | gfcCommonHistRes2 = dynamic_cast<AliFlowCommonHistResults*> (pListGFC->FindObject("AliFlowCommonHistResults2ndOrderGFC")); | |
561 | if(gfcCommonHistRes2) { | |
dec3fab6 | 562 | flowValue[binGFC2-1] = (gfcCommonHistRes2->GetHistIntFlow())->GetBinContent(1); |
563 | flowError[binGFC2-1] = (gfcCommonHistRes2->GetHistIntFlow())->GetBinError(1); | |
564 | flowValueRP[binGFC2RP-1] = (gfcCommonHistRes2->GetHistIntFlowRP())->GetBinContent(1); | |
565 | flowErrorRP[binGFC2RP-1] = (gfcCommonHistRes2->GetHistIntFlowRP())->GetBinError(1); | |
566 | flowValuePOI[binGFC2POI-1] = (gfcCommonHistRes2->GetHistIntFlowPOI())->GetBinContent(1); | |
567 | flowErrorPOI[binGFC2POI-1] = (gfcCommonHistRes2->GetHistIntFlowPOI())->GetBinError(1); | |
8c5ec46a | 568 | } |
569 | gfcCommonHistRes4 = dynamic_cast<AliFlowCommonHistResults*> (pListGFC->FindObject("AliFlowCommonHistResults4thOrderGFC")); | |
570 | if(gfcCommonHistRes4) { | |
dec3fab6 | 571 | flowValue[binGFC4-1] = (gfcCommonHistRes4->GetHistIntFlow())->GetBinContent(1); |
572 | flowError[binGFC4-1] = (gfcCommonHistRes4->GetHistIntFlow())->GetBinError(1); | |
573 | flowValueRP[binGFC4RP-1] = (gfcCommonHistRes4->GetHistIntFlowRP())->GetBinContent(1); | |
574 | flowErrorRP[binGFC4RP-1] = (gfcCommonHistRes4->GetHistIntFlowRP())->GetBinError(1); | |
575 | flowValuePOI[binGFC4POI-1] = (gfcCommonHistRes4->GetHistIntFlowPOI())->GetBinContent(1); | |
576 | flowErrorPOI[binGFC4POI-1] = (gfcCommonHistRes4->GetHistIntFlowPOI())->GetBinError(1); | |
8c5ec46a | 577 | } |
578 | gfcCommonHistRes6 = dynamic_cast<AliFlowCommonHistResults*> (pListGFC->FindObject("AliFlowCommonHistResults6thOrderGFC")); | |
579 | if(gfcCommonHistRes6) { | |
dec3fab6 | 580 | flowValue[binGFC6-1] = (gfcCommonHistRes6->GetHistIntFlow())->GetBinContent(1); |
581 | flowError[binGFC6-1] = (gfcCommonHistRes6->GetHistIntFlow())->GetBinError(1); | |
582 | flowValueRP[binGFC6RP-1] = (gfcCommonHistRes6->GetHistIntFlowRP())->GetBinContent(1); | |
583 | flowErrorRP[binGFC6RP-1] = (gfcCommonHistRes6->GetHistIntFlowRP())->GetBinError(1); | |
584 | flowValuePOI[binGFC6POI-1] = (gfcCommonHistRes6->GetHistIntFlowPOI())->GetBinContent(1); | |
585 | flowErrorPOI[binGFC6POI-1] = (gfcCommonHistRes6->GetHistIntFlowPOI())->GetBinError(1); | |
8c5ec46a | 586 | } |
587 | gfcCommonHistRes8 = dynamic_cast<AliFlowCommonHistResults*> (pListGFC->FindObject("AliFlowCommonHistResults8thOrderGFC")); | |
588 | if(gfcCommonHistRes8) { | |
dec3fab6 | 589 | flowValue[binGFC8-1] = (gfcCommonHistRes8->GetHistIntFlow())->GetBinContent(1); |
590 | flowError[binGFC8-1] = (gfcCommonHistRes8->GetHistIntFlow())->GetBinError(1); | |
591 | flowValueRP[binGFC8RP-1] = (gfcCommonHistRes8->GetHistIntFlowRP())->GetBinContent(1); | |
592 | flowErrorRP[binGFC8RP-1] = (gfcCommonHistRes8->GetHistIntFlowRP())->GetBinError(1); | |
593 | flowValuePOI[binGFC8POI-1] = (gfcCommonHistRes8->GetHistIntFlowPOI())->GetBinContent(1); | |
594 | flowErrorPOI[binGFC8POI-1] = (gfcCommonHistRes8->GetHistIntFlowPOI())->GetBinError(1); | |
8c5ec46a | 595 | } |
596 | } | |
9d3cbee7 | 597 | } |
1fca9c90 | 598 | |
8c5ec46a | 599 | //QC = Q-cumulants |
600 | TList *pListQC = NULL; | |
601 | AliFlowCommonHist *qcCommonHist2 = NULL; | |
602 | AliFlowCommonHist *qcCommonHist4 = NULL; | |
603 | AliFlowCommonHist *qcCommonHist6 = NULL; | |
604 | AliFlowCommonHist *qcCommonHist8 = NULL; | |
605 | AliFlowCommonHistResults *qcCommonHistRes2 = NULL; | |
606 | AliFlowCommonHistResults *qcCommonHistRes4 = NULL; | |
607 | AliFlowCommonHistResults *qcCommonHistRes6 = NULL; | |
608 | AliFlowCommonHistResults *qcCommonHistRes8 = NULL; | |
609 | ||
610 | if(fileQC) { | |
611 | fileQC->GetObject("cobjQC",pListQC); | |
612 | if(pListQC) { | |
613 | qcCommonHist2 = dynamic_cast<AliFlowCommonHist*> (pListQC->FindObject("AliFlowCommonHist2ndOrderQC")); | |
614 | qcCommonHistRes2 = dynamic_cast<AliFlowCommonHistResults*> (pListQC->FindObject("AliFlowCommonHistResults2ndOrderQC")); | |
615 | if(qcCommonHistRes2) { | |
dec3fab6 | 616 | flowValue[binQC2-1] = (qcCommonHistRes2->GetHistIntFlow())->GetBinContent(1); |
cad7c05a | 617 | flowError[binQC2-1] = (qcCommonHistRes2->GetHistIntFlow())->GetBinError(1); |
dec3fab6 | 618 | flowValueRP[binQC2RP-1] = (qcCommonHistRes2->GetHistIntFlowRP())->GetBinContent(1); |
549112ad | 619 | flowErrorRP[binQC2RP-1] = (qcCommonHistRes2->GetHistIntFlowRP())->GetBinError(1); |
dec3fab6 | 620 | flowValuePOI[binQC2POI-1] = (qcCommonHistRes2->GetHistIntFlowPOI())->GetBinContent(1); |
549112ad | 621 | flowErrorPOI[binQC2POI-1] = (qcCommonHistRes2->GetHistIntFlowPOI())->GetBinError(1); |
8c5ec46a | 622 | } |
623 | qcCommonHist4 = dynamic_cast<AliFlowCommonHist*> (pListQC->FindObject("AliFlowCommonHist4thOrderQC")); | |
624 | qcCommonHistRes4 = dynamic_cast<AliFlowCommonHistResults*> (pListQC->FindObject("AliFlowCommonHistResults4thOrderQC")); | |
625 | if(qcCommonHistRes4) { | |
dec3fab6 | 626 | flowValue[binQC4-1] = (qcCommonHistRes4->GetHistIntFlow())->GetBinContent(1); |
f90b7aa7 | 627 | flowError[binQC4-1] = (qcCommonHistRes4->GetHistIntFlow())->GetBinError(1); |
dec3fab6 | 628 | flowValueRP[binQC4RP-1] = (qcCommonHistRes4->GetHistIntFlowRP())->GetBinContent(1); |
1a0712a7 | 629 | flowErrorRP[binQC4RP-1] = (qcCommonHistRes4->GetHistIntFlowRP())->GetBinError(1); |
dec3fab6 | 630 | flowValuePOI[binQC4POI-1] = (qcCommonHistRes4->GetHistIntFlowPOI())->GetBinContent(1); |
1a0712a7 | 631 | flowErrorPOI[binQC4POI-1] = (qcCommonHistRes4->GetHistIntFlowPOI())->GetBinError(1); |
8c5ec46a | 632 | } |
633 | qcCommonHist6 = dynamic_cast<AliFlowCommonHist*> (pListQC->FindObject("AliFlowCommonHist6thOrderQC")); | |
634 | qcCommonHistRes6 = dynamic_cast<AliFlowCommonHistResults*> (pListQC->FindObject("AliFlowCommonHistResults6thOrderQC")); | |
635 | if(qcCommonHistRes6) { | |
dec3fab6 | 636 | flowValue[binQC6-1] = (qcCommonHistRes6->GetHistIntFlow())->GetBinContent(1); |
f90b7aa7 | 637 | flowError[binQC6-1] = (qcCommonHistRes6->GetHistIntFlow())->GetBinError(1); |
dec3fab6 | 638 | flowValueRP[binQC6RP-1] = (qcCommonHistRes6->GetHistIntFlowRP())->GetBinContent(1); |
639 | //flowErrorRP[binQC6RP-1] = (qcCommonHistRes6->GetHistIntFlowRP())->GetBinError(1); | |
640 | flowValuePOI[binQC6POI-1] = (qcCommonHistRes6->GetHistIntFlowPOI())->GetBinContent(1); | |
641 | //flowErrorPOI[binQC6POI-1] = (qcCommonHistRes6->GetHistIntFlowPOI())->GetBinError(1); | |
8c5ec46a | 642 | } |
643 | qcCommonHist8 = dynamic_cast<AliFlowCommonHist*> (pListQC->FindObject("AliFlowCommonHist8thOrderQC")); | |
644 | qcCommonHistRes8 = dynamic_cast<AliFlowCommonHistResults*> (pListQC->FindObject("AliFlowCommonHistResults8thOrderQC")); | |
645 | if(qcCommonHistRes8) { | |
dec3fab6 | 646 | flowValue[binQC8-1] = (qcCommonHistRes8->GetHistIntFlow())->GetBinContent(1); |
63911185 | 647 | flowError[binQC8-1] = (qcCommonHistRes8->GetHistIntFlow())->GetBinError(1); |
dec3fab6 | 648 | flowValueRP[binQC8RP-1] = (qcCommonHistRes8->GetHistIntFlowRP())->GetBinContent(1); |
649 | //flowErrorRP[binQC8RP-1] = (qcCommonHistRes8->GetHistIntFlowRP())->GetBinError(1); | |
650 | flowValuePOI[binQC8POI-1] = (qcCommonHistRes8->GetHistIntFlowPOI())->GetBinContent(1); | |
651 | //flowErrorPOI[binQC8POI-1] = (qcCommonHistRes8->GetHistIntFlowPOI())->GetBinError(1); | |
8c5ec46a | 652 | } |
653 | } | |
654 | } | |
655 | ||
dec3fab6 | 656 | // ranges on y-axis for 'no-name' plot: |
657 | Double_t dMax=flowValue[binMC-1]+flowError[binMC-1]; | |
658 | Double_t dMin=flowValue[binMC-1]-flowError[binMC-1]; | |
8c5ec46a | 659 | |
660 | for(Int_t i=1;i<nMethods;i++) { | |
661 | if(!(flowValue[i]==0. && flowError[i]==0.)) { | |
662 | if(dMax<flowValue[i]+flowError[i]) dMax=flowValue[i]+flowError[i]; | |
663 | if(dMin>flowValue[i]-flowError[i]) dMin=flowValue[i]-flowError[i]; | |
664 | } | |
665 | } | |
a88e5ac2 | 666 | |
dec3fab6 | 667 | // ranges on y-axis for RP plot: |
668 | Double_t dMaxRP=flowValueRP[binMCRP-1]+flowErrorRP[binMCRP-1]; | |
669 | Double_t dMinRP=flowValueRP[binMCRP-1]-flowErrorRP[binMCRP-1]; | |
8c5ec46a | 670 | |
671 | for(Int_t i=1;i<nMethods;i++) { | |
672 | if(!(flowValueRP[i]==0. && flowErrorRP[i]==0.)) { | |
673 | if(dMaxRP<flowValueRP[i]+flowErrorRP[i]) dMaxRP=flowValueRP[i]+flowErrorRP[i]; | |
674 | if(dMinRP>flowValueRP[i]-flowErrorRP[i]) dMinRP=flowValueRP[i]-flowErrorRP[i]; | |
675 | } | |
676 | } | |
1fca9c90 | 677 | |
dec3fab6 | 678 | // ranges on y-axis for POI plot: |
679 | Double_t dMaxPOI=flowValuePOI[binMCPOI-1]+flowErrorPOI[binMCPOI-1]; | |
680 | Double_t dMinPOI=flowValuePOI[binMCPOI-1]-flowErrorPOI[binMCPOI-1]; | |
a88e5ac2 | 681 | |
8c5ec46a | 682 | for(Int_t i=1;i<nMethods;i++) { |
683 | if(!(flowValuePOI[i]==0. && flowErrorPOI[i]==0.)) { | |
684 | if(dMaxPOI<flowValuePOI[i]+flowErrorPOI[i]) dMaxPOI=flowValuePOI[i]+flowErrorPOI[i]; | |
685 | if(dMinPOI>flowValuePOI[i]-flowErrorPOI[i]) dMinPOI=flowValuePOI[i]-flowErrorPOI[i]; | |
686 | } | |
687 | } | |
688 | ||
dec3fab6 | 689 | // no-name: |
8c5ec46a | 690 | TGraph* flowResults = new TGraphErrors(nMethods, x, flowValue, xError, flowError); |
8c5ec46a | 691 | flowResults->SetMarkerStyle(markerStyle); |
692 | flowResults->SetMarkerColor(markerColor); | |
1fca9c90 | 693 | |
dec3fab6 | 694 | // RP: |
3963f25c | 695 | TGraph* flowResultsRP = new TGraphErrors(nMethods, x, flowValueRP, xError, flowErrorRP); |
dec3fab6 | 696 | flowResultsRP->SetMarkerStyle(markerStyleRP); |
697 | flowResultsRP->SetMarkerColor(markerColorRP); | |
8c5ec46a | 698 | |
dec3fab6 | 699 | // POI: |
8c5ec46a | 700 | TGraph* flowResultsPOI = new TGraphErrors(nMethods, x, flowValuePOI, xError, flowErrorPOI); |
dec3fab6 | 701 | flowResultsPOI->SetMarkerStyle(markerStylePOI); |
702 | flowResultsPOI->SetMarkerColor(markerColorPOI); | |
077816b6 | 703 | |
704 | // for plot |v{MC}-v{method}/v{MC}| | |
705 | // no-name, RP and POI | |
706 | Double_t flowRelativeToMC[nMethods] = {0.}; | |
707 | Double_t flowRelativeToMCError[nMethods] = {0.}; | |
708 | Double_t flowRelativeToMCRP[nMethods] = {0.}; | |
709 | Double_t flowRelativeToMCErrorRP[nMethods] = {0.}; | |
710 | Double_t flowRelativeToMCPOI[nMethods] = {0.}; | |
711 | Double_t flowRelativeToMCErrorPOI[nMethods] = {0.}; | |
712 | flowRelativeToMC[0] = 0.; // MC relative to itself (to be improved) | |
713 | flowRelativeToMCRP[0] = 0.; // MC relative to itself (to be improved) | |
714 | flowRelativeToMCPOI[0] = 0.; // MC relative to itself (to be improved) | |
715 | for(Int_t i=1;i<nMethods;i++) | |
716 | { | |
717 | if(flowValue[0] != 0) | |
718 | { | |
719 | if(flowValue[i] != 0) flowRelativeToMC[i] = (flowValue[i]-flowValue[0])/(flowValue[0]); | |
720 | if(flowError[i] != 0) flowRelativeToMCError[i] = flowError[i]/flowValue[0]; | |
721 | } | |
722 | if(flowValueRP[0] != 0) | |
723 | { | |
724 | if(flowValueRP[i] != 0) flowRelativeToMCRP[i] = (flowValueRP[i]-flowValueRP[0])/(flowValueRP[0]); | |
725 | if(flowErrorRP[i] != 0) flowRelativeToMCErrorRP[i] = flowErrorRP[i]/flowValueRP[0]; | |
726 | } | |
727 | if(flowValuePOI[0] != 0) | |
728 | { | |
729 | if(flowValuePOI[i] != 0) flowRelativeToMCPOI[i] = (flowValuePOI[i]-flowValuePOI[0])/(flowValuePOI[0]); | |
730 | if(flowErrorPOI[i] != 0) flowRelativeToMCErrorPOI[i] = flowErrorPOI[i]/flowValuePOI[0]; | |
731 | } | |
732 | } // for(Int_t i=1;i<nMethods;i++) | |
733 | ||
734 | // integrated flow (no-name) relative to MC: | |
735 | TGraph* flowResultsRelativeToMC = new TGraphErrors(nMethods, x, flowRelativeToMC, xError, flowRelativeToMCError); | |
736 | flowResultsRelativeToMC->SetMarkerStyle(markerStyle); | |
737 | flowResultsRelativeToMC->SetMarkerColor(markerColor); | |
738 | ||
739 | // integrated flow (RP) relative to MC: | |
740 | TGraph* flowResultsRelativeToMCRP = new TGraphErrors(nMethods, x, flowRelativeToMCRP, xError, flowRelativeToMCErrorRP); | |
741 | flowResultsRelativeToMCRP->SetMarkerStyle(markerStyleRP); | |
742 | flowResultsRelativeToMCRP->SetMarkerColor(markerColorRP); | |
743 | ||
744 | // integrated flow (POI) relative to MC: | |
745 | TGraph* flowResultsRelativeToMCPOI = new TGraphErrors(nMethods, x, flowRelativeToMCPOI, xError, flowRelativeToMCErrorPOI); | |
746 | flowResultsRelativeToMCPOI->SetMarkerStyle(markerStylePOI); | |
747 | flowResultsRelativeToMCPOI->SetMarkerColor(markerColorPOI); | |
8c5ec46a | 748 | //----------------------------------------------------------------------------------- |
749 | ||
750 | //---------------------------------------------------------------------------------- | |
dec3fab6 | 751 | // cosmetics: mesh for MC error bands (integrated flow) |
3963f25c | 752 | TGraph* pMesh = NULL; |
8c5ec46a | 753 | TGraph* pMeshRP = NULL; |
754 | TGraph* pMeshPOI = NULL; | |
755 | ||
756 | if(intFlowAll && mcepCommonHistRes) { | |
8c5ec46a | 757 | Int_t nPts = nMethods; |
dec3fab6 | 758 | Double_t valueMC = flowValue[binMC-1]; |
759 | Double_t errorMC = flowError[binMC-1]; | |
760 | Double_t valueMCRP = flowValueRP[binMCRP-1]; | |
761 | Double_t errorMCRP = flowErrorRP[binMCRP-1]; | |
762 | Double_t valueMCPOI = flowValuePOI[binMCPOI-1]; | |
763 | Double_t errorMCPOI = flowErrorPOI[binMCPOI-1]; | |
8c5ec46a | 764 | |
3963f25c | 765 | pMesh = new TGraph(nPts); |
8c5ec46a | 766 | pMeshRP = new TGraph(nPts); |
767 | pMeshPOI = new TGraph(nPts); | |
768 | ||
dec3fab6 | 769 | // no-name: |
8c5ec46a | 770 | pMesh->SetPoint(1,0,valueMC+errorMC); |
771 | pMesh->SetPoint(2,nPts+1,valueMC+errorMC); | |
772 | pMesh->SetPoint(3,nPts+1,valueMC-errorMC); | |
773 | pMesh->SetPoint(4,0,valueMC-errorMC); | |
3963f25c | 774 | pMesh->SetPoint(5,0,valueMC+errorMC); |
8c5ec46a | 775 | pMesh->SetFillStyle(meshStyle); |
776 | pMesh->SetFillColor(meshColor); | |
3963f25c | 777 | |
dec3fab6 | 778 | // RP: |
8c5ec46a | 779 | pMeshRP->SetPoint(1,0,valueMCRP+errorMCRP); |
780 | pMeshRP->SetPoint(2,nPts+1,valueMCRP+errorMCRP); | |
781 | pMeshRP->SetPoint(3,nPts+1,valueMCRP-errorMCRP); | |
782 | pMeshRP->SetPoint(4,0,valueMCRP-errorMCRP); | |
3963f25c | 783 | pMeshRP->SetPoint(5,0,valueMCRP+errorMCRP); |
dec3fab6 | 784 | pMeshRP->SetFillStyle(meshStyleRP); |
785 | pMeshRP->SetFillColor(meshColorRP); | |
8c5ec46a | 786 | |
dec3fab6 | 787 | // POI: |
8c5ec46a | 788 | pMeshPOI->SetPoint(1,0,valueMCPOI+errorMCPOI); |
789 | pMeshPOI->SetPoint(2,nPts+1,valueMCPOI+errorMCPOI); | |
790 | pMeshPOI->SetPoint(3,nPts+1,valueMCPOI-errorMCPOI); | |
791 | pMeshPOI->SetPoint(4,0,valueMCPOI-errorMCPOI); | |
3963f25c | 792 | pMeshPOI->SetPoint(5,0,valueMCPOI+errorMCPOI); |
dec3fab6 | 793 | pMeshPOI->SetFillStyle(meshStylePOI); |
794 | pMeshPOI->SetFillColor(meshColorPOI); | |
8c5ec46a | 795 | } |
796 | //---------------------------------------------------------------------------------- | |
1fca9c90 | 797 | |
1fca9c90 | 798 | |
8c5ec46a | 799 | //---------------------------------------------------------------------------------- |
800 | //cosmetics: text (integrated flow) | |
801 | //default text: | |
802 | TPaveText *textDefault = new TPaveText(0.05,0.77,0.95,0.90,"NDC"); | |
803 | textDefault->SetTextFont(72); | |
804 | textDefault->SetTextSize(0.08); | |
8c5ec46a | 805 | |
806 | TString *entryDefaultAvM = new TString("Average Multiplicity"); | |
807 | TString *entryDefaultAnd = new TString("and"); | |
808 | TString *entryDefaultNumOfEvts = new TString("Number of Events:"); | |
809 | ||
810 | textDefault->AddText(entryDefaultAvM->Data()); | |
811 | textDefault->AddText(entryDefaultAnd->Data()); | |
812 | textDefault->AddText(entryDefaultNumOfEvts->Data()); | |
813 | ||
dec3fab6 | 814 | // results (no-name): |
3963f25c | 815 | TPaveText *textResults = new TPaveText(0.05,0.12,0.95,0.70,"NDC"); |
816 | textResults->SetTextFont(72); | |
817 | textResults->SetTextSize(0.06); | |
8c5ec46a | 818 | |
dec3fab6 | 819 | // results (RP): |
8c5ec46a | 820 | TPaveText *textResultsRP = new TPaveText(0.05,0.12,0.95,0.70,"NDC"); |
821 | textResultsRP->SetTextFont(72); | |
822 | textResultsRP->SetTextSize(0.06); | |
823 | ||
dec3fab6 | 824 | // results (POI): |
8c5ec46a | 825 | TPaveText *textResultsPOI = new TPaveText(0.05,0.12,0.95,0.70,"NDC"); |
826 | textResultsPOI->SetTextFont(72); | |
827 | textResultsPOI->SetTextSize(0.06); | |
828 | ||
dec3fab6 | 829 | // no-name: |
947cc449 | 830 | TString *entryMC = new TString("MC ........ "); |
831 | TString *entrySP = new TString("SP ........ "); | |
832 | TString *entryGFC = new TString("GFC ....... "); | |
833 | TString *entryQC2 = new TString("QC{2} ..... "); | |
834 | TString *entryQC4 = new TString("QC{4} ..... "); | |
835 | TString *entryQC6 = new TString("QC{6} ..... "); | |
836 | TString *entryQC8 = new TString("QC{8} ..... "); | |
837 | TString *entryFQD = new TString("FQD ....... "); | |
838 | TString *entryLYZ1SUM = new TString("LYZ{sum} .. "); | |
839 | TString *entryLYZ1PROD = new TString("LYZ{prod} . "); | |
840 | TString *entryLYZEP = new TString("LYZEP ..... "); | |
8c5ec46a | 841 | |
dec3fab6 | 842 | // RP: |
947cc449 | 843 | TString *entryMCRP = new TString("MC ........ "); |
844 | TString *entrySPRP = new TString("SP ........ "); | |
845 | TString *entryGFCRP = new TString("GFC ....... "); | |
846 | TString *entryQC2RP = new TString("QC{2} ..... "); | |
847 | TString *entryQC4RP = new TString("QC{4} ..... "); | |
848 | TString *entryQC6RP = new TString("QC{6} ..... "); | |
849 | TString *entryQC8RP = new TString("QC{8} ..... "); | |
850 | TString *entryFQDRP = new TString("FQD ....... "); | |
851 | TString *entryLYZ1SUMRP = new TString("LYZ{sum} .. "); | |
852 | TString *entryLYZ1PRODRP = new TString("LYZ{prod} . "); | |
853 | TString *entryLYZEPRP = new TString("LYZEP ..... "); | |
854 | ||
dec3fab6 | 855 | // POI: |
947cc449 | 856 | TString *entryMCPOI = new TString("MC ........ "); |
857 | TString *entrySPPOI = new TString("SP ........ "); | |
858 | TString *entryGFCPOI = new TString("GFC ....... "); | |
859 | TString *entryQC2POI = new TString("QC{2} ..... "); | |
860 | TString *entryQC4POI = new TString("QC{4} ..... "); | |
861 | TString *entryQC6POI = new TString("QC{6} ..... "); | |
862 | TString *entryQC8POI = new TString("QC{8} ..... "); | |
863 | TString *entryFQDPOI = new TString("FQD ....... "); | |
864 | TString *entryLYZ1SUMPOI = new TString("LYZ{sum} .. "); | |
865 | TString *entryLYZ1PRODPOI = new TString("LYZ{prod} . "); | |
866 | TString *entryLYZEPPOI = new TString("LYZEP ..... "); | |
8c5ec46a | 867 | |
dec3fab6 | 868 | // no-name: |
8c5ec46a | 869 | Double_t avMultMC=0.; |
870 | Long_t nEvtsMC=0; | |
905bed86 | 871 | Double_t avMultSP=0.; |
872 | Long_t nEvtsSP=0; | |
8c5ec46a | 873 | Double_t avMultGFC=0.; |
874 | Long_t nEvtsGFC=0; | |
8c5ec46a | 875 | Double_t avMultQC2=0., avMultQC4=0., avMultQC6=0., avMultQC8=0.; |
876 | Long_t nEvtsQC2=0, nEvtsQC4=0, nEvtsQC6=0, nEvtsQC8=0; | |
8c5ec46a | 877 | Double_t avMultFQD=0.; |
878 | Long_t nEvtsFQD=0; | |
947cc449 | 879 | Double_t avMultLYZ1SUM=0.; |
880 | Long_t nEvtsLYZ1SUM=0; | |
881 | Double_t avMultLYZ1PROD=0.; | |
882 | Long_t nEvtsLYZ1PROD=0; | |
8c5ec46a | 883 | Double_t avMultLYZEP=0.; |
884 | Long_t nEvtsLYZEP=0; | |
8c5ec46a | 885 | |
dec3fab6 | 886 | // RP: |
8c5ec46a | 887 | Double_t avMultMCRP=0.; |
888 | Long_t nEvtsMCRP=0; | |
905bed86 | 889 | Double_t avMultSPRP=0.; |
890 | Long_t nEvtsSPRP=0; | |
8c5ec46a | 891 | Double_t avMultGFCRP=0.; |
892 | Long_t nEvtsGFCRP=0; | |
8c5ec46a | 893 | Double_t avMultQC2RP=0., avMultQC4RP=0., avMultQC6RP=0., avMultQC8RP=0.; |
894 | Long_t nEvtsQC2RP=0, nEvtsQC4RP=0, nEvtsQC6RP=0, nEvtsQC8RP=0; | |
8c5ec46a | 895 | Double_t avMultFQDRP=0.; |
896 | Long_t nEvtsFQDRP=0; | |
947cc449 | 897 | Double_t avMultLYZ1SUMRP=0.; |
898 | Long_t nEvtsLYZ1SUMRP=0; | |
899 | Double_t avMultLYZ1PRODRP=0.; | |
900 | Long_t nEvtsLYZ1PRODRP=0; | |
8c5ec46a | 901 | Double_t avMultLYZEPRP=0.; |
902 | Long_t nEvtsLYZEPRP=0; | |
903 | ||
dec3fab6 | 904 | // POI: |
8c5ec46a | 905 | Double_t avMultMCPOI=0.; |
906 | Long_t nEvtsMCPOI=0; | |
905bed86 | 907 | Double_t avMultSPPOI=0.; |
908 | Long_t nEvtsSPPOI=0; | |
8c5ec46a | 909 | Double_t avMultGFCPOI=0.; |
910 | Long_t nEvtsGFCPOI=0; | |
8c5ec46a | 911 | Double_t avMultQC2POI=0., avMultQC4POI=0., avMultQC6POI=0., avMultQC8POI=0.; |
912 | Long_t nEvtsQC2POI=0, nEvtsQC4POI=0, nEvtsQC6POI=0, nEvtsQC8POI=0; | |
8c5ec46a | 913 | Double_t avMultFQDPOI=0.; |
914 | Long_t nEvtsFQDPOI=0; | |
947cc449 | 915 | Double_t avMultLYZ1SUMPOI=0.; |
916 | Long_t nEvtsLYZ1SUMPOI=0; | |
917 | Double_t avMultLYZ1PRODPOI=0.; | |
918 | Long_t nEvtsLYZ1PRODPOI=0; | |
8c5ec46a | 919 | Double_t avMultLYZEPPOI=0.; |
920 | Long_t nEvtsLYZEPPOI=0; | |
921 | ||
dec3fab6 | 922 | // MC: |
8c5ec46a | 923 | if(mcepCommonHist) { |
6a1a854d | 924 | avMultMC = (mcepCommonHist->GetHistMultRP())->GetMean(); |
925 | nEvtsMC = (mcepCommonHist->GetHistMultRP())->GetEntries(); | |
926 | avMultMCRP = (mcepCommonHist->GetHistMultRP())->GetMean(); | |
927 | nEvtsMCRP = (mcepCommonHist->GetHistMultRP())->GetEntries(); | |
928 | avMultMCPOI = (mcepCommonHist->GetHistMultPOI())->GetMean(); | |
929 | nEvtsMCPOI = (mcepCommonHist->GetHistMultPOI())->GetEntries(); | |
8c5ec46a | 930 | } |
3963f25c | 931 | |
8c5ec46a | 932 | if(entryMC) { |
933 | entryMC->Append("M = "); | |
934 | (*entryMC)+=(Long_t)avMultMC; | |
935 | entryMC->Append(", N = "); | |
936 | (*entryMC)+=(Long_t)nEvtsMC; | |
937 | } | |
3963f25c | 938 | |
8c5ec46a | 939 | if(entryMCRP) { |
940 | entryMCRP->Append("M = "); | |
941 | (*entryMCRP)+=(Long_t)avMultMCRP; | |
942 | entryMCRP->Append(", N = "); | |
943 | (*entryMCRP)+=(Long_t)nEvtsMCRP; | |
944 | } | |
3963f25c | 945 | |
946 | if(entryMCPOI) { | |
8c5ec46a | 947 | entryMCPOI->Append("M = "); |
948 | (*entryMCPOI)+=(Long_t)avMultMCPOI; | |
949 | entryMCPOI->Append(", N = "); | |
950 | (*entryMCPOI)+=(Long_t)nEvtsMCPOI; | |
3963f25c | 951 | } |
1fca9c90 | 952 | |
dec3fab6 | 953 | // SP: |
905bed86 | 954 | if(spCommonHist) { |
6a1a854d | 955 | avMultSP = (spCommonHist->GetHistMultRP())->GetMean(); |
956 | nEvtsSP = (spCommonHist->GetHistMultRP())->GetEntries(); | |
957 | avMultSPRP = (spCommonHist->GetHistMultRP())->GetMean(); | |
958 | nEvtsSPRP = (spCommonHist->GetHistMultRP())->GetEntries(); | |
959 | avMultSPPOI = (spCommonHist->GetHistMultPOI())->GetMean(); | |
960 | nEvtsSPPOI = (spCommonHist->GetHistMultPOI())->GetEntries(); | |
905bed86 | 961 | } |
962 | ||
963 | if(entrySP) { | |
964 | entrySP->Append("M = "); | |
965 | (*entrySP)+=(Long_t)avMultSP; | |
966 | entrySP->Append(", N = "); | |
967 | (*entrySP)+=(Long_t)nEvtsSP; | |
968 | } | |
969 | ||
970 | if(entrySPRP) { | |
971 | entrySPRP->Append("M = "); | |
972 | (*entrySPRP)+=(Long_t)avMultSPRP; | |
973 | entrySPRP->Append(", N = "); | |
974 | (*entrySPRP)+=(Long_t)nEvtsSPRP; | |
975 | } | |
976 | ||
977 | if(entrySPPOI) { | |
978 | entrySPPOI->Append("M = "); | |
979 | (*entrySPPOI)+=(Long_t)avMultSPPOI; | |
980 | entrySPPOI->Append(", N = "); | |
981 | (*entrySPPOI)+=(Long_t)nEvtsSPPOI; | |
982 | } | |
983 | ||
dec3fab6 | 984 | // GFC: |
8c5ec46a | 985 | if(gfcCommonHist) { |
6a1a854d | 986 | avMultGFC = (gfcCommonHist->GetHistMultRP())->GetMean(); |
987 | nEvtsGFC = (gfcCommonHist->GetHistMultRP())->GetEntries(); | |
988 | avMultGFCRP = (gfcCommonHist->GetHistMultRP())->GetMean(); | |
989 | nEvtsGFCRP = (gfcCommonHist->GetHistMultRP())->GetEntries(); | |
990 | avMultGFCPOI = (gfcCommonHist->GetHistMultPOI())->GetMean(); | |
991 | nEvtsGFCPOI = (gfcCommonHist->GetHistMultPOI())->GetEntries(); | |
a88e5ac2 | 992 | } |
3963f25c | 993 | |
8c5ec46a | 994 | if(entryGFC) { |
995 | entryGFC->Append("M = "); | |
996 | (*entryGFC)+=(Long_t)avMultGFC; | |
997 | entryGFC->Append(", N = "); | |
998 | (*entryGFC)+=(Long_t)nEvtsGFC; | |
a88e5ac2 | 999 | } |
3963f25c | 1000 | |
8c5ec46a | 1001 | if(entryGFCRP) { |
1002 | entryGFCRP->Append("M = "); | |
1003 | (*entryGFCRP)+=(Long_t)avMultGFCRP; | |
1004 | entryGFCRP->Append(", N = "); | |
1005 | (*entryGFCRP)+=(Long_t)nEvtsGFCRP; | |
1fca9c90 | 1006 | } |
8c5ec46a | 1007 | if(entryGFCPOI) { |
1008 | entryGFCPOI->Append("M = "); | |
1009 | (*entryGFCPOI)+=(Long_t)avMultGFCPOI; | |
1010 | entryGFCPOI->Append(", N = "); | |
1011 | (*entryGFCPOI)+=(Long_t)nEvtsGFCPOI; | |
1fca9c90 | 1012 | } |
a88e5ac2 | 1013 | |
dec3fab6 | 1014 | // QC: |
8c5ec46a | 1015 | if(qcCommonHist2) { |
6a1a854d | 1016 | avMultQC2 = (qcCommonHist2->GetHistMultRP())->GetMean(); |
1017 | nEvtsQC2 = (qcCommonHist2->GetHistMultRP())->GetEntries(); | |
1018 | avMultQC2RP = (qcCommonHist2->GetHistMultRP())->GetMean(); | |
1019 | nEvtsQC2RP = (qcCommonHist2->GetHistMultRP())->GetEntries(); | |
1020 | avMultQC2POI = (qcCommonHist2->GetHistMultPOI())->GetMean(); | |
1021 | nEvtsQC2POI = (qcCommonHist2->GetHistMultPOI())->GetEntries(); | |
1fca9c90 | 1022 | } |
3963f25c | 1023 | |
a88e5ac2 | 1024 | if(entryQC2) |
1025 | { | |
70288839 | 1026 | entryQC2->Append("M = "); |
1027 | (*entryQC2)+=(Long_t)avMultQC2; | |
1028 | entryQC2->Append(", N = "); | |
1029 | (*entryQC2)+=(Long_t)nEvtsQC2; | |
70288839 | 1030 | } |
3963f25c | 1031 | |
1fca9c90 | 1032 | if(entryQC2RP) |
1033 | { | |
1034 | entryQC2RP->Append("M = "); | |
1035 | (*entryQC2RP)+=(Long_t)avMultQC2RP; | |
1036 | entryQC2RP->Append(", N = "); | |
1037 | (*entryQC2RP)+=(Long_t)nEvtsQC2RP; | |
1038 | } | |
3963f25c | 1039 | |
1fca9c90 | 1040 | if(entryQC2POI) |
1041 | { | |
1042 | entryQC2POI->Append("M = "); | |
1043 | (*entryQC2POI)+=(Long_t)avMultQC2POI; | |
1044 | entryQC2POI->Append(", N = "); | |
1045 | (*entryQC2POI)+=(Long_t)nEvtsQC2POI; | |
1046 | } | |
1047 | ||
70288839 | 1048 | if(qcCommonHist4) |
1049 | { | |
6a1a854d | 1050 | avMultQC4 = (qcCommonHist4->GetHistMultRP())->GetMean(); |
1051 | nEvtsQC4 = (qcCommonHist4->GetHistMultRP())->GetEntries(); | |
1052 | avMultQC4RP = (qcCommonHist4->GetHistMultRP())->GetMean(); | |
1053 | nEvtsQC4RP = (qcCommonHist4->GetHistMultRP())->GetEntries(); | |
1054 | avMultQC4POI = (qcCommonHist4->GetHistMultPOI())->GetMean(); | |
1055 | nEvtsQC4POI = (qcCommonHist4->GetHistMultPOI())->GetEntries(); | |
a88e5ac2 | 1056 | } |
3963f25c | 1057 | |
a88e5ac2 | 1058 | if(entryQC4) |
1059 | { | |
70288839 | 1060 | entryQC4->Append("M = "); |
1061 | (*entryQC4)+=(Long_t)avMultQC4; | |
1062 | entryQC4->Append(", N = "); | |
1063 | (*entryQC4)+=(Long_t)nEvtsQC4; | |
70288839 | 1064 | } |
3963f25c | 1065 | |
1fca9c90 | 1066 | if(entryQC4RP) |
1067 | { | |
1068 | entryQC4RP->Append("M = "); | |
1069 | (*entryQC4RP)+=(Long_t)avMultQC4RP; | |
1070 | entryQC4RP->Append(", N = "); | |
1071 | (*entryQC4RP)+=(Long_t)nEvtsQC4RP; | |
1072 | } | |
3963f25c | 1073 | |
1fca9c90 | 1074 | if(entryQC4POI) |
1075 | { | |
1076 | entryQC4POI->Append("M = "); | |
1077 | (*entryQC4POI)+=(Long_t)avMultQC4POI; | |
1078 | entryQC4POI->Append(", N = "); | |
1079 | (*entryQC4POI)+=(Long_t)nEvtsQC4POI; | |
1080 | } | |
1081 | ||
a88e5ac2 | 1082 | if(qcCommonHist6) |
1083 | { | |
6a1a854d | 1084 | avMultQC6 = (qcCommonHist6->GetHistMultRP())->GetMean(); |
1085 | nEvtsQC6 = (qcCommonHist6->GetHistMultRP())->GetEntries(); | |
1086 | avMultQC6RP = (qcCommonHist6->GetHistMultRP())->GetMean(); | |
1087 | nEvtsQC6RP = (qcCommonHist6->GetHistMultRP())->GetEntries(); | |
1088 | avMultQC6POI = (qcCommonHist6->GetHistMultPOI())->GetMean(); | |
1089 | nEvtsQC6POI = (qcCommonHist6->GetHistMultPOI())->GetEntries(); | |
a88e5ac2 | 1090 | } |
3963f25c | 1091 | |
a88e5ac2 | 1092 | if(entryQC6) |
1093 | { | |
1094 | entryQC6->Append("M = "); | |
1095 | (*entryQC6)+=(Long_t)avMultQC6; | |
1096 | entryQC6->Append(", N = "); | |
1097 | (*entryQC6)+=(Long_t)nEvtsQC6; | |
1098 | } | |
3963f25c | 1099 | |
1fca9c90 | 1100 | if(entryQC6RP) |
1101 | { | |
1102 | entryQC6RP->Append("M = "); | |
1103 | (*entryQC6RP)+=(Long_t)avMultQC6RP; | |
1104 | entryQC6RP->Append(", N = "); | |
1105 | (*entryQC6RP)+=(Long_t)nEvtsQC6RP; | |
1106 | } | |
3963f25c | 1107 | |
1fca9c90 | 1108 | if(entryQC6POI) |
1109 | { | |
1110 | entryQC6POI->Append("M = "); | |
1111 | (*entryQC6POI)+=(Long_t)avMultQC6POI; | |
1112 | entryQC6POI->Append(", N = "); | |
1113 | (*entryQC6POI)+=(Long_t)nEvtsQC6POI; | |
1114 | } | |
1115 | ||
a88e5ac2 | 1116 | if(qcCommonHist8) |
1117 | { | |
6a1a854d | 1118 | avMultQC8 = (qcCommonHist8->GetHistMultRP())->GetMean(); |
1119 | nEvtsQC8 = (qcCommonHist8->GetHistMultRP())->GetEntries(); | |
1120 | avMultQC8RP = (qcCommonHist8->GetHistMultRP())->GetMean(); | |
1121 | nEvtsQC8RP = (qcCommonHist8->GetHistMultRP())->GetEntries(); | |
1122 | avMultQC8POI = (qcCommonHist8->GetHistMultPOI())->GetMean(); | |
1123 | nEvtsQC8POI = (qcCommonHist8->GetHistMultPOI())->GetEntries(); | |
a88e5ac2 | 1124 | } |
3963f25c | 1125 | |
a88e5ac2 | 1126 | if(entryQC8) |
1127 | { | |
1128 | entryQC8->Append("M = "); | |
1129 | (*entryQC8)+=(Long_t)avMultQC8; | |
1130 | entryQC8->Append(", N = "); | |
1131 | (*entryQC8)+=(Long_t)nEvtsQC8; | |
1132 | } | |
3963f25c | 1133 | |
1fca9c90 | 1134 | if(entryQC8RP) |
1135 | { | |
1136 | entryQC8RP->Append("M = "); | |
1137 | (*entryQC8RP)+=(Long_t)avMultQC8RP; | |
1138 | entryQC8RP->Append(", N = "); | |
1139 | (*entryQC8RP)+=(Long_t)nEvtsQC8RP; | |
1140 | } | |
3963f25c | 1141 | |
1fca9c90 | 1142 | if(entryQC8POI) |
1143 | { | |
1144 | entryQC8POI->Append("M = "); | |
1145 | (*entryQC8POI)+=(Long_t)avMultQC8POI; | |
1146 | entryQC8POI->Append(", N = "); | |
1147 | (*entryQC8POI)+=(Long_t)nEvtsQC8POI; | |
1148 | } | |
1149 | ||
dec3fab6 | 1150 | // FQD: |
a88e5ac2 | 1151 | if(fqdCommonHist) |
1152 | { | |
6a1a854d | 1153 | avMultFQD = (fqdCommonHist->GetHistMultRP())->GetMean(); |
1154 | nEvtsFQD = (fqdCommonHist->GetHistMultRP())->GetEntries(); | |
1155 | avMultFQDRP = (fqdCommonHist->GetHistMultRP())->GetMean(); | |
1156 | nEvtsFQDRP = (fqdCommonHist->GetHistMultRP())->GetEntries(); | |
1157 | avMultFQDPOI = (fqdCommonHist->GetHistMultPOI())->GetMean(); | |
1158 | nEvtsFQDPOI = (fqdCommonHist->GetHistMultPOI())->GetEntries(); | |
a88e5ac2 | 1159 | } |
3963f25c | 1160 | |
a88e5ac2 | 1161 | if(entryFQD) |
1162 | { | |
1163 | entryFQD->Append("M = "); | |
1164 | (*entryFQD)+=(Long_t)avMultFQD; | |
1165 | entryFQD->Append(", N = "); | |
1166 | (*entryFQD)+=(Long_t)nEvtsFQD; | |
1167 | } | |
3963f25c | 1168 | |
1fca9c90 | 1169 | if(entryFQDRP) |
1170 | { | |
1171 | entryFQDRP->Append("M = "); | |
1172 | (*entryFQDRP)+=(Long_t)avMultFQDRP; | |
1173 | entryFQDRP->Append(", N = "); | |
1174 | (*entryFQDRP)+=(Long_t)nEvtsFQDRP; | |
1175 | } | |
3963f25c | 1176 | |
1fca9c90 | 1177 | if(entryFQDPOI) |
1178 | { | |
1179 | entryFQDPOI->Append("M = "); | |
1180 | (*entryFQDPOI)+=(Long_t)avMultFQDPOI; | |
1181 | entryFQDPOI->Append(", N = "); | |
1182 | (*entryFQDPOI)+=(Long_t)nEvtsFQDPOI; | |
1183 | } | |
1184 | ||
947cc449 | 1185 | // LYZ1SUM: |
1186 | if(lyz1sumCommonHist) | |
1187 | { | |
1188 | avMultLYZ1SUM = (lyz1sumCommonHist->GetHistMultRP())->GetMean(); | |
1189 | nEvtsLYZ1SUM = (lyz1sumCommonHist->GetHistMultRP())->GetEntries(); | |
1190 | avMultLYZ1SUMRP = (lyz1sumCommonHist->GetHistMultRP())->GetMean(); | |
1191 | nEvtsLYZ1SUMRP = (lyz1sumCommonHist->GetHistMultRP())->GetEntries(); | |
1192 | avMultLYZ1SUMPOI = (lyz1sumCommonHist->GetHistMultPOI())->GetMean(); | |
1193 | nEvtsLYZ1SUMPOI = (lyz1sumCommonHist->GetHistMultPOI())->GetEntries(); | |
1194 | } | |
1195 | ||
1196 | if(entryLYZ1SUM) | |
a88e5ac2 | 1197 | { |
947cc449 | 1198 | entryLYZ1SUM->Append("M = "); |
1199 | (*entryLYZ1SUM)+=(Long_t)avMultLYZ1SUM; | |
1200 | entryLYZ1SUM->Append(", N = "); | |
1201 | (*entryLYZ1SUM)+=(Long_t)nEvtsLYZ1SUM; | |
a88e5ac2 | 1202 | } |
3963f25c | 1203 | |
947cc449 | 1204 | if(entryLYZ1SUMRP) |
a88e5ac2 | 1205 | { |
947cc449 | 1206 | entryLYZ1SUMRP->Append("M = "); |
1207 | (*entryLYZ1SUMRP)+=(Long_t)avMultLYZ1SUMRP; | |
1208 | entryLYZ1SUMRP->Append(", N = "); | |
1209 | (*entryLYZ1SUMRP)+=(Long_t)nEvtsLYZ1SUMRP; | |
a88e5ac2 | 1210 | } |
3963f25c | 1211 | |
947cc449 | 1212 | if(entryLYZ1SUMPOI) |
1213 | { | |
1214 | entryLYZ1SUMPOI->Append("M = "); | |
1215 | (*entryLYZ1SUMPOI)+=(Long_t)avMultLYZ1SUMPOI; | |
1216 | entryLYZ1SUMPOI->Append(", N = "); | |
1217 | (*entryLYZ1SUMPOI)+=(Long_t)nEvtsLYZ1SUMPOI; | |
1218 | } | |
1219 | ||
1220 | // LYZ1PROD: | |
1221 | if(lyz1prodCommonHist) | |
1222 | { | |
1223 | avMultLYZ1PROD = (lyz1prodCommonHist->GetHistMultRP())->GetMean(); | |
1224 | nEvtsLYZ1PROD = (lyz1prodCommonHist->GetHistMultRP())->GetEntries(); | |
1225 | avMultLYZ1PRODRP = (lyz1prodCommonHist->GetHistMultRP())->GetMean(); | |
1226 | nEvtsLYZ1PRODRP = (lyz1prodCommonHist->GetHistMultRP())->GetEntries(); | |
1227 | avMultLYZ1PRODPOI = (lyz1prodCommonHist->GetHistMultPOI())->GetMean(); | |
1228 | nEvtsLYZ1PRODPOI = (lyz1prodCommonHist->GetHistMultPOI())->GetEntries(); | |
1229 | } | |
1230 | ||
1231 | if(entryLYZ1PROD) | |
1fca9c90 | 1232 | { |
947cc449 | 1233 | entryLYZ1PROD->Append("M = "); |
1234 | (*entryLYZ1PROD)+=(Long_t)avMultLYZ1PROD; | |
1235 | entryLYZ1PROD->Append(", N = "); | |
1236 | (*entryLYZ1PROD)+=(Long_t)nEvtsLYZ1PROD; | |
1fca9c90 | 1237 | } |
3963f25c | 1238 | |
947cc449 | 1239 | if(entryLYZ1PRODRP) |
1fca9c90 | 1240 | { |
947cc449 | 1241 | entryLYZ1PRODRP->Append("M = "); |
1242 | (*entryLYZ1PRODRP)+=(Long_t)avMultLYZ1PRODRP; | |
1243 | entryLYZ1PRODRP->Append(", N = "); | |
1244 | (*entryLYZ1PRODRP)+=(Long_t)nEvtsLYZ1PRODRP; | |
1fca9c90 | 1245 | } |
70288839 | 1246 | |
947cc449 | 1247 | if(entryLYZ1PRODPOI) |
1248 | { | |
1249 | entryLYZ1PRODPOI->Append("M = "); | |
1250 | (*entryLYZ1PRODPOI)+=(Long_t)avMultLYZ1PRODPOI; | |
1251 | entryLYZ1PRODPOI->Append(", N = "); | |
1252 | (*entryLYZ1PRODPOI)+=(Long_t)nEvtsLYZ1PRODPOI; | |
1253 | } | |
1254 | ||
dec3fab6 | 1255 | // LYZEP: |
a88e5ac2 | 1256 | if(lyzepCommonHist) |
70288839 | 1257 | { |
6a1a854d | 1258 | avMultLYZEP = (lyzepCommonHist->GetHistMultRP())->GetMean(); |
1259 | nEvtsLYZEP = (lyzepCommonHist->GetHistMultRP())->GetEntries(); | |
1260 | avMultLYZEPRP = (lyzepCommonHist->GetHistMultRP())->GetMean(); | |
1261 | nEvtsLYZEPRP = (lyzepCommonHist->GetHistMultRP())->GetEntries(); | |
1262 | avMultLYZEPPOI = (lyzepCommonHist->GetHistMultPOI())->GetMean(); | |
1263 | nEvtsLYZEPPOI = (lyzepCommonHist->GetHistMultPOI())->GetEntries(); | |
70288839 | 1264 | } |
3963f25c | 1265 | |
947cc449 | 1266 | |
a88e5ac2 | 1267 | if(entryLYZEP) |
70288839 | 1268 | { |
a88e5ac2 | 1269 | entryLYZEP->Append("M = "); |
1270 | (*entryLYZEP)+=(Long_t)avMultLYZEP; | |
1271 | entryLYZEP->Append(", N = "); | |
1272 | (*entryLYZEP)+=(Long_t)nEvtsLYZEP; | |
70288839 | 1273 | } |
3963f25c | 1274 | |
1fca9c90 | 1275 | if(entryLYZEPRP) |
1276 | { | |
1277 | entryLYZEPRP->Append("M = "); | |
1278 | (*entryLYZEPRP)+=(Long_t)avMultLYZEPRP; | |
1279 | entryLYZEPRP->Append(", N = "); | |
1280 | (*entryLYZEPRP)+=(Long_t)nEvtsLYZEPRP; | |
1281 | } | |
3963f25c | 1282 | |
1fca9c90 | 1283 | if(entryLYZEPPOI) |
1284 | { | |
1285 | entryLYZEPPOI->Append("M = "); | |
1286 | (*entryLYZEPPOI)+=(Long_t)avMultLYZEPPOI; | |
1287 | entryLYZEPPOI->Append(", N = "); | |
1288 | (*entryLYZEPPOI)+=(Long_t)nEvtsLYZEPPOI; | |
1289 | } | |
1290 | ||
dec3fab6 | 1291 | // no-name: |
a88e5ac2 | 1292 | if(textResults) |
70288839 | 1293 | { |
a88e5ac2 | 1294 | textResults->AddText(entryMC->Data()); |
905bed86 | 1295 | textResults->AddText(entrySP->Data()); |
a88e5ac2 | 1296 | textResults->AddText(entryGFC->Data()); |
1297 | textResults->AddText(entryQC2->Data()); | |
1298 | textResults->AddText(entryQC4->Data()); | |
1299 | textResults->AddText(entryQC6->Data()); | |
1300 | textResults->AddText(entryQC8->Data()); | |
1301 | textResults->AddText(entryFQD->Data()); | |
947cc449 | 1302 | textResults->AddText(entryLYZ1SUM->Data()); |
1303 | textResults->AddText(entryLYZ1PROD->Data()); | |
a88e5ac2 | 1304 | textResults->AddText(entryLYZEP->Data()); |
70288839 | 1305 | } |
3963f25c | 1306 | |
dec3fab6 | 1307 | // RP: |
1fca9c90 | 1308 | if(textResultsRP) |
1309 | { | |
1310 | textResultsRP->AddText(entryMCRP->Data()); | |
905bed86 | 1311 | textResultsRP->AddText(entrySPRP->Data()); |
1fca9c90 | 1312 | textResultsRP->AddText(entryGFCRP->Data()); |
1313 | textResultsRP->AddText(entryQC2RP->Data()); | |
1314 | textResultsRP->AddText(entryQC4RP->Data()); | |
1315 | textResultsRP->AddText(entryQC6RP->Data()); | |
1316 | textResultsRP->AddText(entryQC8RP->Data()); | |
1317 | textResultsRP->AddText(entryFQDRP->Data()); | |
947cc449 | 1318 | textResultsRP->AddText(entryLYZ1SUMRP->Data()); |
1319 | textResultsRP->AddText(entryLYZ1PRODRP->Data()); | |
1fca9c90 | 1320 | textResultsRP->AddText(entryLYZEPRP->Data()); |
1321 | } | |
dec3fab6 | 1322 | |
1323 | // POI: | |
1fca9c90 | 1324 | if(textResultsPOI) |
1325 | { | |
1326 | textResultsPOI->AddText(entryMCPOI->Data()); | |
905bed86 | 1327 | textResultsPOI->AddText(entrySPPOI->Data()); |
1fca9c90 | 1328 | textResultsPOI->AddText(entryGFCPOI->Data()); |
1329 | textResultsPOI->AddText(entryQC2POI->Data()); | |
1330 | textResultsPOI->AddText(entryQC4POI->Data()); | |
1331 | textResultsPOI->AddText(entryQC6POI->Data()); | |
1332 | textResultsPOI->AddText(entryQC8POI->Data()); | |
1333 | textResultsPOI->AddText(entryFQDPOI->Data()); | |
947cc449 | 1334 | textResultsPOI->AddText(entryLYZ1SUMPOI->Data()); |
1335 | textResultsPOI->AddText(entryLYZ1PRODPOI->Data()); | |
1fca9c90 | 1336 | textResultsPOI->AddText(entryLYZEPPOI->Data()); |
1337 | } | |
a88e5ac2 | 1338 | //---------------------------------------------------------------------------------- |
70288839 | 1339 | |
3963f25c | 1340 | |
70288839 | 1341 | //---------------------------------------------------------------------------------- |
da24213b | 1342 | // final drawing for integrated flow (no-name): |
1343 | if(plotIntFlow) | |
1344 | { | |
1345 | TCanvas* intFlowAllCanvas = new TCanvas("Integrated Flow","Integrated Flow",1000,600); | |
6f62c2a7 | 1346 | |
251b57f2 | 1347 | if(plotLegendIntFlow) |
1348 | { | |
1349 | intFlowAllCanvas->Divide(2,1); | |
1350 | // 1st pad is for plot: | |
1351 | (intFlowAllCanvas->cd(1))->SetPad(0.0,0.0,0.75,1.0); | |
1352 | } | |
1353 | ||
da24213b | 1354 | if(intFlowAll) |
a88e5ac2 | 1355 | { |
da24213b | 1356 | if(dMin>0. && dMax>0.) |
1357 | { | |
1358 | (intFlowAll->GetYaxis())->SetRangeUser(0.9744*dMin,1.0144*dMax); | |
1359 | } else if(dMin<0. && dMax>0.) | |
1360 | { | |
1361 | if(!(-1.*dMin<4.*dMax)) | |
1362 | { | |
1363 | (intFlowAll->GetYaxis())->SetRangeUser(1.0266*dMin,1.0144*dMax); | |
1364 | } else {(intFlowAll->GetYaxis())->SetRangeUser(1.1266*dMin,1.0144*dMax);} | |
1365 | } else if(dMin<0. && dMax<0.) | |
1366 | { | |
1367 | (intFlowAll->GetYaxis())->SetRangeUser(1.0266*dMin,0.9866*dMax); | |
1368 | } | |
1369 | intFlowAll->Draw("E1"); | |
1370 | } | |
e83922f2 | 1371 | |
da24213b | 1372 | if(pMesh) pMesh->Draw("LFSAME"); |
1373 | ||
1374 | if(flowResults) flowResults->Draw("PSAME"); | |
a88e5ac2 | 1375 | |
da24213b | 1376 | // 2nd pad is for legend: |
251b57f2 | 1377 | if(plotLegendIntFlow) |
1378 | { | |
1379 | (intFlowAllCanvas->cd(2))->SetPad(0.75,0.0,1.0,1.0); | |
a88e5ac2 | 1380 | |
251b57f2 | 1381 | if(textDefault) textDefault->Draw(); |
dec3fab6 | 1382 | |
251b57f2 | 1383 | if(textResults) textResults->Draw(); |
1384 | } | |
1385 | ||
da24213b | 1386 | }// end of if(plotIntFlow) |
a88e5ac2 | 1387 | //---------------------------------------------------------------------------------- |
e83922f2 | 1388 | |
077816b6 | 1389 | |
1390 | //---------------------------------------------------------------------------------- | |
1391 | // final drawing for integrated flow relative to MC (no-name): | |
1392 | if(plotIntFlowRelativeToMC) | |
1393 | { | |
1394 | TCanvas* intFlowAllRelativeToMCCanvas = new TCanvas("Integrated Flow Relative To MC","Integrated Flow Relative To MC",1000,600); | |
1395 | ||
1396 | intFlowAllRelativeToMCCanvas->Divide(2,1); | |
1397 | ||
1398 | // 1st pad is for plot: | |
1399 | (intFlowAllRelativeToMCCanvas->cd(1))->SetPad(0.0,0.0,0.75,1.0); | |
1400 | ||
1401 | TH1D *intFlowAllRelativeToMC = new TH1D(*intFlowAll); | |
c365fe76 | 1402 | (intFlowAllRelativeToMC->GetYaxis())->SetRangeUser(-1,1); |
1403 | (intFlowAllRelativeToMC->GetYaxis())->SetTitle("(v_{n}\{method\} - v_{n}\{MC\})/v_{n}\{MC\}"); | |
077816b6 | 1404 | intFlowAllRelativeToMC->Draw("E1"); |
1405 | ||
1406 | if(flowResultsRelativeToMC) flowResultsRelativeToMC->Draw("PSAME"); | |
1407 | ||
1408 | // 2nd pad is for legend: | |
1409 | (intFlowAllRelativeToMCCanvas->cd(2))->SetPad(0.75,0.0,1.0,1.0); | |
1410 | ||
1411 | if(textDefault) textDefault->Draw(); | |
1412 | ||
1413 | if(textResults) textResults->Draw(); | |
1414 | ||
1415 | }// end of if(plotIntFlowRelativeToMC) | |
1416 | //---------------------------------------------------------------------------------- | |
1417 | ||
1418 | ||
1fca9c90 | 1419 | //---------------------------------------------------------------------------------- |
1420 | //final drawing for integrated flow of RP (i.e. of particles used to determine the reaction plane): | |
e83922f2 | 1421 | if(plotIntFlowRP) |
1422 | { | |
1423 | TCanvas* intFlowAllCanvasRP = new TCanvas("Integrated Flow RP","Integrated Flow RP",1000,600); | |
1fca9c90 | 1424 | |
251b57f2 | 1425 | if(plotLegendIntFlow) |
1426 | { | |
1427 | intFlowAllCanvasRP->Divide(2,1); | |
1fca9c90 | 1428 | |
251b57f2 | 1429 | //1st pad is for plot: |
1430 | (intFlowAllCanvasRP->cd(1))->SetPad(0.0,0.0,0.75,1.0); | |
1431 | } | |
1fca9c90 | 1432 | |
dec3fab6 | 1433 | TH1D *intFlowAllRP = new TH1D(*intFlowAll); |
1434 | intFlowAllRP->SetMarkerStyle(markerStyleRP); | |
1435 | intFlowAllRP->SetMarkerColor(markerColorRP); | |
1436 | (intFlowAllRP->GetXaxis())->SetBinLabel(binMCRP,"v_{2}{MC}"); | |
1437 | (intFlowAllRP->GetXaxis())->SetBinLabel(binSPRP,"v_{2}{SP}"); | |
1438 | (intFlowAllRP->GetXaxis())->SetBinLabel(binGFC2RP,"v_{2}{2,GFC}"); | |
1439 | (intFlowAllRP->GetXaxis())->SetBinLabel(binQC2RP,"v_{2}{2,QC}"); | |
1440 | (intFlowAllRP->GetXaxis())->SetBinLabel(binGFC4RP,"v_{2}{4,GFC}"); | |
1441 | (intFlowAllRP->GetXaxis())->SetBinLabel(binQC4RP,"v_{2}{4,QC}"); | |
1442 | (intFlowAllRP->GetXaxis())->SetBinLabel(binGFC6RP,"v_{2}{6,GFC}"); | |
1443 | (intFlowAllRP->GetXaxis())->SetBinLabel(binQC6RP,"v_{2}{6,QC}"); | |
1444 | (intFlowAllRP->GetXaxis())->SetBinLabel(binGFC8RP,"v_{2}{8,GFC}"); | |
1445 | (intFlowAllRP->GetXaxis())->SetBinLabel(binQC8RP,"v_{2}{8,QC}"); | |
1446 | (intFlowAllRP->GetXaxis())->SetBinLabel(binFQDRP,"v_{2}{FQD}"); | |
947cc449 | 1447 | (intFlowAllRP->GetXaxis())->SetBinLabel(binLYZ2SUMRP,"v_{2}{LYZ,sum}"); |
1448 | (intFlowAllRP->GetXaxis())->SetBinLabel(binLYZ2PRODRP,"v_{2}{LYZ,prod}"); | |
dec3fab6 | 1449 | (intFlowAllRP->GetXaxis())->SetBinLabel(binLYZEPRP,"v_{2}{LYZEP}"); |
694e0378 | 1450 | |
e83922f2 | 1451 | if(intFlowAllRP) |
1452 | { | |
1453 | if(dMinRP>0. && dMaxRP>0.) | |
1454 | { | |
1455 | (intFlowAllRP->GetYaxis())->SetRangeUser(0.9744*dMinRP,1.0144*dMaxRP); | |
1456 | } else if(dMinRP<0. && dMaxRP>0.) | |
1457 | { | |
1458 | if(!(-1.*dMinRP<4.*dMaxRP)) | |
1459 | { | |
1460 | (intFlowAllRP->GetYaxis())->SetRangeUser(1.0266*dMinRP,1.0144*dMaxRP); | |
1461 | } else {(intFlowAllRP->GetYaxis())->SetRangeUser(1.1266*dMinRP,1.0144*dMaxRP);} | |
1462 | } else if(dMinRP<0. && dMaxRP<0.) | |
1463 | { | |
1464 | (intFlowAllRP->GetYaxis())->SetRangeUser(1.0266*dMinRP,0.9866*dMaxRP); | |
1465 | } | |
1466 | intFlowAllRP->Draw("E1"); | |
1467 | } | |
694e0378 | 1468 | |
e83922f2 | 1469 | if(pMeshRP) pMeshRP->Draw("LFSAME"); |
1470 | ||
1471 | if(flowResultsRP) flowResultsRP->Draw("PSAME"); | |
1fca9c90 | 1472 | |
251b57f2 | 1473 | if(plotLegendIntFlow) |
1474 | { | |
1475 | //2nd pad is for legend: | |
1476 | (intFlowAllCanvasRP->cd(2))->SetPad(0.75,0.0,1.0,1.0); | |
e83922f2 | 1477 | |
251b57f2 | 1478 | if(textDefault) textDefault->Draw(); |
1fca9c90 | 1479 | |
251b57f2 | 1480 | if(textResultsRP) textResultsRP->Draw(); |
1481 | } | |
1482 | ||
e83922f2 | 1483 | }//end of if(plotIntFlowRP} |
1fca9c90 | 1484 | //---------------------------------------------------------------------------------- |
1485 | ||
077816b6 | 1486 | |
1487 | //---------------------------------------------------------------------------------- | |
1488 | // final drawing for integrated flow relative to MC (RP): | |
1489 | if(plotIntFlowRelativeToMCRP) | |
1490 | { | |
1491 | TCanvas* intFlowAllRelativeToMCRPCanvas = new TCanvas("Integrated Flow (RP) Relative To MC","Integrated Flow (RP) Relative To MC",1000,600); | |
1492 | ||
1493 | intFlowAllRelativeToMCRPCanvas->Divide(2,1); | |
1494 | ||
1495 | // 1st pad is for plot: | |
1496 | (intFlowAllRelativeToMCRPCanvas->cd(1))->SetPad(0.0,0.0,0.75,1.0); | |
1497 | ||
1498 | TH1D *intFlowAllRelativeToMCRP = new TH1D(*intFlowAll); | |
077816b6 | 1499 | (intFlowAllRelativeToMCRP->GetYaxis())->SetRangeUser(-1,1); |
c365fe76 | 1500 | (intFlowAllRelativeToMCRP->GetYaxis())->SetTitle("(v_{n}\{method\} - v_{n}\{MC\})/v_{n}\{MC\}"); |
077816b6 | 1501 | intFlowAllRelativeToMCRP->Draw("E1"); |
1502 | ||
1503 | if(flowResultsRelativeToMCRP) flowResultsRelativeToMCRP->Draw("PSAME"); | |
1504 | ||
1505 | // 2nd pad is for legend: | |
1506 | (intFlowAllRelativeToMCRPCanvas->cd(2))->SetPad(0.75,0.0,1.0,1.0); | |
1507 | ||
1508 | if(textDefault) textDefault->Draw(); | |
1509 | ||
1510 | if(textResultsRP) textResultsRP->Draw(); | |
1511 | ||
c365fe76 | 1512 | }// end of if(plotIntFlowRelativeToMCRP) |
077816b6 | 1513 | //---------------------------------------------------------------------------------- |
1514 | ||
1515 | ||
1fca9c90 | 1516 | //---------------------------------------------------------------------------------- |
1517 | //final drawing for integrated flow of POI (i.e. of particles of interest): | |
e83922f2 | 1518 | if(plotIntFlowPOI) |
1519 | { | |
1520 | TCanvas* intFlowAllCanvasPOI = new TCanvas("Integrated Flow POI","Integrated Flow POI",1000,600); | |
dec3fab6 | 1521 | |
251b57f2 | 1522 | if(plotLegendIntFlow) |
1523 | { | |
1524 | intFlowAllCanvasPOI->Divide(2,1); | |
1fca9c90 | 1525 | |
251b57f2 | 1526 | //1st pad is for plot: |
1527 | (intFlowAllCanvasPOI->cd(1))->SetPad(0.0,0.0,0.75,1.0); | |
1528 | } | |
e83922f2 | 1529 | |
694e0378 | 1530 | TH1D *intFlowAllPOI = new TH1D(*intFlowAll); |
dec3fab6 | 1531 | intFlowAllPOI->SetMarkerStyle(markerStylePOI); |
1532 | intFlowAllPOI->SetMarkerColor(markerColorPOI); | |
1533 | (intFlowAllPOI->GetXaxis())->SetBinLabel(binMCPOI,"v_{2}{MC}"); | |
1534 | (intFlowAllPOI->GetXaxis())->SetBinLabel(binSPPOI,"v_{2}{SP}"); | |
1535 | (intFlowAllPOI->GetXaxis())->SetBinLabel(binGFC2POI,"v_{2}{2,GFC}"); | |
1536 | (intFlowAllPOI->GetXaxis())->SetBinLabel(binQC2POI,"v_{2}{2,QC}"); | |
1537 | (intFlowAllPOI->GetXaxis())->SetBinLabel(binGFC4POI,"v_{2}{4,GFC}"); | |
1538 | (intFlowAllPOI->GetXaxis())->SetBinLabel(binQC4POI,"v_{2}{4,QC}"); | |
1539 | (intFlowAllPOI->GetXaxis())->SetBinLabel(binGFC6POI,"v_{2}{6,GFC}"); | |
1540 | (intFlowAllPOI->GetXaxis())->SetBinLabel(binQC6POI,"v_{2}{6,QC}"); | |
1541 | (intFlowAllPOI->GetXaxis())->SetBinLabel(binGFC8POI,"v_{2}{8,GFC}"); | |
1542 | (intFlowAllPOI->GetXaxis())->SetBinLabel(binQC8POI,"v_{2}{8,QC}"); | |
1543 | (intFlowAllPOI->GetXaxis())->SetBinLabel(binFQDPOI,"v_{2}{FQD}"); | |
947cc449 | 1544 | (intFlowAllPOI->GetXaxis())->SetBinLabel(binLYZ2SUMPOI,"v_{2}{LYZ,sum}"); |
1545 | (intFlowAllPOI->GetXaxis())->SetBinLabel(binLYZ2PRODPOI,"v_{2}{LYZ,prod}"); | |
dec3fab6 | 1546 | (intFlowAllPOI->GetXaxis())->SetBinLabel(binLYZEPPOI,"v_{2}{LYZEP}"); |
694e0378 | 1547 | |
e83922f2 | 1548 | if(intFlowAllPOI) |
1fca9c90 | 1549 | { |
e83922f2 | 1550 | if(dMinPOI>0. && dMaxPOI>0.) |
1551 | { | |
1552 | (intFlowAllPOI->GetYaxis())->SetRangeUser(0.9744*dMinPOI,1.0144*dMaxPOI); | |
1553 | } else if(dMinPOI<0. && dMaxPOI>0.) | |
1554 | { | |
1555 | if(!(-1.*dMinPOI<4.*dMaxPOI)) | |
1556 | { | |
1557 | (intFlowAllPOI->GetYaxis())->SetRangeUser(1.0266*dMinPOI,1.0144*dMaxPOI); | |
1558 | } else {(intFlowAllPOI->GetYaxis())->SetRangeUser(1.1266*dMinPOI,1.0144*dMaxPOI);} | |
1559 | } else if(dMinPOI<0. && dMaxPOI<0.) | |
1560 | { | |
1561 | (intFlowAllPOI->GetYaxis())->SetRangeUser(1.0266*dMinPOI,0.9866*dMaxPOI); | |
1562 | } | |
1563 | intFlowAllPOI->Draw("E1"); | |
1564 | } | |
1fca9c90 | 1565 | |
e83922f2 | 1566 | if(pMeshPOI) pMeshPOI->Draw("LFSAME"); |
1567 | ||
1568 | if(flowResultsPOI) flowResultsPOI->Draw("PSAME"); | |
1fca9c90 | 1569 | |
251b57f2 | 1570 | if(plotLegendIntFlow) |
1571 | { | |
1572 | //2nd pad is for legend: | |
1573 | (intFlowAllCanvasPOI->cd(2))->SetPad(0.75,0.0,1.0,1.0); | |
1574 | ||
1575 | if(textDefault) textDefault->Draw(); | |
1fca9c90 | 1576 | |
251b57f2 | 1577 | if(textResultsPOI) textResultsPOI->Draw(); |
1578 | } | |
1579 | ||
e83922f2 | 1580 | }// end of if(plotIntFlowPOI) |
077816b6 | 1581 | //---------------------------------------------------------------------------------- |
1582 | ||
1583 | ||
1584 | //---------------------------------------------------------------------------------- | |
1585 | // final drawing for integrated flow relative to MC (POI): | |
1586 | if(plotIntFlowRelativeToMCPOI) | |
1587 | { | |
1588 | TCanvas* intFlowAllRelativeToMCPOICanvas = new TCanvas("Integrated Flow (POI) Relative To MC","Integrated Flow (POI) Relative To MC",1000,600); | |
1589 | ||
1590 | intFlowAllRelativeToMCPOICanvas->Divide(2,1); | |
1591 | ||
1592 | // 1st pad is for plot: | |
1593 | (intFlowAllRelativeToMCPOICanvas->cd(1))->SetPad(0.0,0.0,0.75,1.0); | |
1594 | ||
1595 | TH1D *intFlowAllRelativeToMCPOI = new TH1D(*intFlowAll); | |
077816b6 | 1596 | (intFlowAllRelativeToMCPOI->GetYaxis())->SetRangeUser(-1,1); |
c365fe76 | 1597 | (intFlowAllRelativeToMCPOI->GetYaxis())->SetTitle("(v_{n}\{method\} - v_{n}\{MC\})/v_{n}\{MC\}"); |
077816b6 | 1598 | intFlowAllRelativeToMCPOI->Draw("E1"); |
1599 | ||
1600 | if(flowResultsRelativeToMCPOI) flowResultsRelativeToMCPOI->Draw("PSAME"); | |
1601 | ||
1602 | // 2nd pad is for legend: | |
1603 | (intFlowAllRelativeToMCPOICanvas->cd(2))->SetPad(0.75,0.0,1.0,1.0); | |
1604 | ||
1605 | if(textDefault) textDefault->Draw(); | |
1606 | ||
1607 | if(textResultsPOI) textResultsPOI->Draw(); | |
1608 | ||
c365fe76 | 1609 | }// end of if(plotIntFlowRelativeToMCPOI) |
077816b6 | 1610 | //---------------------------------------------------------------------------------- |
1611 | ||
9d3cbee7 | 1612 | //================================================================================== |
e83922f2 | 1613 | |
1614 | ||
1615 | ||
9d3cbee7 | 1616 | |
1617 | //================================================================================== | |
1618 | // DIFFERENTIAL FLOW | |
1619 | //================================================================================== | |
bee2efdc | 1620 | Int_t iNbinsPt = AliFlowCommonConstants::GetMaster()->GetNbinsPt(); |
1621 | Double_t dPtMin = AliFlowCommonConstants::GetMaster()->GetPtMin(); | |
1622 | Double_t dPtMax = AliFlowCommonConstants::GetMaster()->GetPtMax(); | |
70288839 | 1623 | |
bee2efdc | 1624 | Int_t iNbinsEta = AliFlowCommonConstants::GetMaster()->GetNbinsEta(); |
1625 | Double_t dEtaMin = AliFlowCommonConstants::GetMaster()->GetEtaMin(); | |
1626 | Double_t dEtaMax = AliFlowCommonConstants::GetMaster()->GetEtaMax(); | |
1fca9c90 | 1627 | |
a88e5ac2 | 1628 | //---------------------------------------------------------------------------------- |
1fca9c90 | 1629 | //cosmetics: the style histogram for differential flow (pt): |
1630 | TH1D *styleHistPt = new TH1D("styleHistPt","styleHistPt",iNbinsPt,dPtMin,dPtMax); | |
1631 | styleHistPt->SetTitle("Differential Flow"); | |
1632 | styleHistPt->SetXTitle("p_{t} [GeV]"); | |
1633 | styleHistPt->SetYTitle("v_{n}"); | |
1634 | ||
1635 | //cosmetics: the style histogram for differential flow (eta): | |
1636 | TH1D *styleHistEta = new TH1D("styleHistEta","styleHistEta",iNbinsEta,dEtaMin,dEtaMax); | |
1637 | styleHistEta->SetTitle("Differential Flow"); | |
1638 | styleHistEta->SetXTitle("#eta"); | |
1639 | styleHistEta->SetYTitle("v_{n}"); | |
a88e5ac2 | 1640 | //---------------------------------------------------------------------------------- |
9d3cbee7 | 1641 | |
1fca9c90 | 1642 | |
1fca9c90 | 1643 | |
1fca9c90 | 1644 | //---------------------------------------------------------------------------------- |
1645 | //RP: | |
1646 | //cosmetics: Monte Carlo error bands for differential flow (Pt) | |
1647 | TGraph* pMeshDiffFlowPtRP = NULL; | |
1648 | if(mcepCommonHistRes) | |
1649 | { | |
7d02d77f | 1650 | Int_t nBinsDiffFlowPtRP = (mcepCommonHistRes->GetHistDiffFlowPtRP())->GetNbinsX(); |
1fca9c90 | 1651 | Double_t binWidthPtRP = (mcepCommonHistRes->GetHistDiffFlowPtRP())->GetBinWidth(1);//assuming that all bins have the same width |
7d02d77f | 1652 | |
1653 | //counting the non-empty bins: | |
1654 | Int_t nNonEmptyBinsDiffFlowPtRP=0; | |
1655 | for(Int_t i=1;i<nBinsDiffFlowPtRP+1;i++) | |
1656 | { | |
1657 | if(!(mcepCommonHistRes->GetHistDiffFlowPtRP())->GetBinError(i)==0.0)) | |
1658 | { | |
1659 | nNonEmptyBinsDiffFlowPtRP++; | |
1660 | } | |
1661 | } | |
1fca9c90 | 1662 | |
7d02d77f | 1663 | pMeshDiffFlowPtRP = new TGraph(2*nNonEmptyBinsDiffFlowPtRP+1); |
1fca9c90 | 1664 | |
7d02d77f | 1665 | Double_t valueMCPtRP=0.,errorMCPtRP=0.; |
1666 | Int_t countDiffFlowPtRP=1; | |
1667 | Double_t xFirstDiffFlowPtRP=0.,yUpFirstDiffFlowPtRP=0.;//needed to close up the mesh | |
1668 | for(Int_t i=1;i<nBinsDiffFlowPtRP+1;i++) | |
1fca9c90 | 1669 | { |
7d02d77f | 1670 | //setting up the upper limit of the mesh: |
1fca9c90 | 1671 | valueMCPtRP = (mcepCommonHistRes->GetHistDiffFlowPtRP())->GetBinContent(i); |
7d02d77f | 1672 | errorMCPtRP = (mcepCommonHistRes->GetHistDiffFlowPtRP())->GetBinError(i); |
1673 | if(!(errorMCPtRP==0.0)) | |
1674 | { | |
1675 | pMeshDiffFlowPtRP->SetPoint(countDiffFlowPtRP++,(i-0.5)*binWidthPtRP+dPtMin,valueMCPtRP+errorMCPtRP); | |
1676 | if(xFirstDiffFlowPtRP==0.) | |
1677 | { | |
1678 | xFirstDiffFlowPtRP=(i-0.5)*binWidthPtRP+dPtMin; | |
1679 | yUpFirstDiffFlowPtRP=valueMCPtRP+errorMCPtRP; | |
1680 | } | |
1681 | } | |
1682 | } | |
1683 | for(Int_t i=nBinsDiffFlowPtRP+1;i<2*nBinsDiffFlowPtRP+1;i++) | |
1684 | { | |
1685 | //setting up the lower limit of the mesh: | |
1686 | valueMCPtRP = (mcepCommonHistRes->GetHistDiffFlowPtRP())->GetBinContent(2*nBinsDiffFlowPtRP+1-i); | |
1687 | errorMCPtRP = (mcepCommonHistRes->GetHistDiffFlowPtRP())->GetBinError(2*nBinsDiffFlowPtRP+1-i); | |
1688 | if(!(errorMCPtRP==0.0)) | |
1689 | { | |
1690 | pMeshDiffFlowPtRP->SetPoint(countDiffFlowPtRP++,(2*nBinsDiffFlowPtRP-i+0.5)*binWidthPtRP+dPtMin,valueMCPtRP-errorMCPtRP); | |
1691 | } | |
1692 | } | |
1693 | //closing the mesh area: | |
1694 | pMeshDiffFlowPtRP->SetPoint(2*nNonEmptyBinsDiffFlowPtRP+1,xFirstDiffFlowPtRP,yUpFirstDiffFlowPtRP); | |
1695 | ||
1696 | //setting the mesh style and color: | |
dec3fab6 | 1697 | pMeshDiffFlowPtRP->SetFillStyle(meshStyleDiffFlowPtRP); |
1698 | pMeshDiffFlowPtRP->SetFillColor(meshColorDiffFlowPtRP); | |
1fca9c90 | 1699 | } |
7d02d77f | 1700 | |
1fca9c90 | 1701 | //cosmetics: Monte Carlo error bands for differential flow (Eta) |
1702 | TGraph* pMeshDiffFlowEtaRP = NULL; | |
1703 | if(mcepCommonHistRes) | |
1704 | { | |
7d02d77f | 1705 | Int_t nBinsDiffFlowEtaRP = (mcepCommonHistRes->GetHistDiffFlowEtaRP())->GetNbinsX(); |
1fca9c90 | 1706 | Double_t binWidthEtaRP = (mcepCommonHistRes->GetHistDiffFlowEtaRP())->GetBinWidth(1);//assuming that all bins have the same width |
e83922f2 | 1707 | |
7d02d77f | 1708 | //counting the non-empty bins: |
1709 | Int_t nNonEmptyBinsDiffFlowEtaRP=0; | |
1710 | for(Int_t i=1;i<nBinsDiffFlowEtaRP+1;i++) | |
1fca9c90 | 1711 | { |
7d02d77f | 1712 | if(!(mcepCommonHistRes->GetHistDiffFlowEtaRP())->GetBinError(i)==0.0)) |
1713 | { | |
1714 | nNonEmptyBinsDiffFlowEtaRP++; | |
1715 | } | |
1fca9c90 | 1716 | } |
7d02d77f | 1717 | |
1718 | pMeshDiffFlowEtaRP = new TGraph(2*nNonEmptyBinsDiffFlowEtaRP+1); | |
1719 | ||
1720 | Double_t valueMCEtaRP=0.,errorMCEtaRP=0.; | |
1721 | Int_t countDiffFlowEtaRP=1; | |
1722 | Double_t xFirstDiffFlowEtaRP=0.,yUpFirstDiffFlowEtaRP=0.;//needed to close up the mesh | |
1723 | for(Int_t i=1;i<nBinsDiffFlowEtaRP+1;i++) | |
1fca9c90 | 1724 | { |
7d02d77f | 1725 | //setting up the upper limit of the mesh: |
1726 | valueMCEtaRP = (mcepCommonHistRes->GetHistDiffFlowEtaRP())->GetBinContent(i); | |
1727 | errorMCEtaRP = (mcepCommonHistRes->GetHistDiffFlowEtaRP())->GetBinError(i); | |
1728 | if(!(errorMCEtaRP==0.0)) | |
1729 | { | |
1730 | pMeshDiffFlowEtaRP->SetPoint(countDiffFlowEtaRP++,(i-0.5)*binWidthEtaRP+dEtaMin,valueMCEtaRP+errorMCEtaRP); | |
1731 | if(xFirstDiffFlowEtaRP==0.) | |
1732 | { | |
1733 | xFirstDiffFlowEtaRP=(i-0.5)*binWidthEtaRP+dEtaMin; | |
1734 | yUpFirstDiffFlowEtaRP=valueMCEtaRP+errorMCEtaRP; | |
1735 | } | |
1736 | } | |
1737 | } | |
1738 | for(Int_t i=nBinsDiffFlowEtaRP+1;i<2*nBinsDiffFlowEtaRP+1;i++) | |
1739 | { | |
1740 | //setting up the lower limit of the mesh: | |
1741 | valueMCEtaRP = (mcepCommonHistRes->GetHistDiffFlowEtaRP())->GetBinContent(2*nBinsDiffFlowEtaRP+1-i); | |
1742 | errorMCEtaRP = (mcepCommonHistRes->GetHistDiffFlowEtaRP())->GetBinError(2*nBinsDiffFlowEtaRP+1-i); | |
1743 | if(!(errorMCEtaRP==0.0)) | |
1744 | { | |
1745 | pMeshDiffFlowEtaRP->SetPoint(countDiffFlowEtaRP++,(2*nBinsDiffFlowEtaRP-i+0.5)*binWidthEtaRP+dEtaMin,valueMCEtaRP-errorMCEtaRP); | |
1746 | } | |
1747 | } | |
1748 | //closing the mesh area: | |
1749 | pMeshDiffFlowEtaRP->SetPoint(2*nNonEmptyBinsDiffFlowEtaRP+1,xFirstDiffFlowEtaRP,yUpFirstDiffFlowEtaRP); | |
1750 | ||
1751 | //setting the mesh style and color: | |
dec3fab6 | 1752 | pMeshDiffFlowEtaRP->SetFillStyle(meshStyleDiffFlowEtaRP); |
1753 | pMeshDiffFlowEtaRP->SetFillColor(meshColorDiffFlowEtaRP); | |
1fca9c90 | 1754 | } |
1755 | //---------------------------------------------------------------------------------- | |
1756 | ||
1757 | ||
7d02d77f | 1758 | |
1759 | ||
1fca9c90 | 1760 | //---------------------------------------------------------------------------------- |
1761 | //POI: | |
1762 | //cosmetics: Monte Carlo error bands for differential flow (Pt) | |
1763 | TGraph* pMeshDiffFlowPtPOI = NULL; | |
1764 | if(mcepCommonHistRes) | |
1765 | { | |
7d02d77f | 1766 | Int_t nBinsDiffFlowPtPOI = (mcepCommonHistRes->GetHistDiffFlowPtPOI())->GetNbinsX(); |
1fca9c90 | 1767 | Double_t binWidthPtPOI = (mcepCommonHistRes->GetHistDiffFlowPtPOI())->GetBinWidth(1);//assuming that all bins have the same width |
7d02d77f | 1768 | |
1769 | //counting the non-empty bins: | |
1770 | Int_t nNonEmptyBinsDiffFlowPtPOI=0; | |
1771 | for(Int_t i=1;i<nBinsDiffFlowPtPOI+1;i++) | |
1772 | { | |
1773 | if(!(mcepCommonHistRes->GetHistDiffFlowPtPOI())->GetBinError(i)==0.0)) | |
1774 | { | |
1775 | nNonEmptyBinsDiffFlowPtPOI++; | |
1776 | } | |
1777 | } | |
1fca9c90 | 1778 | |
7d02d77f | 1779 | pMeshDiffFlowPtPOI = new TGraph(2*nNonEmptyBinsDiffFlowPtPOI+1); |
1fca9c90 | 1780 | |
7d02d77f | 1781 | Double_t valueMCPtPOI=0.,errorMCPtPOI=0.; |
1782 | Int_t countDiffFlowPtPOI=1; | |
1783 | Double_t xFirstDiffFlowPtPOI=0.,yUpFirstDiffFlowPtPOI=0.;//needed to close up the mesh | |
1784 | for(Int_t i=1;i<nBinsDiffFlowPtPOI+1;i++) | |
1fca9c90 | 1785 | { |
7d02d77f | 1786 | //setting up the upper limit of the mesh: |
1fca9c90 | 1787 | valueMCPtPOI = (mcepCommonHistRes->GetHistDiffFlowPtPOI())->GetBinContent(i); |
7d02d77f | 1788 | errorMCPtPOI = (mcepCommonHistRes->GetHistDiffFlowPtPOI())->GetBinError(i); |
1789 | if(!(errorMCPtPOI==0.0)) | |
1790 | { | |
1791 | pMeshDiffFlowPtPOI->SetPoint(countDiffFlowPtPOI++,(i-0.5)*binWidthPtPOI+dPtMin,valueMCPtPOI+errorMCPtPOI); | |
1792 | if(xFirstDiffFlowPtPOI==0.) | |
1793 | { | |
1794 | xFirstDiffFlowPtPOI=(i-0.5)*binWidthPtPOI+dPtMin; | |
1795 | yUpFirstDiffFlowPtPOI=valueMCPtPOI+errorMCPtPOI; | |
1796 | } | |
1797 | } | |
1798 | } | |
1799 | for(Int_t i=nBinsDiffFlowPtPOI+1;i<2*nBinsDiffFlowPtPOI+1;i++) | |
1800 | { | |
1801 | //setting up the lower limit of the mesh: | |
1802 | valueMCPtPOI = (mcepCommonHistRes->GetHistDiffFlowPtPOI())->GetBinContent(2*nBinsDiffFlowPtPOI+1-i); | |
1803 | errorMCPtPOI = (mcepCommonHistRes->GetHistDiffFlowPtPOI())->GetBinError(2*nBinsDiffFlowPtPOI+1-i); | |
1804 | if(!(errorMCPtPOI==0.0)) | |
1805 | { | |
1806 | pMeshDiffFlowPtPOI->SetPoint(countDiffFlowPtPOI++,(2*nBinsDiffFlowPtPOI-i+0.5)*binWidthPtPOI+dPtMin,valueMCPtPOI-errorMCPtPOI); | |
1807 | } | |
1808 | } | |
1809 | //closing the mesh area: | |
1810 | pMeshDiffFlowPtPOI->SetPoint(2*nNonEmptyBinsDiffFlowPtPOI+1,xFirstDiffFlowPtPOI,yUpFirstDiffFlowPtPOI); | |
1811 | ||
1812 | //setting the mesh style and color: | |
dec3fab6 | 1813 | pMeshDiffFlowPtPOI->SetFillStyle(meshStyleDiffFlowPtPOI); |
1814 | pMeshDiffFlowPtPOI->SetFillColor(meshColorDiffFlowPtPOI); | |
1fca9c90 | 1815 | } |
7d02d77f | 1816 | |
1fca9c90 | 1817 | //cosmetics: Monte Carlo error bands for differential flow (Eta) |
1818 | TGraph* pMeshDiffFlowEtaPOI = NULL; | |
1819 | if(mcepCommonHistRes) | |
1820 | { | |
7d02d77f | 1821 | Int_t nBinsDiffFlowEtaPOI = (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->GetNbinsX(); |
1fca9c90 | 1822 | Double_t binWidthEtaPOI = (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->GetBinWidth(1);//assuming that all bins have the same width |
7d02d77f | 1823 | |
1824 | //counting the non-empty bins: | |
1825 | Int_t nNonEmptyBinsDiffFlowEtaPOI=0; | |
1826 | for(Int_t i=1;i<nBinsDiffFlowEtaPOI+1;i++) | |
1827 | { | |
1828 | if(!(mcepCommonHistRes->GetHistDiffFlowEtaPOI())->GetBinError(i)==0.0)) | |
1829 | { | |
1830 | nNonEmptyBinsDiffFlowEtaPOI++; | |
1831 | } | |
1832 | } | |
1fca9c90 | 1833 | |
7d02d77f | 1834 | pMeshDiffFlowEtaPOI = new TGraph(2*nNonEmptyBinsDiffFlowEtaPOI+1); |
a88e5ac2 | 1835 | |
7d02d77f | 1836 | Double_t valueMCEtaPOI=0.,errorMCEtaPOI=0.; |
1837 | Int_t countDiffFlowEtaPOI=1; | |
1838 | Double_t xFirstDiffFlowEtaPOI=0.,yUpFirstDiffFlowEtaPOI=0.;//needed to close up the mesh | |
1839 | for(Int_t i=1;i<nBinsDiffFlowEtaPOI+1;i++) | |
1fca9c90 | 1840 | { |
7d02d77f | 1841 | //setting up the upper limit of the mesh: |
1fca9c90 | 1842 | valueMCEtaPOI = (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->GetBinContent(i); |
7d02d77f | 1843 | errorMCEtaPOI = (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->GetBinError(i); |
1844 | if(!(errorMCEtaPOI==0.0)) | |
1845 | { | |
1846 | pMeshDiffFlowEtaPOI->SetPoint(countDiffFlowEtaPOI++,(i-0.5)*binWidthEtaPOI+dEtaMin,valueMCEtaPOI+errorMCEtaPOI); | |
1847 | if(xFirstDiffFlowEtaPOI==0.) | |
1848 | { | |
1849 | xFirstDiffFlowEtaPOI=(i-0.5)*binWidthEtaPOI+dEtaMin; | |
1850 | yUpFirstDiffFlowEtaPOI=valueMCEtaPOI+errorMCEtaPOI; | |
1851 | } | |
1852 | } | |
1853 | } | |
1854 | for(Int_t i=nBinsDiffFlowEtaPOI+1;i<2*nBinsDiffFlowEtaPOI+1;i++) | |
1855 | { | |
1856 | //setting up the lower limit of the mesh: | |
1857 | valueMCEtaPOI = (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->GetBinContent(2*nBinsDiffFlowEtaPOI+1-i); | |
1858 | errorMCEtaPOI = (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->GetBinError(2*nBinsDiffFlowEtaPOI+1-i); | |
1859 | if(!(errorMCEtaPOI==0.0)) | |
1860 | { | |
1861 | pMeshDiffFlowEtaPOI->SetPoint(countDiffFlowEtaPOI++,(2*nBinsDiffFlowEtaPOI-i+0.5)*binWidthEtaPOI+dEtaMin,valueMCEtaPOI-errorMCEtaPOI); | |
1862 | } | |
1863 | } | |
1864 | //closing the mesh area: | |
1865 | pMeshDiffFlowEtaPOI->SetPoint(2*nNonEmptyBinsDiffFlowEtaPOI+1,xFirstDiffFlowEtaPOI,yUpFirstDiffFlowEtaPOI); | |
1866 | ||
1867 | //setting the mesh style and color: | |
dec3fab6 | 1868 | pMeshDiffFlowEtaPOI->SetFillStyle(meshStyleDiffFlowEtaPOI); |
1869 | pMeshDiffFlowEtaPOI->SetFillColor(meshColorDiffFlowEtaPOI); | |
7d02d77f | 1870 | } |
1fca9c90 | 1871 | //---------------------------------------------------------------------------------- |
1872 | ||
70288839 | 1873 | //MCEP = Monte Carlo Event Plane |
1fca9c90 | 1874 | Double_t avMultDiffFlowMCRP=0.; |
1875 | Double_t nEvtsDiffFlowMCRP=0; | |
1876 | Double_t avMultDiffFlowMCPOI=0.; | |
1877 | Double_t nEvtsDiffFlowMCPOI=0; | |
a88e5ac2 | 1878 | if(fileMCEP) |
9d3cbee7 | 1879 | { |
70288839 | 1880 | if(mcepCommonHistRes) |
1881 | { | |
7d02d77f | 1882 | (mcepCommonHistRes->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorMC); |
1883 | (mcepCommonHistRes->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleMC); | |
1884 | (mcepCommonHistRes->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorMC); | |
1885 | (mcepCommonHistRes->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleMC); | |
1886 | (mcepCommonHistRes->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorMC); | |
1887 | (mcepCommonHistRes->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleMC); | |
1888 | (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorMC); | |
1889 | (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleMC); | |
a88e5ac2 | 1890 | } |
1891 | if(mcepCommonHist) | |
1892 | { | |
6a1a854d | 1893 | avMultDiffFlowMCRP = (mcepCommonHist->GetHistMultRP())->GetMean(); |
1894 | nEvtsDiffFlowMCRP = (mcepCommonHist->GetHistMultRP())->GetEntries(); | |
1895 | avMultDiffFlowMCPOI = (mcepCommonHist->GetHistMultPOI())->GetMean(); | |
1896 | nEvtsDiffFlowMCPOI = (mcepCommonHist->GetHistMultPOI())->GetEntries(); | |
70288839 | 1897 | } |
1898 | } | |
905bed86 | 1899 | |
1900 | //SP = Scalar Product | |
1901 | Double_t avMultDiffFlowSPRP=0.; | |
1902 | Double_t nEvtsDiffFlowSPRP=0; | |
1903 | Double_t avMultDiffFlowSPPOI=0.; | |
1904 | Double_t nEvtsDiffFlowSPPOI=0; | |
1905 | if(fileSP) | |
1906 | { | |
1907 | if(spCommonHistRes) | |
1908 | { | |
1909 | (spCommonHistRes->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorSP); | |
1910 | (spCommonHistRes->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleSP); | |
1911 | (spCommonHistRes->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorSP); | |
1912 | (spCommonHistRes->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleSP); | |
1913 | (spCommonHistRes->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorSP); | |
1914 | (spCommonHistRes->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleSP); | |
1915 | (spCommonHistRes->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorSP); | |
1916 | (spCommonHistRes->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleSP); | |
1917 | } | |
1918 | if(spCommonHist) | |
1919 | { | |
6a1a854d | 1920 | avMultDiffFlowSPRP = (spCommonHist->GetHistMultRP())->GetMean(); |
dec3fab6 | 1921 | nEvtsDiffFlowSPRP = (spCommonHist->GetHistMultRP())->GetEntries(); |
6a1a854d | 1922 | avMultDiffFlowSPPOI = (spCommonHist->GetHistMultPOI())->GetMean(); |
dec3fab6 | 1923 | nEvtsDiffFlowSPPOI = (spCommonHist->GetHistMultPOI())->GetEntries(); |
905bed86 | 1924 | } |
1925 | } | |
a88e5ac2 | 1926 | |
9d3cbee7 | 1927 | //GFC = Generating Function Cumulants |
1fca9c90 | 1928 | Double_t avMultDiffFlowGFC=0.;//to be removed |
1929 | Double_t nEvtsDiffFlowGFC=0.;//to be removed | |
1930 | Double_t avMultDiffFlowGFCRP=0.; | |
1931 | Double_t nEvtsDiffFlowGFCRP=0.; | |
1932 | Double_t avMultDiffFlowGFCPOI=0.; | |
1933 | Double_t nEvtsDiffFlowGFCPOI=0.; | |
a88e5ac2 | 1934 | if(fileGFC) |
9d3cbee7 | 1935 | { |
a88e5ac2 | 1936 | if(gfcCommonHistRes2) |
9d3cbee7 | 1937 | { |
7d02d77f | 1938 | (gfcCommonHistRes2->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorGFC2); |
1939 | (gfcCommonHistRes2->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleGFC2); | |
1940 | (gfcCommonHistRes2->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorGFC2); | |
1941 | (gfcCommonHistRes2->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleGFC2); | |
1942 | (gfcCommonHistRes2->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorGFC2); | |
1943 | (gfcCommonHistRes2->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleGFC2); | |
1944 | (gfcCommonHistRes2->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorGFC2); | |
1945 | (gfcCommonHistRes2->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleGFC2); | |
9d3cbee7 | 1946 | } |
a88e5ac2 | 1947 | if(gfcCommonHistRes4) |
9d3cbee7 | 1948 | { |
7d02d77f | 1949 | (gfcCommonHistRes4->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorGFC4); |
1950 | (gfcCommonHistRes4->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleGFC4); | |
1951 | (gfcCommonHistRes4->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorGFC4); | |
1952 | (gfcCommonHistRes4->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleGFC4); | |
1953 | (gfcCommonHistRes4->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorGFC4); | |
1954 | (gfcCommonHistRes4->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleGFC4); | |
1955 | (gfcCommonHistRes4->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorGFC4); | |
1956 | (gfcCommonHistRes4->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleGFC4); | |
1fca9c90 | 1957 | } |
1958 | if(gfcCommonHistRes6) | |
1959 | { | |
7d02d77f | 1960 | (gfcCommonHistRes6->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorGFC6); |
1961 | (gfcCommonHistRes6->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleGFC6); | |
1962 | (gfcCommonHistRes6->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorGFC6); | |
1963 | (gfcCommonHistRes6->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleGFC6); | |
1964 | (gfcCommonHistRes6->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorGFC6); | |
1965 | (gfcCommonHistRes6->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleGFC6); | |
1966 | (gfcCommonHistRes6->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorGFC6); | |
1967 | (gfcCommonHistRes6->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleGFC6); | |
1fca9c90 | 1968 | } |
1969 | if(gfcCommonHistRes8) | |
1970 | { | |
7d02d77f | 1971 | (gfcCommonHistRes8->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorGFC8); |
1972 | (gfcCommonHistRes8->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleGFC8); | |
1973 | (gfcCommonHistRes8->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorGFC8); | |
1974 | (gfcCommonHistRes8->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleGFC8); | |
1975 | (gfcCommonHistRes8->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorGFC8); | |
1976 | (gfcCommonHistRes8->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleGFC8); | |
1977 | (gfcCommonHistRes8->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorGFC8); | |
1978 | (gfcCommonHistRes8->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleGFC8); | |
9d3cbee7 | 1979 | } |
a88e5ac2 | 1980 | if(gfcCommonHist) |
1981 | { | |
6a1a854d | 1982 | avMultDiffFlowGFCRP = (gfcCommonHist->GetHistMultRP())->GetMean(); |
1983 | nEvtsDiffFlowGFCRP = (gfcCommonHist->GetHistMultRP())->GetEntries(); | |
1984 | avMultDiffFlowGFCPOI = (gfcCommonHist->GetHistMultPOI())->GetMean(); | |
1985 | nEvtsDiffFlowGFCPOI = (gfcCommonHist->GetHistMultPOI())->GetEntries(); | |
a88e5ac2 | 1986 | } |
9d3cbee7 | 1987 | } |
a88e5ac2 | 1988 | |
9d3cbee7 | 1989 | //QC = Q-cumulants |
1fca9c90 | 1990 | Double_t avMultDiffFlowQC2RP=0.; |
1991 | Double_t nEvtsDiffFlowQC2RP=0.; | |
1992 | Double_t avMultDiffFlowQC2POI=0.; | |
1993 | Double_t nEvtsDiffFlowQC2POI=0.; | |
1994 | Double_t avMultDiffFlowQC4RP=0.; | |
1995 | Double_t nEvtsDiffFlowQC4RP=0.; | |
1996 | Double_t avMultDiffFlowQC4POI=0.; | |
1997 | Double_t nEvtsDiffFlowQC4POI=0.; | |
e83922f2 | 1998 | Double_t avMultDiffFlowQC6RP=0.; |
1999 | Double_t nEvtsDiffFlowQC6RP=0.; | |
2000 | Double_t avMultDiffFlowQC6POI=0.; | |
2001 | Double_t nEvtsDiffFlowQC6POI=0.; | |
2002 | Double_t avMultDiffFlowQC8RP=0.; | |
2003 | Double_t nEvtsDiffFlowQC8RP=0.; | |
2004 | Double_t avMultDiffFlowQC8POI=0.; | |
2005 | Double_t nEvtsDiffFlowQC8POI=0.; | |
1fca9c90 | 2006 | |
a88e5ac2 | 2007 | if(fileQC) |
9d3cbee7 | 2008 | { |
a88e5ac2 | 2009 | //QC{2} |
70288839 | 2010 | if(qcCommonHistRes2) |
9d3cbee7 | 2011 | { |
7d02d77f | 2012 | (qcCommonHistRes2->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorQC2); |
2013 | (qcCommonHistRes2->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleQC2); | |
2014 | (qcCommonHistRes2->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorQC2); | |
2015 | (qcCommonHistRes2->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleQC2); | |
2016 | (qcCommonHistRes2->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorQC2); | |
2017 | (qcCommonHistRes2->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleQC2); | |
2018 | (qcCommonHistRes2->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorQC2); | |
2019 | (qcCommonHistRes2->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleQC2); | |
9d3cbee7 | 2020 | } |
a88e5ac2 | 2021 | if(qcCommonHist2) |
2022 | { | |
6a1a854d | 2023 | avMultDiffFlowQC2RP = (qcCommonHist2->GetHistMultRP())->GetMean(); |
2024 | nEvtsDiffFlowQC2RP = (qcCommonHist2->GetHistMultRP())->GetEntries(); | |
2025 | avMultDiffFlowQC2POI = (qcCommonHist2->GetHistMultPOI())->GetMean(); | |
2026 | nEvtsDiffFlowQC2POI = (qcCommonHist2->GetHistMultPOI())->GetEntries(); | |
a88e5ac2 | 2027 | } |
2028 | //QC{4} | |
70288839 | 2029 | if(qcCommonHistRes4) |
9d3cbee7 | 2030 | { |
7d02d77f | 2031 | (qcCommonHistRes4->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorQC4); |
2032 | (qcCommonHistRes4->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleQC4); | |
2033 | (qcCommonHistRes4->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorQC4); | |
2034 | (qcCommonHistRes4->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleQC4); | |
2035 | (qcCommonHistRes4->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorQC4); | |
2036 | (qcCommonHistRes4->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleQC4); | |
2037 | (qcCommonHistRes4->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorQC4); | |
2038 | (qcCommonHistRes4->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleQC4); | |
a88e5ac2 | 2039 | } |
2040 | if(qcCommonHist4) | |
2041 | { | |
6a1a854d | 2042 | avMultDiffFlowQC4RP = (qcCommonHist4->GetHistMultRP())->GetMean(); |
2043 | nEvtsDiffFlowQC4RP = (qcCommonHist4->GetHistMultRP())->GetEntries(); | |
2044 | avMultDiffFlowQC4POI = (qcCommonHist4->GetHistMultPOI())->GetMean(); | |
2045 | nEvtsDiffFlowQC4POI = (qcCommonHist4->GetHistMultPOI())->GetEntries(); | |
9d3cbee7 | 2046 | } |
e83922f2 | 2047 | //QC{6} |
2048 | if(qcCommonHistRes6) | |
2049 | { | |
7d02d77f | 2050 | (qcCommonHistRes6->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorQC6); |
2051 | (qcCommonHistRes6->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleQC6); | |
2052 | (qcCommonHistRes6->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorQC6); | |
2053 | (qcCommonHistRes6->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleQC6); | |
2054 | (qcCommonHistRes6->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorQC6); | |
2055 | (qcCommonHistRes6->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleQC6); | |
2056 | (qcCommonHistRes6->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorQC6); | |
2057 | (qcCommonHistRes6->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleQC6); | |
e83922f2 | 2058 | } |
2059 | if(qcCommonHist6) | |
2060 | { | |
6a1a854d | 2061 | avMultDiffFlowQC6RP = (qcCommonHist6->GetHistMultRP())->GetMean(); |
2062 | nEvtsDiffFlowQC6RP = (qcCommonHist6->GetHistMultRP())->GetEntries(); | |
2063 | avMultDiffFlowQC6POI = (qcCommonHist6->GetHistMultPOI())->GetMean(); | |
2064 | nEvtsDiffFlowQC6POI = (qcCommonHist6->GetHistMultPOI())->GetEntries(); | |
e83922f2 | 2065 | } |
2066 | //QC{8} | |
2067 | if(qcCommonHistRes8) | |
2068 | { | |
7d02d77f | 2069 | (qcCommonHistRes8->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorQC8); |
2070 | (qcCommonHistRes8->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleQC8); | |
2071 | (qcCommonHistRes8->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorQC8); | |
2072 | (qcCommonHistRes8->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleQC8); | |
2073 | (qcCommonHistRes8->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorQC8); | |
2074 | (qcCommonHistRes8->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleQC8); | |
2075 | (qcCommonHistRes8->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorQC8); | |
2076 | (qcCommonHistRes8->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleQC8); | |
e83922f2 | 2077 | } |
2078 | if(qcCommonHist8) | |
2079 | { | |
6a1a854d | 2080 | avMultDiffFlowQC8RP = (qcCommonHist8->GetHistMultRP())->GetMean(); |
2081 | nEvtsDiffFlowQC8RP = (qcCommonHist8->GetHistMultRP())->GetEntries(); | |
2082 | avMultDiffFlowQC8POI = (qcCommonHist8->GetHistMultPOI())->GetMean(); | |
2083 | nEvtsDiffFlowQC8POI = (qcCommonHist8->GetHistMultPOI())->GetEntries(); | |
e83922f2 | 2084 | } |
9d3cbee7 | 2085 | } |
70288839 | 2086 | |
947cc449 | 2087 | //LYZ2SUM = Lee-Yang Zeros (2nd run, sum) |
2088 | Double_t avMultDiffFlowLYZ2SUMRP=0.; | |
2089 | Double_t nEvtsDiffFlowLYZ2SUMRP=0; | |
2090 | Double_t avMultDiffFlowLYZ2SUMPOI=0.; | |
2091 | Double_t nEvtsDiffFlowLYZ2SUMPOI=0; | |
2092 | if(fileLYZ2SUM) | |
2093 | { | |
2094 | if(lyz2sumCommonHistRes) | |
2095 | { | |
2096 | (lyz2sumCommonHistRes->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorLYZ2SUM); | |
2097 | (lyz2sumCommonHistRes->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleLYZ2SUM); | |
2098 | (lyz2sumCommonHistRes->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorLYZ2SUM); | |
2099 | (lyz2sumCommonHistRes->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleLYZ2SUM); | |
2100 | (lyz2sumCommonHistRes->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorLYZ2SUM); | |
2101 | (lyz2sumCommonHistRes->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleLYZ2SUM); | |
2102 | (lyz2sumCommonHistRes->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorLYZ2SUM); | |
2103 | (lyz2sumCommonHistRes->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleLYZ2SUM); | |
2104 | } | |
2105 | if(lyz2sumCommonHist) | |
2106 | { | |
2107 | avMultDiffFlowLYZ2SUMRP = (lyz2sumCommonHist->GetHistMultRP())->GetMean(); | |
2108 | nEvtsDiffFlowLYZ2SUMRP = (lyz2sumCommonHist->GetHistMultRP())->GetEntries(); | |
2109 | avMultDiffFlowLYZ2SUMPOI = (lyz2sumCommonHist->GetHistMultPOI())->GetMean(); | |
2110 | nEvtsDiffFlowLYZ2SUMPOI = (lyz2sumCommonHist->GetHistMultPOI())->GetEntries(); | |
2111 | } | |
2112 | } | |
2113 | ||
2114 | //LYZ2PROD = Lee-Yang Zeros (2nd run, product) | |
2115 | Double_t avMultDiffFlowLYZ2PRODRP=0.; | |
2116 | Double_t nEvtsDiffFlowLYZ2PRODRP=0; | |
2117 | Double_t avMultDiffFlowLYZ2PRODPOI=0.; | |
2118 | Double_t nEvtsDiffFlowLYZ2PRODPOI=0; | |
2119 | if(fileLYZ2PROD) | |
9d3cbee7 | 2120 | { |
947cc449 | 2121 | if(lyz2prodCommonHistRes) |
2122 | { | |
2123 | (lyz2prodCommonHistRes->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorLYZ2PROD); | |
2124 | (lyz2prodCommonHistRes->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleLYZ2PROD); | |
2125 | (lyz2prodCommonHistRes->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorLYZ2PROD); | |
2126 | (lyz2prodCommonHistRes->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleLYZ2PROD); | |
2127 | (lyz2prodCommonHistRes->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorLYZ2PROD); | |
2128 | (lyz2prodCommonHistRes->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleLYZ2PROD); | |
2129 | (lyz2prodCommonHistRes->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorLYZ2PROD); | |
2130 | (lyz2prodCommonHistRes->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleLYZ2PROD); | |
a88e5ac2 | 2131 | } |
947cc449 | 2132 | if(lyz2prodCommonHist) |
9d3cbee7 | 2133 | { |
947cc449 | 2134 | avMultDiffFlowLYZ2PRODRP = (lyz2prodCommonHist->GetHistMultRP())->GetMean(); |
2135 | nEvtsDiffFlowLYZ2PRODRP = (lyz2prodCommonHist->GetHistMultRP())->GetEntries(); | |
2136 | avMultDiffFlowLYZ2PRODPOI = (lyz2prodCommonHist->GetHistMultPOI())->GetMean(); | |
2137 | nEvtsDiffFlowLYZ2PRODPOI = (lyz2prodCommonHist->GetHistMultPOI())->GetEntries(); | |
9d3cbee7 | 2138 | } |
2139 | } | |
70288839 | 2140 | |
e83922f2 | 2141 | //LYZEP = Lee-Yang Zeros Event Plane |
e83922f2 | 2142 | Double_t avMultDiffFlowLYZEPRP=0.; |
2143 | Double_t nEvtsDiffFlowLYZEPRP=0; | |
2144 | Double_t avMultDiffFlowLYZEPPOI=0.; | |
2145 | Double_t nEvtsDiffFlowLYZEPPOI=0; | |
2146 | if(fileLYZEP) | |
2147 | { | |
2148 | if(lyzepCommonHistRes) | |
2149 | { | |
7d02d77f | 2150 | (lyzepCommonHistRes->GetHistDiffFlowPtRP())->SetMarkerColor(markerColorLYZEP); |
2151 | (lyzepCommonHistRes->GetHistDiffFlowPtRP())->SetMarkerStyle(markerStyleLYZEP); | |
2152 | (lyzepCommonHistRes->GetHistDiffFlowEtaRP())->SetMarkerColor(markerColorLYZEP); | |
2153 | (lyzepCommonHistRes->GetHistDiffFlowEtaRP())->SetMarkerStyle(markerStyleLYZEP); | |
2154 | (lyzepCommonHistRes->GetHistDiffFlowPtPOI())->SetMarkerColor(markerColorLYZEP); | |
2155 | (lyzepCommonHistRes->GetHistDiffFlowPtPOI())->SetMarkerStyle(markerStyleLYZEP); | |
2156 | (lyzepCommonHistRes->GetHistDiffFlowEtaPOI())->SetMarkerColor(markerColorLYZEP); | |
2157 | (lyzepCommonHistRes->GetHistDiffFlowEtaPOI())->SetMarkerStyle(markerStyleLYZEP); | |
e83922f2 | 2158 | } |
2159 | if(lyzepCommonHist) | |
2160 | { | |
6a1a854d | 2161 | avMultDiffFlowLYZEPRP = (lyzepCommonHist->GetHistMultRP())->GetMean(); |
2162 | nEvtsDiffFlowLYZEPRP = (lyzepCommonHist->GetHistMultRP())->GetEntries(); | |
2163 | avMultDiffFlowLYZEPPOI = (lyzepCommonHist->GetHistMultPOI())->GetMean(); | |
2164 | nEvtsDiffFlowLYZEPPOI = (lyzepCommonHist->GetHistMultPOI())->GetEntries(); | |
e83922f2 | 2165 | } |
2166 | } | |
2167 | ||
1fca9c90 | 2168 | |
1fca9c90 | 2169 | //---------------------------------------------------------------------------------- |
2170 | //final drawing for differential flow (Pt, RP): | |
e83922f2 | 2171 | if(plotDiffFlowPtRP) |
2172 | { | |
2173 | TCanvas* diffFlowPtAllCanvasRP = new TCanvas("Differential Flow (Pt) of RP","Differential Flow (Pt) of RP ",1000,600); | |
2174 | ||
2175 | diffFlowPtAllCanvasRP->Divide(2,1); | |
1fca9c90 | 2176 | |
e83922f2 | 2177 | //1st pad is for plot: |
2178 | (diffFlowPtAllCanvasRP->cd(1))->SetPad(0.0,0.0,0.75,1.0); | |
6f62c2a7 | 2179 | |
e83922f2 | 2180 | if(styleHistPt) |
2181 | { | |
2182 | (styleHistPt->GetYaxis())->SetRangeUser(-0.3,1.0); | |
2183 | styleHistPt->Draw(); | |
2184 | } | |
2185 | if(pMeshDiffFlowPtRP) | |
2186 | { | |
2187 | pMeshDiffFlowPtRP->Draw("LFSAME"); | |
2188 | } | |
1fca9c90 | 2189 | |
e83922f2 | 2190 | //MC |
2191 | if(plotMCPtRP && mcepCommonHistRes) | |
2192 | { | |
2193 | (mcepCommonHistRes->GetHistDiffFlowPtRP())->Draw("E1PSAME"); | |
2194 | } | |
905bed86 | 2195 | //SP |
2196 | if(plotSPPtRP && spCommonHistRes) | |
2197 | { | |
2198 | (spCommonHistRes->GetHistDiffFlowPtRP())->Draw("E1PSAME"); | |
2199 | } | |
e83922f2 | 2200 | //GFC |
7d02d77f | 2201 | if(plotGFC2PtRP && gfcCommonHistRes2)Pt |
e83922f2 | 2202 | { |
2203 | (gfcCommonHistRes2->GetHistDiffFlowPtRP())->Draw("E1PSAME"); | |
2204 | } | |
2205 | if(plotGFC4PtRP && gfcCommonHistRes4) | |
2206 | { | |
2207 | (gfcCommonHistRes4->GetHistDiffFlowPtRP())->Draw("E1PSAME"); | |
2208 | } | |
2209 | if(plotGFC6PtRP && gfcCommonHistRes6) | |
2210 | { | |
2211 | (gfcCommonHistRes6->GetHistDiffFlowPtRP())->Draw("E1PSAME"); | |
2212 | } | |
2213 | if(plotGFC8PtRP && gfcCommonHistRes8) | |
2214 | { | |
2215 | (gfcCommonHistRes8->GetHistDiffFlowPtRP())->Draw("E1PSAME"); | |
2216 | } | |
2217 | //QC | |
2218 | if(plotQC2PtRP && qcCommonHistRes2) | |
2219 | { | |
2220 | (qcCommonHistRes2->GetHistDiffFlowPtRP())->Draw("E1PSAME"); | |
2221 | } | |
2222 | if(plotQC4PtRP && qcCommonHistRes4) | |
2223 | { | |
2224 | (qcCommonHistRes4->GetHistDiffFlowPtRP())->Draw("E1PSAME"); | |
2225 | } | |
2226 | if(plotQC6PtRP && qcCommonHistRes6) | |
2227 | { | |
7d02d77f | 2228 | //(qcCommonHistRes6->GetHistDiffFlowPtRP())->Draw("E1PSAME"); |
e83922f2 | 2229 | } |
2230 | if(plotQC8PtRP && qcCommonHistRes8) | |
2231 | { | |
7d02d77f | 2232 | //(qcCommonHistRes8->GetHistDiffFlowPtRP())->Draw("E1PSAME"); |
e83922f2 | 2233 | } |
947cc449 | 2234 | //LYZ2SUM |
2235 | if(plotLYZ2SUMPtRP && lyz2sumCommonHistRes) | |
2236 | { | |
2237 | (lyz2sumCommonHistRes->GetHistDiffFlowPtRP())->Draw("E1PSAME"); | |
2238 | } | |
2239 | //LYZ2PROD | |
2240 | if(plotLYZ2PRODPtRP && lyz2prodCommonHistRes) | |
e83922f2 | 2241 | { |
947cc449 | 2242 | (lyz2prodCommonHistRes->GetHistDiffFlowPtRP())->Draw("E1PSAME"); |
e83922f2 | 2243 | } |
2244 | //LYZEP | |
2245 | if(plotLYZEPPtRP && lyzepCommonHistRes) | |
2246 | { | |
2247 | (lyzepCommonHistRes->GetHistDiffFlowPtRP())->Draw("E1PSAME"); | |
2248 | } | |
1fca9c90 | 2249 | |
e83922f2 | 2250 | //2nd pad is for legend: |
dec3fab6 | 2251 | (diffFlowPtAllCanvasRP->cd(2))->SetPad(0.75,0.0,1.0,1.0); |
2252 | ||
2253 | TLegend* legendDiffFlowPtRP = new TLegend(0.02,0.12,0.97,0.70); | |
e83922f2 | 2254 | legendDiffFlowPtRP->SetTextFont(72); |
2255 | legendDiffFlowPtRP->SetTextSize(0.06); | |
2256 | ||
7d02d77f | 2257 | //legend's entries:Pt |
947cc449 | 2258 | TString *entryDiffMCPtRP = new TString("MC ........ "); |
2259 | TString *entryDiffSPPtRP = new TString("SP ........ "); | |
2260 | TString *entryDiffGFC2PtRP = new TString("GFC{2} .... "); | |
2261 | TString *entryDiffGFC4PtRP = new TString("GFC{4} .... "); | |
2262 | TString *entryDiffGFC6PtRP = new TString("GFC{6} .... "); | |
2263 | TString *entryDiffGFC8PtRP = new TString("GFC{8} .... "); | |
2264 | TString *entryDiffQC2PtRP = new TString("QC{2} ..... "); | |
2265 | TString *entryDiffQC4PtRP = new TString("QC{4} ..... "); | |
2266 | TString *entryDiffQC6PtRP = new TString("QC{6} ..... "); | |
2267 | TString *entryDiffQC8PtRP = new TString("QC{8} ..... "); | |
2268 | TString *entryDiffLYZ2SUMPtRP = new TString("LYZ{sum} .. "); | |
2269 | TString *entryDiffLYZ2PRODPtRP = new TString("LYZ{prod} . "); | |
2270 | TString *entryDiffLYZEPPtRP = new TString("LYZEP ..... "); | |
e83922f2 | 2271 | |
2272 | //MC | |
2273 | if(mcepCommonHistRes) | |
2274 | { | |
dec3fab6 | 2275 | (mcepCommonHistRes->GetHistDiffFlowPtRP())->SetFillStyle(meshStyleDiffFlowPtRP); |
2276 | (mcepCommonHistRes->GetHistDiffFlowPtRP())->SetFillColor(meshColorDiffFlowPtRP); | |
e83922f2 | 2277 | entryDiffMCPtRP->Append("M = "); |
2278 | (*entryDiffMCPtRP)+=(Long_t)avMultDiffFlowMCRP; | |
2279 | entryDiffMCPtRP->Append(", N = "); | |
2280 | (*entryDiffMCPtRP)+=(Long_t)nEvtsDiffFlowMCRP; | |
2281 | legendDiffFlowPtRP->AddEntry(mcepCommonHistRes->GetHistDiffFlowPtRP(),entryDiffMCPtRP->Data(),"f"); | |
2282 | } | |
905bed86 | 2283 | |
2284 | //SP | |
947cc449 | 2285 | if(plotSPPtRP && spCommonHistRes) |
905bed86 | 2286 | { |
905bed86 | 2287 | entryDiffSPPtRP->Append("M = "); |
2288 | (*entryDiffSPPtRP)+=(Long_t)avMultDiffFlowSPRP; | |
2289 | entryDiffSPPtRP->Append(", N = "); | |
2290 | (*entryDiffSPPtRP)+=(Long_t)nEvtsDiffFlowSPRP; | |
2291 | legendDiffFlowPtRP->AddEntry(spCommonHistRes->GetHistDiffFlowPtRP(),entryDiffSPPtRP->Data(),"p"); | |
2292 | } | |
1fca9c90 | 2293 | |
e83922f2 | 2294 | //GFC |
2295 | if(plotGFC2PtRP && gfcCommonHistRes2) | |
2296 | { | |
2297 | entryDiffGFC2PtRP->Append("M = "); | |
2298 | (*entryDiffGFC2PtRP)+=(Long_t)avMultDiffFlowGFCRP; | |
2299 | entryDiffGFC2PtRP->Append(", N = "); | |
2300 | (*entryDiffGFC2PtRP)+=(Long_t)nEvtsDiffFlowGFCRP; | |
2301 | legendDiffFlowPtRP->AddEntry(gfcCommonHistRes2->GetHistDiffFlowPtRP(),entryDiffGFC2PtRP->Data(),"p"); | |
2302 | } | |
2303 | if(plotGFC4PtRP && gfcCommonHistRes4) | |
2304 | { | |
2305 | entryDiffGFC4PtRP->Append("M = "); | |
2306 | (*entryDiffGFC4PtRP)+=(Long_t)avMultDiffFlowGFCRP; | |
2307 | entryDiffGFC4PtRP->Append(", N = "); | |
2308 | (*entryDiffGFC4PtRP)+=(Long_t)nEvtsDiffFlowGFCRP; | |
2309 | legendDiffFlowPtRP->AddEntry(gfcCommonHistRes4->GetHistDiffFlowPtRP(),entryDiffGFC4PtRP->Data(),"p"); | |
2310 | } | |
2311 | if(plotGFC6PtRP && gfcCommonHistRes6) | |
2312 | { | |
2313 | entryDiffGFC6PtRP->Append("M = "); | |
2314 | (*entryDiffGFC6PtRP)+=(Long_t)avMultDiffFlowGFCRP; | |
2315 | entryDiffGFC6PtRP->Append(", N = "); | |
2316 | (*entryDiffGFC6PtRP)+=(Long_t)nEvtsDiffFlowGFCRP; | |
2317 | legendDiffFlowPtRP->AddEntry(gfcCommonHistRes6->GetHistDiffFlowPtRP(),entryDiffGFC6PtRP->Data(),"p"); | |
2318 | } | |
2319 | if(plotGFC8PtRP && gfcCommonHistRes8) | |
2320 | { | |
2321 | entryDiffGFC8PtRP->Append("M = "); | |
2322 | (*entryDiffGFC8PtRP)+=(Long_t)avMultDiffFlowGFCRP; | |
2323 | entryDiffGFC8PtRP->Append(", N = "); | |
2324 | (*entryDiffGFC8PtRP)+=(Long_t)nEvtsDiffFlowGFCRP; | |
2325 | legendDiffFlowPtRP->AddEntry(gfcCommonHistRes8->GetHistDiffFlowPtRP(),entryDiffGFC8PtRP->Data(),"p"); | |
2326 | } | |
2327 | ||
2328 | //QC | |
2329 | if(plotQC2PtRP && qcCommonHistRes2) | |
2330 | { | |
2331 | entryDiffQC2PtRP->Append("M = "); | |
2332 | (*entryDiffQC2PtRP)+=(Long_t)avMultDiffFlowQC2RP; | |
2333 | entryDiffQC2PtRP->Append(", N = "); | |
2334 | (*entryDiffQC2PtRP)+=(Long_t)nEvtsDiffFlowQC2RP; | |
2335 | legendDiffFlowPtRP->AddEntry(qcCommonHistRes2->GetHistDiffFlowPtRP(),entryDiffQC2PtRP->Data(),"p"); | |
2336 | } | |
2337 | if(plotQC4PtRP && qcCommonHistRes4) | |
2338 | { | |
2339 | entryDiffQC4PtRP->Append("M = "); | |
2340 | (*entryDiffQC4PtRP)+=(Long_t)avMultDiffFlowQC4RP; | |
2341 | entryDiffQC4PtRP->Append(", N = "); | |
2342 | (*entryDiffQC4PtRP)+=(Long_t)nEvtsDiffFlowQC4RP; | |
2343 | legendDiffFlowPtRP->AddEntry(qcCommonHistRes4->GetHistDiffFlowPtRP(),entryDiffQC4PtRP->Data(),"p"); | |
2344 | } | |
2345 | if(plotQC6PtRP && qcCommonHistRes6) | |
2346 | { | |
2347 | entryDiffQC6PtRP->Append("M = "); | |
2348 | (*entryDiffQC6PtRP)+=(Long_t)avMultDiffFlowQC6RP; | |
2349 | entryDiffQC6PtRP->Append(", N = "); | |
2350 | (*entryDiffQC6PtRP)+=(Long_t)nEvtsDiffFlowQC6RP; | |
2351 | legendDiffFlowPtRP->AddEntry(qcCommonHistRes6->GetHistDiffFlowPtRP(),entryDiffQC6PtRP->Data(),"p"); | |
2352 | } | |
2353 | if(plotQC8PtRP && qcCommonHistRes8) | |
2354 | { | |
2355 | entryDiffQC8PtRP->Append("M = "); | |
2356 | (*entryDiffQC8PtRP)+=(Long_t)avMultDiffFlowQC8RP; | |
2357 | entryDiffQC8PtRP->Append(", N = "); | |
2358 | (*entryDiffQC8PtRP)+=(Long_t)nEvtsDiffFlowQC8RP; | |
2359 | legendDiffFlowPtRP->AddEntry(qcCommonHistRes8->GetHistDiffFlowPtRP(),entryDiffQC8PtRP->Data(),"p"); | |
2360 | } | |
2361 | ||
947cc449 | 2362 | //LYZ2SUM |
2363 | if(plotLYZ2SUMPtRP && lyz2sumCommonHistRes) | |
2364 | { | |
2365 | entryDiffLYZ2SUMPtRP->Append("M = "); | |
2366 | (*entryDiffLYZ2SUMPtRP)+=(Long_t)avMultDiffFlowLYZ2SUMRP; | |
2367 | entryDiffLYZ2SUMPtRP->Append(", N = "); | |
2368 | (*entryDiffLYZ2SUMPtRP)+=(Long_t)nEvtsDiffFlowLYZ2SUMRP; | |
2369 | legendDiffFlowPtRP->AddEntry(lyz2sumCommonHistRes->GetHistDiffFlowPtRP(),entryDiffLYZ2SUMPtRP->Data(),"p"); | |
2370 | } | |
2371 | ||
2372 | //LYZ2PROD | |
2373 | if(plotLYZ2PRODPtRP && lyz2prodCommonHistRes) | |
e83922f2 | 2374 | { |
947cc449 | 2375 | entryDiffLYZ2PRODPtRP->Append("M = "); |
2376 | (*entryDiffLYZ2PRODPtRP)+=(Long_t)avMultDiffFlowLYZ2PRODRP; | |
2377 | entryDiffLYZ2PRODPtRP->Append(", N = "); | |
2378 | (*entryDiffLYZ2PRODPtRP)+=(Long_t)nEvtsDiffFlowLYZ2PRODRP; | |
2379 | legendDiffFlowPtRP->AddEntry(lyz2prodCommonHistRes->GetHistDiffFlowPtRP(),entryDiffLYZ2PRODPtRP->Data(),"p"); | |
e83922f2 | 2380 | } |
2381 | ||
2382 | //LYZEP | |
2383 | if(plotLYZEPPtRP && lyzepCommonHistRes) | |
2384 | { | |
2385 | entryDiffLYZEPPtRP->Append("M = "); | |
2386 | (*entryDiffLYZEPPtRP)+=(Long_t)avMultDiffFlowLYZEPRP; | |
2387 | entryDiffLYZEPPtRP->Append(", N = "); | |
2388 | (*entryDiffLYZEPPtRP)+=(Long_t)nEvtsDiffFlowLYZEPRP; | |
2389 | legendDiffFlowPtRP->AddEntry(lyzepCommonHistRes->GetHistDiffFlowPtRP(),entryDiffLYZEPPtRP->Data(),"p"); | |
2390 | } | |
1fca9c90 | 2391 | |
dec3fab6 | 2392 | //drawing finally the legend in the 2nd pad: |
2393 | if(textDefault) textDefault->Draw(); | |
2394 | ||
e83922f2 | 2395 | if(legendDiffFlowPtRP) |
2396 | { | |
2397 | legendDiffFlowPtRP->SetMargin(0.15); | |
2398 | legendDiffFlowPtRP->Draw(); | |
2399 | } | |
2400 | }// end of if(plotDiffFlowPtRP) | |
1fca9c90 | 2401 | //---------------------------------------------------------------------------------- |
2402 | ||
1fca9c90 | 2403 | //---------------------------------------------------------------------------------- |
2404 | //final drawing for differential flow (Eta, RP): | |
e83922f2 | 2405 | if(plotDiffFlowEtaRP) |
2406 | { | |
2407 | TCanvas* diffFlowEtaAllCanvasRP = new TCanvas("Differential Flow (Eta) of RP","Differential Flow (Eta) of RP ",1000,600); | |
2408 | ||
2409 | diffFlowEtaAllCanvasRP->Divide(2,1); | |
2410 | ||
2411 | //1st pad is for plot: | |
2412 | (diffFlowEtaAllCanvasRP->cd(1))->SetPad(0.0,0.0,0.75,1.0); | |
2413 | ||
2414 | if(styleHistEta) | |
2415 | { | |
2416 | (styleHistEta->GetYaxis())->SetRangeUser(-0.3,1.0); | |
2417 | styleHistEta->Draw(); | |
2418 | } | |
2419 | if(pMeshDiffFlowEtaRP) | |
2420 | { | |
2421 | pMeshDiffFlowEtaRP->Draw("LFSAME"); | |
2422 | } | |
1fca9c90 | 2423 | |
e83922f2 | 2424 | //MC |
2425 | if(plotMCEtaRP && mcepCommonHistRes) | |
2426 | { | |
2427 | (mcepCommonHistRes->GetHistDiffFlowEtaRP())->Draw("E1PSAME"); | |
2428 | } | |
905bed86 | 2429 | //SP |
2430 | if(plotSPEtaRP && spCommonHistRes) | |
2431 | { | |
2432 | (spCommonHistRes->GetHistDiffFlowEtaRP())->Draw("E1PSAME"); | |
2433 | } | |
e83922f2 | 2434 | //GFC |
2435 | if(plotGFC2EtaRP && gfcCommonHistRes2) | |
2436 | { | |
2437 | (gfcCommonHistRes2->GetHistDiffFlowEtaRP())->Draw("E1PSAME"); | |
2438 | } | |
2439 | if(plotGFC4EtaRP && gfcCommonHistRes4) | |
2440 | { | |
2441 | (gfcCommonHistRes4->GetHistDiffFlowEtaRP())->Draw("E1PSAME"); | |
2442 | } | |
2443 | if(plotGFC6EtaRP && gfcCommonHistRes6) | |
2444 | { | |
2445 | (gfcCommonHistRes6->GetHistDiffFlowEtaRP())->Draw("E1PSAME"); | |
2446 | } | |
2447 | if(plotGFC8EtaRP && gfcCommonHistRes8) | |
2448 | { | |
2449 | (gfcCommonHistRes8->GetHistDiffFlowEtaRP())->Draw("E1PSAME"); | |
2450 | } | |
2451 | //QC | |
2452 | if(plotQC2EtaRP && qcCommonHistRes2) | |
2453 | { | |
2454 | (qcCommonHistRes2->GetHistDiffFlowEtaRP())->Draw("E1PSAME"); | |
2455 | } | |
2456 | if(plotQC4EtaRP && qcCommonHistRes4) | |
2457 | { | |
2458 | (qcCommonHistRes4->GetHistDiffFlowEtaRP())->Draw("E1PSAME"); | |
2459 | } | |
2460 | if(plotQC6EtaRP && qcCommonHistRes6) | |
2461 | { | |
7d02d77f | 2462 | //(qcCommonHistRes6->GetHistDiffFlowEtaRP())->Draw("E1PSAME"); |
e83922f2 | 2463 | } |
2464 | if(plotQC8EtaRP && qcCommonHistRes8) | |
2465 | { | |
7d02d77f | 2466 | //(qcCommonHistRes8->GetHistDiffFlowEtaRP())->Draw("E1PSAME"); |
e83922f2 | 2467 | } |
947cc449 | 2468 | //LYZ2SUM |
2469 | if(plotLYZ2SUMEtaRP && lyz2sumCommonHistRes) | |
e83922f2 | 2470 | { |
947cc449 | 2471 | (lyz2sumCommonHistRes->GetHistDiffFlowEtaRP())->Draw("E1PSAME"); |
2472 | } | |
2473 | //LYZ2PROD | |
2474 | if(plotLYZ2PRODEtaRP && lyz2prodCommonHistRes) | |
2475 | { | |
2476 | (lyz2prodCommonHistRes->GetHistDiffFlowEtaRP())->Draw("E1PSAME"); | |
e83922f2 | 2477 | } |
2478 | //LYZEP | |
2479 | if(plotLYZEPEtaRP && lyzepCommonHistRes) | |
2480 | { | |
2481 | (lyzepCommonHistRes->GetHistDiffFlowEtaRP())->Draw("E1PSAME"); | |
2482 | } | |
1fca9c90 | 2483 | |
e83922f2 | 2484 | //2nd pad is for legend: |
2485 | (diffFlowEtaAllCanvasRP->cd(2))->SetPad(0.75,0.0,1.0,1.0); | |
2486 | ||
dec3fab6 | 2487 | TLegend* legendDiffFlowEtaRP = new TLegend(0.02,0.12,0.97,0.70); |
e83922f2 | 2488 | legendDiffFlowEtaRP->SetTextFont(72); |
2489 | legendDiffFlowEtaRP->SetTextSize(0.06); | |
2490 | ||
2491 | //legend's entries: | |
947cc449 | 2492 | TString *entryDiffMCEtaRP = new TString("MC ........ "); |
2493 | TString *entryDiffSPEtaRP = new TString("SP ........ "); | |
2494 | TString *entryDiffGFC2EtaRP = new TString("GFC{2} .... "); | |
2495 | TString *entryDiffGFC4EtaRP = new TString("GFC{4} .... "); | |
2496 | TString *entryDiffGFC6EtaRP = new TString("GFC{6} .... "); | |
2497 | TString *entryDiffGFC8EtaRP = new TString("GFC{8} .... "); | |
2498 | TString *entryDiffQC2EtaRP = new TString("QC{2} ..... "); | |
2499 | TString *entryDiffQC4EtaRP = new TString("QC{4} ..... "); | |
2500 | TString *entryDiffQC6EtaRP = new TString("QC{6} ..... "); | |
2501 | TString *entryDiffQC8EtaRP = new TString("QC{8} ..... "); | |
2502 | TString *entryDiffLYZ2SUMEtaRP = new TString("LYZ{sum} .. "); | |
2503 | TString *entryDiffLYZ2PRODEtaRP = new TString("LYZ{prod} . "); | |
2504 | TString *entryDiffLYZEPEtaRP = new TString("LYZEP ..... "); | |
e83922f2 | 2505 | |
2506 | //MC | |
2507 | if(mcepCommonHistRes) | |
2508 | { | |
dec3fab6 | 2509 | (mcepCommonHistRes->GetHistDiffFlowEtaRP())->SetFillStyle(meshStyleDiffFlowEtaRP); |
2510 | (mcepCommonHistRes->GetHistDiffFlowEtaRP())->SetFillColor(meshColorDiffFlowEtaRP); | |
e83922f2 | 2511 | entryDiffMCEtaRP->Append("M = "); |
2512 | (*entryDiffMCEtaRP)+=(Long_t)avMultDiffFlowMCRP; | |
2513 | entryDiffMCEtaRP->Append(", N = "); | |
2514 | (*entryDiffMCEtaRP)+=(Long_t)nEvtsDiffFlowMCRP; | |
2515 | legendDiffFlowEtaRP->AddEntry(mcepCommonHistRes->GetHistDiffFlowEtaRP(),entryDiffMCEtaRP->Data(),"f"); | |
2516 | } | |
905bed86 | 2517 | |
2518 | //SP | |
947cc449 | 2519 | if(plotSPEtaRP && spCommonHistRes) |
905bed86 | 2520 | { |
905bed86 | 2521 | entryDiffSPEtaRP->Append("M = "); |
2522 | (*entryDiffSPEtaRP)+=(Long_t)avMultDiffFlowSPRP; | |
2523 | entryDiffSPEtaRP->Append(", N = "); | |
2524 | (*entryDiffSPEtaRP)+=(Long_t)nEvtsDiffFlowSPRP; | |
2525 | legendDiffFlowEtaRP->AddEntry(spCommonHistRes->GetHistDiffFlowEtaRP(),entryDiffSPEtaRP->Data(),"p"); | |
2526 | } | |
1fca9c90 | 2527 | |
e83922f2 | 2528 | //GFC |
2529 | if(plotGFC2EtaRP && gfcCommonHistRes2) | |
2530 | { | |
2531 | entryDiffGFC2EtaRP->Append("M = "); | |
2532 | (*entryDiffGFC2EtaRP)+=(Long_t)avMultDiffFlowGFCRP; | |
2533 | entryDiffGFC2EtaRP->Append(", N = "); | |
2534 | (*entryDiffGFC2EtaRP)+=(Long_t)nEvtsDiffFlowGFCRP; | |
2535 | legendDiffFlowEtaRP->AddEntry(gfcCommonHistRes2->GetHistDiffFlowEtaRP(),entryDiffGFC2EtaRP->Data(),"p"); | |
2536 | } | |
2537 | if(plotGFC4EtaRP && gfcCommonHistRes4) | |
2538 | { | |
2539 | entryDiffGFC4EtaRP->Append("M = "); | |
2540 | (*entryDiffGFC4EtaRP)+=(Long_t)avMultDiffFlowGFCRP; | |
2541 | entryDiffGFC4EtaRP->Append(", N = "); | |
2542 | (*entryDiffGFC4EtaRP)+=(Long_t)nEvtsDiffFlowGFCRP; | |
2543 | legendDiffFlowEtaRP->AddEntry(gfcCommonHistRes4->GetHistDiffFlowEtaRP(),entryDiffGFC4EtaRP->Data(),"p"); | |
2544 | } | |
2545 | if(plotGFC6EtaRP && gfcCommonHistRes6) | |
2546 | { | |
2547 | entryDiffGFC6EtaRP->Append("M = "); | |
2548 | (*entryDiffGFC6EtaRP)+=(Long_t)avMultDiffFlowGFCRP; | |
2549 | entryDiffGFC6EtaRP->Append(", N = "); | |
2550 | (*entryDiffGFC6EtaRP)+=(Long_t)nEvtsDiffFlowGFCRP; | |
2551 | legendDiffFlowEtaRP->AddEntry(gfcCommonHistRes6->GetHistDiffFlowEtaRP(),entryDiffGFC6EtaRP->Data(),"p"); | |
2552 | } | |
2553 | if(plotGFC8EtaRP && gfcCommonHistRes8) | |
2554 | { | |
2555 | entryDiffGFC8EtaRP->Append("M = "); | |
2556 | (*entryDiffGFC8EtaRP)+=(Long_t)avMultDiffFlowGFCRP; | |
2557 | entryDiffGFC8EtaRP->Append(", N = "); | |
2558 | (*entryDiffGFC8EtaRP)+=(Long_t)nEvtsDiffFlowGFCRP; | |
2559 | legendDiffFlowEtaRP->AddEntry(gfcCommonHistRes8->GetHistDiffFlowEtaRP(),entryDiffGFC8EtaRP->Data(),"p"); | |
2560 | } | |
2561 | ||
2562 | //QC | |
2563 | if(plotQC2EtaRP && qcCommonHistRes2) | |
2564 | { | |
2565 | entryDiffQC2EtaRP->Append("M = "); | |
2566 | (*entryDiffQC2EtaRP)+=(Long_t)avMultDiffFlowQC2RP; | |
2567 | entryDiffQC2EtaRP->Append(", N = "); | |
2568 | (*entryDiffQC2EtaRP)+=(Long_t)nEvtsDiffFlowQC2RP; | |
2569 | legendDiffFlowEtaRP->AddEntry(qcCommonHistRes2->GetHistDiffFlowEtaRP(),entryDiffQC2EtaRP->Data(),"p"); | |
2570 | } | |
2571 | if(plotQC4EtaRP && qcCommonHistRes4) | |
2572 | { | |
2573 | entryDiffQC4EtaRP->Append("M = "); | |
2574 | (*entryDiffQC4EtaRP)+=(Long_t)avMultDiffFlowQC4RP; | |
2575 | entryDiffQC4EtaRP->Append(", N = "); | |
2576 | (*entryDiffQC4EtaRP)+=(Long_t)nEvtsDiffFlowQC4RP; | |
2577 | legendDiffFlowEtaRP->AddEntry(qcCommonHistRes4->GetHistDiffFlowEtaRP(),entryDiffQC4EtaRP->Data(),"p"); | |
2578 | } | |
2579 | if(plotQC6EtaRP && qcCommonHistRes6) | |
2580 | { | |
2581 | entryDiffQC6EtaRP->Append("M = "); | |
2582 | (*entryDiffQC6EtaRP)+=(Long_t)avMultDiffFlowQC6RP; | |
2583 | entryDiffQC6EtaRP->Append(", N = "); | |
2584 | (*entryDiffQC6EtaRP)+=(Long_t)nEvtsDiffFlowQC6RP; | |
2585 | legendDiffFlowEtaRP->AddEntry(qcCommonHistRes6->GetHistDiffFlowEtaRP(),entryDiffQC6EtaRP->Data(),"p"); | |
2586 | } | |
2587 | if(plotQC8EtaRP && qcCommonHistRes8) | |
2588 | { | |
2589 | entryDiffQC8EtaRP->Append("M = "); | |
2590 | (*entryDiffQC8EtaRP)+=(Long_t)avMultDiffFlowQC8RP; | |
2591 | entryDiffQC8EtaRP->Append(", N = "); | |
2592 | (*entryDiffQC8EtaRP)+=(Long_t)nEvtsDiffFlowQC8RP; | |
2593 | legendDiffFlowEtaRP->AddEntry(qcCommonHistRes8->GetHistDiffFlowEtaRP(),entryDiffQC8EtaRP->Data(),"p"); | |
2594 | } | |
1fca9c90 | 2595 | |
947cc449 | 2596 | //LYZ2SUM |
2597 | if(plotLYZ2SUMEtaRP && lyz2sumCommonHistRes) | |
2598 | { | |
2599 | entryDiffLYZ2SUMEtaRP->Append("M = "); | |
2600 | (*entryDiffLYZ2SUMEtaRP)+=(Long_t)avMultDiffFlowLYZ2SUMRP; | |
2601 | entryDiffLYZ2SUMEtaRP->Append(", N = "); | |
2602 | (*entryDiffLYZ2SUMEtaRP)+=(Long_t)nEvtsDiffFlowLYZ2SUMRP; | |
2603 | legendDiffFlowEtaRP->AddEntry(lyz2sumCommonHistRes->GetHistDiffFlowEtaRP(),entryDiffLYZ2SUMEtaRP->Data(),"p"); | |
2604 | } | |
2605 | ||
2606 | //LYZ2PROD | |
2607 | if(plotLYZ2PRODEtaRP && lyz2prodCommonHistRes) | |
e83922f2 | 2608 | { |
947cc449 | 2609 | entryDiffLYZ2PRODEtaRP->Append("M = "); |
2610 | (*entryDiffLYZ2PRODEtaRP)+=(Long_t)avMultDiffFlowLYZ2PRODRP; | |
2611 | entryDiffLYZ2PRODEtaRP->Append(", N = "); | |
2612 | (*entryDiffLYZ2PRODEtaRP)+=(Long_t)nEvtsDiffFlowLYZ2PRODRP; | |
2613 | legendDiffFlowEtaRP->AddEntry(lyz2prodCommonHistRes->GetHistDiffFlowEtaRP(),entryDiffLYZ2PRODEtaRP->Data(),"p"); | |
e83922f2 | 2614 | } |
2615 | ||
2616 | //LYZEP | |
2617 | if(plotLYZEPEtaRP && lyzepCommonHistRes) | |
2618 | { | |
2619 | entryDiffLYZEPEtaRP->Append("M = "); | |
2620 | (*entryDiffLYZEPEtaRP)+=(Long_t)avMultDiffFlowLYZEPRP; | |
2621 | entryDiffLYZEPEtaRP->Append(", N = "); | |
2622 | (*entryDiffLYZEPEtaRP)+=(Long_t)nEvtsDiffFlowLYZEPRP; | |
2623 | legendDiffFlowEtaRP->AddEntry(lyzepCommonHistRes->GetHistDiffFlowEtaRP(),entryDiffLYZEPEtaRP->Data(),"p"); | |
2624 | } | |
1fca9c90 | 2625 | |
dec3fab6 | 2626 | //drawing finally the legend in the 2nd pad: |
2627 | if(textDefault) textDefault->Draw(); | |
2628 | ||
e83922f2 | 2629 | if(legendDiffFlowEtaRP) |
2630 | { | |
2631 | legendDiffFlowEtaRP->SetMargin(0.15); | |
2632 | legendDiffFlowEtaRP->Draw(); | |
2633 | } | |
2634 | }// end of if(plotDiffFlowEtaRP) | |
1fca9c90 | 2635 | //---------------------------------------------------------------------------------- |
c365fe76 | 2636 | |
688877b8 | 2637 | //---------------------------------------------------------------------------------- |
2638 | // final drawing for plot |(v{method}-v{MC})/v{MC}| as a function of pt for RPs | |
2639 | if(plotDiffFlowPtRelativeToMCRP) | |
2640 | { | |
251b57f2 | 2641 | TCanvas* diffFlowPtRelativeToMCRP = new TCanvas("Differential Flow (Pt) of RPs relative to MC","Differential Flow (Pt) of RPs relative to MC",1000,600); |
688877b8 | 2642 | |
2643 | diffFlowPtRelativeToMCRP->Divide(2,1); | |
2644 | ||
2645 | //1st pad is for plot: | |
2646 | (diffFlowPtRelativeToMCRP->cd(1))->SetPad(0.0,0.0,0.75,1.0); | |
2647 | ||
2648 | if(styleHistPt) | |
2649 | { | |
7fb984f6 | 2650 | TH1D *styleHistPtReleativeToMC = new TH1D(*styleHistPt); |
2651 | (styleHistPtReleativeToMC->GetYaxis())->SetRangeUser(-4.0,4.0); | |
2652 | (styleHistPtReleativeToMC->GetYaxis())->SetTitle("(v_{n}\{method\} - v_{n}\{MC\})/v_{n}\{MC\}"); | |
2653 | styleHistPtReleativeToMC->Draw(); | |
688877b8 | 2654 | } |
7fb984f6 | 2655 | |
688877b8 | 2656 | TH1D *spDiffFlowPtRelativeToMCRP = new TH1D("","",iNbinsPt,dPtMin,dPtMax); |
2657 | TH1D *gfc2DiffFlowPtRelativeToMCRP = new TH1D("","",iNbinsPt,dPtMin,dPtMax); | |
2658 | TH1D *gfc4DiffFlowPtRelativeToMCRP = new TH1D("","",iNbinsPt,dPtMin,dPtMax); | |
2659 | TH1D *gfc6DiffFlowPtRelativeToMCRP = new TH1D("","",iNbinsPt,dPtMin,dPtMax); | |
2660 | TH1D *gfc8DiffFlowPtRelativeToMCRP = new TH1D("","",iNbinsPt,dPtMin,dPtMax); | |
2661 | TH1D *qc2DiffFlowPtRelativeToMCRP = new TH1D("","",iNbinsPt,dPtMin,dPtMax); | |
2662 | TH1D *qc4DiffFlowPtRelativeToMCRP = new TH1D("","",iNbinsPt,dPtMin,dPtMax); | |
2663 | TH1D *qc6DiffFlowPtRelativeToMCRP = new TH1D("","",iNbinsPt,dPtMin,dPtMax); | |
2664 | TH1D *qc8DiffFlowPtRelativeToMCRP = new TH1D("","",iNbinsPt,dPtMin,dPtMax); | |
947cc449 | 2665 | TH1D *lyz2sumDiffFlowPtRelativeToMCRP = new TH1D("","",iNbinsPt,dPtMin,dPtMax); |
2666 | TH1D *lyz2prodDiffFlowPtRelativeToMCRP = new TH1D("","",iNbinsPt,dPtMin,dPtMax); | |
688877b8 | 2667 | TH1D *lyzepDiffFlowPtRelativeToMCRP = new TH1D("","",iNbinsPt,dPtMin,dPtMax); |
2668 | ||
c49a8c1c | 2669 | if(mcepCommonHistRes && mcepCommonHistRes->GetHistDiffFlowPtRP()) |
688877b8 | 2670 | { |
2671 | for(Int_t p=1;p<iNbinsPt+1;p++) | |
2672 | { | |
2673 | Double_t dvnMC = (mcepCommonHistRes->GetHistDiffFlowPtRP())->GetBinContent(p); | |
2674 | ||
2675 | // SP: | |
2676 | Double_t dvnSP = 0.; | |
7fb984f6 | 2677 | Double_t dvnErrorSP = 0.; |
688877b8 | 2678 | if(spCommonHistRes && spCommonHistRes->GetHistDiffFlowPtRP()) |
2679 | { | |
2680 | dvnSP = (spCommonHistRes->GetHistDiffFlowPtRP())->GetBinContent(p); | |
7fb984f6 | 2681 | dvnErrorSP = (spCommonHistRes->GetHistDiffFlowPtRP())->GetBinError(p); |
688877b8 | 2682 | } |
2683 | if(dvnMC!=0. && dvnSP!=0.) | |
2684 | { | |
cf90787f | 2685 | spDiffFlowPtRelativeToMCRP->SetBinContent(p,(dvnSP-dvnMC)/dvnMC); |
b27d2a65 | 2686 | spDiffFlowPtRelativeToMCRP->SetBinError(p,dvnErrorSP/dvnMC); |
688877b8 | 2687 | } |
2688 | ||
2689 | // GFC{2}: | |
2690 | Double_t dvnGFC2 = 0.; | |
7fb984f6 | 2691 | Double_t dvnErrorGFC2 = 0.; |
688877b8 | 2692 | if(gfcCommonHistRes2 && gfcCommonHistRes2->GetHistDiffFlowPtRP()) |
2693 | { | |
2694 | dvnGFC2 = (gfcCommonHistRes2->GetHistDiffFlowPtRP())->GetBinContent(p); | |
7fb984f6 | 2695 | dvnErrorGFC2 = (gfcCommonHistRes2->GetHistDiffFlowPtRP())->GetBinError(p); |
688877b8 | 2696 | } |
2697 | if(dvnMC!=0. && dvnGFC2!=0.) | |
2698 | { | |
cf90787f | 2699 | gfc2DiffFlowPtRelativeToMCRP->SetBinContent(p,(dvnGFC2-dvnMC)/dvnMC); |
b27d2a65 | 2700 | gfc2DiffFlowPtRelativeToMCRP->SetBinError(p,dvnErrorGFC2/dvnMC); |
688877b8 | 2701 | } |
2702 | ||
2703 | // GFC{4}: | |
2704 | Double_t dvnGFC4 = 0.; | |
7fb984f6 | 2705 | Double_t dvnErrorGFC4 = 0.; |
688877b8 | 2706 | if(gfcCommonHistRes4 && gfcCommonHistRes4->GetHistDiffFlowPtRP()) |
2707 | { | |
2708 | dvnGFC4 = (gfcCommonHistRes4->GetHistDiffFlowPtRP())->GetBinContent(p); | |
7fb984f6 | 2709 | dvnErrorGFC4 = (gfcCommonHistRes4->GetHistDiffFlowPtRP())->GetBinError(p); |
688877b8 | 2710 | } |
2711 | if(dvnMC!=0. && dvnGFC4!=0.) | |
2712 | { | |
cf90787f | 2713 | gfc4DiffFlowPtRelativeToMCRP->SetBinContent(p,(dvnGFC4-dvnMC)/dvnMC); |
b27d2a65 | 2714 | gfc4DiffFlowPtRelativeToMCRP->SetBinError(p,dvnErrorGFC4/dvnMC); |
688877b8 | 2715 | } |
2716 | ||
2717 | // GFC{6}: | |
2718 | Double_t dvnGFC6 = 0.; | |
7fb984f6 | 2719 | Double_t dvnErrorGFC6 = 0.; |
688877b8 | 2720 | if(gfcCommonHistRes6 && gfcCommonHistRes6->GetHistDiffFlowPtRP()) |
2721 | { | |
2722 | dvnGFC6 = (gfcCommonHistRes6->GetHistDiffFlowPtRP())->GetBinContent(p); | |
7fb984f6 | 2723 | dvnErrorGFC6 = (gfcCommonHistRes6->GetHistDiffFlowPtRP())->GetBinError(p); |
688877b8 | 2724 | } |
2725 | if(dvnMC!=0. && dvnGFC6!=0.) | |
2726 | { | |
cf90787f | 2727 | gfc6DiffFlowPtRelativeToMCRP->SetBinContent(p,(dvnGFC6-dvnMC)/dvnMC); |
b27d2a65 | 2728 | gfc6DiffFlowPtRelativeToMCRP->SetBinError(p,dvnErrorGFC6/dvnMC); |
688877b8 | 2729 | } |
2730 | ||
2731 | // GFC{8}: | |
2732 | Double_t dvnGFC8 = 0.; | |
7fb984f6 | 2733 | Double_t dvnErrorGFC8 = 0.; |
688877b8 | 2734 | if(gfcCommonHistRes8 && gfcCommonHistRes8->GetHistDiffFlowPtRP()) |
2735 | { | |
2736 | dvnGFC8 = (gfcCommonHistRes8->GetHistDiffFlowPtRP())->GetBinContent(p); | |
7fb984f6 | 2737 | dvnErrorGFC8 = (gfcCommonHistRes8->GetHistDiffFlowPtRP())->GetBinError(p); |
688877b8 | 2738 | } |
2739 | if(dvnMC!=0. && dvnGFC8!=0.) | |
2740 | { | |
cf90787f | 2741 | gfc8DiffFlowPtRelativeToMCRP->SetBinContent(p,(dvnGFC8-dvnMC)/dvnMC); |
b27d2a65 | 2742 | gfc8DiffFlowPtRelativeToMCRP->SetBinError(p,dvnErrorGFC8/dvnMC); |
688877b8 | 2743 | } |
2744 | ||
2745 | // QC{2}: | |
2746 | Double_t dvnQC2 = 0.; | |
7fb984f6 | 2747 | Double_t dvnErrorQC2 = 0.; |
688877b8 | 2748 | if(qcCommonHistRes2 && qcCommonHistRes2->GetHistDiffFlowPtRP()) |
2749 | { | |
2750 | dvnQC2 = (qcCommonHistRes2->GetHistDiffFlowPtRP())->GetBinContent(p); | |
7fb984f6 | 2751 | dvnErrorQC2 = (qcCommonHistRes2->GetHistDiffFlowPtRP())->GetBinError(p); |
688877b8 | 2752 | } |
2753 | if(dvnMC!=0. && dvnQC2!=0.) | |
2754 | { | |
cf90787f | 2755 | qc2DiffFlowPtRelativeToMCRP->SetBinContent(p,(dvnQC2-dvnMC)/dvnMC); |
b27d2a65 | 2756 | qc2DiffFlowPtRelativeToMCRP->SetBinError(p,dvnErrorQC2/dvnMC); |
688877b8 | 2757 | } |
2758 | ||
2759 | // QC{4}: | |
2760 | Double_t dvnQC4 = 0.; | |
7fb984f6 | 2761 | Double_t dvnErrorQC4 = 0.; |
688877b8 | 2762 | if(qcCommonHistRes4 && qcCommonHistRes4->GetHistDiffFlowPtRP()) |
2763 | { | |
2764 | dvnQC4 = (qcCommonHistRes4->GetHistDiffFlowPtRP())->GetBinContent(p); | |
7fb984f6 | 2765 | dvnErrorQC4 = (qcCommonHistRes4->GetHistDiffFlowPtRP())->GetBinError(p); |
688877b8 | 2766 | } |
2767 | if(dvnMC!=0. && dvnQC4!=0.) | |
2768 | { | |
cf90787f | 2769 | qc4DiffFlowPtRelativeToMCRP->SetBinContent(p,(dvnQC4-dvnMC)/dvnMC); |
b27d2a65 | 2770 | qc4DiffFlowPtRelativeToMCRP->SetBinError(p,dvnErrorQC4/dvnMC); |
688877b8 | 2771 | } |
2772 | ||
2773 | // QC{6}: | |
2774 | Double_t dvnQC6 = 0.; | |
7fb984f6 | 2775 | Double_t dvnErrorQC6 = 0.; |
688877b8 | 2776 | if(qcCommonHistRes6 && qcCommonHistRes6->GetHistDiffFlowPtRP()) |
2777 | { | |
2778 | dvnQC6 = (qcCommonHistRes6->GetHistDiffFlowPtRP())->GetBinContent(p); | |
7fb984f6 | 2779 | dvnErrorQC6 = (qcCommonHistRes6->GetHistDiffFlowPtRP())->GetBinError(p); |
688877b8 | 2780 | } |
2781 | if(dvnMC!=0. && dvnQC6!=0.) | |
2782 | { | |
cf90787f | 2783 | qc6DiffFlowPtRelativeToMCRP->SetBinContent(p,(dvnQC6-dvnMC)/dvnMC); |
b27d2a65 | 2784 | qc6DiffFlowPtRelativeToMCRP->SetBinError(p,dvnErrorQC6/dvnMC); |
688877b8 | 2785 | } |
2786 | ||
2787 | // QC{8}: | |
2788 | Double_t dvnQC8 = 0.; | |
7fb984f6 | 2789 | Double_t dvnErrorQC8 = 0.; |
688877b8 | 2790 | if(qcCommonHistRes8 && qcCommonHistRes8->GetHistDiffFlowPtRP()) |
2791 | { | |
2792 | dvnQC8 = (qcCommonHistRes8->GetHistDiffFlowPtRP())->GetBinContent(p); | |
7fb984f6 | 2793 | dvnErrorQC8 = (qcCommonHistRes8->GetHistDiffFlowPtRP())->GetBinError(p); |
688877b8 | 2794 | } |
2795 | if(dvnMC!=0. && dvnQC8!=0.) | |
2796 | { | |
cf90787f | 2797 | qc8DiffFlowPtRelativeToMCRP->SetBinContent(p,(dvnQC8-dvnMC)/dvnMC); |
b27d2a65 | 2798 | qc8DiffFlowPtRelativeToMCRP->SetBinError(p,dvnErrorQC8/dvnMC); |
688877b8 | 2799 | } |
2800 | ||
947cc449 | 2801 | // LYZ2SUM: |
2802 | Double_t dvnLYZ2SUM = 0.; | |
2803 | Double_t dvnErrorLYZ2SUM = 0.; | |
2804 | if(lyz2sumCommonHistRes && lyz2sumCommonHistRes->GetHistDiffFlowPtRP()) | |
2805 | { | |
2806 | dvnLYZ2SUM = (lyz2sumCommonHistRes->GetHistDiffFlowPtRP())->GetBinContent(p); | |
2807 | dvnErrorLYZ2SUM = (lyz2sumCommonHistRes->GetHistDiffFlowPtRP())->GetBinError(p); | |
2808 | } | |
2809 | if(dvnMC!=0. && dvnLYZ2SUM!=0.) | |
688877b8 | 2810 | { |
947cc449 | 2811 | lyz2sumDiffFlowPtRelativeToMCRP->SetBinContent(p,(dvnLYZ2SUM-dvnMC)/dvnMC); |
2812 | lyz2sumDiffFlowPtRelativeToMCRP->SetBinError(p,dvnErrorLYZ2SUM/dvnMC); | |
688877b8 | 2813 | } |
947cc449 | 2814 | |
2815 | // LYZ2PROD: | |
2816 | Double_t dvnLYZ2PROD = 0.; | |
2817 | Double_t dvnErrorLYZ2PROD = 0.; | |
2818 | if(lyz2prodCommonHistRes && lyz2prodCommonHistRes->GetHistDiffFlowPtRP()) | |
688877b8 | 2819 | { |
947cc449 | 2820 | dvnLYZ2PROD = (lyz2prodCommonHistRes->GetHistDiffFlowPtRP())->GetBinContent(p); |
2821 | dvnErrorLYZ2PROD = (lyz2prodCommonHistRes->GetHistDiffFlowPtRP())->GetBinError(p); | |
2822 | } | |
2823 | if(dvnMC!=0. && dvnLYZ2PROD!=0.) | |
2824 | { | |
2825 | lyz2prodDiffFlowPtRelativeToMCRP->SetBinContent(p,(dvnLYZ2PROD-dvnMC)/dvnMC); | |
2826 | lyz2prodDiffFlowPtRelativeToMCRP->SetBinError(p,dvnErrorLYZ2PROD/dvnMC); | |
688877b8 | 2827 | } |
2828 | ||
2829 | // LYZEP: | |
2830 | Double_t dvnLYZEP = 0.; | |
7fb984f6 | 2831 | Double_t dvnErrorLYZEP = 0.; |
688877b8 | 2832 | if(lyzepCommonHistRes && lyzepCommonHistRes->GetHistDiffFlowPtRP()) |
2833 | { | |
2834 | dvnLYZEP = (lyzepCommonHistRes->GetHistDiffFlowPtRP())->GetBinContent(p); | |
7fb984f6 | 2835 | dvnErrorLYZEP = (lyzepCommonHistRes->GetHistDiffFlowPtRP())->GetBinError(p); |
688877b8 | 2836 | } |
2837 | if(dvnMC!=0. && dvnLYZEP!=0.) | |
2838 | { | |
cf90787f | 2839 | lyzepDiffFlowPtRelativeToMCRP->SetBinContent(p,(dvnLYZEP-dvnMC)/dvnMC); |
b27d2a65 | 2840 | lyzepDiffFlowPtRelativeToMCRP->SetBinError(p,dvnErrorLYZEP/dvnMC); |
688877b8 | 2841 | } |
2842 | ||
2843 | } // end of for(Int_t p=1;p<iNbinsPt+1;p++) | |
2844 | } // end of if(mcepCommonHistRes->GetHistDiffFlowPtRP()) | |
2845 | ||
2846 | ||
2847 | // final drawings: | |
2848 | spDiffFlowPtRelativeToMCRP->SetMarkerColor(markerColorSP); | |
2849 | spDiffFlowPtRelativeToMCRP->SetMarkerStyle(markerStyleSP); | |
7fb984f6 | 2850 | if(plotSPRelativeToMCRP && spCommonHistRes) spDiffFlowPtRelativeToMCRP->Draw("E1PSAME"); |
688877b8 | 2851 | |
2852 | gfc2DiffFlowPtRelativeToMCRP->SetMarkerColor(markerColorGFC2); | |
2853 | gfc2DiffFlowPtRelativeToMCRP->SetMarkerStyle(markerStyleGFC2); | |
7fb984f6 | 2854 | if(plotGFC2RelativeToMCRP && gfcCommonHistRes2) gfc2DiffFlowPtRelativeToMCRP->Draw("E1PSAME"); |
688877b8 | 2855 | |
2856 | gfc4DiffFlowPtRelativeToMCRP->SetMarkerColor(markerColorGFC4); | |
2857 | gfc4DiffFlowPtRelativeToMCRP->SetMarkerStyle(markerStyleGFC4); | |
7fb984f6 | 2858 | if(plotGFC4RelativeToMCRP && gfcCommonHistRes4) gfc4DiffFlowPtRelativeToMCRP->Draw("E1PSAME"); |
688877b8 | 2859 | |
2860 | gfc6DiffFlowPtRelativeToMCRP->SetMarkerColor(markerColorGFC6); | |
2861 | gfc6DiffFlowPtRelativeToMCRP->SetMarkerStyle(markerStyleGFC6); | |
7fb984f6 | 2862 | if(plotGFC6RelativeToMCRP && gfcCommonHistRes6) gfc6DiffFlowPtRelativeToMCRP->Draw("E1PSAME"); |
688877b8 | 2863 | |
2864 | gfc8DiffFlowPtRelativeToMCRP->SetMarkerColor(markerColorGFC8); | |
2865 | gfc8DiffFlowPtRelativeToMCRP->SetMarkerStyle(markerStyleGFC8); | |
7fb984f6 | 2866 | if(plotGFC8RelativeToMCRP && gfcCommonHistRes8) gfc8DiffFlowPtRelativeToMCRP->Draw("E1PSAME"); |
688877b8 | 2867 | |
2868 | qc2DiffFlowPtRelativeToMCRP->SetMarkerColor(markerColorQC2); | |
2869 | qc2DiffFlowPtRelativeToMCRP->SetMarkerStyle(markerStyleQC2); | |
2870 | if(plotQC2RelativeToMCRP && qcCommonHistRes2) qc2DiffFlowPtRelativeToMCRP->Draw("PSAME"); | |
2871 | ||
2872 | qc4DiffFlowPtRelativeToMCRP->SetMarkerColor(markerColorQC4); | |
2873 | qc4DiffFlowPtRelativeToMCRP->SetMarkerStyle(markerStyleQC4); | |
2874 | if(plotQC4RelativeToMCRP && qcCommonHistRes4) qc4DiffFlowPtRelativeToMCRP->Draw("PSAME"); | |
2875 | ||
2876 | qc6DiffFlowPtRelativeToMCRP->SetMarkerColor(markerColorQC6); | |
2877 | qc6DiffFlowPtRelativeToMCRP->SetMarkerStyle(markerStyleQC6); | |
2878 | if(plotQC6RelativeToMCRP && qcCommonHistRes6) qc6DiffFlowPtRelativeToMCRP->Draw("PSAME"); | |
2879 | ||
2880 | qc8DiffFlowPtRelativeToMCRP->SetMarkerColor(markerColorQC8); | |
2881 | qc8DiffFlowPtRelativeToMCRP->SetMarkerStyle(markerStyleQC8); | |
2882 | if(plotQC8RelativeToMCRP && qcCommonHistRes8) qc8DiffFlowPtRelativeToMCRP->Draw("PSAME"); | |
2883 | ||
947cc449 | 2884 | lyz2sumDiffFlowPtRelativeToMCRP->SetMarkerColor(markerColorLYZ2SUM); |
2885 | lyz2sumDiffFlowPtRelativeToMCRP->SetMarkerStyle(markerStyleLYZ2SUM); | |
2886 | if(plotLYZ2SUMRelativeToMCRP && lyz2sumCommonHistRes) lyz2sumDiffFlowPtRelativeToMCRP->Draw("E1PSAME"); | |
2887 | ||
2888 | lyz2prodDiffFlowPtRelativeToMCRP->SetMarkerColor(markerColorLYZ2SUM); | |
2889 | lyz2prodDiffFlowPtRelativeToMCRP->SetMarkerStyle(markerStyleLYZ2SUM); | |
2890 | if(plotLYZ2SUMRelativeToMCRP && lyz2prodCommonHistRes) lyz2prodDiffFlowPtRelativeToMCRP->Draw("E1PSAME"); | |
688877b8 | 2891 | |
2892 | lyzepDiffFlowPtRelativeToMCRP->SetMarkerColor(markerColorLYZEP); | |
2893 | lyzepDiffFlowPtRelativeToMCRP->SetMarkerStyle(markerStyleLYZEP); | |
7fb984f6 | 2894 | if(plotLYZEPRelativeToMCRP && lyzepCommonHistRes) lyzepDiffFlowPtRelativeToMCRP->Draw("E1PSAME"); |
688877b8 | 2895 | |
2896 | //2nd pad is for legend: | |
2897 | (diffFlowPtRelativeToMCRP->cd(2))->SetPad(0.75,0.0,1.0,1.0); | |
2898 | ||
2899 | TLegend* legendDiffFlowPtRP = new TLegend(0.02,0.12,0.97,0.70); | |
2900 | legendDiffFlowPtRP->SetTextFont(72); | |
2901 | legendDiffFlowPtRP->SetTextSize(0.06); | |
2902 | ||
947cc449 | 2903 | //legend's entries:Pt |
2904 | TString *entryDiffMCPtRP = new TString("MC ........ "); | |
2905 | TString *entryDiffSPPtRP = new TString("SP ........ "); | |
2906 | TString *entryDiffGFC2PtRP = new TString("GFC{2} .... "); | |
2907 | TString *entryDiffGFC4PtRP = new TString("GFC{4} .... "); | |
2908 | TString *entryDiffGFC6PtRP = new TString("GFC{6} .... "); | |
2909 | TString *entryDiffGFC8PtRP = new TString("GFC{8} .... "); | |
2910 | TString *entryDiffQC2PtRP = new TString("QC{2} ..... "); | |
2911 | TString *entryDiffQC4PtRP = new TString("QC{4} ..... "); | |
2912 | TString *entryDiffQC6PtRP = new TString("QC{6} ..... "); | |
2913 | TString *entryDiffQC8PtRP = new TString("QC{8} ..... "); | |
2914 | TString *entryDiffLYZ2SUMPtRP = new TString("LYZ{sum} .. "); | |
2915 | TString *entryDiffLYZ2PRODPtRP = new TString("LYZ{prod} . "); | |
2916 | TString *entryDiffLYZEPPtRP = new TString("LYZEP ..... "); | |
688877b8 | 2917 | |
2918 | //MC | |
2919 | if(mcepCommonHistRes) | |
2920 | { | |
2921 | (mcepCommonHistRes->GetHistDiffFlowPtRP())->SetFillStyle(meshStyleDiffFlowPtRP); | |
2922 | (mcepCommonHistRes->GetHistDiffFlowPtRP())->SetFillColor(meshColorDiffFlowPtRP); | |
2923 | entryDiffMCPtRP->Append("M = "); | |
2924 | (*entryDiffMCPtRP)+=(Long_t)avMultDiffFlowMCRP; | |
2925 | entryDiffMCPtRP->Append(", N = "); | |
2926 | (*entryDiffMCPtRP)+=(Long_t)nEvtsDiffFlowMCRP; | |
2927 | //legendDiffFlowPtRP->AddEntry(mcepCommonHistRes->GetHistDiffFlowPtRP(),entryDiffMCPtRP->Data(),"f"); | |
2928 | } | |
2929 | ||
2930 | //SP | |
947cc449 | 2931 | if(plotSPPtRP && spCommonHistRes) |
688877b8 | 2932 | { |
2933 | entryDiffSPPtRP->Append("M = "); | |
2934 | (*entryDiffSPPtRP)+=(Long_t)avMultDiffFlowSPRP; | |
2935 | entryDiffSPPtRP->Append(", N = "); | |
2936 | (*entryDiffSPPtRP)+=(Long_t)nEvtsDiffFlowSPRP; | |
2937 | if(plotSPRelativeToMCRP) legendDiffFlowPtRP->AddEntry(spCommonHistRes->GetHistDiffFlowPtRP(),entryDiffSPPtRP->Data(),"p"); | |
2938 | } | |
2939 | ||
2940 | //GFC | |
2941 | if(plotGFC2PtRP && gfcCommonHistRes2) | |
2942 | { | |
2943 | entryDiffGFC2PtRP->Append("M = "); | |
2944 | (*entryDiffGFC2PtRP)+=(Long_t)avMultDiffFlowGFCRP; | |
2945 | entryDiffGFC2PtRP->Append(", N = "); | |
2946 | (*entryDiffGFC2PtRP)+=(Long_t)nEvtsDiffFlowGFCRP; | |
2947 | if(plotGFC2RelativeToMCRP) legendDiffFlowPtRP->AddEntry(gfcCommonHistRes2->GetHistDiffFlowPtRP(),entryDiffGFC2PtRP->Data(),"p"); | |
2948 | } | |
2949 | if(plotGFC4PtRP && gfcCommonHistRes4) | |
2950 | { | |
2951 | entryDiffGFC4PtRP->Append("M = "); | |
2952 | (*entryDiffGFC4PtRP)+=(Long_t)avMultDiffFlowGFCRP; | |
2953 | entryDiffGFC4PtRP->Append(", N = "); | |
2954 | (*entryDiffGFC4PtRP)+=(Long_t)nEvtsDiffFlowGFCRP; | |
2955 | if(plotGFC4RelativeToMCRP) legendDiffFlowPtRP->AddEntry(gfcCommonHistRes4->GetHistDiffFlowPtRP(),entryDiffGFC4PtRP->Data(),"p"); | |
2956 | } | |
2957 | if(plotGFC6PtRP && gfcCommonHistRes6) | |
2958 | { | |
2959 | entryDiffGFC6PtRP->Append("M = "); | |
2960 | (*entryDiffGFC6PtRP)+=(Long_t)avMultDiffFlowGFCRP; | |
2961 | entryDiffGFC6PtRP->Append(", N = "); | |
2962 | (*entryDiffGFC6PtRP)+=(Long_t)nEvtsDiffFlowGFCRP; | |
2963 | if(plotGFC6RelativeToMCRP) legendDiffFlowPtRP->AddEntry(gfcCommonHistRes6->GetHistDiffFlowPtRP(),entryDiffGFC6PtRP->Data(),"p"); | |
2964 | } | |
2965 | if(plotGFC8PtRP && gfcCommonHistRes8) | |
2966 | { | |
2967 | entryDiffGFC8PtRP->Append("M = "); | |
2968 | (*entryDiffGFC8PtRP)+=(Long_t)avMultDiffFlowGFCRP; | |
2969 | entryDiffGFC8PtRP->Append(", N = "); | |
2970 | (*entryDiffGFC8PtRP)+=(Long_t)nEvtsDiffFlowGFCRP; | |
2971 | if(plotGFC8RelativeToMCRP) legendDiffFlowPtRP->AddEntry(gfcCommonHistRes8->GetHistDiffFlowPtRP(),entryDiffGFC8PtRP->Data(),"p"); | |
2972 | } | |
2973 | ||
2974 | //QC | |
2975 | if(plotQC2PtRP && qcCommonHistRes2) | |
2976 | { | |
2977 | entryDiffQC2PtRP->Append("M = "); | |
2978 | (*entryDiffQC2PtRP)+=(Long_t)avMultDiffFlowQC2RP; | |
2979 | entryDiffQC2PtRP->Append(", N = "); | |
2980 | (*entryDiffQC2PtRP)+=(Long_t)nEvtsDiffFlowQC2RP; | |
2981 | if(plotQC2RelativeToMCRP) legendDiffFlowPtRP->AddEntry(qcCommonHistRes2->GetHistDiffFlowPtRP(),entryDiffQC2PtRP->Data(),"p"); | |
2982 | } | |
2983 | if(plotQC4PtRP && qcCommonHistRes4) | |
2984 | { | |
2985 | entryDiffQC4PtRP->Append("M = "); | |
2986 | (*entryDiffQC4PtRP)+=(Long_t)avMultDiffFlowQC4RP; | |
2987 | entryDiffQC4PtRP->Append(", N = "); | |
2988 | (*entryDiffQC4PtRP)+=(Long_t)nEvtsDiffFlowQC4RP; | |
2989 | if(plotQC4RelativeToMCRP) legendDiffFlowPtRP->AddEntry(qcCommonHistRes4->GetHistDiffFlowPtRP(),entryDiffQC4PtRP->Data(),"p"); | |
2990 | } | |
2991 | if(plotQC6PtRP && qcCommonHistRes6) | |
2992 | { | |
2993 | entryDiffQC6PtRP->Append("M = "); | |
2994 | (*entryDiffQC6PtRP)+=(Long_t)avMultDiffFlowQC6RP; | |
2995 | entryDiffQC6PtRP->Append(", N = "); | |
2996 | (*entryDiffQC6PtRP)+=(Long_t)nEvtsDiffFlowQC6RP; | |
2997 | if(plotQC6RelativeToMCRP) legendDiffFlowPtRP->AddEntry(qcCommonHistRes6->GetHistDiffFlowPtRP(),entryDiffQC6PtRP->Data(),"p"); | |
2998 | } | |
2999 | if(plotQC8PtRP && qcCommonHistRes8) | |
3000 | { | |
3001 | entryDiffQC8PtRP->Append("M = "); | |
3002 | (*entryDiffQC8PtRP)+=(Long_t)avMultDiffFlowQC8RP; | |
3003 | entryDiffQC8PtRP->Append(", N = "); | |
3004 | (*entryDiffQC8PtRP)+=(Long_t)nEvtsDiffFlowQC8RP; | |
3005 | if(plotQC8RelativeToMCRP) legendDiffFlowPtRP->AddEntry(qcCommonHistRes8->GetHistDiffFlowPtRP(),entryDiffQC8PtRP->Data(),"p"); | |
3006 | } | |
3007 | ||
947cc449 | 3008 | //LYZ2SUM |
3009 | if(plotLYZ2SUMPtRP && lyz2sumCommonHistRes) | |
688877b8 | 3010 | { |
947cc449 | 3011 | entryDiffLYZ2SUMPtRP->Append("M = "); |
3012 | (*entryDiffLYZ2SUMPtRP)+=(Long_t)avMultDiffFlowLYZ2SUMRP; | |
3013 | entryDiffLYZ2SUMPtRP->Append(", N = "); | |
3014 | (*entryDiffLYZ2SUMPtRP)+=(Long_t)nEvtsDiffFlowLYZ2SUMRP; | |
3015 | if(plotLYZ2SUMRelativeToMCRP) legendDiffFlowPtRP->AddEntry(lyz2sumCommonHistRes->GetHistDiffFlowPtRP(),entryDiffLYZ2SUMPtRP->Data(),"p"); | |
3016 | } | |
3017 | ||
3018 | //LYZ2PROD | |
3019 | if(plotLYZ2PRODPtRP && lyz2prodCommonHistRes) | |
3020 | { | |
3021 | entryDiffLYZ2PRODPtRP->Append("M = "); | |
3022 | (*entryDiffLYZ2PRODPtRP)+=(Long_t)avMultDiffFlowLYZ2PRODRP; | |
3023 | entryDiffLYZ2PRODPtRP->Append(", N = "); | |
3024 | (*entryDiffLYZ2PRODPtRP)+=(Long_t)nEvtsDiffFlowLYZ2PRODRP; | |
3025 | if(plotLYZ2PRODRelativeToMCRP) legendDiffFlowPtRP->AddEntry(lyz2prodCommonHistRes->GetHistDiffFlowPtRP(),entryDiffLYZ2PRODPtRP->Data(),"p"); | |
688877b8 | 3026 | } |
3027 | ||
3028 | //LYZEP | |
3029 | if(plotLYZEPPtRP && lyzepCommonHistRes) | |
3030 | { | |
3031 | entryDiffLYZEPPtRP->Append("M = "); | |
3032 | (*entryDiffLYZEPPtRP)+=(Long_t)avMultDiffFlowLYZEPRP; | |
3033 | entryDiffLYZEPPtRP->Append(", N = "); | |
3034 | (*entryDiffLYZEPPtRP)+=(Long_t)nEvtsDiffFlowLYZEPRP; | |
3035 | if(plotLYZEPRelativeToMCRP) legendDiffFlowPtRP->AddEntry(lyzepCommonHistRes->GetHistDiffFlowPtRP(),entryDiffLYZEPPtRP->Data(),"p"); | |
3036 | } | |
3037 | ||
3038 | //drawing finally the legend in the 2nd pad: | |
3039 | if(textDefault) textDefault->Draw(); | |
3040 | ||
3041 | if(legendDiffFlowPtRP) | |
3042 | { | |
3043 | legendDiffFlowPtRP->SetMargin(0.15); | |
3044 | legendDiffFlowPtRP->Draw(); | |
3045 | } | |
3046 | } | |
3047 | //---------------------------------------------------------------------------------- | |
c365fe76 | 3048 | |
1fca9c90 | 3049 | //---------------------------------------------------------------------------------- |
3050 | //final drawing for differential flow (Pt, POI): | |
e83922f2 | 3051 | if(plotDiffFlowPtPOI) |
3052 | { | |
3053 | TCanvas* diffFlowPtAllCanvasPOI = new TCanvas("Differential Flow (Pt) of POI","Differential Flow (Pt) of POI ",1000,600); | |
3054 | ||
3055 | diffFlowPtAllCanvasPOI->Divide(2,1); | |
3056 | ||
3057 | //1st pad is for plot: | |
3058 | (diffFlowPtAllCanvasPOI->cd(1))->SetPad(0.0,0.0,0.75,1.0); | |
3059 | ||
3060 | if(styleHistPt) | |
3061 | { | |
3062 | (styleHistPt->GetYaxis())->SetRangeUser(-0.3,1.0); | |
3063 | styleHistPt->Draw(); | |
3064 | } | |
3065 | if(pMeshDiffFlowPtPOI) | |
3066 | { | |
3067 | pMeshDiffFlowPtPOI->Draw("LFSAME"); | |
3068 | } | |
1fca9c90 | 3069 | |
e83922f2 | 3070 | //MC |
3071 | if(plotMCPtPOI && mcepCommonHistRes) | |
905bed86 | 3072 | { |
e83922f2 | 3073 | (mcepCommonHistRes->GetHistDiffFlowPtPOI())->Draw("E1PSAME"); |
3074 | } | |
905bed86 | 3075 | //SP |
3076 | if(plotSPPtPOI && spCommonHistRes) | |
3077 | { | |
3078 | (spCommonHistRes->GetHistDiffFlowPtPOI())->Draw("E1PSAME"); | |
3079 | } | |
e83922f2 | 3080 | //GFC |
3081 | if(plotGFC2PtPOI && gfcCommonHistRes2) | |
3082 | { | |
3083 | (gfcCommonHistRes2->GetHistDiffFlowPtPOI())->Draw("E1PSAME"); | |
3084 | } | |
3085 | if(plotGFC4PtPOI && gfcCommonHistRes4) | |
3086 | { | |
3087 | (gfcCommonHistRes4->GetHistDiffFlowPtPOI())->Draw("E1PSAME"); | |
3088 | } | |
3089 | if(plotGFC6PtPOI && gfcCommonHistRes6) | |
3090 | { | |
3091 | (gfcCommonHistRes6->GetHistDiffFlowPtPOI())->Draw("E1PSAME"); | |
3092 | } | |
3093 | if(plotGFC8PtPOI && gfcCommonHistRes8) | |
3094 | { | |
3095 | (gfcCommonHistRes8->GetHistDiffFlowPtPOI())->Draw("E1PSAME"); | |
3096 | } | |
3097 | //QC | |
3098 | if(plotQC2PtPOI && qcCommonHistRes2) | |
3099 | { | |
3100 | (qcCommonHistRes2->GetHistDiffFlowPtPOI())->Draw("E1PSAME"); | |
3101 | } | |
3102 | if(plotQC4PtPOI && qcCommonHistRes4) | |
3103 | { | |
3104 | (qcCommonHistRes4->GetHistDiffFlowPtPOI())->Draw("E1PSAME"); | |
3105 | } | |
3106 | if(plotQC6PtPOI && qcCommonHistRes6) | |
947cc449 | 3107 | { |
7d02d77f | 3108 | //(qcCommonHistRes6->GetHistDiffFlowPtPOI())->Draw("E1PSAME"); |
e83922f2 | 3109 | } |
3110 | if(plotQC8PtPOI && qcCommonHistRes8) | |
3111 | { | |
7d02d77f | 3112 | //(qcCommonHistRes8->GetHistDiffFlowPtPOI())->Draw("E1PSAME"); |
e83922f2 | 3113 | } |
947cc449 | 3114 | //LYZ2SUM |
3115 | if(plotLYZ2SUMPtPOI && lyz2sumCommonHistRes) | |
3116 | { | |
3117 | (lyz2sumCommonHistRes->GetHistDiffFlowPtPOI())->Draw("E1PSAME"); | |
3118 | } | |
3119 | //LYZ2PROD | |
3120 | if(plotLYZ2PRODPtPOI && lyz2prodCommonHistRes) | |
e83922f2 | 3121 | { |
947cc449 | 3122 | (lyz2prodCommonHistRes->GetHistDiffFlowPtPOI())->Draw("E1PSAME"); |
e83922f2 | 3123 | } |
3124 | //LYZEP | |
3125 | if(plotLYZEPPtPOI && lyzepCommonHistRes) | |
3126 | { | |
3127 | (lyzepCommonHistRes->GetHistDiffFlowPtPOI())->Draw("E1PSAME"); | |
3128 | } | |
1fca9c90 | 3129 | |
e83922f2 | 3130 | //2nd pad is for legend: |
3131 | (diffFlowPtAllCanvasPOI->cd(2))->SetPad(0.75,0.0,1.0,1.0); | |
3132 | ||
dec3fab6 | 3133 | TLegend* legendDiffFlowPtPOI = new TLegend(0.02,0.12,0.97,0.70); |
e83922f2 | 3134 | legendDiffFlowPtPOI->SetTextFont(72); |
3135 | legendDiffFlowPtPOI->SetTextSize(0.06); | |
3136 | ||
3137 | //legend's entries: | |
947cc449 | 3138 | TString *entryDiffMCPtPOI = new TString("MC ........ "); |
3139 | TString *entryDiffSPPtPOI = new TString("SP ........ "); | |
3140 | TString *entryDiffGFC2PtPOI = new TString("GFC{2} .... "); | |
3141 | TString *entryDiffGFC4PtPOI = new TString("GFC{4} .... "); | |
3142 | TString *entryDiffGFC6PtPOI = new TString("GFC{6} .... "); | |
3143 | TString *entryDiffGFC8PtPOI = new TString("GFC{8} .... "); | |
3144 | TString *entryDiffQC2PtPOI = new TString("QC{2} ..... "); | |
3145 | TString *entryDiffQC4PtPOI = new TString("QC{4} ..... "); | |
3146 | TString *entryDiffQC6PtPOI = new TString("QC{6} ..... "); | |
3147 | TString *entryDiffQC8PtPOI = new TString("QC{8} ..... "); | |
3148 | TString *entryDiffLYZ2SUMPtPOI = new TString("LYZ{sum} .. "); | |
3149 | TString *entryDiffLYZ2PRODPtPOI = new TString("LYZ{prod} . "); | |
3150 | TString *entryDiffLYZEPPtPOI = new TString("LYZEP ..... "); | |
e83922f2 | 3151 | |
3152 | //MC | |
3153 | if(mcepCommonHistRes) | |
3154 | { | |
dec3fab6 | 3155 | (mcepCommonHistRes->GetHistDiffFlowPtPOI())->SetFillStyle(meshStyleDiffFlowPtPOI); |
3156 | (mcepCommonHistRes->GetHistDiffFlowPtPOI())->SetFillColor(meshColorDiffFlowPtPOI); | |
e83922f2 | 3157 | entryDiffMCPtPOI->Append("M = "); |
3158 | (*entryDiffMCPtPOI)+=(Long_t)avMultDiffFlowMCPOI; | |
3159 | entryDiffMCPtPOI->Append(", N = "); | |
3160 | (*entryDiffMCPtPOI)+=(Long_t)nEvtsDiffFlowMCPOI; | |
3161 | legendDiffFlowPtPOI->AddEntry(mcepCommonHistRes->GetHistDiffFlowPtPOI(),entryDiffMCPtPOI->Data(),"f"); | |
3162 | } | |
905bed86 | 3163 | |
3164 | //SP | |
947cc449 | 3165 | if(plotSPPtPOI && spCommonHistRes) |
905bed86 | 3166 | { |
905bed86 | 3167 | entryDiffSPPtPOI->Append("M = "); |
3168 | (*entryDiffSPPtPOI)+=(Long_t)avMultDiffFlowSPPOI; | |
3169 | entryDiffSPPtPOI->Append(", N = "); | |
3170 | (*entryDiffSPPtPOI)+=(Long_t)nEvtsDiffFlowSPPOI; | |
3171 | legendDiffFlowPtPOI->AddEntry(spCommonHistRes->GetHistDiffFlowPtPOI(),entryDiffSPPtPOI->Data(),"p"); | |
3172 | } | |
1fca9c90 | 3173 | |
e83922f2 | 3174 | //GFC |
3175 | if(plotGFC2PtPOI && gfcCommonHistRes2) | |
3176 | { | |
3177 | entryDiffGFC2PtPOI->Append("M = "); | |
3178 | (*entryDiffGFC2PtPOI)+=(Long_t)avMultDiffFlowGFCPOI; | |
3179 | entryDiffGFC2PtPOI->Append(", N = "); | |
3180 | (*entryDiffGFC2PtPOI)+=(Long_t)nEvtsDiffFlowGFCPOI; | |
3181 | legendDiffFlowPtPOI->AddEntry(gfcCommonHistRes2->GetHistDiffFlowPtPOI(),entryDiffGFC2PtPOI->Data(),"p"); | |
3182 | } | |
3183 | if(plotGFC4PtPOI && gfcCommonHistRes4) | |
3184 | { | |
3185 | entryDiffGFC4PtPOI->Append("M = "); | |
3186 | (*entryDiffGFC4PtPOI)+=(Long_t)avMultDiffFlowGFCPOI; | |
3187 | entryDiffGFC4PtPOI->Append(", N = "); | |
3188 | (*entryDiffGFC4PtPOI)+=(Long_t)nEvtsDiffFlowGFCPOI; | |
3189 | legendDiffFlowPtPOI->AddEntry(gfcCommonHistRes4->GetHistDiffFlowPtPOI(),entryDiffGFC4PtPOI->Data(),"p"); | |
3190 | } | |
3191 | if(plotGFC6PtPOI && gfcCommonHistRes6) | |
3192 | { | |
3193 | entryDiffGFC6PtPOI->Append("M = "); | |
3194 | (*entryDiffGFC6PtPOI)+=(Long_t)avMultDiffFlowGFCPOI; | |
3195 | entryDiffGFC6PtPOI->Append(", N = "); | |
3196 | (*entryDiffGFC6PtPOI)+=(Long_t)nEvtsDiffFlowGFCPOI; | |
3197 | legendDiffFlowPtPOI->AddEntry(gfcCommonHistRes6->GetHistDiffFlowPtPOI(),entryDiffGFC6PtPOI->Data(),"p"); | |
3198 | } | |
3199 | if(plotGFC8PtPOI && gfcCommonHistRes8) | |
3200 | { | |
3201 | entryDiffGFC8PtPOI->Append("M = "); | |
3202 | (*entryDiffGFC8PtPOI)+=(Long_t)avMultDiffFlowGFCPOI; | |
3203 | entryDiffGFC8PtPOI->Append(", N = "); | |
3204 | (*entryDiffGFC8PtPOI)+=(Long_t)nEvtsDiffFlowGFCPOI; | |
3205 | legendDiffFlowPtPOI->AddEntry(gfcCommonHistRes8->GetHistDiffFlowPtPOI(),entryDiffGFC8PtPOI->Data(),"p"); | |
3206 | } | |
3207 | ||
3208 | //QC | |
3209 | if(plotQC2PtPOI && qcCommonHistRes2) | |
3210 | { | |
3211 | entryDiffQC2PtPOI->Append("M = "); | |
3212 | (*entryDiffQC2PtPOI)+=(Long_t)avMultDiffFlowQC2POI; | |
3213 | entryDiffQC2PtPOI->Append(", N = "); | |
3214 | (*entryDiffQC2PtPOI)+=(Long_t)nEvtsDiffFlowQC2POI; | |
3215 | legendDiffFlowPtPOI->AddEntry(qcCommonHistRes2->GetHistDiffFlowPtPOI(),entryDiffQC2PtPOI->Data(),"p"); | |
3216 | } | |
3217 | if(plotQC4PtPOI && qcCommonHistRes4) | |
3218 | { | |
3219 | entryDiffQC4PtPOI->Append("M = "); | |
3220 | (*entryDiffQC4PtPOI)+=(Long_t)avMultDiffFlowQC4POI; | |
3221 | entryDiffQC4PtPOI->Append(", N = "); | |
3222 | (*entryDiffQC4PtPOI)+=(Long_t)nEvtsDiffFlowQC4POI; | |
3223 | legendDiffFlowPtPOI->AddEntry(qcCommonHistRes4->GetHistDiffFlowPtPOI(),entryDiffQC4PtPOI->Data(),"p"); | |
3224 | } | |
3225 | if(plotQC6PtPOI && qcCommonHistRes6) | |
3226 | { | |
3227 | entryDiffQC6PtPOI->Append("M = "); | |
3228 | (*entryDiffQC6PtPOI)+=(Long_t)avMultDiffFlowQC6POI; | |
3229 | entryDiffQC6PtPOI->Append(", N = "); | |
3230 | (*entryDiffQC6PtPOI)+=(Long_t)nEvtsDiffFlowQC6POI; | |
3231 | legendDiffFlowPtPOI->AddEntry(qcCommonHistRes6->GetHistDiffFlowPtPOI(),entryDiffQC6PtPOI->Data(),"p"); | |
3232 | } | |
3233 | if(plotQC8PtPOI && qcCommonHistRes8) | |
3234 | { | |
3235 | entryDiffQC8PtPOI->Append("M = "); | |
3236 | (*entryDiffQC8PtPOI)+=(Long_t)avMultDiffFlowQC8POI; | |
3237 | entryDiffQC8PtPOI->Append(", N = "); | |
3238 | (*entryDiffQC8PtPOI)+=(Long_t)nEvtsDiffFlowQC8POI; | |
3239 | legendDiffFlowPtPOI->AddEntry(qcCommonHistRes8->GetHistDiffFlowPtPOI(),entryDiffQC8PtPOI->Data(),"p"); | |
3240 | } | |
1fca9c90 | 3241 | |
947cc449 | 3242 | //LYZ2SUM |
3243 | if(plotLYZ2SUMPtPOI && lyz2sumCommonHistRes) | |
3244 | { | |
3245 | entryDiffLYZ2SUMPtPOI->Append("M = "); | |
3246 | (*entryDiffLYZ2SUMPtPOI)+=(Long_t)avMultDiffFlowLYZ2SUMPOI; | |
3247 | entryDiffLYZ2SUMPtPOI->Append(", N = "); | |
3248 | (*entryDiffLYZ2SUMPtPOI)+=(Long_t)nEvtsDiffFlowLYZ2SUMPOI; | |
3249 | legendDiffFlowPtPOI->AddEntry(lyz2sumCommonHistRes->GetHistDiffFlowPtPOI(),entryDiffLYZ2SUMPtPOI->Data(),"p"); | |
3250 | } | |
3251 | ||
3252 | //LYZ2PROD | |
3253 | if(plotLYZ2PRODPtPOI && lyz2prodCommonHistRes) | |
e83922f2 | 3254 | { |
947cc449 | 3255 | entryDiffLYZ2PRODPtPOI->Append("M = "); |
3256 | (*entryDiffLYZ2PRODPtPOI)+=(Long_t)avMultDiffFlowLYZ2PRODPOI; | |
3257 | entryDiffLYZ2PRODPtPOI->Append(", N = "); | |
3258 | (*entryDiffLYZ2PRODPtPOI)+=(Long_t)nEvtsDiffFlowLYZ2PRODPOI; | |
3259 | legendDiffFlowPtPOI->AddEntry(lyz2prodCommonHistRes->GetHistDiffFlowPtPOI(),entryDiffLYZ2PRODPtPOI->Data(),"p"); | |
e83922f2 | 3260 | } |
3261 | ||
3262 | //LYZEP | |
3263 | if(plotLYZEPPtPOI && lyzepCommonHistRes) | |
3264 | { | |
3265 | entryDiffLYZEPPtPOI->Append("M = "); | |
3266 | (*entryDiffLYZEPPtPOI)+=(Long_t)avMultDiffFlowLYZEPPOI; | |
3267 | entryDiffLYZEPPtPOI->Append(", N = "); | |
3268 | (*entryDiffLYZEPPtPOI)+=(Long_t)nEvtsDiffFlowLYZEPPOI; | |
3269 | legendDiffFlowPtPOI->AddEntry(lyzepCommonHistRes->GetHistDiffFlowPtPOI(),entryDiffLYZEPPtPOI->Data(),"p"); | |
3270 | } | |
1fca9c90 | 3271 | |
dec3fab6 | 3272 | //drawing finally the legend in the 2nd pad: |
3273 | if(textDefault) textDefault->Draw(); | |
3274 | ||
e83922f2 | 3275 | if(legendDiffFlowPtPOI) |
3276 | { | |
3277 | legendDiffFlowPtPOI->SetMargin(0.15); | |
3278 | legendDiffFlowPtPOI->Draw(); | |
3279 | } | |
3280 | }//end of if(plotDiffFlowPtPOI) | |
1fca9c90 | 3281 | //---------------------------------------------------------------------------------- |
688877b8 | 3282 | |
1fca9c90 | 3283 | |
3284 | //---------------------------------------------------------------------------------- | |
3285 | //final drawing for differential flow (Eta, POI): | |
e83922f2 | 3286 | if(plotDiffFlowEtaPOI) |
3287 | { | |
3288 | TCanvas* diffFlowEtaAllCanvasPOI = new TCanvas("Differential Flow (Eta) of POI","Differential Flow (Eta) of POI ",1000,600); | |
3289 | ||
3290 | diffFlowEtaAllCanvasPOI->Divide(2,1); | |
3291 | ||
3292 | //1st pad is for plot: | |
3293 | (diffFlowEtaAllCanvasPOI->cd(1))->SetPad(0.0,0.0,0.75,1.0); | |
1fca9c90 | 3294 | |
e83922f2 | 3295 | if(styleHistEta) |
3296 | { | |
3297 | (styleHistEta->GetYaxis())->SetRangeUser(-0.3,1.0); | |
3298 | styleHistEta->Draw(); | |
3299 | } | |
3300 | if(pMeshDiffFlowEtaPOI) | |
3301 | { | |
3302 | pMeshDiffFlowEtaPOI->Draw("LFSAME"); | |
3303 | } | |
1fca9c90 | 3304 | |
e83922f2 | 3305 | //MC |
3306 | if(plotMCEtaPOI && mcepCommonHistRes) | |
3307 | { | |
3308 | (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->Draw("E1PSAME"); | |
3309 | } | |
905bed86 | 3310 | //SP |
3311 | if(plotSPEtaPOI && spCommonHistRes) | |
3312 | { | |
3313 | (spCommonHistRes->GetHistDiffFlowEtaPOI())->Draw("E1PSAME"); | |
3314 | } | |
e83922f2 | 3315 | //GFC |
3316 | if(plotGFC2EtaPOI && gfcCommonHistRes2) | |
3317 | { | |
3318 | (gfcCommonHistRes2->GetHistDiffFlowEtaPOI())->Draw("E1PSAME"); | |
3319 | } | |
3320 | if(plotGFC4EtaPOI && gfcCommonHistRes4) | |
3321 | { | |
3322 | (gfcCommonHistRes4->GetHistDiffFlowEtaPOI())->Draw("E1PSAME"); | |
3323 | } | |
3324 | if(plotGFC6EtaPOI && gfcCommonHistRes6) | |
3325 | { | |
3326 | (gfcCommonHistRes6->GetHistDiffFlowEtaPOI())->Draw("E1PSAME"); | |
3327 | } | |
3328 | if(plotGFC8EtaPOI && gfcCommonHistRes8) | |
3329 | { | |
3330 | (gfcCommonHistRes8->GetHistDiffFlowEtaPOI())->Draw("E1PSAME"); | |
3331 | } | |
3332 | //QC | |
3333 | if(plotQC2EtaPOI && qcCommonHistRes2) | |
3334 | { | |
3335 | (qcCommonHistRes2->GetHistDiffFlowEtaPOI())->Draw("E1PSAME"); | |
3336 | } | |
3337 | if(plotQC4EtaPOI && qcCommonHistRes4) | |
3338 | { | |
3339 | (qcCommonHistRes4->GetHistDiffFlowEtaPOI())->Draw("E1PSAME"); | |
3340 | } | |
3341 | if(plotQC6EtaPOI && qcCommonHistRes6) | |
3342 | { | |
7d02d77f | 3343 | //(qcCommonHistRes6->GetHistDiffFlowEtaPOI())->Draw("E1PSAME"); |
e83922f2 | 3344 | } |
3345 | if(plotQC8EtaPOI && qcCommonHistRes8) | |
3346 | { | |
7d02d77f | 3347 | //(qcCommonHistRes8->GetHistDiffFlowEtaPOI())->Draw("E1PSAME"); |
e83922f2 | 3348 | } |
947cc449 | 3349 | //LYZ2SUM |
3350 | if(plotLYZ2SUMEtaPOI && lyz2sumCommonHistRes) | |
e83922f2 | 3351 | { |
947cc449 | 3352 | (lyz2sumCommonHistRes->GetHistDiffFlowEtaPOI())->Draw("E1PSAME"); |
3353 | } | |
3354 | //LYZ2PROD | |
3355 | if(plotLYZ2PRODEtaPOI && lyz2prodCommonHistRes) | |
3356 | { | |
3357 | (lyz2prodCommonHistRes->GetHistDiffFlowEtaPOI())->Draw("E1PSAME"); | |
e83922f2 | 3358 | } |
3359 | //LYZEP | |
3360 | if(plotLYZEPEtaPOI && lyzepCommonHistRes) | |
3361 | { | |
3362 | (lyzepCommonHistRes->GetHistDiffFlowEtaPOI())->Draw("E1PSAME"); | |
3363 | } | |
1fca9c90 | 3364 | |
e83922f2 | 3365 | //2nd pad is for legend: |
3366 | (diffFlowEtaAllCanvasPOI->cd(2))->SetPad(0.75,0.0,1.0,1.0); | |
3367 | ||
dec3fab6 | 3368 | TLegend* legendDiffFlowEtaPOI = new TLegend(0.02,0.12,0.97,0.70); |
e83922f2 | 3369 | legendDiffFlowEtaPOI->SetTextFont(72); |
3370 | legendDiffFlowEtaPOI->SetTextSize(0.06); | |
3371 | ||
3372 | //legend's entries: | |
947cc449 | 3373 | TString *entryDiffMCEtaPOI = new TString("MC ........ "); |
3374 | TString *entryDiffSPEtaPOI = new TString("SP ........ "); | |
3375 | TString *entryDiffGFC2EtaPOI = new TString("GFC{2} .... "); | |
3376 | TString *entryDiffGFC4EtaPOI = new TString("GFC{4} .... "); | |
3377 | TString *entryDiffGFC6EtaPOI = new TString("GFC{6} .... "); | |
3378 | TString *entryDiffGFC8EtaPOI = new TString("GFC{8} .... "); | |
3379 | TString *entryDiffQC2EtaPOI = new TString("QC{2} ..... "); | |
3380 | TString *entryDiffQC4EtaPOI = new TString("QC{4} ..... "); | |
3381 | TString *entryDiffQC6EtaPOI = new TString("QC{6} ..... "); | |
3382 | TString *entryDiffQC8EtaPOI = new TString("QC{8} ..... "); | |
3383 | TString *entryDiffLYZ2SUMEtaPOI = new TString("LYZ{sum} .. "); | |
3384 | TString *entryDiffLYZ2PRODEtaPOI = new TString("LYZ{prod} . "); | |
3385 | TString *entryDiffLYZEPEtaPOI = new TString("LYZEP ..... "); | |
e83922f2 | 3386 | |
3387 | //MC | |
3388 | if(mcepCommonHistRes) | |
3389 | { | |
dec3fab6 | 3390 | (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->SetFillStyle(meshStyleDiffFlowEtaPOI); |
3391 | (mcepCommonHistRes->GetHistDiffFlowEtaPOI())->SetFillColor(meshColorDiffFlowEtaPOI); | |
e83922f2 | 3392 | entryDiffMCEtaPOI->Append("M = "); |
3393 | (*entryDiffMCEtaPOI)+=(Long_t)avMultDiffFlowMCPOI; | |
3394 | entryDiffMCEtaPOI->Append(", N = "); | |
3395 | (*entryDiffMCEtaPOI)+=(Long_t)nEvtsDiffFlowMCPOI; | |
3396 | legendDiffFlowEtaPOI->AddEntry(mcepCommonHistRes->GetHistDiffFlowEtaPOI(),entryDiffMCEtaPOI->Data(),"f"); | |
3397 | } | |
905bed86 | 3398 | |
3399 | //SP | |
947cc449 | 3400 | if(plotSPEtaPOI && spCommonHistRes) |
905bed86 | 3401 | { |
905bed86 | 3402 | entryDiffSPEtaPOI->Append("M = "); |
3403 | (*entryDiffSPEtaPOI)+=(Long_t)avMultDiffFlowSPPOI; | |
3404 | entryDiffSPEtaPOI->Append(", N = "); | |
3405 | (*entryDiffSPEtaPOI)+=(Long_t)nEvtsDiffFlowSPPOI; | |
3406 | legendDiffFlowEtaPOI->AddEntry(spCommonHistRes->GetHistDiffFlowEtaPOI(),entryDiffSPEtaPOI->Data(),"p"); | |
3407 | } | |
1fca9c90 | 3408 | |
e83922f2 | 3409 | //GFC |
3410 | if(plotGFC2EtaPOI && gfcCommonHistRes2) | |
3411 | { | |
3412 | entryDiffGFC2EtaPOI->Append("M = "); | |
3413 | (*entryDiffGFC2EtaPOI)+=(Long_t)avMultDiffFlowGFCPOI; | |
3414 | entryDiffGFC2EtaPOI->Append(", N = "); | |
3415 | (*entryDiffGFC2EtaPOI)+=(Long_t)nEvtsDiffFlowGFCPOI; | |
3416 | legendDiffFlowEtaPOI->AddEntry(gfcCommonHistRes2->GetHistDiffFlowEtaPOI(),entryDiffGFC2EtaPOI->Data(),"p"); | |
3417 | } | |
3418 | if(plotGFC4EtaPOI && gfcCommonHistRes4) | |
3419 | { | |
3420 | entryDiffGFC4EtaPOI->Append("M = "); | |
3421 | (*entryDiffGFC4EtaPOI)+=(Long_t)avMultDiffFlowGFCPOI; | |
3422 | entryDiffGFC4EtaPOI->Append(", N = "); | |
3423 | (*entryDiffGFC4EtaPOI)+=(Long_t)nEvtsDiffFlowGFCPOI; | |
3424 | legendDiffFlowEtaPOI->AddEntry(gfcCommonHistRes4->GetHistDiffFlowEtaPOI(),entryDiffGFC4EtaPOI->Data(),"p"); | |
3425 | } | |
3426 | if(plotGFC6EtaPOI && gfcCommonHistRes6) | |
3427 | { | |
3428 | entryDiffGFC6EtaPOI->Append("M = "); | |
3429 | (*entryDiffGFC6EtaPOI)+=(Long_t)avMultDiffFlowGFCPOI; | |
3430 | entryDiffGFC6EtaPOI->Append(", N = "); | |
3431 | (*entryDiffGFC6EtaPOI)+=(Long_t)nEvtsDiffFlowGFCPOI; | |
3432 | legendDiffFlowEtaPOI->AddEntry(gfcCommonHistRes6->GetHistDiffFlowEtaPOI(),entryDiffGFC6EtaPOI->Data(),"p"); | |
3433 | } | |
3434 | if(plotGFC8EtaPOI && gfcCommonHistRes8) | |
3435 | { | |
3436 | entryDiffGFC8EtaPOI->Append("M = "); | |
3437 | (*entryDiffGFC8EtaPOI)+=(Long_t)avMultDiffFlowGFCPOI; | |
3438 | entryDiffGFC8EtaPOI->Append(", N = "); | |
3439 | (*entryDiffGFC8EtaPOI)+=(Long_t)nEvtsDiffFlowGFCPOI; | |
3440 | legendDiffFlowEtaPOI->AddEntry(gfcCommonHistRes8->GetHistDiffFlowEtaPOI(),entryDiffGFC8EtaPOI->Data(),"p"); | |
3441 | } | |
3442 | ||
3443 | //QC | |
3444 | if(plotQC2EtaPOI && qcCommonHistRes2) | |
3445 | { | |
3446 | entryDiffQC2EtaPOI->Append("M = "); | |
3447 | (*entryDiffQC2EtaPOI)+=(Long_t)avMultDiffFlowQC2POI; | |
3448 | entryDiffQC2EtaPOI->Append(", N = "); | |
3449 | (*entryDiffQC2EtaPOI)+=(Long_t)nEvtsDiffFlowQC2POI; | |
3450 | legendDiffFlowEtaPOI->AddEntry(qcCommonHistRes2->GetHistDiffFlowEtaPOI(),entryDiffQC2EtaPOI->Data(),"p"); | |
3451 | } | |
3452 | if(plotQC4EtaPOI && qcCommonHistRes4) | |
3453 | { | |
3454 | entryDiffQC4EtaPOI->Append("M = "); | |
3455 | (*entryDiffQC4EtaPOI)+=(Long_t)avMultDiffFlowQC4POI; | |
3456 | entryDiffQC4EtaPOI->Append(", N = "); | |
3457 | (*entryDiffQC4EtaPOI)+=(Long_t)nEvtsDiffFlowQC4POI; | |
3458 | legendDiffFlowEtaPOI->AddEntry(qcCommonHistRes4->GetHistDiffFlowEtaPOI(),entryDiffQC4EtaPOI->Data(),"p"); | |
3459 | } | |
3460 | if(plotQC6EtaPOI && qcCommonHistRes6) | |
3461 | { | |
3462 | entryDiffQC6EtaPOI->Append("M = "); | |
3463 | (*entryDiffQC6EtaPOI)+=(Long_t)avMultDiffFlowQC6POI; | |
3464 | entryDiffQC6EtaPOI->Append(", N = "); | |
3465 | (*entryDiffQC6EtaPOI)+=(Long_t)nEvtsDiffFlowQC6POI; | |
3466 | legendDiffFlowEtaPOI->AddEntry(qcCommonHistRes6->GetHistDiffFlowEtaPOI(),entryDiffQC6EtaPOI->Data(),"p"); | |
3467 | } | |
3468 | if(plotQC8EtaPOI && qcCommonHistRes8) | |
3469 | { | |
3470 | entryDiffQC8EtaPOI->Append("M = "); | |
3471 | (*entryDiffQC8EtaPOI)+=(Long_t)avMultDiffFlowQC8POI; | |
3472 | entryDiffQC8EtaPOI->Append(", N = "); | |
3473 | (*entryDiffQC8EtaPOI)+=(Long_t)nEvtsDiffFlowQC8POI; | |
3474 | legendDiffFlowEtaPOI->AddEntry(qcCommonHistRes8->GetHistDiffFlowEtaPOI(),entryDiffQC8EtaPOI->Data(),"p"); | |
3475 | } | |
1fca9c90 | 3476 | |
947cc449 | 3477 | //LYZ2SUM |
3478 | if(plotLYZ2SUMEtaPOI && lyz2sumCommonHistRes) | |
3479 | { | |
3480 | entryDiffLYZ2SUMEtaPOI->Append("M = "); | |
3481 | (*entryDiffLYZ2SUMEtaPOI)+=(Long_t)avMultDiffFlowLYZ2SUMPOI; | |
3482 | entryDiffLYZ2SUMEtaPOI->Append(", N = "); | |
3483 | (*entryDiffLYZ2SUMEtaPOI)+=(Long_t)nEvtsDiffFlowLYZ2SUMPOI; | |
3484 | legendDiffFlowEtaPOI->AddEntry(lyz2sumCommonHistRes->GetHistDiffFlowEtaPOI(),entryDiffLYZ2SUMEtaPOI->Data(),"p"); | |
3485 | } | |
3486 | ||
3487 | //LYZ2PROD | |
3488 | if(plotLYZ2PRODEtaPOI && lyz2prodCommonHistRes) | |
e83922f2 | 3489 | { |
947cc449 | 3490 | entryDiffLYZ2PRODEtaPOI->Append("M = "); |
3491 | (*entryDiffLYZ2PRODEtaPOI)+=(Long_t)avMultDiffFlowLYZ2PRODPOI; | |
3492 | entryDiffLYZ2PRODEtaPOI->Append(", N = "); | |
3493 | (*entryDiffLYZ2PRODEtaPOI)+=(Long_t)nEvtsDiffFlowLYZ2PRODPOI; | |
3494 | legendDiffFlowEtaPOI->AddEntry(lyz2prodCommonHistRes->GetHistDiffFlowEtaPOI(),entryDiffLYZ2PRODEtaPOI->Data(),"p"); | |
e83922f2 | 3495 | } |
3496 | ||
3497 | //LYZEP | |
3498 | if(plotLYZEPEtaPOI && lyzepCommonHistRes) | |
3499 | { | |
3500 | entryDiffLYZEPEtaPOI->Append("M = "); | |
3501 | (*entryDiffLYZEPEtaPOI)+=(Long_t)avMultDiffFlowLYZEPPOI; | |
3502 | entryDiffLYZEPEtaPOI->Append(", N = "); | |
3503 | (*entryDiffLYZEPEtaPOI)+=(Long_t)nEvtsDiffFlowLYZEPPOI; | |
3504 | legendDiffFlowEtaPOI->AddEntry(lyzepCommonHistRes->GetHistDiffFlowEtaPOI(),entryDiffLYZEPEtaPOI->Data(),"p"); | |
3505 | } | |
1fca9c90 | 3506 | |
dec3fab6 | 3507 | //drawing finally the legend in the 2nd pad: |
3508 | if(textDefault) textDefault->Draw(); | |
3509 | ||
e83922f2 | 3510 | if(legendDiffFlowEtaPOI) |
3511 | { | |
3512 | legendDiffFlowEtaPOI->SetMargin(0.15); | |
3513 | legendDiffFlowEtaPOI->Draw(); | |
3514 | } | |
3515 | }//end of if(plotDiffFlowEtaPOI) | |
1fca9c90 | 3516 | //---------------------------------------------------------------------------------- |
3517 | ||
3518 | ||
a88e5ac2 | 3519 | //===================================================================================== |
947cc449 | 3520 | |
3521 | ||
70288839 | 3522 | } |
b25cc698 | 3523 | |
8d5cd720 | 3524 | void LoadPlotLibraries(const libModes mode) { |
b25cc698 | 3525 | |
3526 | //-------------------------------------- | |
3527 | // Load the needed libraries most of them already loaded by aliroot | |
3528 | //-------------------------------------- | |
5d040cf3 | 3529 | gSystem->Load("libTree"); |
3530 | gSystem->Load("libGeom"); | |
3531 | gSystem->Load("libVMC"); | |
3532 | gSystem->Load("libXMLIO"); | |
3533 | gSystem->Load("libPhysics"); | |
b25cc698 | 3534 | |
3535 | //---------------------------------------------------------- | |
3536 | // >>>>>>>>>>> Local mode <<<<<<<<<<<<<< | |
3537 | //---------------------------------------------------------- | |
3538 | if (mode==mLocal) { | |
3539 | //-------------------------------------------------------- | |
3540 | // If you want to use already compiled libraries | |
3541 | // in the aliroot distribution | |
3542 | //-------------------------------------------------------- | |
3543 | ||
3544 | //================================================================================== | |
3545 | //load needed libraries: | |
3546 | gSystem->AddIncludePath("-I$ROOTSYS/include"); | |
5d040cf3 | 3547 | gSystem->Load("libTree"); |
b25cc698 | 3548 | |
3549 | // for AliRoot | |
3550 | gSystem->AddIncludePath("-I$ALICE_ROOT/include"); | |
5d040cf3 | 3551 | gSystem->Load("libANALYSIS"); |
3552 | gSystem->Load("libPWG2flowCommon"); | |
3553 | cerr<<"libPWG2flowCommon loaded ..."<<endl; | |
b25cc698 | 3554 | |
3555 | } | |
3556 | ||
3557 | else if (mode==mLocalSource) { | |
3558 | ||
3559 | // In root inline compile | |
d90df6c3 | 3560 | |
3561 | // Constants | |
3562 | gROOT->LoadMacro("AliFlowCommon/AliFlowCommonConstants.cxx+"); | |
3563 | gROOT->LoadMacro("AliFlowCommon/AliFlowLYZConstants.cxx+"); | |
3564 | gROOT->LoadMacro("AliFlowCommon/AliFlowCumuConstants.cxx+"); | |
3565 | ||
3566 | // Flow event | |
3567 | gROOT->LoadMacro("AliFlowCommon/AliFlowVector.cxx+"); | |
3568 | gROOT->LoadMacro("AliFlowCommon/AliFlowTrackSimple.cxx+"); | |
3569 | gROOT->LoadMacro("AliFlowCommon/AliFlowEventSimple.cxx+"); | |
3570 | ||
3571 | // Cuts | |
3572 | gROOT->LoadMacro("AliFlowCommon/AliFlowTrackSimpleCuts.cxx+"); | |
b25cc698 | 3573 | |
3574 | // Output histosgrams | |
3575 | gROOT->LoadMacro("AliFlowCommon/AliFlowCommonHist.cxx+"); | |
3576 | gROOT->LoadMacro("AliFlowCommon/AliFlowCommonHistResults.cxx+"); | |
3577 | gROOT->LoadMacro("AliFlowCommon/AliFlowLYZHist1.cxx+"); | |
3578 | gROOT->LoadMacro("AliFlowCommon/AliFlowLYZHist2.cxx+"); | |
3579 | ||
3580 | cout << "finished loading macros!" << endl; | |
3581 | ||
3582 | } | |
3583 | ||
3584 | } | |
3585 | ||
3586 |