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