1 /****************************************************************************************************************************
2 ****** provided by Gamma Conversion Group, PWG4, *****
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 ****************************************************************************************************************************/
11 #include <Riostream.h>
12 #include "PlottingGammaConversionHistos.h"
13 #include "PlottingGammaConversionAdditional.h"
15 extern TRandom *gRandom;
16 extern TBenchmark *gBenchmark;
17 extern TSystem *gSystem;
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"){
22 gROOT->SetStyle("Plain");
24 Bool_t SinglePlots = kFALSE;
25 if(Plots == "kTRUE") SinglePlots = kTRUE;
28 StyleSettingsThesis();
33 // textsize for legend
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};
45 // which maximum pt in the plots
49 Char_t filename_data[100] = (Form("%s%s",path,data));
51 char *StandardYAxis = "#gamma/ event scaled by multiplicity";
52 char *Date = "25th June 2010";
54 TLatex *Scaling = new TLatex(0.6,0.5,"MC scaled to mean of Data"); // Bo: this was modified
56 Scaling->SetTextColor(2);
57 Scaling->SetTextFont(42);
58 Scaling->SetTextSize(0.03);
59 Scaling->SetLineWidth(2);
62 char *GammaDirectory = Form("PWG4_GammaConversion_%s", cutsel);
63 cout << GammaDirectory << endl;
64 char *GammaList = Form("histogramsAliGammaConversion_%s", cutsel);
65 cout << GammaList << endl;
67 char *GammaDirectory = "PWG4_GammaConversion";
68 cout << GammaDirectory << endl;
69 char *GammaList = "histogramsAliGammaConversion";
70 cout << GammaList << endl;
73 Float_t linewidth = 1;
75 /*****************************************************************************************************************************
76 Function defintions for plotting dEdx lines MC with Bethe Bloch parametrisation
77 * parameters taken from TPC tender
78 ******************************************************************************************************************************
79 ******************************************************************************************************************************/
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);
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);
103 /*****************************************************************************************************************************
104 Function defintions for plotting dEdx lines DATA with Bethe Bloch Parametrisation
105 * parameters taken from TPC tender
106 ******************************************************************************************************************************
107 ******************************************************************************************************************************/
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);
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);
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);
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);
126 // ---------------------------- LOAD ALL FILES ---------------------------------------------------
127 TFile f(filename_data);
130 TDirectory *fPWG4GammaConversion_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();
135 if(!(fPWG4GammaConversion_data = (TDirectory*)f.Get(GammaDirectory))) cout <<"PWG4GammConversion TList NOT loaded correctly"<<endl;
136 if(!(fHistosGammaConversion_data = (TList*)fPWG4GammaConversion_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");
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");
171 ESD_NumberOfContributorsVtx_data->SetAxisRange(1.,100.);
172 ESD_NumberOfGoodESDTrackswith0_data->SetAxisRange(1.,100.);
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;
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();
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;
221 montecarlo = new TFile(Form("%s%s",path, MCfile));
225 TDirectory *fPWG4GammaConversion_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(!(fPWG4GammaConversion_montecarlo = (TDirectory*)montecarlo->Get(GammaDirectory))) cout <<"PWG4GammConversion TList NOT loaded correctly"<<endl;
231 if(!(fHistosGammaConversion_montecarlo = (TList*)fPWG4GammaConversion_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");
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);
268 TH1F * ESD_NumberOfContributorsVtx_montecarlo=fESDContainer_montecarlo->FindObject("ESD_NumberOfContributorsVtx");
269 TH1F *ScalingDiagramm_montecarlo= fMappingContainer_montecarlo->FindObject("ESD_Conversion_Mapping_Phi_in_R_11");
271 ESD_NumberOfContributorsVtx_montecarlo->SetAxisRange(1.,100.);
272 ESD_NumberOfGoodESDTrackswith0_montecarlo->SetAxisRange(1.,100.);
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;
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./
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);
317 MultoutMC = new TFile("Multout2.root","RECREATE");
318 ESD_NumberOfGoodESDTracks_montecarlo->Write();
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
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);
437 // ----------------------------------------------------------------------------------------
439 // ----------------------- Start ps file -----------------------------------------------------
441 TPostScript *ps_characteristics;
442 if(!SinglePlots)ps_characteristics = new TPostScript(Form("%s%s.ps",path,output),111);
445 // ----------------------- dE/dx of pion/electron -----------------------------------------
447 // --------------------------- page 1 -------------------------------------------------------
449 ps_characteristics->NewPage();
451 TCanvas * c0 = new TCanvas("c0","",10,10,700,1000); // gives the page size
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);
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);
469 //-------------------------- page 2 - dE/dx distribution-----------------------------------------------------------
471 ps_characteristics->NewPage();
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);
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);
496 pad_c1->cd(1)->SetRightMargin(0.17);
498 DrawAutoGammaHisto2D( ESD_ConvGamma_P_dEdxP_data,
499 "", "p [GeV/c]", "dE/dx Positron", "Data",
502 foElec.Draw("e,hist,same");
503 foPion.Draw("e,hist,same");
504 foProton.Draw("e,hist,same");
505 foKaon.Draw("e,hist,same");
507 pad_c1->cd(2)->SetRightMargin(0.17);
510 DrawAutoGammaHisto2D( ESD_ConvGamma_P_dEdxP_montecarlo,
511 "", "p [GeV/c]", "dE/dx Positron", "MC",
514 foElecMC.Draw("e,hist,same");
515 foPionMC.Draw("e,hist,same");
516 foProtonMC.Draw("e,hist,same");
517 foKaonMC.Draw("e,hist,same");
521 pad_c1->cd(3)->SetRightMargin(0.17);
523 DrawAutoGammaHisto2D( ESD_ConvGamma_E_dEdxP_data,
524 "", "p [GeV/c]", "dE/dx Electron", "Data",
527 foElec.Draw("e,hist,same");
528 foPion.Draw("e,hist,same");
529 foProton.Draw("e,hist,same");
530 foKaon.Draw("e,hist,same");
532 pad_c1->cd(4)->SetRightMargin(0.17);
535 DrawAutoGammaHisto2D( ESD_ConvGamma_E_dEdxP_montecarlo,
536 "", "p [GeV/c]", "dE/dx Electron", "MC",
539 foElecMC.Draw("e,hist,same");
540 foPionMC.Draw("e,hist,same");
541 foProtonMC.Draw("e,hist,same");
542 foKaonMC.Draw("e,hist,same");
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,
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,
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,
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,
588 //----------------------------- page 3 - Asymmetry distribution ---------------------------------------------------------------
589 ps_characteristics->NewPage();
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);
604 pad_c2->cd(1)->SetLogz(1);
605 pad_c2->cd(2)->SetLogz(1);
608 pad_c2->cd(1)->SetRightMargin(0.17);
609 DrawAutoGammaHisto2D( ESD_ConvGamma_P_AsymmetryP_data,
610 "", "p [GeV/c]", "Asymmetry", "Data",
616 pad_c2->cd(2)->SetRightMargin(0.17);
617 DrawAutoGammaHisto2D( ESD_ConvGamma_P_AsymmetryP_montecarlo,
618 "", "p [GeV/c]", "Asymmetry", "MC",
625 DrawAutoGammaHisto( ESD_ConvGamma_P_AsymmetryP_Y1_data,
626 "Projection of Asymmetry in 1st -3rd bin pt-bin", "Asymmetry",StandardYAxis,
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,
642 DrawAutoGammaHisto( ESD_ConvGamma_P_AsymmetryP_Y2_data,
643 "Projection of Asymmetry in other pt-bins", "Asymmetry",StandardYAxis,
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,
658 //----------------------------- page 4 - Armenteros-plots ---------------------------------------------------------------
659 ps_characteristics->NewPage();
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);
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);
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",
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",
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",
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",
714 // -----------------------------Page 5 ------------------------------------------------
716 ps_characteristics->NewPage();
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);
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);
738 DrawAutoGammaHisto( ESD_ConvGamma_DcaDaughters_data,
739 "", "DCA [cm]",StandardYAxis,
740 kTRUE, 3,0.000001, kFALSE,0 ,0,
743 DrawAutoGammaHistos( ESD_ConvGamma_DcaDaughters_data,
744 ESD_ConvGamma_DcaDaughters_montecarlo,
745 "", "DCA [cm]",StandardYAxis,
753 DrawAutoGammaHisto( ESD_ConvGamma_NormDcaDistDaughters_data,
754 "", "Normalized distance [cm]",StandardYAxis,
759 DrawAutoGammaHistos( ESD_ConvGamma_NormDcaDistDaughters_data,
760 ESD_ConvGamma_NormDcaDistDaughters_montecarlo,
761 "", "Normalized distance [cm]",StandardYAxis,
769 DrawAutoGammaHisto( ESD_ConvGamma_CosPointingAngle_data,
770 "", "Cos Pointing Angle",StandardYAxis,
775 DrawAutoGammaHistos( ESD_ConvGamma_CosPointingAngle_data,
776 ESD_ConvGamma_CosPointingAngle_montecarlo,
777 "", "Cos Pointing Angle",StandardYAxis,
785 DrawAutoGammaHisto( ESD_ConvGamma_LikeLihood_data,
786 "", "Likelihood",StandardYAxis,
791 DrawAutoGammaHistos( ESD_ConvGamma_LikeLihood_data,
792 ESD_ConvGamma_LikeLihood_montecarlo,
793 "", "Likelihood",StandardYAxis,
801 //-----------------------------Page 6 - Clusters---------------------------------
802 ps_characteristics->NewPage();
804 TCanvas * c6 = new TCanvas("c6","",10,10,700,1000); // gives the page size
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);
818 pad_c6->cd(1)->SetLogy(1);
819 pad_c6->cd(2)->SetLogy(1);
820 TText *l = new TText();
824 DrawAutoGammaHisto( ESD_NumberOfGoodESDTracks_data,
825 "","Number good ESDTracks ","",
829 Double_t mean_data = ESD_NumberOfGoodESDTracks_data->GetMean();
832 l->SetTextSize(0.03);
833 l->DrawText(60,0.0002, "Mean Data:");
834 l->DrawText(80,0.0002, Form("%lg", mean_data));
837 DrawAutoGammaHistos( ESD_NumberOfGoodESDTracks_data,
838 ESD_NumberOfGoodESDTracks_montecarlo,
839 "","Number good ESDTracks","",
843 Double_t mean_data = ESD_NumberOfGoodESDTracks_data->GetMean();
846 l->SetTextSize(0.03);
847 l->DrawText(60,0.0002, "Mean Data:");
848 l->DrawText(80,0.0002, Form("%lg", mean_data));
850 Double_t mean_montecarlo = ESD_NumberOfGoodESDTracks_montecarlo->GetMean();
853 l->SetTextSize(0.03);
854 l->DrawText(60,0.0001, "Mean MC:");
855 l->DrawText(80,0.0001, Form("%lg", mean_montecarlo));
861 DrawAutoGammaHisto( ESD_NumberOfGoodESDTrackswith0_data,
862 "","Number good ESDTracks with 0 ","",
866 Double_t mean_data = ESD_NumberOfGoodESDTrackswith0_data->GetMean();
869 l->SetTextSize(0.03);
870 l->DrawText(60,0.0002, "Mean Data:");
871 l->DrawText(80,0.0002, Form("%lg", mean_data));
874 DrawAutoGammaHistos( ESD_NumberOfGoodESDTrackswith0_data,
875 ESD_NumberOfGoodESDTrackswith0_montecarlo,
876 "","Number good ESDTracks with 0","",
880 Double_t mean_data = ESD_NumberOfGoodESDTrackswith0_data->GetMean();
883 l->SetTextSize(0.03);
884 l->DrawText(60,0.0002, "Mean Data:");
885 l->DrawText(80,0.0002, Form("%lg", mean_data));
887 Double_t mean_montecarlo = ESD_NumberOfGoodESDTrackswith0_montecarlo->GetMean();
890 l->SetTextSize(0.03);
891 l->DrawText(60,0.0001, "Mean MC:");
892 l->DrawText(80,0.0001, Form("%lg", mean_montecarlo));
898 DrawAutoGammaHisto( ESD_E_nITSClusters_data,
899 "", "Number of ITS Clusters for Electron ","Hits/event scaled by multiplicity ",
904 DrawAutoGammaHistos( ESD_E_nITSClusters_data,
905 ESD_E_nITSClusters_montecarlo,
906 "","Number of ITS Clusters for Electron ","Hits/event scaled by multiplicity",
914 DrawAutoGammaHisto( ESD_E_nTPCClusters_data,
915 "", "Number of TPC Clusters for Electron","Hits/event scaled by multiplicity",
920 DrawAutoGammaHistos( ESD_E_nTPCClusters_data,
921 ESD_E_nTPCClusters_montecarlo,
922 "","Number of TPC Clusters for Electron ","Hits/event scaled by multiplicity",
930 DrawAutoGammaHisto( ESD_P_nITSClusters_data,
931 "", "Number of ITS Clusters for PositronS","Hits/event scaled by multiplicity",
936 DrawAutoGammaHistos( ESD_P_nITSClusters_data,
937 ESD_P_nITSClusters_montecarlo,
938 "","Number of ITS Clusters for Positron","Hits/event scaled by multiplicity",
946 DrawAutoGammaHistos( ESD_P_nTPCClusters_data,
947 ESD_P_nTPCClusters_montecarlo,
948 "","Number of TPC Clusters for Positron","Hits/event scaled by multiplicity",
954 DrawAutoGammaHisto( ESD_P_nTPCClusters_data,
955 "", "Number of TPC Clusters for PositronS","Hits/event scaled by multiplicity",
963 // --------------------------Page 7-------------------------------------
965 ps_characteristics->NewPage();
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);
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);
990 DrawAutoGammaHisto( ESD_ConvGamma_Pt_data,
991 "", "p_{t} Conv #gamma [GeV]",StandardYAxis,
996 DrawAutoGammaHistos( ESD_ConvGamma_Pt_data,
997 ESD_ConvGamma_Pt_montecarlo,
998 "", "p_{t} Conv #gamma [GeV]",StandardYAxis,
1006 DrawAutoGammaHisto( ESD_ConvGamma_Eta_data,
1007 "", "#eta Conv #gamma",StandardYAxis,
1012 DrawAutoGammaHistos( ESD_ConvGamma_Eta_data,
1013 ESD_ConvGamma_Eta_montecarlo,
1014 "", "#eta Conv #gamma",StandardYAxis,
1022 DrawAutoGammaHisto( ESD_ConvGamma_Mass_data,
1023 "", "InvMass e^{+}e^{-} [GeV]",StandardYAxis,
1028 DrawAutoGammaHistos( ESD_ConvGamma_Mass_data,
1029 ESD_ConvGamma_Mass_montecarlo,
1030 "", "InvMass e^{+}e^{-} [GeV]",StandardYAxis,
1038 DrawAutoGammaHisto( ESD_ConvGamma_Chi2_data,
1039 "", "#chi^{2} Conv #gamma",StandardYAxis,
1044 DrawAutoGammaHistos( ESD_ConvGamma_Chi2_data,
1045 ESD_ConvGamma_Chi2_montecarlo,
1046 "", "#chi^{2} Conv #gamma",StandardYAxis,
1054 DrawAutoGammaHisto( ESD_E_Pt_data,
1055 "", "p_{t} electron [GeV]",StandardYAxis,
1056 kTRUE, 3,0.00000001,
1060 DrawAutoGammaHistos( ESD_E_Pt_data,
1061 ESD_E_Pt_montecarlo,
1062 "", "p_{t} electron [GeV]",StandardYAxis,
1063 kTRUE, 3,0.00000001,
1070 DrawAutoGammaHisto( ESD_P_Pt_data,
1071 "", "p_{t} positron [GeV]",StandardYAxis,
1072 kTRUE, 3,0.00000001,
1076 DrawAutoGammaHistos( ESD_P_Pt_data,
1077 ESD_P_Pt_montecarlo,
1078 "", "p_{t} positron [GeV]",StandardYAxis,
1079 kTRUE, 3,0.00000001,
1086 // --------------------------------Page 8 - Mother mass---------------------------------------------
1088 ps_characteristics->NewPage();
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);
1105 DrawAutoGammaHisto( ESD_Mother_InvMass_data,
1106 "", "InvMass #gamma#gamma [GeV]","Counts/event scaled by multiplicity",
1111 DrawAutoGammaHistos( ESD_Mother_InvMass_data,
1112 ESD_Mother_InvMass_montecarlo,
1113 "","InvMass #gamma#gamma [GeV]","Counts/event scaled by multiplicity",
1120 ps_characteristics->Close();
1127 // ----------------------- Start Single Plots -----------------------------------------------------
1130 // ----------------------- dE/dx of pion/electron -----------------------------------------
1135 TCanvas * c1_1 = new TCanvas("c1_1","",10,10,500,500); // gives the page size
1139 c1_1->SetRightMargin(0.14);
1141 DrawAutoGammaHisto2D( ESD_ConvGamma_P_dEdxP_data,
1142 "", "p [GeV/c]", "dE/dx", "",
1145 foElec.Draw("e,hist,same");
1146 foPion.Draw("e,hist,same");
1147 foProton.Draw("e,hist,same");
1148 foKaon.Draw("e,hist,same");
1150 DrawAliceLogoPerformance(right_up2D[0],right_up2D[1],right_up2D[2],right_up2D[3],0.03, Date);
1154 c1_1->SaveAs(Form("%s%s/dEdx_P_data.%s",path,suffix,suffix));
1158 TCanvas * c1_2 = new TCanvas("c1_2","",10,10,500,500); // gives the page size
1162 c1_2->SetRightMargin(0.14);
1164 DrawAutoGammaHisto2D( ESD_ConvGamma_P_dEdxP_montecarlo,
1165 "", "p [GeV/c]", "dE/dx", "",
1168 foElecMC.Draw("e,hist,same");
1169 foPionMC.Draw("e,hist,same");
1170 foProtonMC.Draw("e,hist,same");
1171 foKaonMC.Draw("e,hist,same");
1173 DrawAliceLogo(right_up2D [0],right_up2D[1],right_up2D[2],right_up2D[3]);
1175 c1_2->SaveAs(Form("%s%s/dEdx_P_montecarlo.%s",path,suffix,suffix));
1179 TCanvas * c1_1 = new TCanvas("c1_1","",10,10,500,500); // gives the page size
1183 c1_1->SetRightMargin(0.14);
1185 DrawAutoGammaHisto2D( ESD_ConvGamma_E_dEdxP_data,
1186 "", "p [GeV/c]", "dE/dx", "",
1189 foElec.Draw("e,hist,same");
1190 foPion.Draw("e,hist,same");
1191 foProton.Draw("e,hist,same");
1192 foKaon.Draw("e,hist,same");
1194 DrawAliceLogoPerformance(right_up2D[0],right_up2D[1],right_up2D[2],right_up2D[3],0.03, Date);
1198 c1_1->SaveAs(Form("%s%s/dEdx_E_data.%s",path,suffix,suffix));
1202 TCanvas * c1_2 = new TCanvas("c1_2","",10,10,500,500); // gives the page size
1206 c1_2->SetRightMargin(0.14);
1208 DrawAutoGammaHisto2D( ESD_ConvGamma_E_dEdxP_montecarlo,
1209 "", "p [GeV/c]", "dE/dx", "",
1212 foElecMC.Draw("e,hist,same");
1213 foPionMC.Draw("e,hist,same");
1214 foProtonMC.Draw("e,hist,same");
1215 foKaonMC.Draw("e,hist,same");
1217 DrawAliceLogo(right_up2D [0],right_up2D[1],right_up2D[2],right_up2D[3]);
1219 c1_2->SaveAs(Form("%s%s/dEdx_E_montecarlo.%s",path,suffix,suffix));
1224 // ------------------------ asymetry ----------------------------------------------------
1228 TCanvas * c2_1 = new TCanvas("c2_1","",10,10,500,500); // gives the page size
1231 c2_1->SetRightMargin(0.17);
1233 DrawAutoGammaHisto2D( ESD_ConvGamma_P_AsymmetryP_data,
1234 "", "p [GeV/c]", "Asymmetry", "",
1237 DrawAliceLogo(right_up2D [0],right_up2D[1],right_up2D[2],right_up2D[3]);
1239 c2_1->SaveAs(Form("%s%s/Asymetry_data.%s",path,suffix,suffix));
1243 TCanvas * c2_2 = new TCanvas("c2_2","",10,10,500,500); // gives the page size
1246 c2_2->SetRightMargin(0.17);
1248 DrawAutoGammaHisto2D( ESD_ConvGamma_P_AsymmetryP_montecarlo,
1249 "", "p [GeV/c]", "Asymmetry", "",
1253 DrawAliceLogo(right_up2D [0],right_up2D[1],right_up2D[2],right_up2D[3]);
1255 c2_2->SaveAs(Form("%s%s/Asymetry_montecarlo.%s",path,suffix,suffix));
1258 // ---------------------------- Armenteros single plots ------------------------------------------------------------------
1260 TCanvas * c20_1 = new TCanvas("c20_1","",10,10,500,450); // gives the page size
1263 c20_1->SetRightMargin(0.17);
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]", "",
1271 DrawAliceLogoPerformance(right_up2D [0],right_up2D[1],right_up2D[2],right_up2D[3],0.03,Date);
1273 c20_1->SaveAs(Form("%s%s/Armenterosfull_data.%s",path,suffix,suffix));
1277 TCanvas * c20_2 = new TCanvas("c20_2","",10,10,500,450); // gives the page size
1280 c20_2->SetRightMargin(0.17);
1282 DrawAutoGammaHisto2D( ESD_AllV0CurrentFinder_alfa_qt_montecarlo,
1283 "","#alpha = (p^{+}_{L}-p^{-}_{L})/(p^{+}_{L}+p^{-}_{L})", "q_{T} [GeV/c]", "",
1287 DrawAliceLogoPerformance(right_up2D [0],right_up2D[1],right_up2D[2],right_up2D[3],0.03, Date);
1289 c20_2->SaveAs(Form("%s%s/Armenterosfull_montecarlo.%s",path,suffix,suffix));
1293 TCanvas * c20_1 = new TCanvas("c20_1","",10,10,500,450); // gives the page size
1296 c20_1->SetRightMargin(0.17);
1298 DrawAutoGammaHisto2D( ESD_ConvGamma_alfa_qt_data,
1299 "", "#alpha = (p^{+}_{L}-p^{-}_{L})/(p^{+}_{L}+p^{-}_{L})", "q_{T} [GeV/c]", "",
1302 DrawAliceLogoPerformance(right_up2D[0],right_up2D[1],right_up2D[2],right_up2D[3],0.03,Date);
1304 c20_1->SaveAs(Form("%s%s/ArmenterosAftCuts_data.%s",path,suffix,suffix));
1308 TCanvas * c20_2 = new TCanvas("c20_2","",10,10,500,450); // gives the page size
1311 c20_2->SetRightMargin(0.17);
1313 DrawAutoGammaHisto2D( ESD_ConvGamma_alfa_qt_montecarlo,
1314 "", "#alpha = (p^{+}_{L}-p^{-}_{L})/(p^{+}_{L}+p^{-}_{L})", "q_{T} [GeV/c]", "",
1317 DrawAliceLogoPerformance(right_up2D [0],right_up2D[1],right_up2D[2],right_up2D[3],0.03,Date);
1319 c20_2->SaveAs(Form("%s%s/ArmenterosAftCuts_montecarlo.%s",path,suffix,suffix));
1325 // -----------------------------------------------------------------------------
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
1339 //--------------------------------------- DCA -------------------------------------------------------------
1342 DrawAutoGammaHisto( ESD_ConvGamma_DcaDaughters_data,
1343 "", "DCA [cm]",StandardYAxis,
1348 DrawAutoGammaHistos( ESD_ConvGamma_DcaDaughters_data,
1349 ESD_ConvGamma_DcaDaughters_montecarlo,
1350 "", "DCA [cm]",StandardYAxis,
1355 DrawAliceLogoPerformance(right_up [0],right_up[1],right_up[2],right_up[3],0.03, Date);
1358 c3_1->SaveAs(Form("%s%s/Photon_DcaDaughters.%s",path,suffix,suffix));
1362 //-------------------------------- Normalised Distance ----------------------------------------
1365 DrawAutoGammaHisto( ESD_ConvGamma_NormDcaDistDaughters_data,
1366 "", "Normalized distance [cm]",StandardYAxis,
1371 DrawAutoGammaHistos( ESD_ConvGamma_NormDcaDistDaughters_data,
1372 ESD_ConvGamma_NormDcaDistDaughters_montecarlo,
1373 "", "Normalized distance [cm]",StandardYAxis,
1378 DrawAliceLogo(right_up [0],right_up[1],right_up[2],right_up[3]);
1381 c3_2->SaveAs(Form("%s%s/Photon_NormDcaDaughters.%s",path,suffix,suffix));
1383 //------------------------------------- Cos Pointing Angle -----------------------------------------
1386 DrawAutoGammaHisto( ESD_ConvGamma_CosPointingAngle_data,
1387 "", "Cos Pointing Angle",StandardYAxis,
1392 DrawAutoGammaHistos( ESD_ConvGamma_CosPointingAngle_data,
1393 ESD_ConvGamma_CosPointingAngle_montecarlo,
1394 "", "Cos Pointing Angle",StandardYAxis,
1399 DrawAliceLogoPerformance(left_up [0],left_up[1],left_up[2],left_up[3],0.03,Date);
1402 c3_3->SaveAs(Form("%s%s/Photon_CosPointingAngle.%s",path,suffix,suffix));
1405 //-------------------------------------- Likelihood -----------------------------------------------------
1408 DrawAutoGammaHisto( ESD_ConvGamma_LikeLihood_data,
1409 "", "Likelihood",StandardYAxis,
1414 DrawAutoGammaHistos( ESD_ConvGamma_LikeLihood_data,
1415 ESD_ConvGamma_LikeLihood_montecarlo,
1416 "", "Likelihood",StandardYAxis,
1421 DrawAliceLogoPerformance(left_up [0],left_up[1],left_up[2],left_up[3],0.03,Date);
1424 c3_4->SaveAs(Form("%s%s/Photon_Likelihood.%s",path,suffix,suffix));
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
1443 //------------------------------------ Photon Momentum -----------------------------------------
1446 DrawAutoGammaHisto( ESD_ConvGamma_Pt_data,
1447 "", "p_{t} Conv #gamma [GeV]",StandardYAxis,
1448 kTRUE, 3,0.00000001,
1452 DrawAutoGammaHistos( ESD_ConvGamma_Pt_data,
1453 ESD_ConvGamma_Pt_montecarlo,
1454 "", "p_{t} Conv #gamma [GeV]",StandardYAxis,
1455 kTRUE, 3,0.0000000001,
1459 DrawAliceLogoPerformance(right_up [0],right_up[1],right_up[2],right_up[3],0.03,Date);
1462 c4_1->SaveAs(Form("%s%s/Photon_Pt.%s",path,suffix,suffix));
1465 //----------------------------------- Photon eta ---------------------------------------------
1468 DrawAutoGammaHisto( ESD_ConvGamma_Eta_data,
1469 "", "#eta Conv #gamma",StandardYAxis,
1474 DrawAutoGammaHistos( ESD_ConvGamma_Eta_data,
1475 ESD_ConvGamma_Eta_montecarlo,
1476 "", "#eta Conv #gamma",StandardYAxis,
1481 DrawAliceLogoPerformance(left_up [0],left_up[1],left_up[2],left_up[3],0.03,Date);
1483 c4_2->SaveAs(Form("%s%s/Photon_Eta.%s",path,suffix,suffix));
1486 //------------------------------------- Photon Mass ----------------------------------------
1489 DrawAutoGammaHisto( ESD_ConvGamma_Mass_data,
1490 "", "InvMass e^{+}e^{-} [GeV]",StandardYAxis,
1495 DrawAutoGammaHistos( ESD_ConvGamma_Mass_data,
1496 ESD_ConvGamma_Mass_montecarlo,
1497 "", "InvMass e^{+}e^{-} [GeV]",StandardYAxis,
1498 kTRUE, 3,0.00000001,
1502 DrawAliceLogoPerformance(right_up [0],right_up[1],right_up[2],right_up[3],0.03,Date);
1504 c4_3->SaveAs(Form("%s%s/Photon_Mass.%s",path,suffix,suffix));
1507 //-------------------------------------- Photon Chi2 ----------------------------------------------
1510 DrawAutoGammaHisto( ESD_ConvGamma_Chi2_data,
1511 "", "#chi^{2} Conv #gamma",StandardYAxis,
1516 DrawAutoGammaHistos( ESD_ConvGamma_Chi2_data,
1517 ESD_ConvGamma_Chi2_montecarlo,
1518 "", "#chi^{2} Conv #gamma",StandardYAxis,
1524 DrawAliceLogoPerformance(right_up [0],right_up[1],right_up[2],right_up[3],0.03,Date);
1527 c4_4->SaveAs(Form("%s%s/Photon_Chi2.%s",path,suffix,suffix));
1531 //---------------------------------- Electron Momentum -------------------------------------------
1534 DrawAutoGammaHisto( ESD_E_Pt_data,
1535 "", "p_{t} electron [GeV]",StandardYAxis,
1536 kTRUE, 3,0.00000001,
1540 DrawAutoGammaHistos( ESD_E_Pt_data,
1541 ESD_E_Pt_montecarlo,
1542 "", "p_{t} electron [GeV]",StandardYAxis,
1543 kTRUE, 3,0.00000001,
1547 DrawAliceLogoPerformance(right_up [0],right_up[1],right_up[2],right_up[3],0.03,Date);
1550 c4_5->SaveAs(Form("%s%s/Electron_Pt.%s",path,suffix,suffix));
1552 //---------------------------------- Positron Momentum -------------------------------------------
1555 DrawAutoGammaHisto( ESD_P_Pt_data,
1556 "", "p_{t} positron [GeV]",StandardYAxis,
1557 kTRUE, 3,0.00000001,
1561 DrawAutoGammaHistos( ESD_P_Pt_data,
1562 ESD_P_Pt_montecarlo,
1563 "", "p_{t} positron [GeV]",StandardYAxis,
1564 kTRUE, 3,0.00000001,
1568 DrawAliceLogoPerformance(right_up [0],right_up[1],right_up[2],right_up[3],0.03,Date);
1571 c4_6->SaveAs(Form("%s%s/Positron_Pt.%s",path,suffix,suffix));
1575 // -----------------------------------------------------------------------------
1578 TCanvas *c5_1 = new TCanvas("c5","",10,10,500,500); // gives the page size
1583 DrawAutoGammaHisto( ESD_Mother_InvMass_data,
1584 "", "InvMass #gamma#gamma [GeV]","counts/event scaled by multiplicity",
1589 DrawAutoGammaHistos( ESD_Mother_InvMass_data,
1590 ESD_Mother_InvMass_montecarlo,
1591 "","InvMass #gamma#gamma [GeV]","counts/event scaled by multiplicity",
1597 DrawAliceLogo(right_up [0],right_up[1],right_up[2],right_up[3]);
1599 c5_1->SaveAs(Form("%s%s/Mother_InvMass.%s",path,suffix,suffix));
1602 // ---------------------------------------- Multiplicity Plot ---------------------------------------------------
1603 TCanvas * c6_1 = new TCanvas("c6_1","",10,10,500,500); // gives the page size
1605 TText *l = new TText();
1609 DrawAutoGammaHisto( ESD_NumberOfGoodESDTracks_data,
1610 "","Number good ESDTracks ","",
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));
1621 DrawAutoGammaHistos( ESD_NumberOfGoodESDTracks_data,
1622 ESD_NumberOfGoodESDTracks_montecarlo,
1623 "","Number good ESDTracks","",
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));
1633 Double_t mean_montecarlo = ESD_NumberOfGoodESDTracks_montecarlo->GetMean();
1634 l->SetTextAlign(11);
1636 l->SetTextSize(0.03);
1637 l->DrawText(60,0.0001, "Mean MC:");
1638 l->DrawText(80,0.0001, Form("%lg", mean_montecarlo));
1641 DrawAliceLogo(right_up [0],right_up[1],right_up[2],right_up[3]);
1644 c6_1->SaveAs(Form("%s%s/NumberOfGoodESDTracks.%s",path,suffix,suffix));
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);
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);
1663 ESD_ConvGamma_P_dEdx_Y1_data->Rebin(2);
1664 DrawAutoGammaHisto( ESD_ConvGamma_P_dEdx_Y1_data,
1665 "","dE/dx ",StandardYAxis,
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,
1681 DrawAliceLogo(right_up [0],right_up[1],right_up[2],right_up[3]);
1685 ESD_ConvGamma_P_dEdx_Y2_data->Rebin(2);
1686 DrawAutoGammaHisto( ESD_ConvGamma_P_dEdx_Y2_data,
1687 "","dE/dx ",StandardYAxis,
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,
1702 DrawAliceLogo(right_up [0],right_up[1],right_up[2],right_up[3]);
1706 c9->SaveAs(Form("%s%s/ProjectiondEdx.%s",path,suffix,suffix));
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);
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"));
1727 //Asymmetrie in 1st and 3rd bin
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);
1734 DrawAutoGammaHisto( ESD_ConvGamma_P_AsymmetryP_Y1_data,
1735 "", "x = E/k","(X_{0}N_{A}/A)d#sigma_{LPM}/dx",
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",
1747 MC_ConvGamma_P_AsymmetryP_Y1_montecarlo->SetLineColor(kBlue+1);
1748 MC_ConvGamma_P_AsymmetryP_Y1_montecarlo->Draw("same,hist");
1749 // leg1->Draw("same");
1751 DrawAliceLogoPerformance(right_up[0]+0.1,right_up[1]+0.17,right_up[2],right_up[3],0.03, Date);
1753 //Asymmetry in other bins
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);
1760 DrawAutoGammaHisto( ESD_ConvGamma_P_AsymmetryP_Y2_data,
1761 "", "x = E/k","(X_{0}N_{A}/A)d#sigma_{LPM}/dx",
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",
1773 MC_ConvGamma_P_AsymmetryP_Y2_montecarlo->SetLineColor(kBlue+1);
1774 MC_ConvGamma_P_AsymmetryP_Y2_montecarlo->Draw("same,hist");
1777 // DrawAliceLogo(right_up [0],right_up[1],right_up[2],right_up[3]);
1779 c10->SaveAs(Form("%s%s/ProjectionAsymmetry.%s",path,suffix,suffix));
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);
1791 pad_c11->Divide(2,2);
1794 // ITS Clusters Electron
1797 DrawAutoGammaHisto( ESD_E_nITSClusters_data,
1798 "", "Number of ITS Clusters for Electron ","Hits/event scaled by multiplicity",
1803 DrawAutoGammaHistos( ESD_E_nITSClusters_data,
1804 ESD_E_nITSClusters_montecarlo,
1805 "","Number of ITS Clusters for Electron ","Hits/event scaled by multiplicity",
1810 DrawAliceLogoPerformance(right_up [0],right_up[1],right_up[2],right_up[3],0.03,Date);
1811 //TPC Clusters Electron
1814 DrawAutoGammaHisto( ESD_E_nTPCClusters_data,
1815 "", "Number of TPC Clusters for Electron","Hits/event scaled by multiplicity",
1820 DrawAutoGammaHistos( ESD_E_nTPCClusters_data,
1821 ESD_E_nTPCClusters_montecarlo,
1822 "","Number of TPC Clusters for Electron ","Hits/event scaled by multiplicity",
1827 //ITS Clusters Positron
1830 DrawAutoGammaHisto( ESD_P_nITSClusters_data,
1831 "", "Number of ITS Clusters for PositronS","Hits/event scaled by multiplicity",
1836 DrawAutoGammaHistos( ESD_P_nITSClusters_data,
1837 ESD_P_nITSClusters_montecarlo,
1838 "","Number of ITS Clusters for Positron","Hits/event scaled by multiplicity",
1843 //TPC Clusters Positron
1846 DrawAutoGammaHistos( ESD_P_nTPCClusters_data,
1847 ESD_P_nTPCClusters_montecarlo,
1848 "","Number of TPC Clusters for Positron","Hits/event scaled by multiplicity",
1854 DrawAutoGammaHisto( ESD_P_nTPCClusters_data,
1855 "", "Number of TPC Clusters for PositronS","Hits/event scaled by multiplicity",
1862 c11->SaveAs(Form("%s%s/Clusters.%s",path,suffix,suffix));
1865 //end drawing single Plots