]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGUD/mcValidation/MakePlotsPath.C
add the possibility to process the event stat file
[u/mrichter/AliRoot.git] / PWGUD / mcValidation / MakePlotsPath.C
CommitLineData
5e03d366 1void MakePlotsPath(const char* data_path, const char* mc_path){
2
3 printf("data = %s, mc = %s\n",data_path,mc_path);
4
5 gROOT->SetStyle("Plain");
6 gStyle->SetPalette(1);
7 gStyle->SetOptStat(0);
8 gStyle->SetPalette(1);
9 gStyle->SetCanvasColor(0);
10 gStyle->SetFrameFillColor(0);
11 gStyle->SetOptTitle(0);
12
13 TString mc_fileName(Form("%s/histograms.root",mc_path));
14 TString data_fileName(Form("%s/histograms.root",data_path));
15 TFile* mc_file = new TFile(mc_fileName.Data());
16 TFile* data_file = new TFile(data_fileName.Data());
17
18 TString mc_fileNameEvStat(Form("%s/event_stat.root",mc_path));
19 TString data_fileNameEvStat(Form("%s/event_stat.root",data_path));
20 TFile* mc_fileEvSt = new TFile(mc_fileNameEvStat.Data());
21 TFile* data_fileEvSt = new TFile(data_fileNameEvStat.Data());
22 TDirectoryFile* mc_dir = (TDirectoryFile*)mc_fileEvSt->Get("trigger_histograms_");
23
24 // WARNING!!!! check the trigger classes for your run!!!!
25 TDirectoryFile* data_dirCINT1B = (TDirectoryFile*)data_fileEvSt->Get("trigger_histograms_+CINT1B-ABCE-NOPF-ALL");
26 TDirectoryFile* data_dirCINT1A = (TDirectoryFile*)data_fileEvSt->Get("trigger_histograms_+CINT1A-ABCE-NOPF-ALL");
27 TDirectoryFile* data_dirCINT1C = (TDirectoryFile*)data_fileEvSt->Get("trigger_histograms_+CINT1C-ABCE-NOPF-ALL");
28 TDirectoryFile* data_dirCINT1E = (TDirectoryFile*)data_fileEvSt->Get("trigger_histograms_+CINT1-E-NOPF-ALL");
29
30 // mc
31 TH2D* mc_etaPhi = (TH2D*)mc_file->Get("fEtaPhi");
32 TH1D* mc_eta = (TH1D*)mc_etaPhi->ProjectionX();
33 TH1D* mc_phi = (TH1D*)mc_etaPhi->ProjectionY();
34 TH1D* mc_phiEta1 = (TH1D*)mc_etaPhi->ProjectionY("mc_phiEta1",mc_eta->FindBin(-1.4),mc_eta->FindBin(1.4)-1);
35 TH1D* mc_phiEtaNeg = (TH1D*)mc_etaPhi->ProjectionY("mc_phiEtaNeg",mc_eta->FindBin(-1.4),mc_eta->FindBin(0)-1);
36 TH1D* mc_phiEtaPos = (TH1D*)mc_etaPhi->ProjectionY("mc_phiEtaPos",mc_eta->FindBin(0),mc_eta->FindBin(1.4)-1);
37 TH1D* mc_deltaPhi = (TH1D*)mc_file->Get("fDeltaPhi");
38 TH1D* mc_deltaTheta = (TH1D*)mc_file->Get("fDeltaTheta");
39 TH1D* mc_vtxX = (TH1D*)mc_file->Get("fVtxX");
40 TH1D* mc_vtxY = (TH1D*)mc_file->Get("fVtxY");
41 TH1D* mc_vtxZ = (TH1D*)mc_file->Get("fVtxZ");
42 TH3D* mc_vtxContributors = (TH3D*)mc_file->Get("fVtxContributors");
43 TH1D* mc_vtxXContributors = (TH1D*)mc_vtxContributors->ProjectionX();
44 TH1D* mc_vtxYContributors = (TH1D*)mc_vtxContributors->ProjectionY();
45 TH1D* mc_vtxZContributors = (TH1D*)mc_vtxContributors->ProjectionZ();
46 TH1F* mc_HistFiredBitsSPD = (TH1F*)mc_dir->Get("fHistFiredBitsSPD");
47 mc_etaPhi->SetName("mc_etaPhi");
48 mc_eta->SetName("mc_eta");
49 mc_phi->SetName("mc_phi");
50 mc_deltaPhi->SetName("mc_deltaPhi");
51 mc_deltaTheta->SetName("mc_deltaTheta");
52 mc_vtxX->SetName("mc_vtxX");
53 mc_vtxY->SetName("mc_vtxY");
54 mc_vtxZ->SetName("mc_vtxZ");
55 mc_vtxXContributors->SetName("mc_vtxXContributors");
56 mc_vtxYContributors->SetName("mc_vtxYContributors");
57 mc_vtxZContributors->SetName("mc_vtxZContributors");
58
59 // data
60 TH2D* data_etaPhi = (TH2D*)data_file->Get("fEtaPhi");
61 TH1D* data_eta = (TH1D*)data_etaPhi->ProjectionX();
62 TH1D* data_phi = (TH1D*)data_etaPhi->ProjectionY();
63 TH1D* data_phiEta1 = (TH1D*)data_etaPhi->ProjectionY("data_phiEta1",data_eta->FindBin(-1.4),data_eta->FindBin(1.4)-1);
64 TH1D* data_phiEtaNeg = (TH1D*)data_etaPhi->ProjectionY("data_phiEtaNeg",data_eta->FindBin(-1.4),data_eta->FindBin(0)-1);
65 TH1D* data_phiEtaPos = (TH1D*)data_etaPhi->ProjectionY("data_phiEtaPos",data_eta->FindBin(0),data_eta->FindBin(1.4)-1);
66 TH1D* data_deltaPhi = (TH1D*)data_file->Get("fDeltaPhi");
67 TH1D* data_deltaTheta = (TH1D*)data_file->Get("fDeltaTheta");
68 TH1D* data_vtxX = (TH1D*)data_file->Get("fVtxX");
69 TH1D* data_vtxY = (TH1D*)data_file->Get("fVtxY");
70 TH1D* data_vtxZ = (TH1D*)data_file->Get("fVtxZ");
71 TH3D* data_vtxContributors = (TH3D*)data_file->Get("fVtxContributors");
72 TH1D* data_vtxXContributors = (TH1D*)data_vtxContributors->ProjectionX();
73 TH1D* data_vtxYContributors = (TH1D*)data_vtxContributors->ProjectionY();
74 TH1D* data_vtxZContributors = (TH1D*)data_vtxContributors->ProjectionZ();
75 TH1F* data_HistFiredBitsSPDCINT1B = (TH1F*)data_dirCINT1B->Get("fHistFiredBitsSPD");
76 TH1F* data_HistFiredBitsSPDCINT1A = (TH1F*)data_dirCINT1A->Get("fHistFiredBitsSPD");
77 TH1F* data_HistFiredBitsSPDCINT1C = (TH1F*)data_dirCINT1C->Get("fHistFiredBitsSPD");
78 TH1F* data_HistFiredBitsSPDCINT1E = (TH1F*)data_dirCINT1E->Get("fHistFiredBitsSPD");
79 data_etaPhi->SetName("data_etaPhi");
80 data_eta->SetName("data_eta");
81 data_phi->SetName("data_phi");
82 data_deltaPhi->SetName("data_deltaPhi");
83 data_deltaTheta->SetName("data_deltaTheta");
84 data_vtxX->SetName("data_vtxX");
85 data_vtxY->SetName("data_vtxY");
86 data_vtxZ->SetName("data_vtxZ");
87 data_vtxXContributors->SetName("data_vtxXContributors");
88 data_vtxYContributors->SetName("data_vtxYContributors");
89 data_vtxZContributors->SetName("data_vtxZContributors");
90 mc_HistFiredBitsSPD->SetName("mc_HistFiredBitsSPD");
91 data_HistFiredBitsSPDCINT1B->SetName("data_HistFiredBitsSPDCINT1B");
92 data_HistFiredBitsSPDCINT1A->SetName("data_HistFiredBitsSPDCINT1A");
93 data_HistFiredBitsSPDCINT1C->SetName("data_HistFiredBitsSPDCINT1C");
94 data_HistFiredBitsSPDCINT1E->SetName("data_HistFiredBitsSPDCINT1E");
95
96 // ratios
97 TH1D* ratio_phi = new TH1D("ratio_phi","#phi; #phi [rad]; Ratio", 18*5,0,2*TMath::Pi());
98 TH1D* ratio_phiEta1 = new TH1D("ratio_phiEta1","#phi; #phi (|#eta|<1.4) [rad]; Ratio", 18*5,0,2*TMath::Pi() );
99 TH1D* ratio_phiEtaNeg = new TH1D("ratio_phiEtaNeg","#phi; #phi (#eta<0) [rad]; Ratio", 18*5,0,2*TMath::Pi() );
100 TH1D* ratio_phiEtaPos = new TH1D("ratio_phiEtaPos","#phi; #phi (#eta>0) [rad]; Ratio", 18*5,0,2*TMath::Pi() );
101 TH1D* ratio_deltaPhi = new TH1D("ratio_deltaPhi","#Delta#phi; #Delta #phi;Ratio", 500, -1, 1);
102 TH1D* ratio_deltaTheta = new TH1D("ratio_deltaTheta","#Delta#theta; #Delta #theta;Ratio", 500, -0.2, 0.2);
103 TH1D* ratio_vtxX = new TH1D("ratio_vtxX", "x SPD primary vertex; x [cm]; Ratio",100,-1,1);
104 TH1D* ratio_vtxY = new TH1D("ratio_vtxY", "y SPD primary vertex; y [cm]; Ratio",100,-1,1);
105 TH1D* ratio_vtxZ = new TH1D("ratio_vtxZ", "z SPD primary vertex; z [cm]; Ratio",100,-30,30);
106 TH1D* ratio_vtxXContributors = new TH1D("ratio_vtxXContributors", "x SPD primary vertex; x_{SPDvtx (N. Contributors > 0)} [cm]; Ratio",100,-1,1);
107 TH1D* ratio_vtxYContributors = new TH1D("ratio_vtxYContributors", "y SPD primary vertex; y_{SPDvtx (N. Contributors > 0)} [cm]; Ratio",100,-1,1);
108 TH1D* ratio_vtxZContributors = new TH1D("ratio_vtxZContributors", "z SPD primary vertex; z_{SPDvtx (N. Contributors > 0)} [cm]; Ratio",100,-30,30);
109 TH1D* ratio_HistFiredBitsSPD = new TH1D("ratio_HistFiredBitsSPD", "SPD GFO; chip number; Ratio",1200,-0.5,1199.5);
110
111 TCanvas* cEta = new TCanvas("cEta", "#eta", 50,50, 550, 550);
112 TCanvas* cPhi = new TCanvas("cPhi", "#phi", 50,50,550, 550);
113 TCanvas* cPhiEta1 = new TCanvas("cPhiEta1", "#phi, |#eta| < 1.4", 50,50,550, 550);
114 TCanvas* cPhiEtaNeg = new TCanvas("cPhiEtaNeg", "#phi, #eta < 0", 50,50,550, 550);
115 TCanvas* cPhiEtaPos = new TCanvas("cPhiEtaPos", "#phi, #eta > 0", 50,50,550, 550);
116 TCanvas* cDeltaPhi = new TCanvas("cDeltaPhi", "#Delta#phi", 50,50, 550, 550);
117 TCanvas* cDeltaTheta = new TCanvas("cDeltaTheta", "#Delta#theta", 50,50, 550, 550);
118 TCanvas* cvtxX = new TCanvas("cvtxX", "vtxX", 50,50,550, 550);
119 TCanvas* cvtxY = new TCanvas("cvtxY", "vtxY", 50,50,550, 550);
120 TCanvas* cvtxZ = new TCanvas("cvtxZ", "vtxZ", 50,50,550, 550);
121 TCanvas* cvtxXContributors = new TCanvas("cvtxXContributors", "vtxXContributors", 50,50,550, 550);
122 TCanvas* cvtxYContributors = new TCanvas("cvtxYContributors", "vtxYContributors", 50,50,550, 550);
123 TCanvas* cvtxZContributors = new TCanvas("cvtxZContributors", "vtxZContributors", 50,50,550, 550);
124 TCanvas* cSPDGFO = new TCanvas("cSPDGFO", "SPD GFO", 50,50,950, 550);
125 TCanvas* cratioPhi = new TCanvas("cratioPhi", "#phi", 50,50,550, 550);
126 TCanvas* cratioPhiEta1 = new TCanvas("cratioPhiEta1", "#phi, |#eta| < 1.4", 50,50,550, 550);
127 TCanvas* cratioPhiEtaNeg = new TCanvas("cratioPhiNeg", "#phi, #eta < 0", 50,50,550, 550);
128 TCanvas* cratioPhiEtaPos = new TCanvas("cratioPhiPos", "#phi, #eta > 0", 50,50,550, 550);
129 TCanvas* cratioDeltaPhi = new TCanvas("cratioDeltaPhi", "#Delta#phi", 50,50, 550, 550);
130 TCanvas* cratioDeltaTheta = new TCanvas("cratioDeltaTheta", "#Delta#theta", 50,50, 550, 550);
131 TCanvas* cratiovtxX = new TCanvas("cratiovtxX", "vtxX", 50,50,550, 550);
132 TCanvas* cratiovtxY = new TCanvas("cratiovtxY", "vtxY", 50,50,550, 550);
133 TCanvas* cratiovtxZ = new TCanvas("cratiovtxZ", "vtxZ", 50,50,550, 550);
134 TCanvas* cratiovtxXContributors = new TCanvas("cratiovtxXContributors", "vtxXContributors", 50,50,550, 550);
135 TCanvas* cratiovtxYContributors = new TCanvas("cratiovtxYContributors", "vtxYContributors", 50,50,550, 550);
136 TCanvas* cratiovtxZContributors = new TCanvas("cratiovtxZContributors", "vtxZContributors", 50,50,550, 550);
137 TCanvas* cratioSPDGFO = new TCanvas("cratioSPDGFO", "SPD GFO", 50,50,950, 550);
138
139 cEta->SetLeftMargin(0.15);
140 cEta->SetRightMargin(0.05);
141 cPhi->SetLeftMargin(0.15);
142 cPhi->SetRightMargin(0.05);
143 cPhiEta1->SetLeftMargin(0.15);
144 cPhiEta1->SetRightMargin(0.05);
145 cPhiEtaNeg->SetLeftMargin(0.15);
146 cPhiEtaNeg->SetRightMargin(0.05);
147 cPhiEtaPos->SetLeftMargin(0.15);
148 cPhiEtaPos->SetRightMargin(0.05);
149 cDeltaPhi->SetLeftMargin(0.15);
150 cDeltaPhi->SetRightMargin(0.05);
151 cDeltaTheta->SetLeftMargin(0.15);
152 cDeltaTheta->SetRightMargin(0.05);
153 cvtxX->SetLeftMargin(0.15);
154 cvtxX->SetRightMargin(0.05);
155 cvtxY->SetLeftMargin(0.15);
156 cvtxY->SetRightMargin(0.05);
157 cvtxZ->SetLeftMargin(0.15);
158 cvtxZ->SetRightMargin(0.05);
159 cvtxXContributors->SetLeftMargin(0.15);
160 cvtxXContributors->SetRightMargin(0.05);
161 cvtxYContributors->SetLeftMargin(0.15);
162 cvtxYContributors->SetRightMargin(0.05);
163 cvtxZContributors->SetLeftMargin(0.15);
164 cvtxZContributors->SetRightMargin(0.05);
165 cSPDGFO->SetLeftMargin(0.15);
166 cSPDGFO->SetRightMargin(0.05);
167
168 cratioPhi->SetLeftMargin(0.15);
169 cratioPhi->SetRightMargin(0.05);
170 cratioPhiEta1->SetLeftMargin(0.15);
171 cratioPhiEta1->SetRightMargin(0.05);
172 cratioPhiEtaNeg->SetLeftMargin(0.15);
173 cratioPhiEtaNeg->SetRightMargin(0.05);
174 cratioPhiEtaPos->SetLeftMargin(0.15);
175 cratioPhiEtaPos->SetRightMargin(0.05);
176 cratioDeltaPhi->SetLeftMargin(0.15);
177 cratioDeltaPhi->SetRightMargin(0.05);
178 cratioDeltaTheta->SetLeftMargin(0.15);
179 cratioDeltaTheta->SetRightMargin(0.05);
180 cratiovtxX->SetLeftMargin(0.15);
181 cratiovtxX->SetRightMargin(0.05);
182 cratiovtxY->SetLeftMargin(0.15);
183 cratiovtxY->SetRightMargin(0.05);
184 cratiovtxZ->SetLeftMargin(0.15);
185 cratiovtxZ->SetRightMargin(0.05);
186 cratiovtxXContributors->SetLeftMargin(0.15);
187 cratiovtxXContributors->SetRightMargin(0.05);
188 cratiovtxYContributors->SetLeftMargin(0.15);
189 cratiovtxYContributors->SetRightMargin(0.05);
190 cratiovtxZContributors->SetLeftMargin(0.15);
191 cratiovtxZContributors->SetRightMargin(0.05);
192 cratioSPDGFO->SetLeftMargin(0.15);
193 cratioSPDGFO->SetRightMargin(0.05);
194
195 cDeltaPhi->SetLogy();
196 cDeltaTheta->SetLogy();
197 cvtxX->SetLogy();
198 cvtxY->SetLogy();
199 cvtxZ->SetLogy();
200 cvtxXContributors->SetLogy();
201 cvtxYContributors->SetLogy();
202 cvtxZContributors->SetLogy();
203
204 mc_eta->SetLineColor(2);
205 mc_eta->SetLineWidth(2);
206 mc_eta->GetYaxis()->SetTitleOffset(1.6);
207 mc_eta->GetYaxis()->SetTitle("Entries");
208 mc_eta->Scale(data_eta->Integral()/mc_eta->Integral());
209 data_eta->SetLineColor(4);
210 data_eta->SetLineWidth(2);
211 data_eta->SetLineStyle(2);
212 mc_eta->SetMaximum(TMath::Max(mc_eta->GetMaximum(),data_eta->GetMaximum())*1.2);
213 cEta->cd();
214 mc_eta->Draw("hist");
215 data_eta->Draw("hist same");
216
217 mc_phi->SetLineColor(2);
218 mc_phi->SetLineWidth(2);
219 mc_phi->Scale(data_phi->Integral()/mc_phi->Integral());
220 mc_phi->GetYaxis()->SetTitleOffset(1.9);
221 mc_phi->GetYaxis()->SetTitle("Entries");
222 data_phi->SetLineColor(4);
223 data_phi->SetLineWidth(2);
224 data_phi->SetLineStyle(2);
225 mc_phi->SetMaximum(TMath::Max(mc_phi->GetMaximum(),data_phi->GetMaximum())*1.2);
226 cPhi->cd();
227 mc_phi->Draw("hist err");
228 data_phi->Draw("hist err same");
229
230 TLegend* leg = new TLegend(0.6,0.88,0.9,0.75);
231 leg->SetFillColor(0);
232 leg->AddEntry(mc_phi,Form("%s",mc_path),"L");
233 leg->AddEntry(data_phi,Form("%s",data_path),"L");
234 leg->Draw("same");
235
236 mc_phiEta1->SetLineColor(2);
237 mc_phiEta1->SetLineWidth(2);
238 mc_phiEta1->Scale(data_phiEta1->Integral()/mc_phiEta1->Integral());
239 mc_phiEta1->GetYaxis()->SetTitleOffset(1.9);
240 mc_phiEta1->GetYaxis()->SetTitle("Entries");
241 mc_phiEta1->GetXaxis()->SetTitle("#phi (|#eta|<1.4) [rad]");
242 data_phiEta1->SetLineColor(4);
243 data_phiEta1->SetLineWidth(2);
244 data_phiEta1->SetLineStyle(2);
245 mc_phiEta1->SetMaximum(TMath::Max(mc_phiEta1->GetMaximum(),data_phiEta1->GetMaximum())*1.2);
246 cPhiEta1->cd();
247 mc_phiEta1->Draw("hist err");
248 data_phiEta1->Draw("hist err same");
249
250 mc_phiEtaNeg->SetLineColor(2);
251 mc_phiEtaNeg->SetLineWidth(2);
252 mc_phiEtaNeg->Scale(data_phiEtaNeg->Integral()/mc_phiEtaNeg->Integral());
253 mc_phiEtaNeg->GetYaxis()->SetTitleOffset(1.9);
254 mc_phiEtaNeg->GetYaxis()->SetTitle("Entries");
255 mc_phiEtaNeg->GetXaxis()->SetTitle("#phi (-1.4<#eta<0) [rad]");
256 data_phiEtaNeg->SetLineColor(4);
257 data_phiEtaNeg->SetLineWidth(2);
258 data_phiEtaNeg->SetLineStyle(2);
259 mc_phiEtaNeg->SetMaximum(TMath::Max(mc_phiEtaNeg->GetMaximum(),data_phiEtaNeg->GetMaximum())*1.2);
260 cPhiEtaNeg->cd();
261 mc_phiEtaNeg->Draw("hist err");
262 data_phiEtaNeg->Draw("hist err same");
263
264 mc_phiEtaPos->SetLineColor(2);
265 mc_phiEtaPos->SetLineWidth(2);
266 mc_phiEtaPos->Scale(data_phiEtaPos->Integral()/mc_phiEtaPos->Integral());
267 mc_phiEtaPos->GetYaxis()->SetTitleOffset(1.9);
268 mc_phiEtaPos->GetYaxis()->SetTitle("Entries");
269 mc_phiEtaPos->GetXaxis()->SetTitle("#phi (0<#eta<1.4) [rad]");
270 data_phiEtaPos->SetLineColor(4);
271 data_phiEtaPos->SetLineWidth(2);
272 data_phiEtaPos->SetLineStyle(2);
273 mc_phiEtaPos->SetMaximum(TMath::Max(mc_phiEtaPos->GetMaximum(),data_phiEtaPos->GetMaximum())*1.2);
274 cPhiEtaPos->cd();
275 mc_phiEtaPos->Draw("hist err");
276 data_phiEtaPos->Draw("hist err same");
277
278 mc_deltaPhi->SetLineColor(2);
279 mc_deltaPhi->SetLineWidth(2);
280 mc_deltaPhi->GetYaxis()->SetTitleOffset(1.8);
281 mc_deltaPhi->Scale(data_deltaPhi->Integral()/mc_deltaPhi->Integral());
282 mc_deltaPhi->GetXaxis()->SetRangeUser(-0.15,0.15);
283 data_deltaPhi->SetLineColor(4);
284 data_deltaPhi->SetLineWidth(2);
285 data_deltaPhi->SetLineStyle(2);
286 mc_deltaPhi->SetMaximum(TMath::Max(mc_deltaPhi->GetMaximum(),data_deltaPhi->GetMaximum())*1.2);
287 cDeltaPhi->cd();
288 mc_deltaPhi->Draw("hist err");
289 data_deltaPhi->Draw("hist err same");
290
291 mc_deltaTheta->SetLineColor(2);
292 mc_deltaTheta->SetLineWidth(2);
293 mc_deltaTheta->GetYaxis()->SetTitleOffset(1.8);
294 mc_deltaTheta->Scale(data_deltaTheta->Integral()/mc_deltaTheta->Integral());
295 mc_deltaTheta->GetXaxis()->SetRangeUser(-0.05,0.05);
296 data_deltaTheta->SetLineColor(4);
297 data_deltaTheta->SetLineWidth(2);
298 data_deltaTheta->SetLineStyle(2);
299 mc_deltaTheta->SetMaximum(TMath::Max(mc_deltaTheta->GetMaximum(),data_deltaTheta->GetMaximum())*1.2);
300 cDeltaTheta->cd();
301 mc_deltaTheta->Draw("hist err");
302 data_deltaTheta->Draw("hist err same");
303
304 mc_vtxX->SetLineColor(2);
305 mc_vtxX->SetLineWidth(2);
306 mc_vtxX->GetYaxis()->SetTitleOffset(1.6);
307 mc_vtxX->GetYaxis()->SetTitle("Entries");
308 mc_vtxX->GetXaxis()->SetTitle("x_{SPDvtx} [cm]");
309 mc_vtxX->Scale(data_vtxX->Integral()/mc_vtxX->Integral());
310 data_vtxX->SetLineColor(4);
311 data_vtxX->SetLineWidth(2);
312 data_vtxX->SetLineStyle(2);
313 mc_vtxX->SetMaximum(TMath::Max(mc_vtxX->GetMaximum(),data_vtxX->GetMaximum())*1.2);
314 cvtxX->cd();
315 mc_vtxX->Draw("hist err");
316 data_vtxX->Draw("hist err same");
317
318 mc_vtxY->SetLineColor(2);
319 mc_vtxY->SetLineWidth(2);
320 mc_vtxY->GetYaxis()->SetTitleOffset(1.6);
321 mc_vtxY->GetYaxis()->SetTitle("Entries");
322 mc_vtxY->GetXaxis()->SetTitle("y_{SPDvtx} [cm]");
323 mc_vtxY->Scale(data_vtxY->Integral()/mc_vtxY->Integral());
324 data_vtxY->SetLineColor(4);
325 data_vtxY->SetLineWidth(2);
326 data_vtxY->SetLineStyle(2);
327 mc_vtxY->SetMaximum(TMath::Max(mc_vtxY->GetMaximum(),data_vtxY->GetMaximum())*1.2);
328 cvtxY->cd();
329 mc_vtxY->Draw("hist err");
330 data_vtxY->Draw("hist err same");
331
332 mc_vtxZ->SetLineColor(2);
333 mc_vtxZ->SetLineWidth(2);
334 mc_vtxZ->GetYaxis()->SetTitleOffset(1.6);
335 mc_vtxZ->GetYaxis()->SetTitle("Entries");
336 mc_vtxZ->GetXaxis()->SetTitle("z_{SPDvtx} [cm]");
337 mc_vtxZ->Scale(data_vtxZ->Integral()/mc_vtxZ->Integral());
338 data_vtxZ->SetLineColor(4);
339 data_vtxZ->SetLineWidth(2);
340 data_vtxZ->SetLineStyle(2);
341 mc_vtxZ->SetMaximum(TMath::Max(mc_vtxZ->GetMaximum(),data_vtxZ->GetMaximum())*1.2);
342 cvtxZ->cd();
343 mc_vtxZ->Draw("hist err");
344 data_vtxZ->Draw("hist err same");
345
346 mc_vtxXContributors->SetLineColor(2);
347 mc_vtxXContributors->SetLineWidth(2);
348 mc_vtxXContributors->GetYaxis()->SetTitleOffset(1.6);
349 mc_vtxXContributors->GetYaxis()->SetTitle("Entries");
350 mc_vtxXContributors->GetXaxis()->SetTitle("x_{SPDvtx (N. Contributors > 0)} [cm]");
351 mc_vtxXContributors->Scale(data_vtxXContributors->Integral()/mc_vtxXContributors->Integral());
352 data_vtxXContributors->SetLineColor(4);
353 data_vtxXContributors->SetLineWidth(2);
354 data_vtxXContributors->SetLineStyle(2);
355 mc_vtxXContributors->SetMaximum(TMath::Max(mc_vtxXContributors->GetMaximum(),data_vtxXContributors->GetMaximum())*1.2);
356 cvtxXContributors->cd();
357 mc_vtxXContributors->Draw("hist err");
358 data_vtxXContributors->Draw("hist err same");
359
360 mc_vtxYContributors->SetLineColor(2);
361 mc_vtxYContributors->SetLineWidth(2);
362 mc_vtxYContributors->GetYaxis()->SetTitleOffset(1.6);
363 mc_vtxYContributors->GetYaxis()->SetTitle("Entries");
364 mc_vtxYContributors->GetXaxis()->SetTitle("y_{SPDvtx (N. Contributors > 0)} [cm]");
365 mc_vtxYContributors->Scale(data_vtxYContributors->Integral()/mc_vtxYContributors->Integral());
366 data_vtxYContributors->SetLineColor(4);
367 data_vtxYContributors->SetLineWidth(2);
368 data_vtxYContributors->SetLineStyle(2);
369 mc_vtxYContributors->SetMaximum(TMath::Max(mc_vtxYContributors->GetMaximum(),data_vtxYContributors->GetMaximum())*1.2);
370 cvtxYContributors->cd();
371 mc_vtxYContributors->Draw("hist err");
372 data_vtxYContributors->Draw("hist err same");
373
374 mc_vtxZContributors->SetLineColor(2);
375 mc_vtxZContributors->SetLineWidth(2);
376 mc_vtxZContributors->GetYaxis()->SetTitleOffset(1.6);
377 mc_vtxZContributors->GetYaxis()->SetTitle("Entries");
378 mc_vtxZContributors->GetXaxis()->SetTitle("z_{SPDvtx (N. Contributors > 0)} [cm]");
379 mc_vtxZContributors->Scale(data_vtxZContributors->Integral()/mc_vtxZContributors->Integral());
380 data_vtxZContributors->SetLineColor(4);
381 data_vtxZContributors->SetLineWidth(2);
382 data_vtxZContributors->SetLineStyle(2);
383 mc_vtxZContributors->SetMaximum(TMath::Max(mc_vtxZContributors->GetMaximum(),data_vtxZContributors->GetMaximum())*1.2);
384 cvtxZContributors->cd();
385 mc_vtxZContributors->Draw("hist err");
386 data_vtxZContributors->Draw("hist err same");
387
388 mc_HistFiredBitsSPD->SetLineColor(2);
389 mc_HistFiredBitsSPD->SetLineWidth(2);
390 mc_HistFiredBitsSPD->GetYaxis()->SetTitleOffset(1.2);
391 mc_HistFiredBitsSPD->GetYaxis()->SetTitle("Entries");
392 mc_HistFiredBitsSPD->Scale(data_HistFiredBitsSPDCINT1B->Integral()/mc_HistFiredBitsSPD->Integral());
393 data_HistFiredBitsSPDCINT1B->SetLineColor(4);
394 data_HistFiredBitsSPDCINT1B->SetLineWidth(2);
395 data_HistFiredBitsSPDCINT1B->SetLineStyle(2);
396 mc_HistFiredBitsSPD->SetMaximum(TMath::Max(mc_HistFiredBitsSPD->GetMaximum(),data_HistFiredBitsSPDCINT1B->GetMaximum())*1.2);
397 cSPDGFO->cd();
398 mc_HistFiredBitsSPD->Draw("hist err");
399 data_HistFiredBitsSPDCINT1B->Draw("hist err same");
400
401 ratio_phi->SetLineWidth(2);
402 ratio_phi->Divide(mc_phi,data_phi);
403 ratio_phi->GetYaxis()->SetRangeUser(0.5,1.5);
404 ratio_phi->GetYaxis()->SetTitleOffset(1.9);
405 ratio_phi->GetYaxis()->SetTitle("Ratio");
406 cratioPhi->cd();
407 ratio_phi->Draw("hist");
408
409 TPaveText* text = new TPaveText(0.2,1,0.8,0.9,"NDC");
410 text->SetFillColor(0);
411 text->AddText(Form("%s/%s",mc_path,data_path));
412 text->Draw("same");
413
414 ratio_phiEta1->SetLineWidth(2);
415 ratio_phiEta1->Divide(mc_phiEta1,data_phiEta1);
416 ratio_phiEta1->GetYaxis()->SetRangeUser(0.5,1.5);
417 ratio_phiEta1->GetYaxis()->SetTitleOffset(1.9);
418 ratio_phiEta1->GetYaxis()->SetTitle("Ratio");
419 cratioPhiEta1->cd();
420 ratio_phiEta1->Draw("hist");
421
422 ratio_phiEtaNeg->SetLineWidth(2);
423 ratio_phiEtaNeg->Divide(mc_phiEtaNeg,data_phiEtaNeg);
424 ratio_phiEtaNeg->GetYaxis()->SetRangeUser(0.5,1.5);
425 ratio_phiEtaNeg->GetYaxis()->SetTitleOffset(1.9);
426 ratio_phiEtaNeg->GetYaxis()->SetTitle("Ratio");
427 cratioPhiEtaNeg->cd();
428 ratio_phiEtaNeg->Draw("hist");
429
430 ratio_phiEtaPos->SetLineWidth(2);
431 ratio_phiEtaPos->Divide(mc_phiEtaPos,data_phiEtaPos);
432 ratio_phiEtaPos->GetYaxis()->SetRangeUser(0.5,1.5);
433 ratio_phiEtaPos->GetYaxis()->SetTitleOffset(1.9);
434 ratio_phiEtaPos->GetYaxis()->SetTitle("Ratio");
435 cratioPhiEtaPos->cd();
436 ratio_phiEtaPos->Draw("hist");
437
438 ratio_deltaPhi->SetLineWidth(2);
439 ratio_deltaPhi->Divide(mc_deltaPhi,data_deltaPhi);
440 ratio_deltaPhi->GetYaxis()->SetRangeUser(0.5,1.5);
441 ratio_deltaPhi->GetXaxis()->SetRangeUser(-0.15,0.15);
442 ratio_deltaPhi->GetYaxis()->SetTitleOffset(1.9);
443 ratio_deltaPhi->GetYaxis()->SetTitle("Ratio");
444 cratioDeltaPhi->cd();
445 ratio_deltaPhi->Draw("hist");
446
447 ratio_deltaTheta->SetLineWidth(2);
448 ratio_deltaTheta->Divide(mc_deltaTheta,data_deltaTheta);
449 ratio_deltaTheta->GetXaxis()->SetRangeUser(-0.05,0.05);
450 ratio_deltaTheta->GetYaxis()->SetRangeUser(0.5,1.5);
451 ratio_deltaTheta->GetYaxis()->SetTitleOffset(1.9);
452 ratio_deltaTheta->GetYaxis()->SetTitle("Ratio");
453 cratioDeltaTheta->cd();
454 ratio_deltaTheta->Draw("hist");
455
456 ratio_vtxX->SetLineWidth(2);
457 ratio_vtxX->Divide(mc_vtxX,data_vtxX);
458 ratio_vtxX->GetYaxis()->SetRangeUser(0.5,1.5);
459 ratio_vtxX->GetYaxis()->SetTitleOffset(1.9);
460 ratio_vtxX->GetYaxis()->SetTitle("Ratio");
461 cratiovtxX->cd();
462 ratio_vtxX->Draw("hist");
463
464 ratio_vtxY->SetLineWidth(2);
465 ratio_vtxY->Divide(mc_vtxY,data_vtxY);
466 ratio_vtxY->GetYaxis()->SetRangeUser(0.5,1.5);
467 ratio_vtxY->GetYaxis()->SetTitleOffset(1.9);
468 ratio_vtxY->GetYaxis()->SetTitle("Ratio");
469 cratiovtxY->cd();
470 ratio_vtxY->Draw("hist");
471
472 ratio_vtxZ->SetLineWidth(2);
473 ratio_vtxZ->Divide(mc_vtxZ,data_vtxZ);
474 ratio_vtxZ->GetYaxis()->SetRangeUser(0.5,1.5);
475 ratio_vtxZ->GetYaxis()->SetTitleOffset(1.9);
476 ratio_vtxZ->GetYaxis()->SetTitle("Ratio");
477 cratiovtxZ->cd();
478 ratio_vtxZ->Draw("hist");
479
480 ratio_vtxXContributors->SetLineWidth(2);
481 ratio_vtxXContributors->Divide(mc_vtxXContributors,data_vtxXContributors);
482 ratio_vtxXContributors->GetYaxis()->SetRangeUser(0.5,1.5);
483 ratio_vtxXContributors->GetYaxis()->SetTitleOffset(1.9);
484 ratio_vtxXContributors->GetYaxis()->SetTitle("Ratio");
485 cratiovtxXContributors->cd();
486 ratio_vtxXContributors->Draw("hist");
487
488 ratio_vtxYContributors->SetLineWidth(2);
489 ratio_vtxYContributors->Divide(mc_vtxYContributors,data_vtxYContributors);
490 ratio_vtxYContributors->GetYaxis()->SetRangeUser(0.5,1.5);
491 ratio_vtxYContributors->GetYaxis()->SetTitleOffset(1.9);
492 ratio_vtxYContributors->GetYaxis()->SetTitle("Ratio");
493 cratiovtxYContributors->cd();
494 ratio_vtxYContributors->Draw("hist");
495
496 ratio_vtxZContributors->SetLineWidth(2);
497 ratio_vtxZContributors->Divide(mc_vtxZContributors,data_vtxZContributors);
498 ratio_vtxZContributors->GetYaxis()->SetRangeUser(0.5,1.5);
499 ratio_vtxZContributors->GetYaxis()->SetTitleOffset(1.9);
500 ratio_vtxZContributors->GetYaxis()->SetTitle("Ratio");
501 cratiovtxZContributors->cd();
502 ratio_vtxZContributors->Draw("hist");
503
504 ratio_HistFiredBitsSPD->SetLineWidth(2);
505 ratio_HistFiredBitsSPD->Divide(mc_HistFiredBitsSPD,data_HistFiredBitsSPDCINT1B);
506 ratio_HistFiredBitsSPD->GetYaxis()->SetRangeUser(0.5,1.5);
507 ratio_HistFiredBitsSPD->GetYaxis()->SetTitleOffset(1.9);
508 ratio_HistFiredBitsSPD->GetYaxis()->SetTitle("Ratio");
509 cratioSPDGFO->cd();
510 ratio_HistFiredBitsSPD->Draw("hist");
511
512 cEta->cd();
513 cEta->Print(Form("Plots/Plots_%s/eta.gif",mc_path));
514 cEta->Print(Form("Plots/Plots_%s/eta.eps",mc_path));
515 cPhi->cd();
516 cPhi->Print(Form("Plots/Plots_%s/phi.gif",mc_path));
517 cPhi->Print(Form("Plots/Plots_%s/phi.eps",mc_path));
518 cPhiEta1->cd();
519 cPhiEta1->Print(Form("Plots/Plots_%s/phiEta1.gif",mc_path));
520 cPhiEta1->Print(Form("Plots/Plots_%s/phiEta1.eps",mc_path));
521 cPhiEtaNeg->cd();
522 cPhiEtaNeg->Print(Form("Plots/Plots_%s/phiEtaNeg.gif",mc_path));
523 cPhiEtaNeg->Print(Form("Plots/Plots_%s/phiEtaNeg.eps",mc_path));
524 cPhiEtaPos->cd();
525 cPhiEtaPos->Print(Form("Plots/Plots_%s/phiEtaPos.gif",mc_path));
526 cPhiEtaPos->Print(Form("Plots/Plots_%s/phiEtaPos.eps",mc_path));
527 cDeltaPhi->cd();
528 cDeltaPhi->Print(Form("Plots/Plots_%s/deltaPhi.gif",mc_path));
529 cDeltaPhi->Print(Form("Plots/Plots_%s/deltaPhi.eps",mc_path));
530 cDeltaTheta->cd();
531 cDeltaTheta->Print(Form("Plots/Plots_%s/deltaTheta.gif",mc_path));
532 cDeltaTheta->Print(Form("Plots/Plots_%s/deltaTheta.eps",mc_path));
533 cvtxX->cd();
534 cvtxX->Print(Form("Plots/Plots_%s/vtxX.gif",mc_path));
535 cvtxX->Print(Form("Plots/Plots_%s/vtxX.eps",mc_path));
536 cvtxY->cd();
537 cvtxY->Print(Form("Plots/Plots_%s/vtxY.gif",mc_path));
538 cvtxY->Print(Form("Plots/Plots_%s/vtxY.eps",mc_path));
539 cvtxZ->cd();
540 cvtxZ->Print(Form("Plots/Plots_%s/vtxZ.gif",mc_path));
541 cvtxZ->Print(Form("Plots/Plots_%s/vtxZ.eps",mc_path));
542 cvtxXContributors->cd();
543 cvtxXContributors->Print(Form("Plots/Plots_%s/vtxXContributors.gif",mc_path));
544 cvtxXContributors->Print(Form("Plots/Plots_%s/vtxXContributors.eps",mc_path));
545 cvtxYContributors->cd();
546 cvtxYContributors->Print(Form("Plots/Plots_%s/vtxYContributors.gif",mc_path));
547 cvtxYContributors->Print(Form("Plots/Plots_%s/vtxYContributors.eps",mc_path));
548 cvtxZContributors->cd();
549 cvtxZContributors->Print(Form("Plots/Plots_%s/vtxZContributors.gif",mc_path));
550 cvtxZContributors->Print(Form("Plots/Plots_%s/vtxZContributors.eps",mc_path));
551 cSPDGFO->cd();
552 cSPDGFO->Print(Form("Plots/Plots_%s/SPDGFO.gif",mc_path));
553 cSPDGFO->Print(Form("Plots/Plots_%s/SPDGFO.eps",mc_path));
554
555 cratioPhi->cd();
556 cratioPhi->Print(Form("Plots/Plots_%s/ratiophi.gif",mc_path));
557 cratioPhi->Print(Form("Plots/Plots_%s/ratiophi.eps",mc_path));
558 cratioPhiEta1->cd();
559 cratioPhiEta1->Print(Form("Plots/Plots_%s/ratiophiEta1.gif",mc_path));
560 cratioPhiEta1->Print(Form("Plots/Plots_%s/ratiophiEta1.eps",mc_path));
561 cratioPhiEtaNeg->cd();
562 cratioPhiEtaNeg->Print(Form("Plots/Plots_%s/ratiophiEtaNeg.gif",mc_path));
563 cratioPhiEtaNeg->Print(Form("Plots/Plots_%s/ratiophiEtaNeg.eps",mc_path));
564 cratioPhiEtaPos->cd();
565 cratioPhiEtaPos->Print(Form("Plots/Plots_%s/ratiophiEtaPos.gif",mc_path));
566 cratioPhiEtaPos->Print(Form("Plots/Plots_%s/ratiophiEtaPos.eps",mc_path));
567 cratioDeltaPhi->cd();
568 cratioDeltaPhi->Print(Form("Plots/Plots_%s/ratiodeltaPhi.gif",mc_path));
569 cratioDeltaPhi->Print(Form("Plots/Plots_%s/ratiodeltaPhi.eps",mc_path));
570 cratioDeltaTheta->cd();
571 cratioDeltaTheta->Print(Form("Plots/Plots_%s/ratiodeltaTheta.gif",mc_path));
572 cratioDeltaTheta->Print(Form("Plots/Plots_%s/ratiodeltaTheta.eps",mc_path));
573 cratiovtxX->cd();
574 cratiovtxX->Print(Form("Plots/Plots_%s/ratiovtxX.gif",mc_path));
575 cratiovtxX->Print(Form("Plots/Plots_%s/ratiovtxX.eps",mc_path));
576 cratiovtxY->cd();
577 cratiovtxY->Print(Form("Plots/Plots_%s/ratiovtxY.gif",mc_path));
578 cratiovtxY->Print(Form("Plots/Plots_%s/ratiovtxY.eps",mc_path));
579 cratiovtxZ->cd();
580 cratiovtxZ->Print(Form("Plots/Plots_%s/ratiovtxZ.gif",mc_path));
581 cratiovtxZ->Print(Form("Plots/Plots_%s/ratiovtxZ.eps",mc_path));
582 cratiovtxXContributors->cd();
583 cratiovtxXContributors->Print(Form("Plots/Plots_%s/ratiovtxXContributors.gif",mc_path));
584 cratiovtxXContributors->Print(Form("Plots/Plots_%s/ratiovtxXContributors.eps",mc_path));
585 cratiovtxYContributors->cd();
586 cratiovtxYContributors->Print(Form("Plots/Plots_%s/ratiovtxYContributors.gif",mc_path));
587 cratiovtxYContributors->Print(Form("Plots/Plots_%s/ratiovtxYContributors.eps",mc_path));
588 cratiovtxZContributors->cd();
589 cratiovtxZContributors->Print(Form("Plots/Plots_%s/ratiovtxZContributors.gif",mc_path));
590 cratiovtxZContributors->Print(Form("Plots/Plots_%s/ratiovtxZContributors.eps",mc_path));
591 cratioSPDGFO->cd();
592 cratioSPDGFO->Print(Form("Plots/Plots_%s/ratioSPDGFO.gif",mc_path));
593 cratioSPDGFO->Print(Form("Plots/Plots_%s/ratioSPDGFO.eps",mc_path));
594
595 TFile* plotsfile = new TFile(Form("Plots/Plots_%s/plots.root",mc_path),"RECREATE");
596 mc_eta->Write();
597 mc_phi->Write();
598 mc_phiEta1->Write();
599 mc_phiEtaNeg->Write();
600 mc_phiEtaPos->Write();
601 mc_deltaPhi->Write();
602 mc_deltaTheta->Write();
603 mc_vtxX->Write();
604 mc_vtxY->Write();
605 mc_vtxZ->Write();
606 mc_vtxXContributors->Write();
607 mc_vtxYContributors->Write();
608 mc_vtxZContributors->Write();
609 mc_HistFiredBitsSPD->Write();
610 data_eta->Write();
611 data_phi->Write();
612 data_phiEta1->Write();
613 data_phiEtaNeg->Write();
614 data_phiEtaPos->Write();
615 data_deltaPhi->Write();
616 data_deltaTheta->Write();
617 data_vtxX->Write();
618 data_vtxY->Write();
619 data_vtxZ->Write();
620 data_vtxXContributors->Write();
621 data_vtxYContributors->Write();
622 data_vtxZContributors->Write();
623 data_HistFiredBitsSPDCINT1B->Write();
624 data_HistFiredBitsSPDCINT1A->Write();
625 data_HistFiredBitsSPDCINT1C->Write();
626 data_HistFiredBitsSPDCINT1E->Write();
627 ratio_phi->Write();
628 ratio_phiEta1->Write();
629 ratio_phiEtaNeg->Write();
630 ratio_phiEtaPos->Write();
631 ratio_deltaPhi->Write();
632 ratio_deltaTheta->Write();
633 ratio_vtxX->Write();
634 ratio_vtxY->Write();
635 ratio_vtxZ->Write();
636 ratio_vtxXContributors->Write();
637 ratio_vtxYContributors->Write();
638 ratio_vtxZContributors->Write();
639 ratio_HistFiredBitsSPD->Write();
640 plotsfile->Close();
641}
642
643
644