3 //TFile f("output/pp-trunk010709-pdc1-00XXX.root")
4 TFile f("results_V0QA_v416rev08_090709.root");
9 sparseAL=(THnSparseF*)(outputTRD->FindObject("sparseAL"));
11 sparseAL->GetAxis(5)->SetRangeUser(0.,3.9);
12 sparseAL->GetAxis(9)->SetRangeUser(0.,3.9);
15 TH1* ptgeantPPhys=sparseAL->Projection(5);
16 TH1* etageantPPhys=sparseAL->Projection(6);
17 TH1* phigeantPPhys=sparseAL->Projection(7);
19 TH1* ptResSinglePPhys=sparseAL->Projection(13);
20 TH1* etasinglePPhys=sparseAL->Projection(14);
21 TH1* phisinglePPhys=sparseAL->Projection(15);
24 TH1* ptgeantNPhys=sparseAL->Projection(9);
25 TH1* etageantNPhys=sparseAL->Projection(10);
26 TH1* phigeantNPhys=sparseAL->Projection(11);
28 TH1* ptResSingleNPhys=sparseAL->Projection(21);
29 TH1* etasingleNPhys=sparseAL->Projection(22);
30 TH1* phisingleNPhys=sparseAL->Projection(23);
33 TH1* efiEtaSingPPhys=(TH1*) etageantPPhys->Clone();
34 efiEtaSingPPhys->Sumw2();
35 efiEtaSingPPhys->Divide(etasinglePPhys,etageantPPhys);
36 efiEtaSingPPhys->SetMinimum(0.);
37 efiEtaSingPPhys->SetMaximum(1.2);
38 efiEtaSingPPhys->SetAxisRange(-1.5,1.5);
39 efiEtaSingPPhys->SetMarkerStyle(20);
40 efiEtaSingPPhys->SetMarkerColor(2);
44 TH1* efiEtaSingNPhys=(TH1*) etageantNPhys->Clone();
45 efiEtaSingNPhys->Sumw2();
46 efiEtaSingNPhys->Divide(etasingleNPhys,etageantNPhys);
47 efiEtaSingNPhys->SetMinimum(0.);
48 efiEtaSingNPhys->SetMaximum(1.2);
49 efiEtaSingNPhys->SetAxisRange(-1.5,1.5);
50 efiEtaSingNPhys->SetMarkerStyle(20);
51 efiEtaSingNPhys->SetMarkerColor(2);
54 TH1* efiPhiSingPPhys=(TH1*) phigeantPPhys->Clone();
55 efiPhiSingPPhys->Sumw2();
56 efiPhiSingPPhys->Divide(phisinglePPhys,phigeantPPhys);
57 efiPhiSingPPhys->SetMinimum(0.);
58 efiPhiSingPPhys->SetMaximum(1.2);
59 efiPhiSingPPhys->SetAxisRange(-TMath::Pi(),TMath::Pi());
60 efiPhiSingPPhys->SetMarkerStyle(20);
61 efiPhiSingPPhys->SetMarkerColor(2);
64 TH1* efiPhiSingNPhys=(TH1*) phigeantNPhys->Clone();
65 efiPhiSingNPhys->Sumw2();
66 efiPhiSingNPhys->Divide(phisingleNPhys,phigeantNPhys);
67 efiPhiSingNPhys->SetMinimum(0.);
68 efiPhiSingNPhys->SetMaximum(1.2);
69 efiPhiSingNPhys->SetAxisRange(-TMath::Pi(),TMath::Pi());
70 efiPhiSingNPhys->SetMarkerStyle(20);
71 efiPhiSingNPhys->SetMarkerColor(2);
75 // reconstructable tracks
78 sparseAL->GetAxis(8)->SetRangeUser(50,200);
79 sparseAL->GetAxis(12)->SetRangeUser(50,200);
81 sparseAL->GetAxis(5)->SetRangeUser(0.,3.9);
82 sparseAL->GetAxis(9)->SetRangeUser(0.,3.9);
85 TH1* rgeantTrk=sparseAL->Projection(3);
86 TH1* ptgeantPTrk=sparseAL->Projection(5);
87 TH1* etageantPTrk=sparseAL->Projection(6);
88 TH1* phigeantPTrk=sparseAL->Projection(7);
91 TH1* ptgeantNTrk=sparseAL->Projection(9);
92 TH1* etageantNTrk=sparseAL->Projection(10);
93 TH1* phigeantNTrk=sparseAL->Projection(11);
95 sparseAL->GetAxis(20)->SetRangeUser(0,2.);
96 sparseAL->GetAxis(28)->SetRangeUser(0,2.);
98 TH1* rsingleTrk=sparseAL->Projection(3);
99 TH1* ptsinglePTrk=sparseAL->Projection(5);
100 TH1* etasinglePTrk=sparseAL->Projection(6);
101 TH1* phisinglePTrk=sparseAL->Projection(7);
106 TH1* ptsingleNTrk=sparseAL->Projection(9);
107 TH1* etasingleNTrk=sparseAL->Projection(10);
108 TH1* phisingleNTrk=sparseAL->Projection(11);
111 sparseAL->GetAxis(32)->SetRangeUser(0,2.);
112 sparseAL->GetAxis(36)->SetRangeUser(0,2.);
114 TH1* rV0Trk=sparseAL->Projection(3);
115 TH1* ptV0PTrk=sparseAL->Projection(5);
116 TH1* etaV0PTrk=sparseAL->Projection(6);
117 TH1* phiV0PTrk=sparseAL->Projection(7);
121 TH1* ptV0NTrk=sparseAL->Projection(9);
122 TH1* etaV0NTrk=sparseAL->Projection(10);
123 TH1* phiV0NTrk=sparseAL->Projection(11);
126 TH1* efiSingPPhys=(TH1*) ptgeantPPhys->Clone();
127 efiSingPPhys->Sumw2();
128 efiSingPPhys->Divide(ptgeantPTrk,ptgeantPPhys);
129 efiSingPPhys->SetAxisRange(0.,5);
130 efiSingPPhys->SetMinimum(0.);
131 efiSingPPhys->SetMaximum(1.2);
132 efiSingPPhys->SetMarkerStyle(20);
133 efiSingPPhys->SetMarkerColor(2);
136 TH1* efiSingNPhys=(TH1*) ptgeantNPhys->Clone();
137 efiSingNPhys->Sumw2();
138 efiSingNPhys->Divide(ptgeantNTrk,ptgeantNPhys);
139 efiSingNPhys->SetAxisRange(0.,5);
140 efiSingNPhys->SetMinimum(0.);
141 efiSingNPhys->SetMaximum(1.2);
142 efiSingNPhys->SetMarkerStyle(20);
143 efiSingNPhys->SetMarkerColor(2);
148 TH1* efiSingPTrk=(TH1*) ptgeantPTrk->Clone();
149 efiSingPTrk->Sumw2();
150 efiSingPTrk->Divide(ptsinglePTrk,ptgeantPTrk);
151 efiSingPTrk->SetAxisRange(0.,5);
152 efiSingPTrk->SetMinimum(0.);
153 efiSingPTrk->SetMaximum(1.2);
154 efiSingPTrk->SetMarkerStyle(21);
155 efiSingPTrk->SetMarkerColor(4);
158 TH1* efiSingNTrk=(TH1*) ptgeantNTrk->Clone();
159 efiSingNTrk->Sumw2();
160 efiSingNTrk->Divide(ptsingleNTrk,ptgeantNTrk);
161 efiSingNTrk->SetAxisRange(0.,5);
162 efiSingNTrk->SetMinimum(0.);
163 efiSingNTrk->SetMaximum(1.2);
164 efiSingNTrk->SetMarkerStyle(21);
165 efiSingNTrk->SetMarkerColor(4);
168 TH1* efiV0PTrk=(TH1*) ptsinglePTrk->Clone();
170 efiV0PTrk->Divide(ptV0PTrk,ptsinglePTrk);
171 efiV0PTrk->SetAxisRange(0.,5);
172 efiV0PTrk->SetMinimum(0.);
173 efiV0PTrk->SetMaximum(1.2);
174 efiV0PTrk->SetMarkerStyle(21);
175 efiV0PTrk->SetMarkerColor(3);
178 TH1* efiV0NTrk=(TH1*) ptsingleNTrk->Clone();
180 efiV0NTrk->Divide(ptV0NTrk,ptsingleNTrk);
181 efiV0NTrk->SetAxisRange(0.,5);
182 efiV0NTrk->SetMinimum(0.);
183 efiV0NTrk->SetMaximum(1.2);
184 efiV0NTrk->SetMarkerStyle(21);
185 efiV0NTrk->SetMarkerColor(3);
189 TH1* efiEtaSingPTrk=(TH1*) etageantPTrk->Clone();
190 efiEtaSingPTrk->Sumw2();
191 efiEtaSingPTrk->Divide(etasinglePTrk,etageantPTrk);
192 efiEtaSingPTrk->SetMinimum(0.);
193 efiEtaSingPTrk->SetMaximum(1.2);
194 efiEtaSingPTrk->SetAxisRange(-1.5,1.5);
195 efiEtaSingPTrk->SetMarkerStyle(21);
196 efiEtaSingPTrk->SetMarkerColor(4);
199 TH1* efiEtaSingNTrk=(TH1*) etageantNTrk->Clone();
200 efiEtaSingNTrk->Sumw2();
201 efiEtaSingNTrk->Divide(etasingleNTrk,etageantNTrk);
202 efiEtaSingNTrk->SetMinimum(0.);
203 efiEtaSingNTrk->SetMaximum(1.2);
204 efiEtaSingNTrk->SetAxisRange(-1.5,1.5);
205 efiEtaSingNTrk->SetMarkerStyle(21);
206 efiEtaSingNTrk->SetMarkerColor(4);
209 TH1* efiEtaV0PTrk=(TH1*) etasinglePTrk->Clone();
210 efiEtaV0PTrk->Sumw2();
211 efiEtaV0PTrk->Divide(etaV0PTrk,etasinglePTrk);
212 efiEtaV0PTrk->SetMinimum(0.);
213 efiEtaV0PTrk->SetMaximum(1.2);
214 efiEtaV0PTrk->SetMarkerStyle(21);
215 efiEtaV0PTrk->SetMarkerColor(3);
218 TH1* efiEtaV0NTrk=(TH1*) etasingleNTrk->Clone();
219 efiEtaV0NTrk->Sumw2();
220 efiEtaV0NTrk->Divide(etaV0NTrk,etasingleNTrk);
221 efiEtaV0NTrk->SetMinimum(0.);
222 efiEtaV0NTrk->SetMaximum(1.2);
223 efiEtaV0NTrk->SetMarkerStyle(21);
224 efiEtaV0NTrk->SetMarkerColor(3);
228 TH1* efiPhiSingPTrk=(TH1*) phigeantPTrk->Clone();
229 efiPhiSingPTrk->Sumw2();
230 efiPhiSingPTrk->Divide(phisinglePTrk,phigeantPTrk);
231 efiPhiSingPTrk->SetMinimum(0.);
232 efiPhiSingPTrk->SetMaximum(1.2);
233 efiPhiSingPTrk->SetAxisRange(-TMath::Pi(),TMath::Pi());
234 efiPhiSingPTrk->SetMarkerStyle(20);
235 efiPhiSingPTrk->SetMarkerColor(4);
238 TH1* efiPhiSingNTrk=(TH1*) phigeantNTrk->Clone();
239 efiPhiSingNTrk->Sumw2();
240 efiPhiSingNTrk->Divide(phisingleNTrk,phigeantNTrk);
241 efiPhiSingNTrk->SetMinimum(0.);
242 efiPhiSingNTrk->SetMaximum(1.2);
243 efiPhiSingNTrk->SetAxisRange(-TMath::Pi(),TMath::Pi());
244 efiPhiSingNTrk->SetMarkerStyle(20);
245 efiPhiSingNTrk->SetMarkerColor(4);
250 TH1* efiPhiV0PTrk=(TH1*) phisinglePTrk->Clone();
251 efiPhiV0PTrk->Sumw2();
252 efiPhiV0PTrk->Divide(phiV0PTrk,phisinglePTrk);
253 efiPhiV0PTrk->SetMinimum(0.);
254 efiPhiV0PTrk->SetMaximum(1.2);
255 efiPhiV0PTrk->SetMarkerStyle(21);
256 efiPhiV0PTrk->SetMarkerColor(3);
259 TH1* efiPhiV0NTrk=(TH1*) phisingleNTrk->Clone();
260 efiPhiV0NTrk->Sumw2();
261 efiPhiV0NTrk->Divide(phiV0NTrk,phisingleNTrk);
262 efiPhiV0NTrk->SetMinimum(0.);
263 efiPhiV0NTrk->SetMaximum(1.2);
264 efiPhiV0NTrk->SetMarkerStyle(21);
265 efiPhiV0NTrk->SetMarkerColor(3);
269 sparseAL->GetAxis(32)->SetRangeUser(-2,0.);
270 sparseAL->GetAxis(36)->SetRangeUser(-2,0.);
274 TH1* sigbXYZEPlusRecSingle=sparseAL->Projection(17);
275 TH1* sigbXYZEMinusRecSingle=sparseAL->Projection(25);
277 TH1* ptsinglePTrkNo=sparseAL->Projection(5);
278 TH1* etasinglePTrkNo=sparseAL->Projection(6);
279 TH1* phisinglePTrkNo=sparseAL->Projection(7);
281 TH1* ptsingleNTrkNo=sparseAL->Projection(9);
282 TH1* etasingleNTrkNo=sparseAL->Projection(10);
283 TH1* phisingleNTrkNo=sparseAL->Projection(11);
289 TH1* efiV0PTrkNo=(TH1*) ptsinglePTrkNo->Clone();
290 efiV0PTrkNo->Sumw2();
291 efiV0PTrkNo->Divide(ptsinglePTrkNo,ptsinglePTrk);
292 efiV0PTrkNo->SetAxisRange(0.,5);
293 efiV0PTrkNo->SetMinimum(0.);
294 efiV0PTrkNo->SetMaximum(1.2);
295 efiV0PTrkNo->SetMarkerStyle(21);
296 efiV0PTrkNo->SetMarkerColor(6);
300 TH1* efiV0NTrkNo=(TH1*) ptsingleNTrkNo->Clone();
301 efiV0NTrkNo->Sumw2();
302 efiV0NTrkNo->Divide(ptsingleNTrkNo,ptsingleNTrk);
303 efiV0NTrkNo->SetAxisRange(0.,5);
304 efiV0NTrkNo->SetMinimum(0.);
305 efiV0NTrkNo->SetMaximum(1.2);
306 efiV0NTrkNo->SetMarkerStyle(21);
307 efiV0NTrkNo->SetMarkerColor(6);
310 TH1* efiEtaV0PTrkNo=(TH1*) etasinglePTrkNo->Clone();
311 efiEtaV0PTrkNo->Sumw2();
312 efiEtaV0PTrkNo->Divide(etasinglePTrkNo,etasinglePTrk);
313 efiEtaV0PTrkNo->SetAxisRange(-1.5,1.5);
314 efiEtaV0PTrkNo->SetMinimum(0.);
315 efiEtaV0PTrkNo->SetMaximum(1.2);
316 efiEtaV0PTrkNo->SetMarkerStyle(21);
317 efiEtaV0PTrkNo->SetMarkerColor(6);
321 TH1* efiEtaV0NTrkNo=(TH1*) etasingleNTrkNo->Clone();
322 efiEtaV0NTrkNo->Sumw2();
323 efiEtaV0NTrkNo->Divide(etasingleNTrkNo,etasingleNTrk);
324 efiEtaV0NTrkNo->SetAxisRange(-1.5,1.5);
325 efiEtaV0NTrkNo->SetMinimum(0.);
326 efiEtaV0NTrkNo->SetMaximum(1.2);
327 efiEtaV0NTrkNo->SetMarkerStyle(21);
328 efiEtaV0NTrkNo->SetMarkerColor(6);
331 TH1* efiPhiV0PTrkNo=(TH1*) phisinglePTrkNo->Clone();
332 efiPhiV0PTrkNo->Sumw2();
333 efiPhiV0PTrkNo->Divide(phisinglePTrkNo,phisinglePTrk);
334 efiPhiV0PTrkNo->SetAxisRange(-3.5,3.5);
335 efiPhiV0PTrkNo->SetMinimum(0.);
336 efiPhiV0PTrkNo->SetMaximum(1.2);
337 efiPhiV0PTrkNo->SetMarkerStyle(21);
338 efiPhiV0PTrkNo->SetMarkerColor(6);
342 TH1* efiPhiV0NTrkNo=(TH1*) phisingleNTrkNo->Clone();
343 efiPhiV0NTrkNo->Sumw2();
344 efiPhiV0NTrkNo->Divide(phisingleNTrkNo,phisingleNTrk);
345 efiPhiV0NTrkNo->SetAxisRange(-3.5,3.5);
346 efiPhiV0NTrkNo->SetMinimum(0.);
347 efiPhiV0NTrkNo->SetMaximum(1.2);
348 efiPhiV0NTrkNo->SetMarkerStyle(21);
349 efiPhiV0NTrkNo->SetMarkerColor(6);
355 TCanvas* c1 = new TCanvas("c1","MC Info",200,10,700,900);
358 c1->GetFrame()->SetFillColor(0);
359 c1->SetBorderMode(0);
360 TPad *c1_1 = (TPad*)(c1->GetPrimitive("c1_1"));
361 TPad *c1_2 = (TPad*)(c1->GetPrimitive("c1_2"));
362 TPad *c1_3 = (TPad*)(c1->GetPrimitive("c1_3"));
363 TPad *c1_4 = (TPad*)(c1->GetPrimitive("c1_4"));
364 TPad *c1_5 = (TPad*)(c1->GetPrimitive("c1_5"));
365 TPad *c1_6 = (TPad*)(c1->GetPrimitive("c1_6"));
385 efiSingPTrk->SetXTitle("1/sqrt(pt) pos (sqrt(GeV))");
386 efiSingPPhys->Draw("same");
387 efiV0PTrk->Draw("same");
388 efiV0PTrkNo->Draw("same");
390 TLegend *leg1 = new TLegend(0.6,0.75,0.9,0.9);
391 leg1->AddEntry(efiSingPTrk,"Single tracking eff");
392 leg1->AddEntry(efiV0PTrk,"V0 tracking eff");
393 leg1->AddEntry(efiV0PTrkNo,"V0 tracking ineff");
397 efiSingNTrk->SetXTitle("1/sqrt(pt) neg (sqrt(GeV))");
398 efiSingNPhys->Draw("same");
399 efiV0NTrk->Draw("same");
400 efiV0NTrkNo->Draw("same");
403 efiEtaSingPTrk->Draw();
404 //efiEtaSingPPhys->Draw("same");
405 efiEtaV0PTrk->Draw("same");
406 efiEtaV0PTrkNo->Draw("same");
409 efiEtaSingNTrk->Draw();
410 //efiEtaSingNPhys->Draw("same");
411 efiEtaV0NTrk->Draw("same");
412 efiEtaV0NTrkNo->Draw("same");
415 efiPhiSingPTrk->Draw();
416 //efiPhiSingPPhys->Draw("same");
417 efiPhiV0PTrk->Draw("same");
418 efiPhiV0PTrkNo->Draw("same");
421 efiPhiSingNTrk->Draw();
422 //efiPhiSingNPhys->Draw("same");
423 efiPhiV0NTrk->Draw("same");
424 efiPhiV0NTrkNo->Draw("same");
427 TH1* efiRSingTrk=(TH1*) rgeantTrk->Clone();
428 efiRSingTrk->Sumw2();
429 efiRSingTrk->Divide(rsingleTrk,rgeantTrk);
430 efiRSingTrk->SetMinimum(0.);
431 efiRSingTrk->SetMaximum(1.2);
432 efiRSingTrk->SetMarkerStyle(21);
433 efiRSingTrk->SetMarkerColor(4);
436 TH1* efiRV0Trk=(TH1*) rgeantTrk->Clone();
438 efiRV0Trk->Divide(rV0Trk,rsingleTrk);
439 efiRV0Trk->SetMinimum(0.);
440 efiRV0Trk->SetMaximum(1.2);
441 efiRV0Trk->SetMarkerStyle(21);
442 efiRV0Trk->SetMarkerColor(3);
443 efiRV0Trk->Draw("same");
446 c1->Print("Effi-AL-norefit-v416rev08_090709.ps");
447 //c1->Print("Effi-AL-norefit-trunk010709.ps");