changes from gsi. Using mult if no centrality. testfilterbit 128
[u/mrichter/AliRoot.git] / PWGGA / GammaConv / macros / Photon_Characteristics_Events.C
1 /****************************************************************************************************************************
2 ******  provided by Gamma Conversion Group, PWGGA,                                                                                                              *****
3 ******          Kathrin Koch, kkoch@physi.uni-heidelberg.de                                                                                                     *****
4 ******          Friederike Bock, friederike.bock@cern.ch                                                                                                        *****
5 *****************************************************************************************************************************
6 *** This macro can be used to display the Photon Characteristics of the conversion method in ALICE, it can be operated  *****
7 *** on the output of the GammaConversionTask. It can take 2 input files, the second one should be MC, if this is not    *****
8 *** the case all histograms including MC need to be commented out otherwise the running will crash.                                     *****
9 ****************************************************************************************************************************/
10
11 #include <Riostream.h>
12 #include "PlottingGammaConversionHistos.h"
13 #include "PlottingGammaConversionAdditional.h"
14
15 extern TRandom *gRandom;
16 extern TBenchmark *gBenchmark;
17 extern TSystem *gSystem;
18
19 void  Photon_Characteristics_Events(const char *data = "myOutput", const char *MCfile = "", const char *cutsel = "",const char *path = "", const char *output = "Photon-Characteristics", const char *Plots = "kTRUE", const char *suffix = "gif"){     
20         
21         gROOT->Reset(); 
22         gROOT->SetStyle("Plain");
23
24         Bool_t SinglePlots = kFALSE;
25         if(Plots == "kTRUE") SinglePlots = kTRUE;
26         
27
28         StyleSettingsThesis();  
29         //StyleSettings();
30
31         set_plot_style();
32         
33         // textsize for legend
34         Float_t ts=0.04;
35         // textsize for label
36         Float_t ls = 0.04;
37         
38         //Array defintion for printing Logo in right upper corner
39         Float_t right_up[4]={0.7,0.63,0.15, 0.02};
40         Float_t right_up2D[4]={0.65,0.8,0.11, 0.02};
41         Float_t right_down[4]={0.7,0.23,0.15, 0.02};
42         //Array defintion for printing Logo in left upper corner
43         Float_t left_up[4]={0.2,0.8, 0.15, 0.02};
44
45         // which maximum pt in the plots
46         Float_t maxPt=10;
47         Float_t rebin = 4;      
48
49         Char_t filename_data[100] = (Form("%s%s",path,data));
50         
51         char *StandardYAxis = "#gamma/ event scaled by multiplicity";
52         char *Date = "25th June 2010";
53
54         TLatex *Scaling = new TLatex(0.6,0.5,"MC scaled to mean of Data"); // Bo: this was modified
55                     Scaling->SetNDC();
56                     Scaling->SetTextColor(2);
57                     Scaling->SetTextFont(42);
58                     Scaling->SetTextSize(0.03);
59                     Scaling->SetLineWidth(2);   
60
61         if(cutsel != ""){
62                 char *GammaDirectory = Form("PWGGA_GammaConversion_%s",  cutsel);
63                 cout << GammaDirectory << endl;
64                 char *GammaList = Form("histogramsAliGammaConversion_%s", cutsel);
65                 cout << GammaList << endl;
66         }else{
67                 char *GammaDirectory = "PWGGA_GammaConversion";
68                 cout << GammaDirectory << endl;
69                 char *GammaList = "histogramsAliGammaConversion";
70                 cout << GammaList << endl;
71         }       
72
73         Float_t linewidth = 1;
74
75 /*****************************************************************************************************************************
76                         Function defintions for plotting dEdx lines MC with Bethe Bloch parametrisation
77                                 * parameters taken from TPC tender 
78 ******************************************************************************************************************************
79 ******************************************************************************************************************************/
80
81                 //Functions taken from TPC - for different line only change (x/0.000511) to (x/mass[TeV])
82                 TF1 foElecMC("foElecMC", "[0]*([1]*TMath::Power(TMath::Sqrt(1 + (x/0.000511)*(x/0.000511))/(x/0.000511) , [3]) - 1 - TMath::Power(TMath::Sqrt(1 + (x/0.000511)*(x/0.000511))/(x/0.000511) , [3])*TMath::Log([2] + 1/TMath::Power((x/0.000511), [4])))",0.005,100);
83                 TF1 foPionMC("foPionMC", "[0]*([1]*TMath::Power(TMath::Sqrt(1 + (x/0.13957)*(x/0.13957))/(x/0.13957) , [3]) - 1 - TMath::Power(TMath::Sqrt(1 + (x/0.13957)*(x/0.13957))/(x/0.13957) , [3])*TMath::Log([2] + 1/TMath::Power((x/0.13957), [4])))",0.005,100);
84                 TF1 foProtonMC("foProtonMC", "[0]*([1]*TMath::Power(TMath::Sqrt(1 + (x/0.93827)*(x/0.93827))/(x/0.93827) , [3]) - 1 - TMath::Power(TMath::Sqrt(1 + (x/0.93827)*(x/0.93827))/(x/0.93827) , [3])*TMath::Log([2] + 1/TMath::Power((x/0.93827), [4])))",0.005,100);
85           TF1 foKaonMC("foKaronMC", "[0]*([1]*TMath::Power(TMath::Sqrt(1 + (x/0.493677)*(x/0.493677))/(x/0.493677) , [3]) - 1 - TMath::Power(TMath::Sqrt(1 + (x/0.493677)*(x/0.493677))/(x/0.493677) , [3])*TMath::Log([2] + 1/TMath::Power((x/0.493677), [4])))",0.005,100);
86
87                 // mip might change, see updates in TPC tender
88                 //Float_t mip = 50.3 ;
89                 foElecMC.SetParameters(2.15898e+00,1.75295e+01,3.40030e-09,1.96178e+00,3.91720e+00);
90                 foElecMC.SetLineColor(1);
91                 foElecMC.SetLineWidth(linewidth);       
92                 foPionMC.SetParameters(2.15898e+00,1.75295e+01,3.40030e-09,1.96178e+00,3.91720e+00);    
93                 foPionMC.SetLineColor(2);
94                 foPionMC.SetLineWidth(linewidth);
95                 foProtonMC.SetParameters(2.15898e+00,1.75295e+01,3.40030e-09,1.96178e+00,3.91720e+00);
96                 foProtonMC.SetLineColor(kGreen+3);
97                 foProtonMC.SetLineWidth(linewidth);
98              foKaonMC.SetParameters(2.15898e+00,1.75295e+01,3.40030e-09,1.96178e+00,3.91720e+00);
99              foKaonMC.SetLineColor(4);
100                 foKaonMC.SetLineWidth(linewidth);
101
102
103 /*****************************************************************************************************************************
104                         Function defintions for plotting dEdx lines DATA with Bethe Bloch Parametrisation 
105                                 * parameters taken from TPC tender
106 ******************************************************************************************************************************
107 ******************************************************************************************************************************/
108
109              TF1 foElec("foElec", "(1.74648e+01*TMath::Power(TMath::Sqrt(1 +(x/0.000511)*(x/0.000511))/(x/0.000511) , 3.06481e+00) + 1.92177e+01 -1.90939e+00*TMath::Power(TMath::Sqrt(1 +(x/0.000511)*(x/0.000511))/(x/0.000511) ,3.06481e+00)*TMath::Log(2.78081e-07 + 1/TMath::Power((x/0.000511),3.26689e+00)))/4.77199500359375293e+01*50.3",0.005,100);
110                 foElec.SetLineColor(1);
111                 foElec.SetLineWidth(linewidth);
112
113              TF1 foPion("foPion", "(1.74648e+01*TMath::Power(TMath::Sqrt(1 +(x/0.13957)*(x/0.13957))/(x/0.13957) , 3.06481e+00) + 1.92177e+01 -1.90939e+00*TMath::Power(TMath::Sqrt(1 +(x/0.13957)*(x/0.13957))/(x/0.13957) ,3.06481e+00)*TMath::Log(2.78081e-07 + 1/TMath::Power((x/0.13957),3.26689e+00)))/4.77199500359375293e+01*50.3",0.005,100);
114                 foPion.SetLineColor(2);
115                 foPion.SetLineWidth(linewidth);
116
117                 TF1 foProton("foProton", "(1.74648e+01*TMath::Power(TMath::Sqrt(1 +(x/0.93827)*(x/0.93827))/(x/0.93827) , 3.06481e+00) + 1.92177e+01 -1.90939e+00*TMath::Power(TMath::Sqrt(1 +(x/0.93827)*(x/0.93827))/(x/0.93827) ,3.06481e+00)*TMath::Log(2.78081e-07 + 1/TMath::Power((x/0.93827),3.26689e+00)))/4.77199500359375293e+01*50.3",0.005,100);
118                 foProton.SetLineColor(kGreen+3);
119                 foProton.SetLineWidth(linewidth);
120
121                 TF1 foKaon("foKaron", "(1.74648e+01*TMath::Power(TMath::Sqrt(1 +(x/0.493677)*(x/0.493677))/(x/0.493677) , 3.06481e+00) + 1.92177e+01 -1.90939e+00*TMath::Power(TMath::Sqrt(1 +(x/0.493677)*(x/0.493677))/(x/0.493677) ,3.06481e+00)*TMath::Log(2.78081e-07 + 1/TMath::Power((x/0.493677),3.26689e+00)))/4.77199500359375293e+01*50.3",0.005,100);
122                 foKaon.SetLineColor(4);         
123                 foKaon.SetLineWidth(linewidth);
124
125         
126 // ---------------------------- LOAD ALL FILES ---------------------------------------------------
127         TFile f(filename_data);  
128         
129         //for new versions
130          TDirectory *fPWGGAGammaConversion_data = new TDirectory(); // definition of first folder / list        
131          TList *fHistosGammaConversion_data = new TList(); // definition of first folder / list
132          TList *fESDContainer_data = new TList();  // definition of following folder / list
133         TList *fMappingContainer_data = new TList();
134          
135          if(!(fPWGGAGammaConversion_data = (TDirectory*)f.Get(GammaDirectory))) cout <<"PWGGAGammConversion TList NOT loaded correctly"<<endl; 
136          if(!(fHistosGammaConversion_data = (TList*)fPWGGAGammaConversion_data->Get(GammaList))) cout<<"histogramsAliGammaConversion NOT loaded correctly!"<<endl; 
137          if(!(fESDContainer_data = (TList*)fHistosGammaConversion_data->FindObject("ESD histograms"))) cout<<"ESD histograms NOT loaded correctly!"<<endl; 
138         fMappingContainer_data = (TList*)fHistosGammaConversion_data->FindObject("Mapping histograms"); 
139
140         TH2F * ESD_AllV0CurrentFinder_alfa_qt_data = fESDContainer_data->FindObject("ESD_AllV0sCurrentFinder_alfa_qt"); 
141         TH2F * ESD_ConvGamma_alfa_qt_data = fESDContainer_data->FindObject("ESD_ConvGamma_alfa_qt");    
142         TH2F * ESD_ConvGamma_P_dEdxP_data = fESDContainer_data->FindObject("ESD_ConvGamma_P_dEdxP");
143         TH2F * ESD_ConvGamma_E_dEdxP_data = fESDContainer_data->FindObject("ESD_ConvGamma_E_dEdxP");
144         TH2F * ESD_ConvGamma_P_AsymmetryP_data = fESDContainer_data->FindObject("ESD_ConvGamma_P_AsymmetryP");
145         TH1F * ESD_ConvGamma_DcaDaughters_data = fESDContainer_data->FindObject("ESD_ConvGamma_DcaDaughters");
146         TH1F * ESD_ConvGamma_CosPointingAngle_data = fESDContainer_data->FindObject("ESD_ConvGamma_CosPointingAngle");
147         TH1F * ESD_ConvGamma_NormDcaDistDaughters_data = fESDContainer_data->FindObject("ESD_ConvGamma_NormDcaDistDaughters");
148         TH1F * ESD_ConvGamma_LikeLihood_data = fESDContainer_data->FindObject("ESD_ConvGamma_LikelihoodAP");
149         TH1F * ESD_ConvGamma_Pt_data=fESDContainer_data->FindObject("ESD_ConvGamma_Pt");
150         TH1F * ESD_ConvGamma_Eta_data=fESDContainer_data->FindObject("ESD_ConvGamma_Eta");
151         TH1F * ESD_ConvGamma_Mass_data=fESDContainer_data->FindObject("ESD_ConvGamma_Mass");
152         TH1F * ESD_ConvGamma_Chi2_data=fESDContainer_data->FindObject("ESD_ConvGamma_Chi2");
153         TH1F * ESD_Mother_InvMass_data=fESDContainer_data->FindObject("ESD_Mother_InvMass");
154         TH1F * ESD_NumberOfGoodESDTracks_data=fESDContainer_data->FindObject("ESD_NumberOfGoodESDTracksVtx");
155         TH1F * ESD_NumberOfGoodESDTrackswith0_data=fESDContainer_data->FindObject("ESD_NumberOfGoodESDTracks");
156         TH1F * ESD_E_Pt_data=fESDContainer_data->FindObject("ESD_E_Pt");
157         TH1F * ESD_P_Pt_data=fESDContainer_data->FindObject("ESD_P_Pt");
158         TH1F * ESD_E_nITSClusters_data=fESDContainer_data->FindObject("ESD_E_nITSClusters");
159         TH1F * ESD_E_nTPCClusters_data=fESDContainer_data->FindObject("ESD_E_nTPCClusters");
160         TH1F * ESD_P_nITSClusters_data=fESDContainer_data->FindObject("ESD_P_nITSClusters");
161         TH1F * ESD_P_nTPCClusters_data=fESDContainer_data->FindObject("ESD_P_nTPCClusters");    
162         TH1D *ESD_ConvGamma_P_dEdx_Y1_data=ESD_ConvGamma_P_dEdxP_data->ProjectionY("ESD_ConvGamma_dEdx_Y1_data",10,20);
163         TH1D *ESD_ConvGamma_P_dEdx_Y2_data=ESD_ConvGamma_P_dEdxP_data->ProjectionY("ESD_ConvGamma_dEdx_Y2_data",20,30);
164         TH1D *ESD_ConvGamma_P_dEdx_Y3_data=ESD_ConvGamma_P_dEdxP_data->ProjectionY("ESD_ConvGamma_dEdx_Y3_data",30,50);
165         TH1D *ESD_ConvGamma_P_dEdx_Y4_data=ESD_ConvGamma_P_dEdxP_data->ProjectionY("ESD_ConvGamma_dEdx_Y4_data",50,100);
166         TH1D *ESD_ConvGamma_P_AsymmetryP_Y1_data=ESD_ConvGamma_P_AsymmetryP_data->ProjectionY("ESD_ConvGamma_P_AsymmetryP_Y1_data",2,2);        
167         TH1D *ESD_ConvGamma_P_AsymmetryP_Y2_data=ESD_ConvGamma_P_AsymmetryP_data->ProjectionY("ESD_ConvGamma_P_AsymmetryP_Y2_data",5,19);       
168         TH1F * ESD_NumberOfContributorsVtx_data=fESDContainer_data->FindObject("ESD_NumberOfContributorsVtx");
169         TH1F *ScalingDiagramm_data= fMappingContainer_data->FindObject("ESD_Conversion_Mapping_Phi_in_R_11");
170
171         ESD_NumberOfContributorsVtx_data->SetAxisRange(1.,100.);
172         ESD_NumberOfGoodESDTrackswith0_data->SetAxisRange(1.,100.);
173
174         Float_t Scaling_data = ScalingDiagramm_data->Integral();
175         Float_t nGoodEvents_data = ESD_NumberOfContributorsVtx_data->Integral();
176         Float_t nGoodTrig_data = ESD_NumberOfContributorsVtx_data->GetEntries();
177         cout<< data << "    Number of events::   " << nGoodEvents_data << "    Number of triggers::   " << nGoodTrig_data << endl;
178
179         Float_t normFac_data=1./nGoodEvents_data;
180 //      Float_t normFac_data=1./Scaling_data;   //Float_t normFac_data=1.;
181         Double_t mean_data = ESD_NumberOfGoodESDTracks_data->GetMean();
182
183         //Scaling reconstr.
184
185         GammaScalingHistogramm(ESD_ConvGamma_P_dEdxP_data,normFac_data);
186         GammaScalingHistogramm(ESD_ConvGamma_E_dEdxP_data,normFac_data);
187         GammaScalingHistogramm(ESD_ConvGamma_P_AsymmetryP_data,normFac_data);
188         GammaScalingHistogramm(ESD_ConvGamma_Pt_data,normFac_data);
189         GammaScalingHistogramm(ESD_ConvGamma_Eta_data,normFac_data);
190         GammaScalingHistogramm(ESD_ConvGamma_Mass_data,normFac_data);
191         GammaScalingHistogramm(ESD_ConvGamma_Chi2_data,normFac_data);
192         GammaScalingHistogramm(ESD_E_Pt_data,normFac_data);
193         GammaScalingHistogramm(ESD_P_Pt_data,normFac_data);
194         GammaScalingHistogramm(ESD_E_nITSClusters_data,normFac_data);
195         GammaScalingHistogramm(ESD_P_nITSClusters_data,normFac_data);
196         GammaScalingHistogramm(ESD_E_nTPCClusters_data,normFac_data);
197         GammaScalingHistogramm(ESD_P_nTPCClusters_data,normFac_data);
198         GammaScalingHistogramm(ESD_Mother_InvMass_data,normFac_data);
199         GammaScalingHistogramm(ESD_ConvGamma_DcaDaughters_data,normFac_data);
200         GammaScalingHistogramm(ESD_ConvGamma_CosPointingAngle_data,normFac_data);
201         GammaScalingHistogramm(ESD_ConvGamma_NormDcaDistDaughters_data,normFac_data);
202         GammaScalingHistogramm(ESD_ConvGamma_LikeLihood_data,normFac_data); 
203         GammaScalingHistogramm(ESD_ConvGamma_P_dEdx_Y1_data,normFac_data); 
204         GammaScalingHistogramm(ESD_ConvGamma_P_dEdx_Y2_data,normFac_data);
205         GammaScalingHistogramm(ESD_ConvGamma_P_dEdx_Y3_data,normFac_data); 
206         GammaScalingHistogramm(ESD_ConvGamma_P_dEdx_Y4_data,normFac_data);
207         GammaScalingHistogramm(ESD_ConvGamma_P_AsymmetryP_Y1_data,normFac_data); 
208         GammaScalingHistogramm(ESD_ConvGamma_P_AsymmetryP_Y2_data,normFac_data); 
209         GammaScalingHistogramm(ESD_NumberOfGoodESDTracks_data,normFac_data); 
210         GammaScalingHistogramm(ESD_NumberOfGoodESDTrackswith0_data,normFac_data); 
211         ESD_Mother_InvMass_data->Rebin(rebin);
212         MultoutData = new TFile("Multout1.root","RECREATE");
213         ESD_NumberOfGoodESDTracks_data->Write();
214         MultoutData->Write();
215         MultoutData->Close();
216         //------------------------------- SECOND FILE ------------------------------
217         TFile *montecarlo = 0x0;
218         
219         
220         if(MCfile != ""){
221                 montecarlo = new TFile(Form("%s%s",path, MCfile));
222                 
223                 
224                 // for new versions
225                  TDirectory *fPWGGAGammaConversion_montecarlo = new TDirectory(); // definition of first folder / list  
226                  TList *fHistosGammaConversion_montecarlo = new TList(); // definition of first folder / list
227                  TList *fESDContainer_montecarlo = new TList();  // definition of following folder / list
228                  TList *fMappingContainer_montecarlo = new TList();  // definition of following folder / list
229                  TList *fMCtruth_montecarlo = new TList();
230                  if(!(fPWGGAGammaConversion_montecarlo = (TDirectory*)montecarlo->Get(GammaDirectory))) cout <<"PWGGAGammConversion TList NOT loaded correctly"<<endl; 
231                  if(!(fHistosGammaConversion_montecarlo = (TList*)fPWGGAGammaConversion_montecarlo->Get(GammaList))) cout<<"histogramsAliGammaConversion NOT loaded correctly!"<<endl; 
232                  if(!(fESDContainer_montecarlo = (TList*)fHistosGammaConversion_montecarlo->FindObject("ESD histograms"))) cout<<"ESD histograms NOT loaded correctly!"<<endl; 
233                 fMappingContainer_montecarlo = (TList*)fHistosGammaConversion_montecarlo->FindObject("Mapping histograms");              
234                 fMCtruth_montecarlo = (TList*)fHistosGammaConversion_montecarlo->FindObject("MC histograms");            
235
236                 TH2F * ESD_AllV0CurrentFinder_alfa_qt_montecarlo = fESDContainer_montecarlo->FindObject("ESD_AllV0sCurrentFinder_alfa_qt");     
237                 TH2F * ESD_ConvGamma_alfa_qt_montecarlo = fESDContainer_montecarlo->FindObject("ESD_ConvGamma_alfa_qt");                        
238                 TH2F * ESD_ConvGamma_P_dEdxP_montecarlo = fESDContainer_montecarlo->FindObject("ESD_ConvGamma_P_dEdxP");
239                 TH2F * ESD_ConvGamma_E_dEdxP_montecarlo = fESDContainer_montecarlo->FindObject("ESD_ConvGamma_E_dEdxP");
240                 TH2F * ESD_ConvGamma_P_AsymmetryP_montecarlo = fESDContainer_montecarlo->FindObject("ESD_ConvGamma_P_AsymmetryP");
241                 TH2F * MC_ConvGamma_P_AsymmetryP_montecarlo = fMCtruth_montecarlo->FindObject("MC_ConvGamma_P_AsymmetryP");
242                 TH1F * ESD_ConvGamma_DcaDaughters_montecarlo = fESDContainer_montecarlo->FindObject("ESD_ConvGamma_DcaDaughters");
243                 TH1F * ESD_ConvGamma_CosPointingAngle_montecarlo = fESDContainer_montecarlo->FindObject("ESD_ConvGamma_CosPointingAngle");
244                 TH1F * ESD_ConvGamma_NormDcaDistDaughters_montecarlo = fESDContainer_montecarlo->FindObject("ESD_ConvGamma_NormDcaDistDaughters");
245                 TH1F * ESD_ConvGamma_LikeLihood_montecarlo = fESDContainer_montecarlo->FindObject("ESD_ConvGamma_LikelihoodAP");
246                 TH1F * ESD_ConvGamma_Pt_montecarlo=fESDContainer_montecarlo->FindObject("ESD_ConvGamma_Pt");
247                 TH1F * ESD_ConvGamma_Eta_montecarlo=fESDContainer_montecarlo->FindObject("ESD_ConvGamma_Eta");
248                 TH1F * ESD_ConvGamma_Mass_montecarlo=fESDContainer_montecarlo->FindObject("ESD_ConvGamma_Mass");
249                 TH1F * ESD_ConvGamma_Chi2_montecarlo=fESDContainer_montecarlo->FindObject("ESD_ConvGamma_Chi2");
250                 TH1F * ESD_E_Pt_montecarlo=fESDContainer_montecarlo->FindObject("ESD_E_Pt");
251                 TH1F * ESD_P_Pt_montecarlo=fESDContainer_montecarlo->FindObject("ESD_P_Pt");
252                 TH1F * ESD_E_nITSClusters_montecarlo=fESDContainer_montecarlo->FindObject("ESD_E_nITSClusters");
253                 TH1F * ESD_E_nTPCClusters_montecarlo=fESDContainer_montecarlo->FindObject("ESD_E_nTPCClusters");
254                 TH1F * ESD_P_nITSClusters_montecarlo=fESDContainer_montecarlo->FindObject("ESD_P_nITSClusters");
255                 TH1F * ESD_P_nTPCClusters_montecarlo=fESDContainer_montecarlo->FindObject("ESD_P_nTPCClusters");        
256                 TH1F * ESD_Mother_InvMass_montecarlo=fESDContainer_montecarlo->FindObject("ESD_Mother_InvMass");
257                 TH1F * ESD_NumberOfGoodESDTracks_montecarlo=fESDContainer_montecarlo->FindObject("ESD_NumberOfGoodESDTracksVtx");
258                 TH1F * ESD_NumberOfGoodESDTrackswith0_montecarlo=fESDContainer_montecarlo->FindObject("ESD_NumberOfGoodESDTracks");             
259                 TH1D *ESD_ConvGamma_P_dEdx_Y1_montecarlo=ESD_ConvGamma_P_dEdxP_montecarlo->ProjectionY("ESD_ConvGamma_dEdx_Y1_montecarlo",1,10);
260                 TH1D *ESD_ConvGamma_P_dEdx_Y2_montecarlo=ESD_ConvGamma_P_dEdxP_montecarlo->ProjectionY("ESD_ConvGamma_dEdx_Y2_montecarlo",10,20);       
261                 TH1D *ESD_ConvGamma_P_dEdx_Y3_montecarlo=ESD_ConvGamma_P_dEdxP_montecarlo->ProjectionY("ESD_ConvGamma_dEdx_Y3_montecarlo",20,50);
262                 TH1D *ESD_ConvGamma_P_dEdx_Y4_montecarlo=ESD_ConvGamma_P_dEdxP_montecarlo->ProjectionY("ESD_ConvGamma_dEdx_Y4_montecarlo",50,100);
263                 TH1D *ESD_ConvGamma_P_AsymmetryP_Y1_montecarlo=ESD_ConvGamma_P_AsymmetryP_montecarlo->ProjectionY("ESD_ConvGamma_P_AsymmetryP_Y1_montecarlo",2,2);
264                 TH1D *ESD_ConvGamma_P_AsymmetryP_Y2_montecarlo=ESD_ConvGamma_P_AsymmetryP_montecarlo->ProjectionY("ESD_ConvGamma_P_AsymmetryP_Y2_montecarlo",5,19);
265                 TH1D *MC_ConvGamma_P_AsymmetryP_Y1_montecarlo=MC_ConvGamma_P_AsymmetryP_montecarlo->ProjectionY("MC_ConvGamma_P_AsymmetryP_Y1_montecarlo",2,2);
266                 TH1D *MC_ConvGamma_P_AsymmetryP_Y2_montecarlo=MC_ConvGamma_P_AsymmetryP_montecarlo->ProjectionY("MC_ConvGamma_P_AsymmetryP_Y2_montecarlo",5,19);
267
268                 TH1F * ESD_NumberOfContributorsVtx_montecarlo=fESDContainer_montecarlo->FindObject("ESD_NumberOfContributorsVtx");
269                 TH1F *ScalingDiagramm_montecarlo= fMappingContainer_montecarlo->FindObject("ESD_Conversion_Mapping_Phi_in_R_11");
270
271                 ESD_NumberOfContributorsVtx_montecarlo->SetAxisRange(1.,100.);
272                 ESD_NumberOfGoodESDTrackswith0_montecarlo->SetAxisRange(1.,100.);
273
274                 Float_t Scaling_montecarlo = ScalingDiagramm_montecarlo->Integral();
275                 Float_t nGoodEvents_montecarlo = ESD_NumberOfContributorsVtx_montecarlo->Integral();
276                 Float_t nGoodTrig_montecarlo = ESD_NumberOfContributorsVtx_montecarlo->GetEntries();
277                 cout<< MCfile << "    Number of events::   " << nGoodEvents_montecarlo << "    Number of triggers::   " << nGoodTrig_montecarlo << endl;
278
279                 Double_t mean_montecarlo = ESD_NumberOfGoodESDTracks_montecarlo->GetMean();
280                 Float_t normFac_montecarlo=1./nGoodEvents_montecarlo * mean_data/mean_montecarlo;
281         //      Float_t normFac_montecarlo=1./Scaling_montecarlo;
282                 Float_t nGoodEvents_MCtruth = 
283                 Float_t normFac_MCtruth = 1./
284                 
285                 //Scaling reconstr.
286         
287                 GammaScalingHistogramm(ESD_ConvGamma_P_dEdxP_montecarlo,normFac_montecarlo);
288                 GammaScalingHistogramm(ESD_ConvGamma_E_dEdxP_montecarlo,normFac_montecarlo);
289                 GammaScalingHistogramm(ESD_ConvGamma_P_AsymmetryP_montecarlo,normFac_montecarlo);
290                 GammaScalingHistogramm(ESD_ConvGamma_Pt_montecarlo,normFac_montecarlo);
291                 GammaScalingHistogramm(ESD_ConvGamma_Eta_montecarlo,normFac_montecarlo);
292                 GammaScalingHistogramm(ESD_ConvGamma_Mass_montecarlo,normFac_montecarlo);
293                 GammaScalingHistogramm(ESD_ConvGamma_Chi2_montecarlo,normFac_montecarlo);
294                 GammaScalingHistogramm(ESD_E_Pt_montecarlo,normFac_montecarlo);
295                 GammaScalingHistogramm(ESD_P_Pt_montecarlo,normFac_montecarlo);
296                 GammaScalingHistogramm(ESD_E_nITSClusters_montecarlo,normFac_montecarlo);
297                 GammaScalingHistogramm(ESD_P_nITSClusters_montecarlo,normFac_montecarlo);
298                 GammaScalingHistogramm(ESD_E_nTPCClusters_montecarlo,normFac_montecarlo);
299                 GammaScalingHistogramm(ESD_P_nTPCClusters_montecarlo,normFac_montecarlo);
300                 GammaScalingHistogramm(ESD_Mother_InvMass_montecarlo,normFac_montecarlo);
301                 GammaScalingHistogramm(ESD_ConvGamma_DcaDaughters_montecarlo,normFac_montecarlo);
302                 GammaScalingHistogramm(ESD_ConvGamma_CosPointingAngle_montecarlo,normFac_montecarlo);
303                 GammaScalingHistogramm(ESD_ConvGamma_NormDcaDistDaughters_montecarlo,normFac_montecarlo);
304                 GammaScalingHistogramm(ESD_ConvGamma_LikeLihood_montecarlo,normFac_montecarlo); 
305                 GammaScalingHistogramm(ESD_ConvGamma_P_dEdx_Y1_montecarlo,normFac_montecarlo); 
306                 GammaScalingHistogramm(ESD_ConvGamma_P_dEdx_Y2_montecarlo,normFac_montecarlo);
307                 GammaScalingHistogramm(ESD_ConvGamma_P_dEdx_Y3_montecarlo,normFac_montecarlo); 
308                 GammaScalingHistogramm(ESD_ConvGamma_P_dEdx_Y4_montecarlo,normFac_montecarlo);
309                 GammaScalingHistogramm(ESD_ConvGamma_P_AsymmetryP_Y1_montecarlo,normFac_montecarlo); 
310                 GammaScalingHistogramm(MC_ConvGamma_P_AsymmetryP_Y1_montecarlo,normFac_montecarlo); 
311                 GammaScalingHistogramm(MC_ConvGamma_P_AsymmetryP_Y2_montecarlo,normFac_montecarlo); 
312                 GammaScalingHistogramm(ESD_ConvGamma_P_AsymmetryP_Y2_montecarlo,normFac_montecarlo); 
313                 GammaScalingHistogramm(ESD_NumberOfGoodESDTracks_montecarlo,normFac_montecarlo);
314                 GammaScalingHistogramm(ESD_NumberOfGoodESDTrackswith0_montecarlo,normFac_montecarlo);
315                 ESD_Mother_InvMass_montecarlo->Rebin(rebin);
316
317                 MultoutMC = new TFile("Multout2.root","RECREATE");
318                 ESD_NumberOfGoodESDTracks_montecarlo->Write();
319                 MultoutMC->Write();
320                 MultoutMC->Close();
321
322         }
323                 //-----------------------------------------------------------------------------------------
324                 TF1* myGaus = new TF1("myGaus","gaus",50.,70.);
325                 myGaus->SetParameters(0.010,65.,20);
326                 myGaus->SetParLimits(0,1e-3, 100e-3);
327                 myGaus->SetParLimits(1,60,90);
328                 ESD_ConvGamma_P_dEdx_Y1_data->Fit("myGaus","RME");
329                 Float_t mean_P_dEdx_Y1_data = myGaus->GetParameter(1);
330                 delete myGaus;
331
332                 TF1* myGaus = new TF1("myGaus","gaus",50.,70.);
333                 myGaus->SetParameters(0.010,65.,20);
334                 myGaus->SetParLimits(0,1e-3, 100e-3);
335                 myGaus->SetParLimits(1,60,90);
336                 ESD_ConvGamma_P_dEdx_Y2_data->Fit("myGaus","RME");
337                 Float_t mean_P_dEdx_Y2_data = myGaus->GetParameter(1);
338                 delete myGaus;
339
340                 TF1* myGaus = new TF1("myGaus","gaus",60.,75.);
341                 myGaus->SetParameters(0.010,65.,20);
342                 myGaus->SetParLimits(0,1e-3, 100e-3);
343                 myGaus->SetParLimits(1,60,90);
344                 ESD_ConvGamma_P_dEdx_Y3_data->Fit("myGaus","RME");
345                 Float_t mean_P_dEdx_Y3_data = myGaus->GetParameter(1);
346                 delete myGaus;
347
348                 TF1* myGaus = new TF1("myGaus","gaus",60.,79.);
349                 myGaus->SetParameters(0.010,65.,20);
350                 myGaus->SetParLimits(0,1e-3, 100e-3);
351                 myGaus->SetParLimits(1,60,90);
352                 ESD_ConvGamma_P_dEdx_Y4_data->Fit("myGaus","RME");
353                 Float_t mean_P_dEdx_Y4_data = myGaus->GetParameter(1);
354                 delete myGaus;
355
356
357         if(MCfile != ""){
358                 TF1* myGaus2 = new TF1("myGaus2","gaus",60.,79.);
359                 myGaus2->SetParameters(0.010,80.,20);
360                 myGaus2->SetParLimits(0,1e-3, 100e-3);
361                 myGaus2->SetParLimits(1,60,100);
362                 ESD_ConvGamma_P_dEdx_Y1_montecarlo->Fit("myGaus2","RME");
363                 Float_t mean_P_dEdx_Y1_montecarlo = myGaus2->GetParameter(1);
364                 delete myGaus2; 
365                 TH1F* ESD_ConvGamma_P_dEdx_Y1_montecarlo_2 = (TH1F*) ESD_ConvGamma_P_dEdx_Y1_montecarlo->Clone();       
366                 Float_t nBins = ESD_ConvGamma_P_dEdx_Y1_montecarlo_2->GetNbinsX();
367                 for ( int i=1; i<nBins;i++) {   ESD_ConvGamma_P_dEdx_Y1_montecarlo_2->SetBinContent(i,0); }
368                 for ( int i=1; i<nBins;i++) {
369                         Float_t binwidth = ESD_ConvGamma_P_dEdx_Y1_montecarlo->GetBinWidth(i);
370                         Float_t yvalue=ESD_ConvGamma_P_dEdx_Y1_montecarlo->GetBinContent(i);
371                         Float_t xvalue=ESD_ConvGamma_P_dEdx_Y1_montecarlo->GetBinCenter(i);
372                         Float_t newX= xvalue*mean_P_dEdx_Y1_data/mean_P_dEdx_Y1_montecarlo; 
373                         Int_t j = (newX+0.5*binwidth)/binwidth;                 
374                         ESD_ConvGamma_P_dEdx_Y1_montecarlo_2->AddBinContent(j,yvalue);
375                 }
376
377                 TF1* myGaus2 = new TF1("myGaus2","gaus",60.,79.);
378                 myGaus2->SetParameters(0.010,80.,20);
379                 myGaus2->SetParLimits(0,1e-3, 100e-3);
380                 myGaus2->SetParLimits(1,60,100);
381                 ESD_ConvGamma_P_dEdx_Y2_montecarlo->Fit("myGaus2","RME");
382                 Float_t mean_P_dEdx_Y2_montecarlo = myGaus2->GetParameter(1);
383                 delete myGaus2;
384                 TH1F* ESD_ConvGamma_P_dEdx_Y2_montecarlo_2 = (TH1F*) ESD_ConvGamma_P_dEdx_Y2_montecarlo->Clone();       
385                 Float_t nBins = ESD_ConvGamma_P_dEdx_Y2_montecarlo_2->GetNbinsX();
386                 for ( int i=1; i<nBins;i++) {   ESD_ConvGamma_P_dEdx_Y2_montecarlo_2->SetBinContent(i,0);}
387                 for ( int i=1; i<nBins;i++) {
388                         Float_t binwidth = ESD_ConvGamma_P_dEdx_Y2_montecarlo->GetBinWidth(i);
389                         Float_t yvalue=ESD_ConvGamma_P_dEdx_Y2_montecarlo->GetBinContent(i);
390                         Float_t xvalue=ESD_ConvGamma_P_dEdx_Y2_montecarlo->GetBinCenter(i);
391                         Float_t newX= xvalue*mean_P_dEdx_Y2_data/mean_P_dEdx_Y2_montecarlo; 
392                         Int_t j = (newX+0.5*binwidth)/binwidth;                 
393                         ESD_ConvGamma_P_dEdx_Y2_montecarlo_2->AddBinContent(newX,yvalue);
394                 }
395
396
397                 TF1* myGaus2 = new TF1("myGaus2","gaus",60.,79.);
398                 myGaus2->SetParameters(0.010,81.,20);
399                 myGaus2->SetParLimits(0,1e-3, 100e-3);
400                 myGaus2->SetParLimits(1,60,100);
401                 ESD_ConvGamma_P_dEdx_Y3_montecarlo->Fit("myGaus2","RME");               
402                 Float_t mean_P_dEdx_Y3_montecarlo = myGaus2->GetParameter(1);
403                 delete myGaus2;
404                 TH1F* ESD_ConvGamma_P_dEdx_Y3_montecarlo_2 = (TH1F*) ESD_ConvGamma_P_dEdx_Y3_montecarlo->Clone();       
405                 Float_t nBins = ESD_ConvGamma_P_dEdx_Y3_montecarlo_2->GetNbinsX();
406                 for ( int i=1; i<nBins;i++) {   ESD_ConvGamma_P_dEdx_Y3_montecarlo_2->SetBinContent(i,0); }
407                 for ( int i=1; i<nBins;i++) {
408                         Float_t binwidth = ESD_ConvGamma_P_dEdx_Y3_montecarlo->GetBinWidth(i);
409                         Float_t yvalue=ESD_ConvGamma_P_dEdx_Y3_montecarlo->GetBinContent(i);
410                         Float_t xvalue=ESD_ConvGamma_P_dEdx_Y3_montecarlo->GetBinCenter(i);
411                         Float_t newX= xvalue*mean_P_dEdx_Y3_data/mean_P_dEdx_Y3_montecarlo; 
412                         Int_t j = (newX+0.5*binwidth)/binwidth;                 
413                         ESD_ConvGamma_P_dEdx_Y3_montecarlo_2->AddBinContent(j,yvalue);
414                 }
415
416                 TF1* myGaus2 = new TF1("myGaus2","gaus",60.,79.);
417                 myGaus2->SetParameters(0.010,81.,20);
418                 myGaus2->SetParLimits(0,1e-4, 100e-3);
419                 myGaus2->SetParLimits(1,60,100);
420                 ESD_ConvGamma_P_dEdx_Y4_montecarlo->Fit("myGaus2","RME");
421                 Float_t mean_P_dEdx_Y4_montecarlo = myGaus2->GetParameter(1);
422                 delete myGaus2;
423                 TH1F* ESD_ConvGamma_P_dEdx_Y4_montecarlo_2 = (TH1F*) ESD_ConvGamma_P_dEdx_Y4_montecarlo->Clone();       
424                 Float_t nBins = ESD_ConvGamma_P_dEdx_Y4_montecarlo_2->GetNbinsX();
425                 for ( int i=1; i<nBins;i++) {   ESD_ConvGamma_P_dEdx_Y4_montecarlo_2->SetBinContent(i,0); }
426                 for ( int i=1; i<nBins;i++) {
427                         Float_t binwidth = ESD_ConvGamma_P_dEdx_Y4_montecarlo->GetBinWidth(i);
428                         Float_t yvalue=ESD_ConvGamma_P_dEdx_Y4_montecarlo->GetBinContent(i);
429                         Float_t xvalue=ESD_ConvGamma_P_dEdx_Y4_montecarlo->GetBinCenter(i);
430                         Float_t newX= xvalue*mean_P_dEdx_Y4_data/mean_P_dEdx_Y4_montecarlo; 
431                         Int_t j = (newX+0.5*binwidth)/binwidth;                 
432                         ESD_ConvGamma_P_dEdx_Y4_montecarlo_2->AddBinContent(j,yvalue);
433                 }
434         }
435
436         
437         // ----------------------------------------------------------------------------------------
438         
439         // ----------------------- Start  ps file -----------------------------------------------------
440         
441         TPostScript *ps_characteristics;
442         if(!SinglePlots)ps_characteristics = new TPostScript(Form("%s%s.ps",path,output),111);  
443                 
444         
445         // ----------------------- dE/dx of pion/electron  -----------------------------------------
446
447         // --------------------------- page 1 -------------------------------------------------------
448         if(!SinglePlots) {
449 ps_characteristics->NewPage();
450         
451                 TCanvas * c0 = new TCanvas("c0","",10,10,700,1000);  // gives the page size
452                 c0->Divide(2,2);
453         
454                 title0 = new TPaveLabel(0.05,0.92,0.95,0.96,(Form("data: %s",data)));   
455                 title0->SetFillColor(16);
456                 title0->SetTextSize(0.25);
457                 title0->Draw();
458         
459                 if(MCfile != ""){
460                         title1 = new TPaveLabel(0.05,0.87,0.95,0.91,(Form("montecarlo: %s",MCfile)));   
461                         title1->SetFillColor(16);
462                         title1->SetTextSize(0.25);
463                         title1->Draw();
464                 }
465         
466
467                 c0->Update();
468                                 
469         //-------------------------- page 2 - dE/dx distribution-----------------------------------------------------------
470                 
471                 ps_characteristics->NewPage();
472
473                 TCanvas * c1 = new TCanvas("c1","",10,10,700,1000);  // gives the page size
474                 pad_c1 = new TPad("pad_c1","",0.05,0.05,0.95,0.85,0);   // gives the size of the histo areas 
475                 pad_c1->SetFillColor(0);
476                 pad_c1->GetFrame()->SetFillColor(0);
477                 pad_c1->SetBorderMode(0);
478                 pad_c1->Divide(2,3);
479                 pad_c1->Draw();
480                 
481                 title0->Draw();
482                 if(MCfile != ""){
483                         title1->Draw();
484                 }
485                                 
486                 pad_c1->cd(1)->SetLogx(1);
487                 pad_c1->cd(1)->SetLogz(1);
488                 pad_c1->cd(2)->SetLogx(1);
489                 pad_c1->cd(2)->SetLogz(1);
490                 pad_c1->cd(3)->SetLogx(1);
491                 pad_c1->cd(4)->SetLogx(1);
492                 pad_c1->cd(3)->SetLogz(1);
493                 pad_c1->cd(4)->SetLogz(1);
494
495
496                 pad_c1->cd(1)->SetRightMargin(0.17); 
497                 pad_c1->cd(1);
498                         DrawAutoGammaHisto2D(   ESD_ConvGamma_P_dEdxP_data,
499                                                                 "", "p [GeV/c]", "dE/dx Positron", "Data",
500                                                                 kTRUE, 10., 140.,
501                                                                 kTRUE, 0., 20.);
502                 foElec.Draw("e,hist,same");
503                 foPion.Draw("e,hist,same");
504                 foProton.Draw("e,hist,same");
505                 foKaon.Draw("e,hist,same");
506
507                 pad_c1->cd(2)->SetRightMargin(0.17); 
508                 if(MCfile != ""){
509                         pad_c1->cd(2);  
510                                 DrawAutoGammaHisto2D(   ESD_ConvGamma_P_dEdxP_montecarlo,
511                                                                         "", "p [GeV/c]", "dE/dx Positron", "MC",
512                                                                         kTRUE, 20., 150.,
513                                                                 kTRUE, 0., 20.);
514                         foElecMC.Draw("e,hist,same");
515                         foPionMC.Draw("e,hist,same");
516                         foProtonMC.Draw("e,hist,same");
517                         foKaonMC.Draw("e,hist,same");
518
519                 }
520
521                 pad_c1->cd(3)->SetRightMargin(0.17); 
522                 pad_c1->cd(3);
523                         DrawAutoGammaHisto2D(   ESD_ConvGamma_E_dEdxP_data,
524                                                                 "", "p [GeV/c]", "dE/dx Electron", "Data",
525                                                                 kTRUE, 10., 140.,
526                                                                 kTRUE, 0., 20.);
527                 foElec.Draw("e,hist,same");
528                 foPion.Draw("e,hist,same");
529                 foProton.Draw("e,hist,same");
530                 foKaon.Draw("e,hist,same");
531
532                 pad_c1->cd(4)->SetRightMargin(0.17); 
533                 if(MCfile != ""){
534                         pad_c1->cd(4);  
535                                 DrawAutoGammaHisto2D(   ESD_ConvGamma_E_dEdxP_montecarlo,
536                                                                         "", "p [GeV/c]", "dE/dx Electron", "MC",
537                                                                         kTRUE, 20., 150.,
538                                                                 kTRUE, 0., 20.);
539                         foElecMC.Draw("e,hist,same");
540                         foPionMC.Draw("e,hist,same");
541                         foProtonMC.Draw("e,hist,same");
542                         foKaonMC.Draw("e,hist,same");
543
544                 }
545
546                 pad_c1->cd(5);
547                         if(MCfile == ""){
548                                 ESD_ConvGamma_P_dEdx_Y3_data->Rebin(2);
549                                 DrawAutoGammaHisto( ESD_ConvGamma_P_dEdx_Y3_data, 
550                                                                  "Projection of dE/dx 20th-50th pt-bins","dE/dx ",StandardYAxis,
551                                                                  kTRUE, 1.2,0,
552                                                                  kFALSE,0. ,0.,
553                                                                  kTRUE, 50.,100.);
554                         }else{
555                                 ESD_ConvGamma_P_dEdx_Y3_data->Rebin(2);
556                                 ESD_ConvGamma_P_dEdx_Y3_montecarlo_2->Rebin(2);
557                                 DrawAutoGammaHistos( ESD_ConvGamma_P_dEdx_Y3_data, 
558                                                                  ESD_ConvGamma_P_dEdx_Y3_montecarlo_2, 
559                                                                  "Projection of dE/dx 20th-50th pt-bins","dE/dx ",StandardYAxis,
560                                                                  kTRUE, 1.2,0,
561                                                                  kFALSE,0. ,0.,
562                                                                  kTRUE, 50.,100.);
563                         }
564                         Scaling->Draw();                
565
566                 pad_c1->cd(6);
567                         if(MCfile == ""){
568                                 ESD_ConvGamma_P_dEdx_Y4_data->Rebin(2);
569                                 DrawAutoGammaHisto( ESD_ConvGamma_P_dEdx_Y4_data, 
570                                                                  "Projection of dE/dx in other pt-bins","dE/dx ",StandardYAxis,
571                                                                  kTRUE, 1.2,0,
572                                                                  kFALSE,0. ,0.,
573                                                                  kTRUE, 50.,100.);
574                         }else{
575                                 ESD_ConvGamma_P_dEdx_Y4_data->Rebin(2);
576                                 ESD_ConvGamma_P_dEdx_Y4_montecarlo_2->Rebin(2);
577                                 DrawAutoGammaHistos( ESD_ConvGamma_P_dEdx_Y4_data, 
578                                                                  ESD_ConvGamma_P_dEdx_Y4_montecarlo_2, 
579                                                                  "Projection of dE/dx in other pt-bins","dE/dx ",StandardYAxis,
580                                                                  kTRUE, 1.2,0,
581                                                                  kFALSE,0. ,0.,
582                                                                  kTRUE, 50.,100.);
583                         }
584                         Scaling->Draw();                
585                 
586                 c1->Update();
587
588  //----------------------------- page 3 - Asymmetry distribution ---------------------------------------------------------------
589                 ps_characteristics->NewPage();
590                 
591                 TCanvas * c2 = new TCanvas("c2","",10,10,700,1000);  // gives the page size
592                 pad_c2 = new TPad("pad_c2","",0.05,0.05,0.95,0.85,0);   // gives the size of the histo areas 
593                 pad_c2->SetFillColor(0);
594                 pad_c2->GetFrame()->SetFillColor(0);
595                 pad_c2->SetBorderMode(0);
596                 pad_c2->Divide(2,2);
597                 pad_c2->Draw();
598                 
599                 title0->Draw();
600                 if(MCfile != ""){
601                         title1->Draw();
602                 }
603
604                 pad_c2->cd(1)->SetLogz(1);
605                 pad_c2->cd(2)->SetLogz(1);
606
607                 pad_c2->cd(1);
608                         pad_c2->cd(1)->SetRightMargin(0.17);
609                         DrawAutoGammaHisto2D(   ESD_ConvGamma_P_AsymmetryP_data,
610                                                                 "", "p [GeV/c]", "Asymmetry", "Data",
611                                                                 kFALSE, 30., 100.,
612                                                                 kTRUE, 0., 20.);
613
614                 if(MCfile != ""){
615                         pad_c2->cd(2);
616                                 pad_c2->cd(2)->SetRightMargin(0.17);
617                                 DrawAutoGammaHisto2D(   ESD_ConvGamma_P_AsymmetryP_montecarlo,
618                                                                         "", "p [GeV/c]", "Asymmetry", "MC",
619                                                                         kFALSE, 30., 100.,
620                                                                         kTRUE, 0., 20.);
621                 }
622
623                 pad_c2->cd(3);
624                         if(MCfile == ""){
625                                 DrawAutoGammaHisto( ESD_ConvGamma_P_AsymmetryP_Y1_data, 
626                                                                 "Projection of Asymmetry in 1st -3rd bin pt-bin", "Asymmetry",StandardYAxis,
627                                                                 kTRUE, 1.2,0,
628                                                                 kFALSE,0. ,0., 
629                                                                 kFALSE, 0.,0.9);
630
631                         }else{
632                                 DrawAutoGammaHistos( ESD_ConvGamma_P_AsymmetryP_Y1_data,
633                                                                  ESD_ConvGamma_P_AsymmetryP_Y1_montecarlo,
634                                                                  "Projection of Asymmetry in 1st -3rd bin pt-bin", "Asymmetry",StandardYAxis, 
635                                                                  kTRUE, 1.2,0,
636                                                                  kFALSE,0. ,0.,
637                                                                  kFALSE, 0.1,0.9);
638                         }
639
640                 pad_c2->cd(4);
641                         if(MCfile == ""){
642                                 DrawAutoGammaHisto( ESD_ConvGamma_P_AsymmetryP_Y2_data,
643                                                                 "Projection of Asymmetry in other pt-bins", "Asymmetry",StandardYAxis, 
644                                                                 kTRUE, 1.2,0,
645                                                                 kFALSE,0. ,0., 
646                                                                 kFALSE, 0.,1.);
647                         }else{
648                                 DrawAutoGammaHistos( ESD_ConvGamma_P_AsymmetryP_Y2_data, 
649                                                                  ESD_ConvGamma_P_AsymmetryP_Y2_montecarlo, 
650                                                                  "Projection of Asymmetry in other pt-bins", "Asymmetry",StandardYAxis, 
651                                                                  kTRUE, 1.2,0,
652                                                                  kFALSE,0. ,0., 
653                                                                  kFALSE, 0.,1.);
654                         }
655                 c2->Update();
656                 
657
658  //----------------------------- page 4 - Armenteros-plots ---------------------------------------------------------------
659                 ps_characteristics->NewPage();
660                 
661                 TCanvas * c20 = new TCanvas("c20","",10,10,700,1000);  // gives the page size
662                 pad_c20 = new TPad("pad_c20","",0.05,0.05,0.95,0.85,0);   // gives the size of the histo areas 
663                 pad_c20->SetFillColor(0);
664                 pad_c20->GetFrame()->SetFillColor(0);
665                 pad_c20->SetBorderMode(0);
666                 pad_c20->Divide(2,2);
667                 pad_c20->Draw();
668                 
669                 pad_c20->cd(1)->SetLogz(1);
670                 pad_c20->cd(2)->SetLogz(1);
671                 pad_c20->cd(3)->SetLogz(1);
672                 pad_c20->cd(4)->SetLogz(1);
673
674                 title0->Draw();
675                 if(MCfile != ""){
676                         title1->Draw();
677                 }
678
679                 pad_c20->cd(1);
680                         pad_c20->cd(1)->SetRightMargin(0.17);
681                         DrawAutoGammaHisto2D(   ESD_AllV0CurrentFinder_alfa_qt_data,
682                                                                 "", "#alpha = (p^{+}_{L}-p^{-}_{L})/(p^{+}_{L}+p^{-}_{L})", "q_{T} [GeV/c]", "Data",
683                                                                 kFALSE, 30., 100.,
684                                                                 kTRUE, -1., 1.);
685
686                 if(MCfile != ""){
687                         pad_c20->cd(2);
688                                 pad_c20->cd(2)->SetRightMargin(0.17);
689                                 DrawAutoGammaHisto2D(   ESD_AllV0CurrentFinder_alfa_qt_montecarlo,
690                                                                         "","#alpha = (p^{+}_{L}-p^{-}_{L})/(p^{+}_{L}+p^{-}_{L})", "q_{T} [GeV/c]", "MC",
691                                                                         kFALSE, 30., 100.,
692                                                                         kTRUE, -1., 1.);
693                 }
694
695                 pad_c20->cd(3);
696                         pad_c20->cd(3)->SetRightMargin(0.17);
697                         DrawAutoGammaHisto2D(   ESD_ConvGamma_alfa_qt_data,
698                                                                 "", "#alpha = (p^{+}_{L}-p^{-}_{L})/(p^{+}_{L}+p^{-}_{L})", "q_{T} [GeV/c]", "Data",
699                                                                 kFALSE, 30., 100.,
700                                                                 kTRUE, -1., 1.);
701
702                 if(MCfile != ""){
703                         pad_c20->cd(4);
704                                 pad_c20->cd(4)->SetRightMargin(0.17);
705                                 DrawAutoGammaHisto2D(   ESD_ConvGamma_alfa_qt_montecarlo,
706                                                                         "", "#alpha = (p^{+}_{L}-p^{-}_{L})/(p^{+}_{L}+p^{-}_{L})", "q_{T} [GeV/c]", "MC",
707                                                                         kFALSE, 30., 100.,
708                                                                         kTRUE, -1., 1.);
709                 }
710
711
712                 c20->Update();
713                 
714                 // -----------------------------Page 5 ------------------------------------------------
715                 
716                 ps_characteristics->NewPage();
717                 
718                 TCanvas * c3 = new TCanvas("c3","",10,10,700,1000);  // gives the page size
719                 pad_c3 = new TPad("pad_c3","",0.05,0.05,0.95,0.85,0);   // gives the size of the histo areas 
720                 pad_c3->SetFillColor(0);
721                 pad_c3->GetFrame()->SetFillColor(0);
722                 pad_c3->SetBorderMode(0);
723                 pad_c3->Divide(2,2);
724                 pad_c3->Draw();
725                 
726                 title0->Draw();
727                 if(MCfile != ""){
728                         title1->Draw();
729                 }
730                 
731                 pad_c3->cd(1)->SetLogy(1);
732                 pad_c3->cd(2)->SetLogy(1);
733                 pad_c3->cd(3)->SetLogy(1);
734                 pad_c3->cd(4)->SetLogy(1);
735                 
736                 pad_c3->cd(1);
737                         if(MCfile == ""){
738                                 DrawAutoGammaHisto( ESD_ConvGamma_DcaDaughters_data,
739                                                                 "", "DCA [cm]",StandardYAxis,
740                                                                 kTRUE, 3,0.000001,                                                              kFALSE,0 ,0, 
741                                                                 kFALSE, 0,1);
742                         }else{
743                                 DrawAutoGammaHistos( ESD_ConvGamma_DcaDaughters_data,
744                                                                  ESD_ConvGamma_DcaDaughters_montecarlo, 
745                                                                  "", "DCA [cm]",StandardYAxis,
746                                                                  kTRUE, 3,0.000001,
747                                                                  kFALSE,0. ,0., 
748                                                                  kFALSE, 0.,1);
749                         }
750                 
751                 pad_c3->cd(2);
752                         if(MCfile == ""){
753                                 DrawAutoGammaHisto( ESD_ConvGamma_NormDcaDistDaughters_data,
754                                                                 "", "Normalized distance [cm]",StandardYAxis,
755                                                                 kTRUE, 3,0.000001,
756                                                                 kFALSE,0 ,0, 
757                                                                 kFALSE, 0,1);
758                         }else{
759                                 DrawAutoGammaHistos( ESD_ConvGamma_NormDcaDistDaughters_data,
760                                                                  ESD_ConvGamma_NormDcaDistDaughters_montecarlo, 
761                                                                 "", "Normalized distance [cm]",StandardYAxis,
762                                                                 kTRUE, 3,0.000001,
763                                                                 kFALSE,0. ,0., 
764                                                                 kFALSE, 0.,1);
765                         }
766                 
767                 pad_c3->cd(3);
768                         if(MCfile == ""){
769                                 DrawAutoGammaHisto( ESD_ConvGamma_CosPointingAngle_data,
770                                                                 "", "Cos Pointing Angle",StandardYAxis,
771                                                                 kTRUE, 3,0.000001,
772                                                                 kFALSE,0 ,0, 
773                                                                 kTRUE, 0,1);
774                         }else{
775                                 DrawAutoGammaHistos( ESD_ConvGamma_CosPointingAngle_data,
776                                                                  ESD_ConvGamma_CosPointingAngle_montecarlo, 
777                                                                 "", "Cos Pointing Angle",StandardYAxis,
778                                                                 kTRUE, 3,0.000001,
779                                                                 kFALSE,0. ,0., 
780                                                                 kTRUE, 0.,1);
781                         }
782                                 
783                 pad_c3->cd(4);
784                         if(MCfile == ""){
785                                 DrawAutoGammaHisto( ESD_ConvGamma_LikeLihood_data,
786                                                                 "", "Likelihood",StandardYAxis,
787                                                                 kTRUE, 3,0.000001,
788                                                                 kFALSE,0 ,0, 
789                                                                 kTRUE, 0,1);
790                         }else{
791                                 DrawAutoGammaHistos( ESD_ConvGamma_LikeLihood_data,
792                                                                  ESD_ConvGamma_LikeLihood_montecarlo, 
793                                                                 "", "Likelihood",StandardYAxis,
794                                                                 kTRUE, 3,0.000001,
795                                                                 kFALSE,0. ,0., 
796                                                                 kTRUE, 0.,1);
797                         }
798
799                 
800                 c3->Update();
801         //-----------------------------Page 6 - Clusters---------------------------------
802                 ps_characteristics->NewPage();
803                 
804                 TCanvas * c6 = new TCanvas("c6","",10,10,700,1000);  // gives the page size
805                 
806                 pad_c6 = new TPad("pad_c6","",0.05,0.05,0.95,0.85,0);   // gives the size of the histo areas 
807                 pad_c6->SetFillColor(0);
808                 pad_c6->GetFrame()->SetFillColor(0);
809                 pad_c6->SetBorderMode(0);
810                 pad_c6->Divide(2,3);
811                 pad_c6->Draw();
812                 
813                 title0->Draw();
814                 if(MCfile != ""){
815                         title1->Draw();
816                 }
817                 
818                 pad_c6->cd(1)->SetLogy(1);
819                 pad_c6->cd(2)->SetLogy(1);
820                 TText *l = new TText();         
821                 
822                 pad_c6->cd(1);  
823                         if(MCfile == ""){
824                                 DrawAutoGammaHisto( ESD_NumberOfGoodESDTracks_data, 
825                                                                  "","Number good ESDTracks ","",
826                                                                  kTRUE, 3.,0.000001,
827                                                                  kFALSE,0. ,0.,
828                                                                  kFALSE, 0.,100.);
829                                 Double_t mean_data = ESD_NumberOfGoodESDTracks_data->GetMean();
830                                 l->SetTextAlign(11);
831                                 l->SetTextColor(1);                     
832                                 l->SetTextSize(0.03);
833                                 l->DrawText(60,0.0002, "Mean Data:");
834                                 l->DrawText(80,0.0002, Form("%lg",  mean_data));        
835
836                         }else{
837                                 DrawAutoGammaHistos( ESD_NumberOfGoodESDTracks_data, 
838                                                                  ESD_NumberOfGoodESDTracks_montecarlo, 
839                                                                  "","Number good ESDTracks","",
840                                                                  kTRUE, 3.,0.000001,
841                                                                  kFALSE,0. ,0.,
842                                                                  kFALSE, 0.,100.);
843                                 Double_t mean_data = ESD_NumberOfGoodESDTracks_data->GetMean();
844                                 l->SetTextAlign(11);
845                                 l->SetTextColor(1);                     
846                                 l->SetTextSize(0.03);
847                                 l->DrawText(60,0.0002, "Mean Data:");
848                                 l->DrawText(80,0.0002, Form("%lg",  mean_data));        
849         
850                                 Double_t mean_montecarlo = ESD_NumberOfGoodESDTracks_montecarlo->GetMean();
851                                 l->SetTextAlign(11);
852                                 l->SetTextColor(2);                     
853                                 l->SetTextSize(0.03);
854                                 l->DrawText(60,0.0001, "Mean MC:");
855                                 l->DrawText(80,0.0001, Form("%lg",  mean_montecarlo));          
856         
857                         }
858
859                 pad_c6->cd(2);
860                         if(MCfile == ""){
861                                 DrawAutoGammaHisto( ESD_NumberOfGoodESDTrackswith0_data, 
862                                                                  "","Number good ESDTracks with 0 ","",
863                                                                  kTRUE, 3.,0.000001,
864                                                                  kFALSE,0. ,0.,
865                                                                  kFALSE, 0.,100.);
866                                 Double_t mean_data = ESD_NumberOfGoodESDTrackswith0_data->GetMean();
867                                 l->SetTextAlign(11);
868                                 l->SetTextColor(1);                     
869                                 l->SetTextSize(0.03);
870                                 l->DrawText(60,0.0002, "Mean Data:");
871                                 l->DrawText(80,0.0002, Form("%lg",  mean_data));        
872
873                         }else{
874                                 DrawAutoGammaHistos( ESD_NumberOfGoodESDTrackswith0_data, 
875                                                                  ESD_NumberOfGoodESDTrackswith0_montecarlo, 
876                                                                  "","Number good ESDTracks with 0","",
877                                                                  kTRUE, 3.,0.000001,
878                                                                  kFALSE,0. ,0.,
879                                                                  kFALSE, 0.,100.);
880                                 Double_t mean_data = ESD_NumberOfGoodESDTrackswith0_data->GetMean();
881                                 l->SetTextAlign(11);
882                                 l->SetTextColor(1);                     
883                                 l->SetTextSize(0.03);
884                                 l->DrawText(60,0.0002, "Mean Data:");
885                                 l->DrawText(80,0.0002, Form("%lg",  mean_data));        
886         
887                                 Double_t mean_montecarlo = ESD_NumberOfGoodESDTrackswith0_montecarlo->GetMean();
888                                 l->SetTextAlign(11);
889                                 l->SetTextColor(2);                     
890                                 l->SetTextSize(0.03);
891                                 l->DrawText(60,0.0001, "Mean MC:");
892                                 l->DrawText(80,0.0001, Form("%lg",  mean_montecarlo));          
893         
894                         }
895
896                 pad_c6->cd(3);
897                         if(MCfile == ""){
898                                 DrawAutoGammaHisto( ESD_E_nITSClusters_data,
899                                                                 "", "Number of ITS Clusters for Electron ","Hits/event scaled by multiplicity ",
900                                                                 kTRUE, 1.5,0,
901                                                                 kFALSE,0 ,0, 
902                                                                 kFALSE, 0,0);
903                         }else{
904                                 DrawAutoGammaHistos( ESD_E_nITSClusters_data,
905                                                                  ESD_E_nITSClusters_montecarlo, 
906                                                                 "","Number of ITS Clusters for Electron ","Hits/event scaled by multiplicity", 
907                                                                 kTRUE, 1.5,0,
908                                                                 kFALSE,0. ,0., 
909                                                                 kFALSE, 0.,0.);
910                         }
911         
912                 pad_c6->cd(4);
913                         if(MCfile == ""){
914                                 DrawAutoGammaHisto( ESD_E_nTPCClusters_data,
915                                                                 "", "Number of TPC Clusters for Electron","Hits/event scaled by multiplicity", 
916                                                                 kTRUE, 1.5,0,
917                                                                 kFALSE,0. ,0., 
918                                                                 kFALSE, 0.,0.);
919                         }else{
920                                 DrawAutoGammaHistos( ESD_E_nTPCClusters_data, 
921                                                                  ESD_E_nTPCClusters_montecarlo,
922                                                                  "","Number of TPC Clusters for Electron ","Hits/event scaled by multiplicity",
923                                                                  kTRUE, 1.5,0,
924                                                                  kFALSE,0. ,0.,
925                                                                  kFALSE, 0.,0.);
926                         }
927
928                 pad_c6->cd(5);
929                         if(MCfile == ""){
930                                 DrawAutoGammaHisto( ESD_P_nITSClusters_data,
931                                                                 "", "Number of ITS Clusters for PositronS","Hits/event scaled by multiplicity", 
932                                                                 kTRUE, 1.5, 0,
933                                                                 kFALSE,0. ,0., 
934                                                                 kFALSE, 0.,0.);
935                         }else{
936                                 DrawAutoGammaHistos( ESD_P_nITSClusters_data, 
937                                                                  ESD_P_nITSClusters_montecarlo,
938                                                                  "","Number of ITS Clusters for Positron","Hits/event scaled by multiplicity", 
939                                                                  kTRUE, 1.5, 0,
940                                                                  kFALSE,0. ,0.,
941                                                                  kFALSE, 0.,0.);
942                         }
943
944                 pad_c6->cd(6);
945                         if(MCfile != ""){       
946                                 DrawAutoGammaHistos( ESD_P_nTPCClusters_data, 
947                                                                  ESD_P_nTPCClusters_montecarlo, 
948                                                                  "","Number of TPC Clusters for Positron","Hits/event scaled by multiplicity",
949                                                                  kTRUE, 1.5, 0,
950                                                                  kFALSE,0. ,0.,
951                                                                  kFALSE, 0.,0.);
952                                 
953                         }else{
954                                 DrawAutoGammaHisto( ESD_P_nTPCClusters_data,
955                                                                 "", "Number of TPC Clusters for PositronS","Hits/event scaled by multiplicity", 
956                                                                 kTRUE, 1.5, 0,
957                                                                 kFALSE,0. ,0., 
958                                                                 kFALSE, 0.,0.);                 
959                         }
960
961                 c6->Update();
962         
963                 // --------------------------Page 7-------------------------------------
964                 
965                 ps_characteristics->NewPage();
966                 
967                 TCanvas * c4 = new TCanvas("c4","",10,10,700,1000);  // gives the page size
968                 pad_c4 = new TPad("pad_c4","",0.05,0.05,0.95,0.85,0);   // gives the size of the histo areas 
969                 pad_c4->SetFillColor(0);
970                 pad_c4->GetFrame()->SetFillColor(0);
971                 pad_c4->SetBorderMode(0);
972                 pad_c4->Divide(2,3);
973                 pad_c4->Draw();
974                 
975                 title0->Draw();
976                 if(MCfile != ""){
977                         title1->Draw();
978                 }
979
980                 pad_c4->cd(1)->SetLogy(1);
981                 pad_c4->cd(2)->SetLogy(1);
982                 pad_c4->cd(3)->SetLogy(1);
983                 pad_c4->cd(4)->SetLogy(1);
984                 pad_c4->cd(5)->SetLogy(1);
985                 pad_c4->cd(6)->SetLogy(1);
986                 
987                 
988                 pad_c4->cd(1);
989                         if(MCfile == ""){
990                                 DrawAutoGammaHisto( ESD_ConvGamma_Pt_data,
991                                                                 "", "p_{t} Conv #gamma [GeV]",StandardYAxis,
992                                                                 kTRUE, 3,0.00000001,
993                                                                 kFALSE,0 ,0, 
994                                                                 kTRUE, 0,20.);
995                         }else{
996                                 DrawAutoGammaHistos( ESD_ConvGamma_Pt_data,
997                                                                  ESD_ConvGamma_Pt_montecarlo, 
998                                                                 "", "p_{t} Conv #gamma [GeV]",StandardYAxis,
999                                                                 kTRUE, 3,0.00000001,
1000                                                                 kFALSE,0. ,0., 
1001                                                                 kTRUE, 0.,20.);
1002                         }
1003
1004                 pad_c4->cd(2);
1005                         if(MCfile == ""){
1006                                 DrawAutoGammaHisto( ESD_ConvGamma_Eta_data,
1007                                                                 "", "#eta Conv  #gamma",StandardYAxis,
1008                                                                 kTRUE, 3,0.001,
1009                                                                 kFALSE,0 ,0, 
1010                                                                 kFALSE, 0,0.7);
1011                         }else{
1012                                 DrawAutoGammaHistos( ESD_ConvGamma_Eta_data,
1013                                                                  ESD_ConvGamma_Eta_montecarlo, 
1014                                                                 "", "#eta Conv  #gamma",StandardYAxis,
1015                                                                 kTRUE, 3,0.001,
1016                                                                 kFALSE,0. ,0., 
1017                                                                 kFALSE, 0.,0.7);
1018                         }
1019                 
1020                 pad_c4->cd(3);
1021                         if(MCfile == ""){
1022                                 DrawAutoGammaHisto( ESD_ConvGamma_Mass_data,
1023                                                                 "", "InvMass e^{+}e^{-} [GeV]",StandardYAxis,
1024                                                                 kTRUE, 3,0.000001,
1025                                                                 kFALSE,0 ,0, 
1026                                                                 kTRUE, 0,0.1);
1027                         }else{
1028                                 DrawAutoGammaHistos( ESD_ConvGamma_Mass_data,
1029                                                                  ESD_ConvGamma_Mass_montecarlo, 
1030                                                                 "", "InvMass e^{+}e^{-} [GeV]",StandardYAxis,
1031                                                                 kFALSE, 3,0.000001,
1032                                                                 kFALSE,0. ,0., 
1033                                                                 kTRUE, 0.,0.1);
1034                         }
1035                 
1036                 pad_c4->cd(4);
1037                         if(MCfile == ""){
1038                                 DrawAutoGammaHisto( ESD_ConvGamma_Chi2_data,
1039                                                                 "", "#chi^{2} Conv  #gamma",StandardYAxis,
1040                                                                 kTRUE, 3,0.000001,
1041                                                                 kFALSE,0 ,0, 
1042                                                                 kFALSE, 0,8.);
1043                         }else{
1044                                 DrawAutoGammaHistos( ESD_ConvGamma_Chi2_data,
1045                                                                  ESD_ConvGamma_Chi2_montecarlo, 
1046                                                                 "", "#chi^{2} Conv  #gamma",StandardYAxis,
1047                                                                 kTRUE, 3,0.000001,
1048                                                                 kFALSE,0. ,0., 
1049                                                                 kFALSE, 0.,8.);
1050                         }
1051                 
1052                 pad_c4->cd(5);
1053                         if(MCfile == ""){
1054                                 DrawAutoGammaHisto( ESD_E_Pt_data,
1055                                                                 "", "p_{t} electron [GeV]",StandardYAxis,
1056                                                                 kTRUE, 3,0.00000001,
1057                                                                 kFALSE,0 ,0, 
1058                                                                 kTRUE, 0,20.);
1059                         }else{
1060                                 DrawAutoGammaHistos( ESD_E_Pt_data,
1061                                                                  ESD_E_Pt_montecarlo, 
1062                                                                 "", "p_{t} electron [GeV]",StandardYAxis,
1063                                                                 kTRUE, 3,0.00000001,
1064                                                                 kFALSE,0. ,0., 
1065                                                                 kTRUE, 0.,20.);
1066                         }
1067
1068                 pad_c4->cd(6);
1069                         if(MCfile == ""){
1070                         DrawAutoGammaHisto( ESD_P_Pt_data,
1071                                                         "", "p_{t} positron [GeV]",StandardYAxis,
1072                                                         kTRUE, 3,0.00000001,
1073                                                         kFALSE,0 ,0, 
1074                                                         kTRUE, 0,20.);
1075                         }else{
1076                         DrawAutoGammaHistos( ESD_P_Pt_data,
1077                                                          ESD_P_Pt_montecarlo, 
1078                                                         "", "p_{t} positron [GeV]",StandardYAxis,
1079                                                         kTRUE, 3,0.00000001,
1080                                                         kFALSE,0. ,0., 
1081                                                         kTRUE, 0.,20.);
1082                         }
1083
1084                 c4->Update();
1085                 
1086                 // --------------------------------Page 8 - Mother mass---------------------------------------------
1087                 
1088                 ps_characteristics->NewPage();
1089                 
1090                 TCanvas * c5 = new TCanvas("c5","",10,10,700,1000);  // gives the page size
1091                 pad_c5 = new TPad("pad_c5","",0.05,0.05,0.95,0.85,0);   // gives the size of the histo areas 
1092                 pad_c5->SetFillColor(0);
1093                 pad_c5->GetFrame()->SetFillColor(0);
1094                 pad_c5->SetBorderMode(0);
1095                 pad_c5->Divide(2,2);
1096                 pad_c5->Draw();
1097                 
1098                 title0->Draw();
1099                 if(MCfile != ""){
1100                         title1->Draw();
1101                 }
1102         
1103                 pad_c5->cd(1);
1104                                 if(MCfile == ""){
1105                                 DrawAutoGammaHisto( ESD_Mother_InvMass_data,
1106                                                                 "", "InvMass #gamma#gamma [GeV]","Counts/event scaled by multiplicity",
1107                                                                 kTRUE, 1.5,0,
1108                                                                 kFALSE,0 ,0, 
1109                                                                 kFALSE, 0,0);
1110                         }else{
1111                                 DrawAutoGammaHistos( ESD_Mother_InvMass_data,
1112                                                                  ESD_Mother_InvMass_montecarlo, 
1113                                                                 "","InvMass #gamma#gamma [GeV]","Counts/event scaled by multiplicity", 
1114                                                                 kTRUE, 1.5,0,
1115                                                                 kFALSE,0. ,0., 
1116                                                                 kFALSE, 0.,0.);
1117                         }
1118                                 
1119                 c5->Update();
1120                 ps_characteristics->Close();
1121                 
1122                 
1123         }
1124         
1125         
1126
1127         // ----------------------- Start Single Plots -----------------------------------------------------
1128         
1129         
1130         // ----------------------- dE/dx of pion/electron  -----------------------------------------
1131         if(SinglePlots){                
1132                 //------------
1133
1134
1135                 TCanvas * c1_1 = new TCanvas("c1_1","",10,10,500,500);  // gives the page size          
1136                 c1_1->SetLogx(1);
1137                 c1_1->SetLogz(1);
1138
1139                 c1_1->SetRightMargin(0.14);             
1140                 c1_1->cd();
1141                         DrawAutoGammaHisto2D(   ESD_ConvGamma_P_dEdxP_data,
1142                                                                 "", "p [GeV/c]", "dE/dx", "",
1143                                                                 kTRUE, 10., 140.,
1144                                                                 kTRUE, 0., 20.);
1145                         foElec.Draw("e,hist,same");
1146                         foPion.Draw("e,hist,same");
1147                         foProton.Draw("e,hist,same");
1148                         foKaon.Draw("e,hist,same");
1149                         DrawdEdxLabel();
1150                 DrawAliceLogoPerformance(right_up2D[0],right_up2D[1],right_up2D[2],right_up2D[3],0.03, Date);   
1151
1152
1153                 c1_1->Update();
1154                 c1_1->SaveAs(Form("%s%s/dEdx_P_data.%s",path,suffix,suffix));
1155                 delete c1_1;
1156                 
1157                 if(MCfile != ""){
1158                         TCanvas * c1_2 = new TCanvas("c1_2","",10,10,500,500);  // gives the page size          
1159                         
1160                         c1_2->SetLogx(1);
1161                         c1_2->SetLogz(1);
1162                         c1_2->SetRightMargin(0.14);                     
1163                         c1_2->cd();     
1164                                 DrawAutoGammaHisto2D(   ESD_ConvGamma_P_dEdxP_montecarlo,
1165                                                                         "", "p [GeV/c]", "dE/dx", "",
1166                                                                         kTRUE, 20., 150.,
1167                                                                         kTRUE, 0., 20.);
1168                         foElecMC.Draw("e,hist,same");
1169                         foPionMC.Draw("e,hist,same");
1170                         foProtonMC.Draw("e,hist,same");
1171                         foKaonMC.Draw("e,hist,same");
1172                         DrawdEdxLabel();
1173                         DrawAliceLogo(right_up2D [0],right_up2D[1],right_up2D[2],right_up2D[3]);
1174                         c1_2->Update();
1175                         c1_2->SaveAs(Form("%s%s/dEdx_P_montecarlo.%s",path,suffix,suffix));
1176                         delete c1_1;
1177                 }
1178
1179                 TCanvas * c1_1 = new TCanvas("c1_1","",10,10,500,500);  // gives the page size          
1180                 c1_1->SetLogx(1);
1181                 c1_1->SetLogz(1);
1182
1183                 c1_1->SetRightMargin(0.14);             
1184                 c1_1->cd();
1185                         DrawAutoGammaHisto2D(   ESD_ConvGamma_E_dEdxP_data,
1186                                                                 "", "p [GeV/c]", "dE/dx", "",
1187                                                                 kTRUE, 10., 140.,
1188                                                                 kTRUE, 0., 20.);
1189                         foElec.Draw("e,hist,same");
1190                         foPion.Draw("e,hist,same");
1191                         foProton.Draw("e,hist,same");
1192                         foKaon.Draw("e,hist,same");
1193                         DrawdEdxLabel();
1194                 DrawAliceLogoPerformance(right_up2D[0],right_up2D[1],right_up2D[2],right_up2D[3],0.03, Date);   
1195
1196
1197                 c1_1->Update();
1198                 c1_1->SaveAs(Form("%s%s/dEdx_E_data.%s",path,suffix,suffix));
1199                 delete c1_1;
1200                 
1201                 if(MCfile != ""){
1202                         TCanvas * c1_2 = new TCanvas("c1_2","",10,10,500,500);  // gives the page size          
1203                         
1204                         c1_2->SetLogx(1);
1205                         c1_2->SetLogz(1);
1206                         c1_2->SetRightMargin(0.14);                     
1207                         c1_2->cd();     
1208                                 DrawAutoGammaHisto2D(   ESD_ConvGamma_E_dEdxP_montecarlo,
1209                                                                         "", "p [GeV/c]", "dE/dx", "",
1210                                                                         kTRUE, 20., 150.,
1211                                                                         kTRUE, 0., 20.);
1212                         foElecMC.Draw("e,hist,same");
1213                         foPionMC.Draw("e,hist,same");
1214                         foProtonMC.Draw("e,hist,same");
1215                         foKaonMC.Draw("e,hist,same");
1216                         DrawdEdxLabel();
1217                         DrawAliceLogo(right_up2D [0],right_up2D[1],right_up2D[2],right_up2D[3]);
1218                         c1_2->Update();
1219                         c1_2->SaveAs(Form("%s%s/dEdx_E_montecarlo.%s",path,suffix,suffix));
1220                         delete c1_1;
1221                 }
1222
1223                 
1224                 // ------------------------ asymetry ----------------------------------------------------
1225                 
1226                 
1227                 
1228                 TCanvas * c2_1 = new TCanvas("c2_1","",10,10,500,500);  // gives the page size
1229                 c2_1->SetLogx(0);
1230                 c2_1->SetLogz(1);
1231                 c2_1->SetRightMargin(0.17);                     
1232                 c2_1->cd();
1233                         DrawAutoGammaHisto2D(   ESD_ConvGamma_P_AsymmetryP_data,
1234                                                                 "", "p [GeV/c]", "Asymmetry", "",
1235                                                                 kFALSE, 30., 100.,
1236                                                                 kTRUE, 0., 6.);
1237                         DrawAliceLogo(right_up2D [0],right_up2D[1],right_up2D[2],right_up2D[3]);
1238                 c2_1->Update();
1239                 c2_1->SaveAs(Form("%s%s/Asymetry_data.%s",path,suffix,suffix));
1240                 delete c2_1;
1241
1242                 if(MCfile != ""){                       
1243                         TCanvas * c2_2 = new TCanvas("c2_2","",10,10,500,500);  // gives the page size                  
1244                         c2_2->SetLogx(0);
1245                         c2_2->SetLogz(1);
1246                         c2_2->SetRightMargin(0.17);                     
1247                         c2_2->cd();
1248                                 DrawAutoGammaHisto2D(   ESD_ConvGamma_P_AsymmetryP_montecarlo,
1249                                                                         "", "p [GeV/c]", "Asymmetry", "",
1250                                                                         kFALSE, 30., 100.,
1251                                                                         kTRUE, 0., 6.);
1252
1253                         DrawAliceLogo(right_up2D [0],right_up2D[1],right_up2D[2],right_up2D[3]);
1254                         c2_2->Update();
1255                         c2_2->SaveAs(Form("%s%s/Asymetry_montecarlo.%s",path,suffix,suffix));
1256                         delete c2_2;    
1257                 }
1258 // ---------------------------- Armenteros single plots  ------------------------------------------------------------------
1259                 
1260                 TCanvas * c20_1 = new TCanvas("c20_1","",10,10,500,450);  // gives the page size
1261                 c20_1->SetLogx(0);
1262                 c20_1->SetLogz(1);
1263                 c20_1->SetRightMargin(0.17);                    
1264                 c20_1->cd();
1265                         ESD_AllV0CurrentFinder_alfa_qt_data->SetMinimum(20);
1266                         DrawAutoGammaHisto2D(   ESD_AllV0CurrentFinder_alfa_qt_data,
1267                                                                 "", "#alpha = (p^{+}_{L}-p^{-}_{L})/(p^{+}_{L}+p^{-}_{L})", "q_{T} [GeV/c]", "",
1268                                                                 kFALSE, 30., 100.,
1269                                                                 kTRUE, -1., 1.);
1270                         DrawArmenteros();
1271                         DrawAliceLogoPerformance(right_up2D [0],right_up2D[1],right_up2D[2],right_up2D[3],0.03,Date);
1272                 c20_1->Update();
1273                 c20_1->SaveAs(Form("%s%s/Armenterosfull_data.%s",path,suffix,suffix));
1274                 delete c20_1;
1275
1276                 if(MCfile != ""){                       
1277                         TCanvas * c20_2 = new TCanvas("c20_2","",10,10,500,450);  // gives the page size                        
1278                         c20_2->SetLogx(0);
1279                         c20_2->SetLogz(1);
1280                         c20_2->SetRightMargin(0.17);                    
1281                         c20_2->cd();
1282                                 DrawAutoGammaHisto2D(   ESD_AllV0CurrentFinder_alfa_qt_montecarlo,
1283                                                                         "","#alpha = (p^{+}_{L}-p^{-}_{L})/(p^{+}_{L}+p^{-}_{L})", "q_{T} [GeV/c]", "",
1284                                                                         kFALSE, 30., 100.,
1285                                                                         kTRUE, -1., 1.);
1286                                 DrawArmenteros();
1287                                 DrawAliceLogoPerformance(right_up2D [0],right_up2D[1],right_up2D[2],right_up2D[3],0.03, Date);
1288                         c20_2->Update();
1289                         c20_2->SaveAs(Form("%s%s/Armenterosfull_montecarlo.%s",path,suffix,suffix));
1290                         delete c20_2;   
1291                 }
1292
1293                 TCanvas * c20_1 = new TCanvas("c20_1","",10,10,500,450);  // gives the page size
1294                 c20_1->SetLogx(0);
1295                 c20_1->SetLogz(1);
1296                 c20_1->SetRightMargin(0.17);                    
1297                 c20_1->cd();
1298                         DrawAutoGammaHisto2D(   ESD_ConvGamma_alfa_qt_data,
1299                                                                 "", "#alpha = (p^{+}_{L}-p^{-}_{L})/(p^{+}_{L}+p^{-}_{L})", "q_{T} [GeV/c]", "",
1300                                                                 kFALSE, 30., 100.,
1301                                                                 kTRUE, -1., 1.);
1302                         DrawAliceLogoPerformance(right_up2D[0],right_up2D[1],right_up2D[2],right_up2D[3],0.03,Date);
1303                 c20_1->Update();
1304                 c20_1->SaveAs(Form("%s%s/ArmenterosAftCuts_data.%s",path,suffix,suffix));
1305                 delete c20_1;
1306
1307                 if(MCfile != ""){                       
1308                         TCanvas * c20_2 = new TCanvas("c20_2","",10,10,500,450);  // gives the page size                        
1309                         c20_2->SetLogx(0);
1310                         c20_2->SetLogz(1);
1311                         c20_2->SetRightMargin(0.17);                    
1312                         c20_2->cd();
1313                                 DrawAutoGammaHisto2D(   ESD_ConvGamma_alfa_qt_montecarlo,
1314                                                                         "", "#alpha = (p^{+}_{L}-p^{-}_{L})/(p^{+}_{L}+p^{-}_{L})", "q_{T} [GeV/c]", "",
1315                                                                         kFALSE, 30., 100.,
1316                                                                         kTRUE, -1., 1.);
1317                                 DrawAliceLogoPerformance(right_up2D [0],right_up2D[1],right_up2D[2],right_up2D[3],0.03,Date);
1318                         c20_2->Update();
1319                         c20_2->SaveAs(Form("%s%s/ArmenterosAftCuts_montecarlo.%s",path,suffix,suffix));
1320                         delete c20_2;   
1321                 }
1322
1323
1324                 
1325                 // -----------------------------------------------------------------------------
1326                 
1327                 
1328                 TCanvas * c3_1 = new TCanvas("c3_1","",10,10,500,500);  // gives the page size
1329                 TCanvas * c3_2 = new TCanvas("c3_2","",10,10,500,500);  // gives the page size
1330                 TCanvas * c3_3 = new TCanvas("c3_3","",10,10,500,500);  // gives the page size
1331                 TCanvas * c3_4 = new TCanvas("c3_4","",10,10,500,500);  // gives the page size
1332                 
1333                 
1334                 c3_1->SetLogy(1);
1335                 c3_2->SetLogy(1);
1336                 c3_3->SetLogy(1);
1337                 c3_4->SetLogy(1);
1338                 
1339 //--------------------------------------- DCA -------------------------------------------------------------             
1340                 c3_1->cd();
1341                         if(MCfile == ""){
1342                                 DrawAutoGammaHisto( ESD_ConvGamma_DcaDaughters_data,
1343                                                                 "", "DCA [cm]",StandardYAxis,
1344                                                                 kTRUE, 3,0.000001,
1345                                                                 kFALSE,0 ,0, 
1346                                                                 kFALSE, 0,1);
1347                         }else{
1348                                 DrawAutoGammaHistos( ESD_ConvGamma_DcaDaughters_data,
1349                                                                  ESD_ConvGamma_DcaDaughters_montecarlo, 
1350                                                                  "", "DCA [cm]",StandardYAxis,
1351                                                                  kTRUE, 3,0.000001,
1352                                                                  kFALSE,0. ,0., 
1353                                                                  kFALSE, 0.,1);
1354                         }
1355                         DrawAliceLogoPerformance(right_up [0],right_up[1],right_up[2],right_up[3],0.03, Date);  
1356
1357                 c3_1->Update();
1358                 c3_1->SaveAs(Form("%s%s/Photon_DcaDaughters.%s",path,suffix,suffix));
1359                 delete c3_1;
1360
1361
1362 //-------------------------------- Normalised Distance ----------------------------------------
1363                 c3_2->cd();
1364                         if(MCfile == ""){
1365                                 DrawAutoGammaHisto( ESD_ConvGamma_NormDcaDistDaughters_data,
1366                                                                 "", "Normalized distance [cm]",StandardYAxis,
1367                                                                 kTRUE, 3,0.000001,
1368                                                                 kFALSE,0 ,0, 
1369                                                                 kFALSE, 0,1);
1370                         }else{
1371                                 DrawAutoGammaHistos( ESD_ConvGamma_NormDcaDistDaughters_data,
1372                                                                  ESD_ConvGamma_NormDcaDistDaughters_montecarlo, 
1373                                                                 "", "Normalized distance [cm]",StandardYAxis,
1374                                                                 kTRUE, 3,0.000001,
1375                                                                 kFALSE,0. ,0., 
1376                                                                 kFALSE, 0.,1);
1377                         }
1378                         DrawAliceLogo(right_up [0],right_up[1],right_up[2],right_up[3]);
1379
1380                 c3_2->Update();
1381                 c3_2->SaveAs(Form("%s%s/Photon_NormDcaDaughters.%s",path,suffix,suffix));
1382                 delete c3_2;
1383 //------------------------------------- Cos Pointing Angle -----------------------------------------            
1384                 c3_3->cd();
1385                 if(MCfile == ""){
1386                                 DrawAutoGammaHisto( ESD_ConvGamma_CosPointingAngle_data,
1387                                                                 "", "Cos Pointing Angle",StandardYAxis,
1388                                                                 kTRUE, 3,0.000001,
1389                                                                 kFALSE,0 ,0, 
1390                                                                 kTRUE, 0,1);
1391                         }else{
1392                                 DrawAutoGammaHistos( ESD_ConvGamma_CosPointingAngle_data,
1393                                                                  ESD_ConvGamma_CosPointingAngle_montecarlo, 
1394                                                                 "", "Cos Pointing Angle",StandardYAxis,
1395                                                                 kTRUE, 3,0.000001,
1396                                                                 kFALSE,0. ,0., 
1397                                                                 kTRUE, 0.,1);
1398                         }
1399                         DrawAliceLogoPerformance(left_up [0],left_up[1],left_up[2],left_up[3],0.03,Date);
1400                 
1401                 c3_3->Update();
1402                 c3_3->SaveAs(Form("%s%s/Photon_CosPointingAngle.%s",path,suffix,suffix));
1403                 delete c3_3;    
1404
1405 //-------------------------------------- Likelihood -----------------------------------------------------                       
1406                 c3_4->cd();
1407                         if(MCfile == ""){
1408                                 DrawAutoGammaHisto( ESD_ConvGamma_LikeLihood_data,
1409                                                                 "", "Likelihood",StandardYAxis,
1410                                                                 kTRUE, 3,0.000001,
1411                                                                 kFALSE,0 ,0, 
1412                                                                 kTRUE, 0,1);
1413                         }else{
1414                                 DrawAutoGammaHistos( ESD_ConvGamma_LikeLihood_data,
1415                                                                  ESD_ConvGamma_LikeLihood_montecarlo, 
1416                                                                 "", "Likelihood",StandardYAxis,
1417                                                                 kTRUE, 3,0.000001,
1418                                                                 kFALSE,0. ,0., 
1419                                                                 kTRUE, 0.,1);
1420                         }
1421                         DrawAliceLogoPerformance(left_up [0],left_up[1],left_up[2],left_up[3],0.03,Date);
1422
1423                 c3_4->Update();
1424                 c3_4->SaveAs(Form("%s%s/Photon_Likelihood.%s",path,suffix,suffix));
1425                 delete c3_4;
1426                 
1427 // -------------------------------------------------------------------------------------------------
1428                 TCanvas * c4_1 = new TCanvas("c4_1","",10,10,500,500);  // gives the page size
1429                 TCanvas * c4_2 = new TCanvas("c4_2","",10,10,500,500);  // gives the page size
1430                 TCanvas * c4_3 = new TCanvas("c4_3","",10,10,500,500);  // gives the page size
1431                 TCanvas * c4_4 = new TCanvas("c4_4","",10,10,500,500);  // gives the page size
1432                 TCanvas * c4_5 = new TCanvas("c4_5","",10,10,500,500);  // gives the page size
1433                 TCanvas * c4_6 = new TCanvas("c4_6","",10,10,500,500);  // gives the page size
1434                 
1435                 
1436                 c4_1->SetLogy(1);
1437                 c4_2->SetLogy(1);
1438                 c4_3->SetLogy(1);
1439                 c4_4->SetLogy(1);
1440                 c4_5->SetLogy(1);
1441                 c4_6->SetLogy(1);
1442                 
1443 //------------------------------------ Photon Momentum -----------------------------------------                
1444                 c4_1->cd();
1445                         if(MCfile == ""){
1446                                 DrawAutoGammaHisto( ESD_ConvGamma_Pt_data,
1447                                                                 "", "p_{t} Conv #gamma [GeV]",StandardYAxis,
1448                                                                 kTRUE, 3,0.00000001,
1449                                                                 kFALSE,0 ,0, 
1450                                                                 kTRUE, 0,40.);
1451                         }else{
1452                                 DrawAutoGammaHistos( ESD_ConvGamma_Pt_data,
1453                                                                  ESD_ConvGamma_Pt_montecarlo, 
1454                                                                 "", "p_{t} Conv #gamma [GeV]",StandardYAxis,
1455                                                                 kTRUE, 3,0.0000000001,
1456                                                                 kFALSE,0. ,0., 
1457                                                                 kTRUE, 0.,40.);
1458                         }
1459                         DrawAliceLogoPerformance(right_up [0],right_up[1],right_up[2],right_up[3],0.03,Date);
1460
1461                 c4_1->Update();
1462                 c4_1->SaveAs(Form("%s%s/Photon_Pt.%s",path,suffix,suffix));
1463                 delete c4_1;
1464                 
1465 //----------------------------------- Photon eta ---------------------------------------------
1466                 c4_2->cd();
1467                         if(MCfile == ""){
1468                                 DrawAutoGammaHisto( ESD_ConvGamma_Eta_data,
1469                                                                 "", "#eta Conv  #gamma",StandardYAxis,
1470                                                                 kTRUE, 3,0.001,
1471                                                                 kFALSE,0 ,0, 
1472                                                                 kFALSE, 0,0.7);
1473                         }else{
1474                                 DrawAutoGammaHistos( ESD_ConvGamma_Eta_data,
1475                                                                  ESD_ConvGamma_Eta_montecarlo, 
1476                                                                 "", "#eta Conv  #gamma",StandardYAxis,
1477                                                                 kTRUE, 3,0.001,
1478                                                                 kFALSE,0. ,0., 
1479                                                                 kFALSE, 0.,0.7);
1480                 }
1481                 DrawAliceLogoPerformance(left_up [0],left_up[1],left_up[2],left_up[3],0.03,Date);                       
1482                 c4_2->Update();
1483                 c4_2->SaveAs(Form("%s%s/Photon_Eta.%s",path,suffix,suffix));
1484                 delete c4_2;
1485
1486 //------------------------------------- Photon Mass ----------------------------------------
1487                 c4_3->cd();
1488                         if(MCfile == ""){
1489                                 DrawAutoGammaHisto( ESD_ConvGamma_Mass_data,
1490                                                                 "", "InvMass e^{+}e^{-} [GeV]",StandardYAxis,
1491                                                                 kTRUE, 3,0.000001,
1492                                                                 kFALSE,0 ,0, 
1493                                                                 kTRUE, 0,0.1);
1494                         }else{
1495                                 DrawAutoGammaHistos( ESD_ConvGamma_Mass_data,
1496                                                                  ESD_ConvGamma_Mass_montecarlo, 
1497                                                                 "", "InvMass e^{+}e^{-} [GeV]",StandardYAxis,
1498                                                                 kTRUE, 3,0.00000001,
1499                                                                 kFALSE,0. ,0., 
1500                                                                 kTRUE, 0.,0.15);
1501                         }
1502                 DrawAliceLogoPerformance(right_up [0],right_up[1],right_up[2],right_up[3],0.03,Date);
1503                 c4_3->Update();
1504                 c4_3->SaveAs(Form("%s%s/Photon_Mass.%s",path,suffix,suffix));
1505                 delete c4_3;            
1506
1507 //-------------------------------------- Photon Chi2 ----------------------------------------------
1508                 c4_4->cd();
1509                         if(MCfile == ""){
1510                                 DrawAutoGammaHisto( ESD_ConvGamma_Chi2_data,
1511                                                                 "", "#chi^{2} Conv  #gamma",StandardYAxis,
1512                                                                 kTRUE, 3,0.000001,
1513                                                                 kFALSE,0 ,0, 
1514                                                                 kFALSE, 0,10.);
1515                         }else{
1516                                 DrawAutoGammaHistos( ESD_ConvGamma_Chi2_data,
1517                                                                  ESD_ConvGamma_Chi2_montecarlo, 
1518                                                                 "", "#chi^{2} Conv  #gamma",StandardYAxis,
1519                                                                 kTRUE, 3,0.000001,
1520                                                                 kFALSE,0. ,0., 
1521                                                                 kFALSE, 0.,10.);
1522                         }
1523
1524                 DrawAliceLogoPerformance(right_up [0],right_up[1],right_up[2],right_up[3],0.03,Date);
1525
1526                 c4_4->Update();
1527                 c4_4->SaveAs(Form("%s%s/Photon_Chi2.%s",path,suffix,suffix));
1528                 delete c4_4;            
1529                 
1530
1531 //---------------------------------- Electron Momentum -------------------------------------------              
1532                 c4_5->cd();
1533                         if(MCfile == ""){
1534                                 DrawAutoGammaHisto( ESD_E_Pt_data,
1535                                                                 "", "p_{t} electron [GeV]",StandardYAxis,
1536                                                                 kTRUE, 3,0.00000001,
1537                                                                 kFALSE,0 ,0, 
1538                                                                 kTRUE, 0,20.);
1539                         }else{
1540                                 DrawAutoGammaHistos( ESD_E_Pt_data,
1541                                                                  ESD_E_Pt_montecarlo, 
1542                                                                 "", "p_{t} electron [GeV]",StandardYAxis,
1543                                                                 kTRUE, 3,0.00000001,
1544                                                                 kFALSE,0. ,0., 
1545                                                                 kTRUE, 0.,20.);
1546                         }
1547                         DrawAliceLogoPerformance(right_up [0],right_up[1],right_up[2],right_up[3],0.03,Date);
1548                 
1549                 c4_5->Update();
1550                 c4_5->SaveAs(Form("%s%s/Electron_Pt.%s",path,suffix,suffix));
1551                 delete c4_5;
1552 //---------------------------------- Positron Momentum -------------------------------------------
1553                 c4_6->cd();
1554                 if(MCfile == ""){
1555                         DrawAutoGammaHisto( ESD_P_Pt_data,
1556                                                         "", "p_{t} positron [GeV]",StandardYAxis,
1557                                                         kTRUE, 3,0.00000001,
1558                                                         kFALSE,0 ,0, 
1559                                                         kTRUE, 0,20.);
1560                 }else{
1561                         DrawAutoGammaHistos( ESD_P_Pt_data,
1562                                                          ESD_P_Pt_montecarlo, 
1563                                                         "", "p_{t} positron [GeV]",StandardYAxis,
1564                                                         kTRUE, 3,0.00000001,
1565                                                         kFALSE,0. ,0., 
1566                                                         kTRUE, 0.,20.);
1567                 }
1568                 DrawAliceLogoPerformance(right_up [0],right_up[1],right_up[2],right_up[3],0.03,Date);
1569
1570                 c4_6->Update();
1571                 c4_6->SaveAs(Form("%s%s/Positron_Pt.%s",path,suffix,suffix));
1572                 delete c4_6;
1573                 
1574                 
1575                 // -----------------------------------------------------------------------------
1576                 
1577                 
1578                 TCanvas *c5_1 = new TCanvas("c5","",10,10,500,500);  // gives the page size
1579                 
1580                 
1581                 c5_1->cd();
1582                         if(MCfile == ""){
1583                                 DrawAutoGammaHisto( ESD_Mother_InvMass_data,
1584                                                                 "", "InvMass #gamma#gamma [GeV]","counts/event scaled by multiplicity",
1585                                                                 kTRUE, 1.5,0,
1586                                                                 kFALSE,0 ,0, 
1587                                                                 kFALSE, 0,0);
1588                         }else{
1589                                 DrawAutoGammaHistos( ESD_Mother_InvMass_data,
1590                                                                  ESD_Mother_InvMass_montecarlo, 
1591                                                                 "","InvMass #gamma#gamma [GeV]","counts/event scaled by multiplicity", 
1592                                                                 kTRUE, 1.5,0,
1593                                                                 kFALSE,0. ,0., 
1594                                                                 kFALSE, 0.,0.);
1595                         }
1596
1597                         DrawAliceLogo(right_up [0],right_up[1],right_up[2],right_up[3]);                
1598                 c5_1->Update();
1599                 c5_1->SaveAs(Form("%s%s/Mother_InvMass.%s",path,suffix,suffix));
1600                 delete c5_1;
1601
1602 // ---------------------------------------- Multiplicity Plot ---------------------------------------------------
1603                 TCanvas * c6_1 = new TCanvas("c6_1","",10,10,500,500);  // gives the page size
1604                 c6_1->SetLogy(1);               
1605                 TText *l = new TText();
1606
1607                 c6_1->cd(1);
1608                         if(MCfile == ""){
1609                                 DrawAutoGammaHisto( ESD_NumberOfGoodESDTracks_data, 
1610                                                                  "","Number good ESDTracks ","",
1611                                                                  kTRUE, 3.,0.000001,
1612                                                                  kFALSE,0. ,0.,
1613                                                                  kFALSE, 0.,100.);
1614                                 Double_t mean_data = ESD_NumberOfGoodESDTracks_data->GetMean();
1615                                 l->SetTextAlign(11);
1616                                 l->SetTextSize(0.03);
1617                                 l->DrawText(60,0.0002, "Mean Data:");
1618                                 l->DrawText(80,0.0002, Form("%lg",  mean_data));        
1619
1620                         }else{
1621                                 DrawAutoGammaHistos( ESD_NumberOfGoodESDTracks_data, 
1622                                                                  ESD_NumberOfGoodESDTracks_montecarlo, 
1623                                                                  "","Number good ESDTracks","",
1624                                                                  kTRUE, 3.,0.000001,
1625                                                                  kFALSE,0. ,0.,
1626                                                                  kFALSE, 0.,100.);
1627                                 Double_t mean_data = ESD_NumberOfGoodESDTracks_data->GetMean();
1628                                 l->SetTextAlign(11);
1629                                 l->SetTextSize(0.03);
1630                                 l->DrawText(60,0.0002, "Mean Data:");
1631                                 l->DrawText(80,0.0002, Form("%lg",  mean_data));        
1632         
1633                                 Double_t mean_montecarlo = ESD_NumberOfGoodESDTracks_montecarlo->GetMean();
1634                                 l->SetTextAlign(11);
1635                                 l->SetTextColor(2);                     
1636                                 l->SetTextSize(0.03);
1637                                 l->DrawText(60,0.0001, "Mean MC:");
1638                                 l->DrawText(80,0.0001, Form("%lg",  mean_montecarlo));          
1639         
1640                         }
1641                         DrawAliceLogo(right_up [0],right_up[1],right_up[2],right_up[3]);
1642
1643                 c6_1->Update();
1644                 c6_1->SaveAs(Form("%s%s/NumberOfGoodESDTracks.%s",path,suffix,suffix));
1645                 delete c6_1;
1646
1647 //------------------------------------ Projections dEdx -----------------------------------------------------------------               
1648                 TCanvas * c9 = new TCanvas("c9","",10,10,1400,700);  // gives the page size
1649                 pad_c9 = new TPad("pad_c9","",0.05,0.05,0.95,0.95,0);   // gives the size of the histo areas 
1650                 pad_c9->SetFillColor(0);
1651                 pad_c9->GetFrame()->SetFillColor(0);
1652                 pad_c9->SetBorderMode(0);
1653                 pad_c9->Divide(2,1);
1654                 pad_c9->Draw();
1655                 
1656                 pad_c9->cd(1)->SetLogx(1);
1657                 pad_c9->cd(1)->SetLogz(1);
1658                 pad_c9->cd(2)->SetLogx(1);
1659                 pad_c9->cd(2)->SetLogz(1);
1660                         
1661                 pad_c9->cd(1);
1662                 if(MCfile == ""){
1663                         ESD_ConvGamma_P_dEdx_Y1_data->Rebin(2);
1664                         DrawAutoGammaHisto( ESD_ConvGamma_P_dEdx_Y1_data, 
1665                                                          "","dE/dx ",StandardYAxis,
1666                                                          kTRUE, 1.2,0,
1667                                                          kFALSE,0. ,0.,
1668                                                          kTRUE, 50.,100.);
1669                 }else{
1670                         ESD_ConvGamma_P_dEdx_Y1_data->Rebin(2);
1671                         ESD_ConvGamma_P_dEdx_Y1_montecarlo_2->Rebin(2);
1672                         DrawAutoGammaHistos( ESD_ConvGamma_P_dEdx_Y1_data, 
1673                                                          ESD_ConvGamma_P_dEdx_Y1_montecarlo_2, 
1674                                                          "","dE/dx ",StandardYAxis,
1675                                                          kTRUE, 1.2,0,
1676                                                          kFALSE,0. ,0.,
1677                                                          kTRUE, 50.,100.);
1678
1679                 }
1680                 Scaling->Draw();                
1681                 DrawAliceLogo(right_up [0],right_up[1],right_up[2],right_up[3]);                                        
1682
1683                 pad_c9->cd(2);
1684                 if(MCfile == ""){
1685                         ESD_ConvGamma_P_dEdx_Y2_data->Rebin(2);
1686                         DrawAutoGammaHisto( ESD_ConvGamma_P_dEdx_Y2_data, 
1687                                                          "","dE/dx ",StandardYAxis,
1688                                                          kTRUE, 1.2,0,
1689                                                          kFALSE,0. ,0.,
1690                                                          kTRUE, 50.,100.);
1691                 }else{
1692                         ESD_ConvGamma_P_dEdx_Y2_data->Rebin(2);
1693                         ESD_ConvGamma_P_dEdx_Y2_montecarlo_2->Rebin(2);
1694                         DrawAutoGammaHistos( ESD_ConvGamma_P_dEdx_Y2_data, 
1695                                                          ESD_ConvGamma_P_dEdx_Y2_montecarlo_2, 
1696                                                          "","dE/dx ",StandardYAxis,
1697                                                          kTRUE, 1.2,0,
1698                                                          kFALSE,0. ,0.,
1699                                                          kTRUE, 50.,100.);
1700                 }
1701                 Scaling->Draw();                
1702                 DrawAliceLogo(right_up [0],right_up[1],right_up[2],right_up[3]);        
1703
1704                 
1705                 c9->Update();
1706                 c9->SaveAs(Form("%s%s/ProjectiondEdx.%s",path,suffix,suffix));
1707                 delete pad_c9; 
1708                 delete c9;
1709
1710
1711 // ------------------------------- Asymmetry Projections -------------------------------------------------------------          
1712                 TCanvas * c10 = new TCanvas("c10","",10,10,1400,700);  // gives the page size
1713                 pad_c10 = new TPad("pad_c2","",0.0,0.0,1,1,0);   // gives the size of the histo areas 
1714                 pad_c10->SetFillColor(0);
1715                 pad_c10->GetFrame()->SetFillColor(0);
1716                 pad_c10->SetBorderMode(0);
1717                 pad_c10->Divide(2,1);
1718                 pad_c10->Draw();
1719
1720                 leg1 = new TLegend( 0.65,0.87,0.98,0.97);
1721                 leg1->SetTextSize(0.025);                       
1722                 leg1->SetFillColor(0);
1723                 leg1->AddEntry(ESD_ConvGamma_P_AsymmetryP_Y1_data,("Data"));
1724                 leg1->AddEntry(ESD_ConvGamma_P_AsymmetryP_Y1_montecarlo,("MC reconstructed"));
1725                 leg1->AddEntry(MC_ConvGamma_P_AsymmetryP_Y1_montecarlo,("MC truth"));
1726
1727                 //Asymmetrie in 1st and 3rd bin         
1728                 pad_c10->cd(1);
1729                 pad_c10->cd(1)->SetTopMargin(0.03);
1730                 pad_c10->cd(1)->SetBottomMargin(1);
1731                 pad_c10->cd(1)->SetRightMargin(0.02);
1732                 pad_c10->cd(1)->SetLeftMargin(0.16);
1733                 if(MCfile == ""){
1734                         DrawAutoGammaHisto( ESD_ConvGamma_P_AsymmetryP_Y1_data, 
1735                                                         "", "x = E/k","(X_{0}N_{A}/A)d#sigma_{LPM}/dx",
1736                                                         kTRUE, 2,0,
1737                                                         kFALSE,0. ,0., 
1738                                                         kFALSE, 0.,0.9);
1739
1740                 }else{
1741                         DrawAutoGammaHistos( ESD_ConvGamma_P_AsymmetryP_Y1_data,
1742                                                          ESD_ConvGamma_P_AsymmetryP_Y1_montecarlo,
1743                                                          "", "x = E/k","(X_{0}N_{A}/A)d#sigma_{LPM}/dx", 
1744                                                          kTRUE, 2,0,
1745                                                          kFALSE,0. ,0.,
1746                                                          kFALSE, 0.1,0.9);
1747                         MC_ConvGamma_P_AsymmetryP_Y1_montecarlo->SetLineColor(kBlue+1);
1748                         MC_ConvGamma_P_AsymmetryP_Y1_montecarlo->Draw("same,hist");
1749 //                      leg1->Draw("same");
1750                 }
1751                 DrawAliceLogoPerformance(right_up[0]+0.1,right_up[1]+0.17,right_up[2],right_up[3],0.03, Date);
1752
1753                 //Asymmetry in other bins
1754                 pad_c10->cd(2);
1755                 pad_c10->cd(2)->SetTopMargin(0.03);
1756                 pad_c10->cd(2)->SetBottomMargin(1);
1757                 pad_c10->cd(2)->SetRightMargin(0.02);
1758                 pad_c10->cd(2)->SetLeftMargin(0.16);
1759                 if(MCfile == ""){
1760                         DrawAutoGammaHisto( ESD_ConvGamma_P_AsymmetryP_Y2_data,
1761                                                         "", "x = E/k","(X_{0}N_{A}/A)d#sigma_{LPM}/dx", 
1762                                                         kTRUE, 2,0,
1763                                                         kFALSE,0. ,0., 
1764                                                         kFALSE, 0.,1.);
1765                 }else{
1766
1767                         DrawAutoGammaHistos( ESD_ConvGamma_P_AsymmetryP_Y2_data, 
1768                                                          ESD_ConvGamma_P_AsymmetryP_Y2_montecarlo, 
1769                                                          "", "x = E/k","(X_{0}N_{A}/A)d#sigma_{LPM}/dx", 
1770                                                          kTRUE, 2,0,
1771                                                          kFALSE,0. ,0., 
1772                                                          kFALSE, 0.,1.);
1773                         MC_ConvGamma_P_AsymmetryP_Y2_montecarlo->SetLineColor(kBlue+1);
1774                         MC_ConvGamma_P_AsymmetryP_Y2_montecarlo->Draw("same,hist");
1775                         leg1->Draw("same");
1776                 }
1777 //              DrawAliceLogo(right_up [0],right_up[1],right_up[2],right_up[3]);
1778                 c10->Update();
1779                 c10->SaveAs(Form("%s%s/ProjectionAsymmetry.%s",path,suffix,suffix));
1780                 delete pad_c10;
1781                 delete c10;             
1782
1783
1784 // ---------------------------------------------- Clusters ---------------------------------------------------------
1785                 TCanvas * c11 = new TCanvas("c11","",10,10,2000,1400);  // gives the page size
1786                 pad_c11 = new TPad("pad_c11","",0.0,0.0,1,1,0);   // gives the size of the histo areas 
1787                 pad_c11->SetFillColor(0);
1788                 pad_c11->GetFrame()->SetFillColor(0);
1789                 pad_c11->SetBorderMode(0);
1790                 
1791                 pad_c11->Divide(2,2);
1792                 pad_c11->Draw();
1793                 
1794                 // ITS Clusters Electron
1795                 pad_c11->cd(1);
1796                 if(MCfile == ""){
1797                         DrawAutoGammaHisto( ESD_E_nITSClusters_data,
1798                                                         "", "Number of ITS Clusters for Electron ","Hits/event scaled by multiplicity",
1799                                                         kTRUE, 1.5,0,
1800                                                         kFALSE,0 ,0, 
1801                                                         kFALSE, 0,0);
1802                 }else{
1803                         DrawAutoGammaHistos( ESD_E_nITSClusters_data,
1804                                                          ESD_E_nITSClusters_montecarlo, 
1805                                                         "","Number of ITS Clusters for Electron ","Hits/event scaled by multiplicity", 
1806                                                         kTRUE, 1.5,0,
1807                                                         kFALSE,0. ,0., 
1808                                                         kFALSE, 0.,0.);
1809                 }
1810                 DrawAliceLogoPerformance(right_up [0],right_up[1],right_up[2],right_up[3],0.03,Date);
1811                 //TPC Clusters Electron
1812                 pad_c11->cd(2);
1813                 if(MCfile == ""){
1814                         DrawAutoGammaHisto( ESD_E_nTPCClusters_data,
1815                                                         "", "Number of TPC Clusters for Electron","Hits/event scaled by multiplicity", 
1816                                                         kTRUE, 1.5,0,
1817                                                         kFALSE,0. ,0., 
1818                                                         kFALSE, 0.,0.);
1819                 }else{
1820                         DrawAutoGammaHistos( ESD_E_nTPCClusters_data, 
1821                                                          ESD_E_nTPCClusters_montecarlo,
1822                                                          "","Number of TPC Clusters for Electron ","Hits/event scaled by multiplicity",
1823                                                          kTRUE, 1.5,0,
1824                                                          kFALSE,0. ,0.,
1825                                                          kFALSE, 0.,0.);
1826                 }
1827                 //ITS Clusters Positron
1828                 pad_c11->cd(3);
1829                 if(MCfile == ""){
1830                         DrawAutoGammaHisto( ESD_P_nITSClusters_data,
1831                                                         "", "Number of ITS Clusters for PositronS","Hits/event scaled by multiplicity", 
1832                                                         kTRUE, 1.5, 0,
1833                                                         kFALSE,0. ,0., 
1834                                                         kFALSE, 0.,0.);
1835                 }else{
1836                         DrawAutoGammaHistos( ESD_P_nITSClusters_data, 
1837                                                          ESD_P_nITSClusters_montecarlo,
1838                                                          "","Number of ITS Clusters for Positron","Hits/event scaled by multiplicity", 
1839                                                          kTRUE, 1.5, 0,
1840                                                          kFALSE,0. ,0.,
1841                                                          kFALSE, 0.,0.);
1842                 }
1843                 //TPC Clusters Positron
1844                 pad_c11->cd(4);
1845                 if(MCfile != ""){       
1846                         DrawAutoGammaHistos( ESD_P_nTPCClusters_data, 
1847                                                          ESD_P_nTPCClusters_montecarlo, 
1848                                                          "","Number of TPC Clusters for Positron","Hits/event scaled by multiplicity",
1849                                                          kTRUE, 1.5, 0,
1850                                                          kFALSE,0. ,0.,
1851                                                          kFALSE, 0.,0.);
1852                         
1853                 }else{
1854                         DrawAutoGammaHisto( ESD_P_nTPCClusters_data,
1855                                                         "", "Number of TPC Clusters for PositronS","Hits/event scaled by multiplicity", 
1856                                                         kTRUE, 1.5, 0,
1857                                                         kFALSE,0. ,0., 
1858                                                         kFALSE, 0.,0.);                 
1859                 }
1860                         
1861                 c11->Update();
1862                 c11->SaveAs(Form("%s%s/Clusters.%s",path,suffix,suffix));
1863                 delete pad_c11;
1864                 delete c11;             
1865         //end drawing single Plots
1866         }       
1867
1868 }
1869