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