]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGPP/macros/PlotITSTrackingHists.C
Added protection (bug 99780 + fixed bug from prev commit
[u/mrichter/AliRoot.git] / PWGPP / macros / PlotITSTrackingHists.C
CommitLineData
e75c9f34 1void Test(TString fname="QAresults.root") {
2
3 TCanvas *clist;
4 Int_t cnum=1;
5 TFile *f=new TFile(fname.Data());
6 PlotITSTPCMatchingEff(f,clist,cnum);
7
8
9 return;
10}
11//--------------------------------------------------------------------------
12Bool_t PlotITSTPCMatchingEff(TFile *f, TCanvas*& clist,Int_t& cnum) {
13
14 Int_t cnum=1;
15 //clist = new TCanvas[2];
16
17
18 TCanvas* cITSTPCmatch = new TCanvas("cITSTPCmatch","cITSTPCmatch",10,10,1200,600);
19 cITSTPCmatch->Divide(2,1);
20 cITSTPCmatch_1->SetGridy();
21 cITSTPCmatch_2->SetGridy();
22 cITSTPCmatch_1->SetLogx();
23 cITSTPCmatch_2->SetLogx();
24
25 clist = cITSTPCmatch;
26
27 if(!f) return kFALSE;
28
29 TList *list=0;
30 TList *listSPD=0;
31 TDirectoryFile *dir=0;
32
33 // count active SPD HSs
34 dir=(TDirectoryFile*)f->GetDirectory("SPD_Performance");
35 if(dir) listSPD = (TList*)dir->Get("coutput1");
36 if(!dir) return kFALSE;
37
38 Float_t spdFrac[2];
39 TH1F *hnHSsSPD=new TH1F("hnHSsSPD","Active HSs in SPD layers 1 and 2; layer; HSs",2,0.5,2.5);
40 if(listSPD) {
41 //listSPD->Print();
42 TH1F *hFiredChip = (TH1F*)listSPD->FindObject("hFiredChip");
43 Int_t nHSsInner=0,nHSsOuter=0;
44 for(Int_t i=0;i<400;i++) if(hFiredChip->GetBinContent(i)>0) nHSsInner++;
45 for(Int_t i=400;i<1200;i++) if(hFiredChip->GetBinContent(i)>0) nHSsOuter++;
46 nHSsInner = (Int_t)(nHSsInner/10);
47 nHSsOuter = (Int_t)(nHSsOuter/10);
48 hnHSsSPD->SetBinContent(1,nHSsInner);
49 hnHSsSPD->SetBinContent(2,nHSsOuter);
50 spdFrac[0]=(Float_t)nHSsInner/40.;
51 spdFrac[1]=(Float_t)nHSsOuter/80.;
52 }
53 TGraph *spdFrac0=new TGraph(1);
54 spdFrac0->SetPoint(0,0.08,spdFrac[0]);
55 spdFrac0->SetMarkerColor(1); spdFrac0->SetMarkerStyle(20);
56 TGraph *spdFrac1=new TGraph(1);
57 spdFrac1->SetPoint(0,0.08,spdFrac[1]);
58 spdFrac1->SetMarkerColor(1); spdFrac1->SetMarkerStyle(24);
59 TLegend *l2=new TLegend(0.1,0.62,0.5,0.93);
60 l2->SetBorderSize(1);
61 l2->AddEntry(spdFrac0,"Frac. active SPD0","p");
62 l2->AddEntry(spdFrac1,"Frac. active SPD1","p");
63
64 //
65 // Efficiencies for CENTRAL
66 //
67 dir=(TDirectoryFile*)f->GetDirectory("ITS_Performance");
68 if(dir) list = (TList*)dir->Get("cOutputITS_3500_10000");
69 if(!list) return kFALSE;
70
71 TH1F *fHistPtTPCInAcc = (TH1F*)list->FindObject("fHistPtTPCInAcc");
72 TH1F *fHistPtITSMI6InAcc = (TH1F*)list->FindObject("fHistPtITSMI6InAcc");
73 TH1F *fHistPtITSMI5InAcc = (TH1F*)list->FindObject("fHistPtITSMI5InAcc");
74 TH1F *fHistPtITSMI4InAcc = (TH1F*)list->FindObject("fHistPtITSMI4InAcc");
75 TH1F *fHistPtITSMI3InAcc = (TH1F*)list->FindObject("fHistPtITSMI3InAcc");
76 TH1F *fHistPtITSMI2InAcc = (TH1F*)list->FindObject("fHistPtITSMI2InAcc");
77 TH1F *fHistPtITSMISPDInAcc = (TH1F*)list->FindObject("fHistPtITSMISPDInAcc");
78 TH1F *fHistPtITSMIoneSPDInAcc = (TH1F*)list->FindObject("fHistPtITSMIoneSPDInAcc");
79 TH1F *fHistPtITSTPCsel = (TH1F*)list->FindObject("fHistPtITSTPCsel");
80 TH1F *fHistPtITSMIge2InAcc = (TH1F*)fHistPtITSMI6InAcc->Clone("fHistPtITSMIge2InAcc");
81 fHistPtITSMIge2InAcc->Add(fHistPtITSMI5InAcc);
82 fHistPtITSMIge2InAcc->Add(fHistPtITSMI4InAcc);
83 fHistPtITSMIge2InAcc->Add(fHistPtITSMI3InAcc);
84 fHistPtITSMIge2InAcc->Add(fHistPtITSMI2InAcc);
85
86
87 TLegend *l3=new TLegend(0.5,0.62,0.95,0.93);
88 l3->SetBorderSize(1);
89 cITSTPCmatch->cd(1);
90 fHistPtITSMIge2InAcc->SetTitle("Fraction of prolonged tracks with N ITS points: central");
91 fHistPtITSMIge2InAcc->SetYTitle("ITS+TPC / TPC");
92 fHistPtITSMIge2InAcc->Divide(fHistPtITSMIge2InAcc,fHistPtTPCInAcc,1,1,"B");
93 fHistPtITSMIge2InAcc->SetMaximum(1.6);
94 fHistPtITSMIge2InAcc->SetMinimum(0);
95 fHistPtITSMIge2InAcc->GetXaxis()->SetRangeUser(0.1,30);
96 fHistPtITSMIge2InAcc->Draw();
97 l3->AddEntry(fHistPtITSMIge2InAcc,">=2 cls","l");
98 fHistPtITSMI6InAcc->Divide(fHistPtITSMI6InAcc,fHistPtTPCInAcc,1,1,"B");
99 fHistPtITSMI6InAcc->SetLineColor(2);
100 l3->AddEntry(fHistPtITSMI6InAcc,"6 cls","l");
101 fHistPtITSMI6InAcc->Draw("same");
102 fHistPtITSMI5InAcc->Divide(fHistPtITSMI5InAcc,fHistPtTPCInAcc,1,1,"B");
103 fHistPtITSMI5InAcc->SetLineColor(3);
104 l3->AddEntry(fHistPtITSMI5InAcc,"5 cls","l");
105 fHistPtITSMI5InAcc->Draw("same");
106 fHistPtITSMI4InAcc->Divide(fHistPtITSMI4InAcc,fHistPtTPCInAcc,1,1,"B");
107 fHistPtITSMI4InAcc->SetLineColor(4);
108 l3->AddEntry(fHistPtITSMI4InAcc,"4 cls","l");
109 fHistPtITSMI4InAcc->Draw("same");
110 fHistPtITSMI3InAcc->Divide(fHistPtITSMI3InAcc,fHistPtTPCInAcc,1,1,"B");
111 fHistPtITSMI3InAcc->SetLineColor(6);
112 l3->AddEntry(fHistPtITSMI3InAcc,"3 cls","l");
113 fHistPtITSMI3InAcc->Draw("same");
114 fHistPtITSMI2InAcc->Divide(fHistPtITSMI2InAcc,fHistPtTPCInAcc,1,1,"B");
115 fHistPtITSMI2InAcc->SetLineColor(7);
116 l3->AddEntry(fHistPtITSMI2InAcc,"2 cls","l");
117 fHistPtITSMI2InAcc->Draw("same");
118 fHistPtITSMISPDInAcc->Divide(fHistPtITSMISPDInAcc,fHistPtTPCInAcc,1,1,"B");
119 fHistPtITSMISPDInAcc->SetLineColor(9);
120 l3->AddEntry(fHistPtITSMISPDInAcc,"2SPD + any","l");
121 fHistPtITSMISPDInAcc->Draw("same");
122 fHistPtITSMIoneSPDInAcc->Divide(fHistPtITSMIoneSPDInAcc,fHistPtTPCInAcc,1,1,"B");
123 fHistPtITSMIoneSPDInAcc->SetLineColor(15);
124 l3->AddEntry(fHistPtITSMIoneSPDInAcc,">=1SPD + any","l");
125 fHistPtITSMIoneSPDInAcc->Draw("same");
126 fHistPtITSTPCsel->Divide(fHistPtITSTPCsel,fHistPtTPCInAcc,1,1,"B");
127 fHistPtITSTPCsel->SetLineColor(kAzure+1);
128 l3->AddEntry(fHistPtITSTPCsel,">=1SPD + any + d_{0} cut","l");
129 fHistPtITSTPCsel->Draw("same");
130 fHistPtITSMIge2InAcc->Draw("same");
131 l3->Draw();
132 l2->Draw();
133 spdFrac0->Draw("p");
134 spdFrac1->Draw("p");
135 /*
136 if(ioValues) {
137 Int_t index,ptbin;
138 ptbin=fHistPtITSMIge2InAcc->FindBin(0.201);
139 index=2;
140 ioValues[index]=fHistPtITSMIge2InAcc->GetBinContent(ptbin);
141 ioErrors[index]=fHistPtITSMIge2InAcc->GetBinError(ptbin);
142 ptbin=fHistPtITSMIge2InAcc->FindBin(1.001);
143 index=3;
144 ioValues[index]=fHistPtITSMIge2InAcc->GetBinContent(ptbin);
145 ioErrors[index]=fHistPtITSMIge2InAcc->GetBinError(ptbin);
146 ptbin=fHistPtITSMIge2InAcc->FindBin(10.001);
147 index=4;
148 ioValues[index]=fHistPtITSMIge2InAcc->GetBinContent(ptbin);
149 ioErrors[index]=fHistPtITSMIge2InAcc->GetBinError(ptbin);
150 ptbin=fHistPtITSMI6InAcc->FindBin(0.201);
151 index=5;
152 ioValues[index]=fHistPtITSMI6InAcc->GetBinContent(ptbin);
153 ioErrors[index]=fHistPtITSMI6InAcc->GetBinError(ptbin);
154 ptbin=fHistPtITSMI6InAcc->FindBin(1.001);
155 index=6;
156 ioValues[index]=fHistPtITSMI6InAcc->GetBinContent(ptbin);
157 ioErrors[index]=fHistPtITSMI6InAcc->GetBinError(ptbin);
158 ptbin=fHistPtITSMI6InAcc->FindBin(10.001);
159 index=7;
160 ioValues[index]=fHistPtITSMI6InAcc->GetBinContent(ptbin);
161 ioErrors[index]=fHistPtITSMI6InAcc->GetBinError(ptbin);
162 ptbin=fHistPtITSMISPDInAcc->FindBin(0.201);
163 index=8;
164 ioValues[index]=fHistPtITSMISPDInAcc->GetBinContent(ptbin);
165 ioErrors[index]=fHistPtITSMISPDInAcc->GetBinError(ptbin);
166 ptbin=fHistPtITSMISPDInAcc->FindBin(1.001);
167 index=9;
168 ioValues[index]=fHistPtITSMISPDInAcc->GetBinContent(ptbin);
169 ioErrors[index]=fHistPtITSMISPDInAcc->GetBinError(ptbin);
170 ptbin=fHistPtITSMISPDInAcc->FindBin(10.001);
171 index=10;
172 ioValues[index]=fHistPtITSMISPDInAcc->GetBinContent(ptbin);
173 ioErrors[index]=fHistPtITSMISPDInAcc->GetBinError(ptbin);
174 ptbin=fHistPtITSMIoneSPDInAcc->FindBin(0.201);
175 index=11;
176 ioValues[index]=fHistPtITSMIoneSPDInAcc->GetBinContent(ptbin);
177 ioErrors[index]=fHistPtITSMIoneSPDInAcc->GetBinError(ptbin);
178 ptbin=fHistPtITSMIoneSPDInAcc->FindBin(1.001);
179 index=12;
180 ioValues[index]=fHistPtITSMIoneSPDInAcc->GetBinContent(ptbin);
181 ioErrors[index]=fHistPtITSMIoneSPDInAcc->GetBinError(ptbin);
182 ptbin=fHistPtITSMIoneSPDInAcc->FindBin(10.001);
183 index=13;
184 ioValues[index]=fHistPtITSMIoneSPDInAcc->GetBinContent(ptbin);
185 ioErrors[index]=fHistPtITSMIoneSPDInAcc->GetBinError(ptbin);
186 }
187 */
188
189
190
191 //
192 // Efficiencies for PERIPHERAL
193 //
194 dir=(TDirectoryFile*)f->GetDirectory("ITS_Performance");
195 if(dir) list = (TList*)dir->Get("cOutputITS_70_310");
196 if(!list) return kFALSE;
197
198 TH1F *fHistPtTPCInAcc = (TH1F*)list->FindObject("fHistPtTPCInAcc");
199 TH1F *fHistPtITSMI6InAcc = (TH1F*)list->FindObject("fHistPtITSMI6InAcc");
200 TH1F *fHistPtITSMI5InAcc = (TH1F*)list->FindObject("fHistPtITSMI5InAcc");
201 TH1F *fHistPtITSMI4InAcc = (TH1F*)list->FindObject("fHistPtITSMI4InAcc");
202 TH1F *fHistPtITSMI3InAcc = (TH1F*)list->FindObject("fHistPtITSMI3InAcc");
203 TH1F *fHistPtITSMI2InAcc = (TH1F*)list->FindObject("fHistPtITSMI2InAcc");
204 TH1F *fHistPtITSMISPDInAcc = (TH1F*)list->FindObject("fHistPtITSMISPDInAcc");
205 TH1F *fHistPtITSMIoneSPDInAcc = (TH1F*)list->FindObject("fHistPtITSMIoneSPDInAcc");
206 TH1F *fHistPtITSTPCsel = (TH1F*)list->FindObject("fHistPtITSTPCsel");
207 TH1F *fHistPtITSMIge2InAcc = (TH1F*)fHistPtITSMI6InAcc->Clone("fHistPtITSMIge2InAcc");
208 fHistPtITSMIge2InAcc->Add(fHistPtITSMI5InAcc);
209 fHistPtITSMIge2InAcc->Add(fHistPtITSMI4InAcc);
210 fHistPtITSMIge2InAcc->Add(fHistPtITSMI3InAcc);
211 fHistPtITSMIge2InAcc->Add(fHistPtITSMI2InAcc);
212
213
214 cITSTPCmatch->cd(2);
215 fHistPtITSMIge2InAcc->SetTitle("Fraction of prolonged tracks with N ITS points: peripheral");
216 fHistPtITSMIge2InAcc->SetYTitle("ITS+TPC / TPC");
217 fHistPtITSMIge2InAcc->Divide(fHistPtITSMIge2InAcc,fHistPtTPCInAcc,1,1,"B");
218 fHistPtITSMIge2InAcc->SetMaximum(1.6);
219 fHistPtITSMIge2InAcc->SetMinimum(0);
220 fHistPtITSMIge2InAcc->GetXaxis()->SetRangeUser(0.1,30);
221 fHistPtITSMIge2InAcc->Draw();
222 fHistPtITSMI6InAcc->Divide(fHistPtITSMI6InAcc,fHistPtTPCInAcc,1,1,"B");
223 fHistPtITSMI6InAcc->SetLineColor(2);
224 fHistPtITSMI6InAcc->Draw("same");
225 fHistPtITSMI5InAcc->Divide(fHistPtITSMI5InAcc,fHistPtTPCInAcc,1,1,"B");
226 fHistPtITSMI5InAcc->SetLineColor(3);
227 fHistPtITSMI5InAcc->Draw("same");
228 fHistPtITSMI4InAcc->Divide(fHistPtITSMI4InAcc,fHistPtTPCInAcc,1,1,"B");
229 fHistPtITSMI4InAcc->SetLineColor(4);
230 fHistPtITSMI4InAcc->Draw("same");
231 fHistPtITSMI3InAcc->Divide(fHistPtITSMI3InAcc,fHistPtTPCInAcc,1,1,"B");
232 fHistPtITSMI3InAcc->SetLineColor(6);
233 fHistPtITSMI3InAcc->Draw("same");
234 fHistPtITSMI2InAcc->Divide(fHistPtITSMI2InAcc,fHistPtTPCInAcc,1,1,"B");
235 fHistPtITSMI2InAcc->SetLineColor(7);
236 fHistPtITSMI2InAcc->Draw("same");
237 fHistPtITSMISPDInAcc->Divide(fHistPtITSMISPDInAcc,fHistPtTPCInAcc,1,1,"B");
238 fHistPtITSMISPDInAcc->SetLineColor(9);
239 fHistPtITSMISPDInAcc->Draw("same");
240 fHistPtITSMIoneSPDInAcc->Divide(fHistPtITSMIoneSPDInAcc,fHistPtTPCInAcc,1,1,"B");
241 fHistPtITSMIoneSPDInAcc->SetLineColor(15);
242 fHistPtITSMIoneSPDInAcc->Draw("same");
243 fHistPtITSTPCsel->Divide(fHistPtITSTPCsel,fHistPtTPCInAcc,1,1,"B");
244 fHistPtITSTPCsel->SetLineColor(kAzure+1);
245 fHistPtITSTPCsel->Draw("same");
246 fHistPtITSMIge2InAcc->Draw("same");
247 l3->Draw();
248 l2->Draw();
249 spdFrac0->Draw("p");
250 spdFrac1->Draw("p");
251 /*
252 if(ioValues) {
253 Int_t index,ptbin;
254 ptbin=fHistPtITSMIge2InAcc->FindBin(0.201);
255 index=2;
256 ioValues[index]=fHistPtITSMIge2InAcc->GetBinContent(ptbin);
257 ioErrors[index]=fHistPtITSMIge2InAcc->GetBinError(ptbin);
258 ptbin=fHistPtITSMIge2InAcc->FindBin(1.001);
259 index=3;
260 ioValues[index]=fHistPtITSMIge2InAcc->GetBinContent(ptbin);
261 ioErrors[index]=fHistPtITSMIge2InAcc->GetBinError(ptbin);
262 ptbin=fHistPtITSMIge2InAcc->FindBin(10.001);
263 index=4;
264 ioValues[index]=fHistPtITSMIge2InAcc->GetBinContent(ptbin);
265 ioErrors[index]=fHistPtITSMIge2InAcc->GetBinError(ptbin);
266 ptbin=fHistPtITSMI6InAcc->FindBin(0.201);
267 index=5;
268 ioValues[index]=fHistPtITSMI6InAcc->GetBinContent(ptbin);
269 ioErrors[index]=fHistPtITSMI6InAcc->GetBinError(ptbin);
270 ptbin=fHistPtITSMI6InAcc->FindBin(1.001);
271 index=6;
272 ioValues[index]=fHistPtITSMI6InAcc->GetBinContent(ptbin);
273 ioErrors[index]=fHistPtITSMI6InAcc->GetBinError(ptbin);
274 ptbin=fHistPtITSMI6InAcc->FindBin(10.001);
275 index=7;
276 ioValues[index]=fHistPtITSMI6InAcc->GetBinContent(ptbin);
277 ioErrors[index]=fHistPtITSMI6InAcc->GetBinError(ptbin);
278 ptbin=fHistPtITSMISPDInAcc->FindBin(0.201);
279 index=8;
280 ioValues[index]=fHistPtITSMISPDInAcc->GetBinContent(ptbin);
281 ioErrors[index]=fHistPtITSMISPDInAcc->GetBinError(ptbin);
282 ptbin=fHistPtITSMISPDInAcc->FindBin(1.001);
283 index=9;
284 ioValues[index]=fHistPtITSMISPDInAcc->GetBinContent(ptbin);
285 ioErrors[index]=fHistPtITSMISPDInAcc->GetBinError(ptbin);
286 ptbin=fHistPtITSMISPDInAcc->FindBin(10.001);
287 index=10;
288 ioValues[index]=fHistPtITSMISPDInAcc->GetBinContent(ptbin);
289 ioErrors[index]=fHistPtITSMISPDInAcc->GetBinError(ptbin);
290 ptbin=fHistPtITSMIoneSPDInAcc->FindBin(0.201);
291 index=11;
292 ioValues[index]=fHistPtITSMIoneSPDInAcc->GetBinContent(ptbin);
293 ioErrors[index]=fHistPtITSMIoneSPDInAcc->GetBinError(ptbin);
294 ptbin=fHistPtITSMIoneSPDInAcc->FindBin(1.001);
295 index=12;
296 ioValues[index]=fHistPtITSMIoneSPDInAcc->GetBinContent(ptbin);
297 ioErrors[index]=fHistPtITSMIoneSPDInAcc->GetBinError(ptbin);
298 ptbin=fHistPtITSMIoneSPDInAcc->FindBin(10.001);
299 index=13;
300 ioValues[index]=fHistPtITSMIoneSPDInAcc->GetBinContent(ptbin);
301 ioErrors[index]=fHistPtITSMIoneSPDInAcc->GetBinError(ptbin);
302 }
303 */
304
305
306
307 return kTRUE;
308}
309
b51e971f 310Bool_t PlotITSTrackingHists(TString fname="ITS.Performance.root",
311 Float_t *ioValues=0,Float_t *ioErrors=0)
312{
2308c814 313 //
314 // Macro to plot the histos from the task AliAnalysisTaskITSTrackingCheck
315 // A. Dainese 28.11.09
316 //
317
b51e971f 318 Bool_t plotAlignmentChecks=kFALSE;
fa516524 319 //gStyle->SetOptStat(0);
2308c814 320
d388aa11 321 //if(fname.Contains("alien")) TGrid::Connect("alien://");
8fa56655 322
323 TFile *f= TFile::Open(fname.Data());
b51e971f 324 if(!f) return kFALSE;
2308c814 325
fa516524 326 TList *list=(TList*)f->Get("cOutputITS");
b51e971f 327 TList *listSPD=0;
af874c53 328 TDirectoryFile *dir=0;
8fa56655 329 if(!list) {
af874c53 330 dir=(TDirectoryFile*)f->GetDirectory("ITS_Performance");
6eb43d54 331 if(dir) list = (TList*)dir->Get("cOutputITS");
b51e971f 332 // count active SPD HSs
333 dir=(TDirectoryFile*)f->GetDirectory("SPD_Performance");
334 if(dir) listSPD = (TList*)dir->Get("coutput1");
8fa56655 335 }
b51e971f 336
af874c53 337 if(!list) return kFALSE;
b51e971f 338
339 TH1F *hnHSsSPD=new TH1F("hnHSsSPD","Active HSs in SPD layers 1 and 2; layer; HSs",2,0.5,2.5);
340 if(listSPD) {
af874c53 341 //listSPD->Print();
b51e971f 342 TH1F *hFiredChip = (TH1F*)listSPD->FindObject("hFiredChip");
343 Int_t nHSsInner=0,nHSsOuter=0;
344 for(Int_t i=0;i<400;i++) if(hFiredChip->GetBinContent(i)>0) nHSsInner++;
345 for(Int_t i=400;i<1200;i++) if(hFiredChip->GetBinContent(i)>0) nHSsOuter++;
346 nHSsInner = (Int_t)(nHSsInner/10);
347 nHSsOuter = (Int_t)(nHSsOuter/10);
348 hnHSsSPD->SetBinContent(1,nHSsInner);
349 hnHSsSPD->SetBinContent(2,nHSsOuter);
350 if(ioValues) ioValues[0]=(Float_t)nHSsInner/40.;
351 if(ioValues) ioValues[1]=(Float_t)nHSsOuter/80.;
352 }
353
354 TCanvas *cSPD=new TCanvas("cSPD","cSPD");
355 hnHSsSPD->SetMaximum(90);
356 hnHSsSPD->SetMinimum(0);
357 hnHSsSPD->Draw();
358
2308c814 359 TH1F *fHistNclsITSSA = (TH1F*)list->FindObject("fHistNclsITSSA");
360 TH1F *fHistClusterMapITSSA = (TH1F*)list->FindObject("fHistClusterMapITSSA");
361 TH1F *fHistClusterMapITSSAok = (TH1F*)list->FindObject("fHistClusterMapITSSAok");
362 TH1F *fHistClusterMapITSSAbad = (TH1F*)list->FindObject("fHistClusterMapITSSAbad");
363 TH1F *fHistClusterMapITSSAskipped = (TH1F*)list->FindObject("fHistClusterMapITSSAskipped");
364 TH1F *fHistClusterMapITSSAoutinz = (TH1F*)list->FindObject("fHistClusterMapITSSAoutinz");
365 TH1F *fHistClusterMapITSSAokoutinzbad = (TH1F*)list->FindObject("fHistClusterMapITSSAokoutinzbad");
366 TH1F *fHistClusterMapITSSAnorefit = (TH1F*)list->FindObject("fHistClusterMapITSSAnorefit");
367 TH1F *fHistClusterMapITSSAnocls = (TH1F*)list->FindObject("fHistClusterMapITSSAnocls");
368 TH1F *fHistNclsITSSAInAcc = (TH1F*)list->FindObject("fHistNclsITSSAInAcc");
369 TH1F *fHistClusterMapITSSAInAcc = (TH1F*)list->FindObject("fHistClusterMapITSSAInAcc");
370 TH1F *fHistClusterMapITSSAokInAcc = (TH1F*)list->FindObject("fHistClusterMapITSSAokInAcc");
371 TH1F *fHistClusterMapITSSAbadInAcc = (TH1F*)list->FindObject("fHistClusterMapITSSAbadInAcc");
fa516524 372 TH1F *fHistClusterMapModuleITSMIokInAcc = (TH1F*)list->FindObject("fHistClusterMapModuleITSMIokInAcc");
373 TH1F *fHistClusterMapModuleITSMIbadInAcc = (TH1F*)list->FindObject("fHistClusterMapModuleITSMIbadInAcc");
2308c814 374 TH1F *fHistClusterMapITSSAskippedInAcc = (TH1F*)list->FindObject("fHistClusterMapITSSAskippedInAcc");
375 TH1F *fHistClusterMapITSSAoutinzInAcc = (TH1F*)list->FindObject("fHistClusterMapITSSAoutinzInAcc");
376 TH1F *fHistClusterMapITSSAokoutinzbadInAcc = (TH1F*)list->FindObject("fHistClusterMapITSSAokoutinzbadInAcc");
377 TH1F *fHistClusterMapITSSAnorefitInAcc = (TH1F*)list->FindObject("fHistClusterMapITSSAnorefitInAcc");
378 TH1F *fHistClusterMapITSSAnoclsInAcc = (TH1F*)list->FindObject("fHistClusterMapITSSAnoclsInAcc");
fa516524 379 TH1F *fHistClusterMapModuleITSMInoclsInAcc = (TH1F*)list->FindObject("fHistClusterMapModuleITSMInoclsInAcc");
2308c814 380 TH1F *fHistNclsITSMI = (TH1F*)list->FindObject("fHistNclsITSMI");
381 TH1F *fHistClusterMapITSMI = (TH1F*)list->FindObject("fHistClusterMapITSMI");
382 TH1F *fHistClusterMapITSMIok = (TH1F*)list->FindObject("fHistClusterMapITSMIok");
383 TH1F *fHistClusterMapITSMIbad = (TH1F*)list->FindObject("fHistClusterMapITSMIbad");
384 TH1F *fHistClusterMapITSMIskipped = (TH1F*)list->FindObject("fHistClusterMapITSMIskipped");
385 TH1F *fHistClusterMapITSMIoutinz = (TH1F*)list->FindObject("fHistClusterMapITSMIoutinz");
386 TH1F *fHistClusterMapITSMIokoutinzbad = (TH1F*)list->FindObject("fHistClusterMapITSMIokoutinzbad");
387 TH1F *fHistClusterMapITSMInorefit = (TH1F*)list->FindObject("fHistClusterMapITSMInorefit");
388 TH1F *fHistClusterMapITSMInocls = (TH1F*)list->FindObject("fHistClusterMapITSMInocls");
389
c2893e82 390 TH1F *fHistPhiTPCInAcc = (TH1F*)list->FindObject("fHistPhiTPCInAcc");
391 TH1F *fHistPhiITSMIokbadoutinz6InAcc = (TH1F*)list->FindObject("fHistPhiITSMIokbadoutinz6InAcc");
6eb43d54 392 TH1F *fHistPhiITSMI6InAcc = (TH1F*)list->FindObject("fHistPhiITSMI6InAcc");
393 TH1F *fHistPhiITSMI5InAcc = (TH1F*)list->FindObject("fHistPhiITSMI5InAcc");
394 TH1F *fHistPhiITSMI4InAcc = (TH1F*)list->FindObject("fHistPhiITSMI4InAcc");
395 TH1F *fHistPhiITSMI3InAcc = (TH1F*)list->FindObject("fHistPhiITSMI3InAcc");
396 TH1F *fHistPhiITSMI2InAcc = (TH1F*)list->FindObject("fHistPhiITSMI2InAcc");
397 TH1F *fHistPhiITSMISPDInAcc = (TH1F*)list->FindObject("fHistPhiITSMISPDInAcc");
398 TH1F *fHistPhiITSMIoneSPDInAcc = (TH1F*)list->FindObject("fHistPhiITSMIoneSPDInAcc");
399
400 TH1F *fHistEtaTPCInAcc = (TH1F*)list->FindObject("fHistEtaTPCInAcc");
401 TH1F *fHistEtaITSMIokbadoutinz6InAcc = (TH1F*)list->FindObject("fHistEtaITSMIokbadoutinz6InAcc");
402 TH1F *fHistEtaITSMI6InAcc = (TH1F*)list->FindObject("fHistEtaITSMI6InAcc");
403 TH1F *fHistEtaITSMI5InAcc = (TH1F*)list->FindObject("fHistEtaITSMI5InAcc");
404 TH1F *fHistEtaITSMI4InAcc = (TH1F*)list->FindObject("fHistEtaITSMI4InAcc");
405 TH1F *fHistEtaITSMI3InAcc = (TH1F*)list->FindObject("fHistEtaITSMI3InAcc");
406 TH1F *fHistEtaITSMI2InAcc = (TH1F*)list->FindObject("fHistEtaITSMI2InAcc");
407 TH1F *fHistEtaITSMISPDInAcc = (TH1F*)list->FindObject("fHistEtaITSMISPDInAcc");
408 TH1F *fHistEtaITSMIoneSPDInAcc = (TH1F*)list->FindObject("fHistEtaITSMIoneSPDInAcc");
409
410
c2893e82 411
412 TH1F *fHistPtTPCInAcc = (TH1F*)list->FindObject("fHistPtTPCInAcc");
8fa56655 413 TH1F *fHistPtTPCInAccSfromStrange = (TH1F*)list->FindObject("fHistPtTPCInAccSfromStrange");
414 TH1F *fHistPtTPCInAccPfromStrange = (TH1F*)list->FindObject("fHistPtTPCInAccPfromStrange");
fa516524 415 TH1F *fHistPtTPCInAccMCtwoSPD = (TH1F*)list->FindObject("fHistPtTPCInAccMCtwoSPD");
416 TH1F *fHistPtTPCInAccMConeSPD = (TH1F*)list->FindObject("fHistPtTPCInAccMConeSPD");
c2893e82 417 TH1F *fHistPtITSMI6InAcc = (TH1F*)list->FindObject("fHistPtITSMI6InAcc");
418 TH1F *fHistPtITSMI5InAcc = (TH1F*)list->FindObject("fHistPtITSMI5InAcc");
419 TH1F *fHistPtITSMI4InAcc = (TH1F*)list->FindObject("fHistPtITSMI4InAcc");
420 TH1F *fHistPtITSMI3InAcc = (TH1F*)list->FindObject("fHistPtITSMI3InAcc");
421 TH1F *fHistPtITSMI2InAcc = (TH1F*)list->FindObject("fHistPtITSMI2InAcc");
422 TH1F *fHistPtITSMISPDInAcc = (TH1F*)list->FindObject("fHistPtITSMISPDInAcc");
fa516524 423 TH1F *fHistPtITSMIoneSPDInAcc = (TH1F*)list->FindObject("fHistPtITSMIoneSPDInAcc");
af874c53 424 TH1F *fHistPtITSMI6InAccFake = (TH1F*)list->FindObject("fHistPtITSMI6InAccFake");
425 TH1F *fHistPtITSMI5InAccFake = (TH1F*)list->FindObject("fHistPtITSMI5InAccFake");
426 TH1F *fHistPtITSMI4InAccFake = (TH1F*)list->FindObject("fHistPtITSMI4InAccFake");
427 TH1F *fHistPtITSMI3InAccFake = (TH1F*)list->FindObject("fHistPtITSMI3InAccFake");
428 TH1F *fHistPtITSMI2InAccFake = (TH1F*)list->FindObject("fHistPtITSMI2InAccFake");
429 TH1F *fHistPtITSMISPDInAccFake = (TH1F*)list->FindObject("fHistPtITSMISPDInAccFake");
430 TH1F *fHistPtITSMIoneSPDInAccFake = (TH1F*)list->FindObject("fHistPtITSMIoneSPDInAccFake");
8fa56655 431 TH1F *fHistPtITSMIoneSPDthreeSDDSSDInAcc = (TH1F*)list->FindObject("fHistPtITSMIoneSPDthreeSDDSSDInAcc");
c2893e82 432 TH1F *fHistPtITSMIokbadoutinz6InAcc = (TH1F*)list->FindObject("fHistPtITSMIokbadoutinz6InAcc");
433 TH1F *fHistPtITSMIokbadoutinz5InAcc = (TH1F*)list->FindObject("fHistPtITSMIokbadoutinz5InAcc");
434 TH1F *fHistPtITSMIokbadoutinz4InAcc = (TH1F*)list->FindObject("fHistPtITSMIokbadoutinz4InAcc");
fa516524 435 TH1F *fHistPtTPCInAccP = (TH1F*)list->FindObject("fHistPtTPCInAccP");
436 TH1F *fHistPtITSMI6InAccP = (TH1F*)list->FindObject("fHistPtITSMI6InAccP");
437 TH1F *fHistPtITSMI5InAccP = (TH1F*)list->FindObject("fHistPtITSMI5InAccP");
438 TH1F *fHistPtITSMI4InAccP = (TH1F*)list->FindObject("fHistPtITSMI4InAccP");
439 TH1F *fHistPtITSMI3InAccP = (TH1F*)list->FindObject("fHistPtITSMI3InAccP");
440 TH1F *fHistPtITSMI2InAccP = (TH1F*)list->FindObject("fHistPtITSMI2InAccP");
441 TH1F *fHistPtITSMISPDInAccP = (TH1F*)list->FindObject("fHistPtITSMISPDInAccP");
442 TH1F *fHistPtITSMIoneSPDInAccP = (TH1F*)list->FindObject("fHistPtITSMIoneSPDInAccP");
443 TH1F *fHistPtTPCInAccS = (TH1F*)list->FindObject("fHistPtTPCInAccS");
444 TH1F *fHistPtITSMI6InAccS = (TH1F*)list->FindObject("fHistPtITSMI6InAccS");
445 TH1F *fHistPtITSMI5InAccS = (TH1F*)list->FindObject("fHistPtITSMI5InAccS");
446 TH1F *fHistPtITSMI4InAccS = (TH1F*)list->FindObject("fHistPtITSMI4InAccS");
447 TH1F *fHistPtITSMI3InAccS = (TH1F*)list->FindObject("fHistPtITSMI3InAccS");
448 TH1F *fHistPtITSMI2InAccS = (TH1F*)list->FindObject("fHistPtITSMI2InAccS");
449 TH1F *fHistPtITSMISPDInAccS = (TH1F*)list->FindObject("fHistPtITSMISPDInAccS");
450 TH1F *fHistPtITSMIoneSPDInAccS = (TH1F*)list->FindObject("fHistPtITSMIoneSPDInAccS");
451
452 TH1F *fHistRProdVtxInAccP = (TH1F*)list->FindObject("fHistRProdVtxInAccP");
453 TH1F *fHistRProdVtxInAccS = (TH1F*)list->FindObject("fHistRProdVtxInAccS");
454
455 TH1F *fHistxlocSDDok = (TH1F*)list->FindObject("fHistxlocSDDok");
456 TH1F *fHistxlocSDDall = (TH1F*)list->FindObject("fHistxlocSDDall");
457 TH1F *fHistzlocSDDok = (TH1F*)list->FindObject("fHistzlocSDDok");
458 TH1F *fHistzlocSDDall = (TH1F*)list->FindObject("fHistzlocSDDall");
459
460 TH1F *fHistPtITSTPCsel = (TH1F*)list->FindObject("fHistPtITSTPCsel");
461 TH1F *fHistPtITSTPCselP = (TH1F*)list->FindObject("fHistPtITSTPCselP");
462 TH1F *fHistPtITSTPCselS = (TH1F*)list->FindObject("fHistPtITSTPCselS");
af874c53 463 TH1F *fHistPtITSTPCselFake = (TH1F*)list->FindObject("fHistPtITSTPCselFake");
fa516524 464 TH1F *fHistPtITSTPCselPfromStrange = (TH1F*)list->FindObject("fHistPtITSTPCselSfromStrange");
465 TH1F *fHistPtITSTPCselSfromStrange = (TH1F*)list->FindObject("fHistPtITSTPCselSfromStrange");
466 TH1F *fHistPtITSTPCselSfromMat = (TH1F*)list->FindObject("fHistPtITSTPCselSfromMat");
467
fa516524 468 TH1F *fHistPtTPCInAccSfromMat = (TH1F*)list->FindObject("fHistPtTPCInAccSfromMat");
469
af874c53 470
8fa56655 471 //ReweightStrange(fHistPtTPCInAcc,fHistPtTPCInAccPfromStrange,fHistPtTPCInAccSfromStrange);
472 //ReweightStrange(fHistPtITSTPCsel,fHistPtITSTPCselPfromStrange,fHistPtITSTPCselSfromStrange);
c2893e82 473
474 //---------------------------------------------------------------
fa516524 475 TH1F *fHistPtITSMIge2InAcc = (TH1F*)fHistPtITSMI6InAcc->Clone("fHistPtITSMIge2InAcc");
476 fHistPtITSMIge2InAcc->Add(fHistPtITSMI5InAcc);
477 fHistPtITSMIge2InAcc->Add(fHistPtITSMI4InAcc);
478 fHistPtITSMIge2InAcc->Add(fHistPtITSMI3InAcc);
479 fHistPtITSMIge2InAcc->Add(fHistPtITSMI2InAcc);
af874c53 480 TH1F *fHistPtITSMIge2InAccFake = 0;
481 if(fHistPtITSMI6InAccFake) {
482 fHistPtITSMIge2InAccFake=(TH1F*)fHistPtITSMI6InAccFake->Clone("fHistPtITSMIge2InAccFake");
483 fHistPtITSMIge2InAccFake->Add(fHistPtITSMI5InAccFake);
484 fHistPtITSMIge2InAccFake->Add(fHistPtITSMI4InAccFake);
485 fHistPtITSMIge2InAccFake->Add(fHistPtITSMI3InAccFake);
486 fHistPtITSMIge2InAccFake->Add(fHistPtITSMI2InAccFake);
487 }
fa516524 488 TH1F *fHistPtITSMIge2InAccP = (TH1F*)fHistPtITSMI6InAccP->Clone("fHistPtITSMIge2InAccP");
489 fHistPtITSMIge2InAccP->Add(fHistPtITSMI5InAccP);
490 fHistPtITSMIge2InAccP->Add(fHistPtITSMI4InAccP);
491 fHistPtITSMIge2InAccP->Add(fHistPtITSMI3InAccP);
492 fHistPtITSMIge2InAccP->Add(fHistPtITSMI2InAccP);
493 TH1F *fHistPtITSMIge2InAccS = (TH1F*)fHistPtITSMI6InAccS->Clone("fHistPtITSMIge2InAccS");
494 fHistPtITSMIge2InAccS->Add(fHistPtITSMI5InAccS);
495 fHistPtITSMIge2InAccS->Add(fHistPtITSMI4InAccS);
496 fHistPtITSMIge2InAccS->Add(fHistPtITSMI3InAccS);
497 fHistPtITSMIge2InAccS->Add(fHistPtITSMI2InAccS);
498
af874c53 499 // fake fraction
500 if(fHistPtITSMIge2InAccFake) {
501 fHistPtITSMIge2InAccFake->Divide(fHistPtITSMIge2InAccFake,fHistPtITSMIge2InAcc,1,1,"B");
502 fHistPtITSMI2InAccFake->Divide(fHistPtITSMI2InAccFake,fHistPtITSMI2InAcc,1,1,"B");
503 fHistPtITSMI3InAccFake->Divide(fHistPtITSMI3InAccFake,fHistPtITSMI3InAcc,1,1,"B");
504 fHistPtITSMI4InAccFake->Divide(fHistPtITSMI4InAccFake,fHistPtITSMI4InAcc,1,1,"B");
505 fHistPtITSMI5InAccFake->Divide(fHistPtITSMI5InAccFake,fHistPtITSMI5InAcc,1,1,"B");
506 fHistPtITSMI6InAccFake->Divide(fHistPtITSMI6InAccFake,fHistPtITSMI6InAcc,1,1,"B");
507 fHistPtITSMISPDInAccFake->Divide(fHistPtITSMISPDInAccFake,fHistPtITSMISPDInAcc,1,1,"B");
508 fHistPtITSMIoneSPDInAccFake->Divide(fHistPtITSMIoneSPDInAccFake,fHistPtITSMIoneSPDInAcc,1,1,"B");
509 if (fHistPtITSTPCselFake)fHistPtITSTPCselFake->Divide(fHistPtITSTPCselFake,fHistPtITSTPCsel,1,1,"B");
510 }
511
fa516524 512 TH1F* fHistPtITSMISPDInAccMC=(TH1F*)fHistPtITSMISPDInAcc->Clone("fHistPtITSMISPDInAccMC");
513 TH1F* fHistPtITSMIoneSPDInAccMC=(TH1F*)fHistPtITSMIoneSPDInAcc->Clone("fHistPtITSMIoneSPDInAccMC");
514
c2893e82 515
2308c814 516 TLegend *l1=new TLegend(0.5,0.5,0.9,0.9);
517 TLegend *l2=new TLegend(0.5,0.5,0.9,0.9);
518
519 TCanvas *c1= new TCanvas("c1","c1",10,10,600,500);
520 fHistNclsITSSA->SetMinimum(0);
521 fHistNclsITSSA->SetLineColor(1);
522 l1->AddEntry(fHistNclsITSSA,"ITS-SA","l");
523 fHistNclsITSSA->Draw();
524 fHistNclsITSSAInAcc->SetLineColor(4);
525 l1->AddEntry(fHistNclsITSSAInAcc,"ITS-SA in acc.","l");
526 fHistNclsITSSAInAcc->Draw("same");
527 fHistNclsITSMI->SetLineColor(2);
528 l1->AddEntry(fHistNclsITSMI,"ITS from TPC","l");
529 fHistNclsITSMI->Draw("same");
530 l1->Draw();
531
532
533 TCanvas *c2 =new TCanvas("c2","c2",10,10,1200,800);
534 c2->Divide(3,2);
535 c2->cd(1);
536 //
537 fHistClusterMapITSSAokoutinzbad->SetLineColor(1);
538 fHistClusterMapITSSAokoutinzbad->SetMarkerColor(1);
539 fHistClusterMapITSSAokoutinzbad->SetMarkerStyle(20);
540 fHistClusterMapITSSAokoutinzbad->Draw();
c2893e82 541 fHistClusterMapITSMIokoutinzbad->SetLineColor(2);
542 fHistClusterMapITSMIokoutinzbad->SetMarkerColor(2);
2308c814 543 fHistClusterMapITSMIokoutinzbad->SetMarkerStyle(20);
544 fHistClusterMapITSMIokoutinzbad->Draw("same");
545 l1->Draw();
546 //
547 c2->cd(2);
548 fHistClusterMapITSSAok->SetLineColor(1);
549 fHistClusterMapITSSAok->SetMarkerColor(1);
550 fHistClusterMapITSSAok->SetMarkerStyle(21);
551 fHistClusterMapITSSAok->Draw();
552 fHistClusterMapITSMIok->SetLineColor(2);
553 fHistClusterMapITSMIok->SetMarkerColor(2);
554 fHistClusterMapITSMIok->SetMarkerStyle(21);
555 fHistClusterMapITSMIok->Draw("same");
556 //
557 c2->cd(3);
558 fHistClusterMapITSSAoutinz->SetLineColor(1);
559 fHistClusterMapITSSAoutinz->SetMarkerColor(1);
560 fHistClusterMapITSSAoutinz->SetMarkerStyle(22);
561 fHistClusterMapITSSAoutinz->Draw();
562 fHistClusterMapITSMIoutinz->SetLineColor(2);
563 fHistClusterMapITSMIoutinz->SetMarkerColor(2);
564 fHistClusterMapITSMIoutinz->SetMarkerStyle(22);
565 fHistClusterMapITSMIoutinz->Draw("same");
566 //
567 c2->cd(4);
568 fHistClusterMapITSSAbad->SetLineColor(1);
569 fHistClusterMapITSSAbad->SetMarkerColor(1);
570 fHistClusterMapITSSAbad->SetMarkerStyle(23);
571 fHistClusterMapITSSAbad->Draw();
572 fHistClusterMapITSMIbad->SetLineColor(2);
573 fHistClusterMapITSMIbad->SetMarkerColor(2);
574 fHistClusterMapITSMIbad->SetMarkerStyle(23);
575 fHistClusterMapITSMIbad->Draw("same");
576 //
577 c2->cd(5);
578 fHistClusterMapITSSAnocls->SetLineColor(1);
579 fHistClusterMapITSSAnocls->SetMarkerColor(1);
580 fHistClusterMapITSSAnocls->SetMarkerStyle(24);
581 fHistClusterMapITSSAnocls->Draw();
582 fHistClusterMapITSMInocls->SetLineColor(2);
583 fHistClusterMapITSMInocls->SetMarkerColor(2);
584 fHistClusterMapITSMInocls->SetMarkerStyle(24);
585 fHistClusterMapITSMInocls->Draw("same");
586
fa516524 587 TCanvas *c3 =new TCanvas("c3","c3",10,10,1200,800);
588 c3->Divide(1,2);
589 c3->cd(1);
590 fHistClusterMapModuleITSMIokInAcc->SetLineColor(1);
591 fHistClusterMapModuleITSMIokInAcc->Draw();
592 l2->AddEntry(fHistClusterMapModuleITSMIokInAcc,"ok","l");
593 fHistClusterMapModuleITSMIbadInAcc->SetLineColor(3);
594 fHistClusterMapModuleITSMIbadInAcc->Draw("same");
595 l2->AddEntry(fHistClusterMapModuleITSMIbadInAcc,"bad","l");
596 fHistClusterMapModuleITSMInoclsInAcc->SetLineColor(2);
597 fHistClusterMapModuleITSMInoclsInAcc->Draw("same");
598 l2->AddEntry(fHistClusterMapModuleITSMInoclsInAcc,"no cls","l");
2308c814 599 l2->Draw();
fa516524 600 c3->cd(2);
601 TH1F *fHistClusterMapModuleITSMIallInAcc=(TH1F*)fHistClusterMapModuleITSMIokInAcc->Clone("fHistClusterMapModuleITSMIallInAcc");
602 fHistClusterMapModuleITSMIallInAcc->Add(fHistClusterMapModuleITSMIbadInAcc);
603 fHistClusterMapModuleITSMIallInAcc->Add(fHistClusterMapModuleITSMInoclsInAcc);
604 TH1F *fHistClusterMapModuleITSMIokRatioInAcc=(TH1F*)fHistClusterMapModuleITSMIokInAcc->Clone("fHistClusterMapModuleITSMIokRatioInAcc");
605 fHistClusterMapModuleITSMIokRatioInAcc->Divide(fHistClusterMapModuleITSMIallInAcc);
606 for(Int_t ib=1;ib<=fHistClusterMapModuleITSMIokRatioInAcc->GetNbinsX();ib++) {
607 fHistClusterMapModuleITSMIokRatioInAcc->SetBinError(ib,0);
608 if(fHistClusterMapModuleITSMIallInAcc->GetBinContent(ib)) fHistClusterMapModuleITSMIokRatioInAcc->SetBinError(ib,TMath::Sqrt(fHistClusterMapModuleITSMIokRatioInAcc->GetBinContent(ib)*(1.-fHistClusterMapModuleITSMIokRatioInAcc->GetBinContent(ib))/fHistClusterMapModuleITSMIallInAcc->GetBinContent(ib)));
609 }
610 fHistClusterMapModuleITSMIokRatioInAcc->Draw();
611 TH1F *fHistClusterMapModuleITSMIbadRatioInAcc=(TH1F*)fHistClusterMapModuleITSMIbadInAcc->Clone("fHistClusterMapModuleITSMIbadRatioInAcc");
612 fHistClusterMapModuleITSMIbadRatioInAcc->Divide(fHistClusterMapModuleITSMIallInAcc);
613 for(Int_t ib=1;ib<=fHistClusterMapModuleITSMIokRatioInAcc->GetNbinsX();ib++) {
614 fHistClusterMapModuleITSMIbadRatioInAcc->SetBinError(ib,0);
615 if(fHistClusterMapModuleITSMIallInAcc->GetBinContent(ib)) fHistClusterMapModuleITSMIbadRatioInAcc->SetBinError(ib,TMath::Sqrt(fHistClusterMapModuleITSMIbadRatioInAcc->GetBinContent(ib)*(1.-fHistClusterMapModuleITSMIbadRatioInAcc->GetBinContent(ib))/fHistClusterMapModuleITSMIallInAcc->GetBinContent(ib)));
616 }
617 fHistClusterMapModuleITSMIbadRatioInAcc->Draw("same");
618 TH1F *fHistClusterMapModuleITSMInoclsRatioInAcc=(TH1F*)fHistClusterMapModuleITSMInoclsInAcc->Clone("fHistClusterMapModuleITSMInoclsRatioInAcc");
619 fHistClusterMapModuleITSMInoclsRatioInAcc->Divide(fHistClusterMapModuleITSMIallInAcc);
620 for(Int_t ib=1;ib<=fHistClusterMapModuleITSMIokRatioInAcc->GetNbinsX();ib++) {
621 fHistClusterMapModuleITSMInoclsRatioInAcc->SetBinError(ib,0);
622 if(fHistClusterMapModuleITSMIallInAcc->GetBinContent(ib)) fHistClusterMapModuleITSMInoclsRatioInAcc->SetBinError(ib,TMath::Sqrt(fHistClusterMapModuleITSMInoclsRatioInAcc->GetBinContent(ib)*(1.-fHistClusterMapModuleITSMInoclsRatioInAcc->GetBinContent(ib))/fHistClusterMapModuleITSMIallInAcc->GetBinContent(ib)));
623 }
624 fHistClusterMapModuleITSMInoclsRatioInAcc->Draw("same");
2308c814 625
fa516524 626 TCanvas *c3b = new TCanvas("c3b","c3b");
627 c3b->Divide(2,1);
628 c3b->cd(1);
629 fHistxlocSDDok->Divide(fHistxlocSDDall);
630 fHistxlocSDDok->Draw();
631 c3b->cd(2);
632 fHistzlocSDDok->Divide(fHistzlocSDDall);
633 fHistzlocSDDok->Draw();
2308c814 634
6eb43d54 635 TCanvas *c4 =new TCanvas("c4","c4",10,10,1000,500);
636 TLegend *l4a=new TLegend(0.5,0.5,0.9,0.9);
637 c4->Divide(2,1);
638 c4->cd(1);
639 c4_1->SetGridy();
640 fHistPhiITSMI6InAcc->SetTitle("Fraction of prolonged tracks with N ITS points");
641 fHistPhiITSMI6InAcc->SetYTitle("ITS+TPC / TPC");
642 fHistPhiITSMI6InAcc->Divide(fHistPhiITSMI6InAcc,fHistPhiTPCInAcc,1,1,"B");
643 fHistPhiITSMI6InAcc->SetLineColor(2);
644 l4a->AddEntry(fHistPhiITSMI6InAcc,"6 cls","l");
645 fHistPhiITSMI6InAcc->SetMaximum(1.5);
646 fHistPhiITSMI6InAcc->SetMinimum(0);
647 fHistPhiITSMI6InAcc->Draw();
648 fHistPhiITSMI5InAcc->Divide(fHistPhiITSMI5InAcc,fHistPhiTPCInAcc,1,1,"B");
649 fHistPhiITSMI5InAcc->SetLineColor(3);
650 //l4a->AddEntry(fHistPhiITSMI5InAcc,"5 cls","l");
651 //fHistPhiITSMI5InAcc->Draw("same");
652 fHistPhiITSMI4InAcc->Divide(fHistPhiITSMI4InAcc,fHistPhiTPCInAcc,1,1,"B");
653 fHistPhiITSMI4InAcc->SetLineColor(4);
654 //l4a->AddEntry(fHistPhiITSMI4InAcc,"4 cls","l");
655 //fHistPhiITSMI4InAcc->Draw("same");
656 fHistPhiITSMI3InAcc->Divide(fHistPhiITSMI3InAcc,fHistPhiTPCInAcc,1,1,"B");
657 fHistPhiITSMI3InAcc->SetLineColor(6);
658 //l4a->AddEntry(fHistPhiITSMI3InAcc,"3 cls","l");
659 //fHistPhiITSMI3InAcc->Draw("same");
660 fHistPhiITSMI2InAcc->Divide(fHistPhiITSMI2InAcc,fHistPhiTPCInAcc,1,1,"B");
661 fHistPhiITSMI2InAcc->SetLineColor(7);
662 //l4a->AddEntry(fHistPhiITSMI2InAcc,"2 cls","l");
663 //fHistPhiITSMI2InAcc->Draw("same");
664 fHistPhiITSMISPDInAcc->Divide(fHistPhiITSMISPDInAcc,fHistPhiTPCInAcc,1,1,"B");
665 fHistPhiITSMISPDInAcc->SetLineColor(9);
666 l4a->AddEntry(fHistPhiITSMISPDInAcc,"2SPD + any","l");
667 fHistPhiITSMISPDInAcc->Draw("same");
668 fHistPhiITSMIoneSPDInAcc->Divide(fHistPhiITSMIoneSPDInAcc,fHistPhiTPCInAcc,1,1,"B");
669 fHistPhiITSMIoneSPDInAcc->SetLineColor(15);
670 l4a->AddEntry(fHistPhiITSMIoneSPDInAcc,">=1SPD + any","l");
671 fHistPhiITSMIoneSPDInAcc->Draw("same");
672 l4a->Draw();
673 c4->cd(2);
674 c4_2->SetGridy();
675 fHistEtaITSMI6InAcc->SetTitle("Fraction of prolonged tracks with N ITS points");
676 fHistEtaITSMI6InAcc->SetYTitle("ITS+TPC / TPC");
677 fHistEtaITSMI6InAcc->Divide(fHistEtaITSMI6InAcc,fHistEtaTPCInAcc,1,1,"B");
678 fHistEtaITSMI6InAcc->SetLineColor(2);
679 fHistEtaITSMI6InAcc->SetMaximum(1.5);
680 fHistEtaITSMI6InAcc->SetMinimum(0);
681 fHistEtaITSMI6InAcc->Draw();
682 fHistEtaITSMI5InAcc->Divide(fHistEtaITSMI5InAcc,fHistEtaTPCInAcc,1,1,"B");
683 fHistEtaITSMI5InAcc->SetLineColor(3);
684 //fHistEtaITSMI5InAcc->Draw("same");
685 fHistEtaITSMI4InAcc->Divide(fHistEtaITSMI4InAcc,fHistEtaTPCInAcc,1,1,"B");
686 fHistEtaITSMI4InAcc->SetLineColor(4);
687 //fHistEtaITSMI4InAcc->Draw("same");
688 fHistEtaITSMI3InAcc->Divide(fHistEtaITSMI3InAcc,fHistEtaTPCInAcc,1,1,"B");
689 fHistEtaITSMI3InAcc->SetLineColor(6);
690 //fHistEtaITSMI3InAcc->Draw("same");
691 fHistEtaITSMI2InAcc->Divide(fHistEtaITSMI2InAcc,fHistEtaTPCInAcc,1,1,"B");
692 fHistEtaITSMI2InAcc->SetLineColor(7);
693 //fHistEtaITSMI2InAcc->Draw("same");
694 fHistEtaITSMISPDInAcc->Divide(fHistEtaITSMISPDInAcc,fHistEtaTPCInAcc,1,1,"B");
695 fHistEtaITSMISPDInAcc->SetLineColor(9);
696 fHistEtaITSMISPDInAcc->Draw("same");
697 fHistEtaITSMIoneSPDInAcc->Divide(fHistEtaITSMIoneSPDInAcc,fHistEtaTPCInAcc,1,1,"B");
698 fHistEtaITSMIoneSPDInAcc->SetLineColor(15);
699 fHistEtaITSMIoneSPDInAcc->Draw("same");
700 l4a->Draw();
c2893e82 701
fa516524 702 TCanvas *c5c =new TCanvas("c5c","c5c",10,10,600,600);
703 c5c->SetGridy();
704 TH1F *fHistPtTPCInAccSecFrac = (TH1F*)fHistPtTPCInAccS->Clone("fHistPtTPCInAccSecFrac");
705 fHistPtTPCInAccSecFrac->Divide(fHistPtTPCInAcc);
706 fHistPtTPCInAccSecFrac->SetLineColor(kOrange+7);
707 fHistPtTPCInAccSecFrac->SetTitle("Fraction of secondaries");
708 fHistPtTPCInAccSecFrac->SetYTitle("sec/all");
709 fHistPtTPCInAccSecFrac->Draw();
710 TH1F *fHistPtITSMI2InAccSecFrac = (TH1F*)fHistPtITSMI2InAccS->Clone("fHistPtITSMI2InAccSecFrac");
711 fHistPtITSMI2InAccSecFrac->Divide(fHistPtITSMI2InAcc);
712 fHistPtITSMI2InAccSecFrac->SetLineColor(7);
713 fHistPtITSMI2InAccSecFrac->Draw("same");
714 TH1F *fHistPtITSMIge2InAccSecFrac = (TH1F*)fHistPtITSMIge2InAccS->Clone("fHistPtITSMIge2InAccSecFrac");
715 fHistPtITSMIge2InAccSecFrac->Divide(fHistPtITSMIge2InAcc);
716 fHistPtITSMIge2InAccSecFrac->Draw("same");
717 TH1F *fHistPtITSMI3InAccSecFrac = (TH1F*)fHistPtITSMI3InAccS->Clone("fHistPtITSMI3InAccSecFrac");
718 fHistPtITSMI3InAccSecFrac->Divide(fHistPtITSMI3InAcc);
719 fHistPtITSMI3InAccSecFrac->SetLineColor(6);
720 fHistPtITSMI3InAccSecFrac->Draw("same");
721 TH1F *fHistPtITSMI4InAccSecFrac = (TH1F*)fHistPtITSMI4InAccS->Clone("fHistPtITSMI4InAccSecFrac");
722 fHistPtITSMI4InAccSecFrac->Divide(fHistPtITSMI4InAcc);
723 fHistPtITSMI4InAccSecFrac->SetLineColor(4);
724 fHistPtITSMI4InAccSecFrac->Draw("same");
725 TH1F *fHistPtITSMI5InAccSecFrac = (TH1F*)fHistPtITSMI5InAccS->Clone("fHistPtITSMI5InAccSecFrac");
726 fHistPtITSMI5InAccSecFrac->Divide(fHistPtITSMI5InAcc);
727 fHistPtITSMI5InAccSecFrac->SetLineColor(3);
728 fHistPtITSMI5InAccSecFrac->Draw("same");
729 TH1F *fHistPtITSMI6InAccSecFrac = (TH1F*)fHistPtITSMI6InAccS->Clone("fHistPtITSMI6InAccSecFrac");
730 fHistPtITSMI6InAccSecFrac->Divide(fHistPtITSMI6InAcc);
731 fHistPtITSMI6InAccSecFrac->SetLineColor(2);
732 fHistPtITSMI6InAccSecFrac->SetLineColor(2);
733 fHistPtITSMI6InAccSecFrac->Draw("same");
734 TH1F *fHistPtITSMISPDInAccSecFrac = (TH1F*)fHistPtITSMISPDInAccS->Clone("fHistPtITSMISPDInAccSecFrac");
735 fHistPtITSMISPDInAccSecFrac->Divide(fHistPtITSMISPDInAcc);
736 fHistPtITSMISPDInAccSecFrac->SetLineColor(9);
737 fHistPtITSMISPDInAccSecFrac->Draw("same");
738 TH1F *fHistPtITSMIoneSPDInAccSecFrac = (TH1F*)fHistPtITSMIoneSPDInAccS->Clone("fHistPtITSMIoneSPDInAccSecFrac");
739 fHistPtITSMIoneSPDInAccSecFrac->Divide(fHistPtITSMIoneSPDInAcc);
740 fHistPtITSMIoneSPDInAccSecFrac->SetLineColor(15);
741 fHistPtITSMIoneSPDInAccSecFrac->Draw("same");
742 TH1F *fHistPtITSTPCselSecFrac = (TH1F*)fHistPtITSTPCselS->Clone("fHistPtITSTPCselSecFrac");
743 fHistPtITSTPCselSecFrac->Divide(fHistPtITSTPCsel);
744 fHistPtITSTPCselSecFrac->SetLineColor(15);
745 fHistPtITSTPCselSecFrac->Draw("same");
746
747
c2893e82 748 TLegend *l3=new TLegend(0.5,0.5,0.9,0.9);
749 TLegend *l4=new TLegend(0.5,0.5,0.9,0.9);
750 TCanvas *c5 =new TCanvas("c5","c5",10,10,1200,600);
751 c5->Divide(2,1);
752 c5_1->SetGridy();
753 c5_2->SetGridy();
8fa56655 754 c5_1->SetLogx();
755 c5_2->SetLogx();
c2893e82 756 c5->cd(1);
c2893e82 757 fHistPtITSMIge2InAcc->SetMaximum(1.5);
758 fHistPtITSMIge2InAcc->SetMinimum(0);
759 fHistPtITSMIge2InAcc->SetTitle("Fraction of prolonged tracks with N ITS points");
760 fHistPtITSMIge2InAcc->SetYTitle("ITS+TPC / TPC");
8fa56655 761 fHistPtITSMIge2InAcc->Divide(fHistPtITSMIge2InAcc,fHistPtTPCInAcc,1,1,"B");
c2893e82 762 fHistPtITSMIge2InAcc->Draw();
763 l3->AddEntry(fHistPtITSMIge2InAcc,">=2 cls","l");
8fa56655 764 fHistPtITSMI6InAcc->Divide(fHistPtITSMI6InAcc,fHistPtTPCInAcc,1,1,"B");
c2893e82 765 fHistPtITSMI6InAcc->SetLineColor(2);
766 l3->AddEntry(fHistPtITSMI6InAcc,"6 cls","l");
767 fHistPtITSMI6InAcc->Draw("same");
8fa56655 768 fHistPtITSMI5InAcc->Divide(fHistPtITSMI5InAcc,fHistPtTPCInAcc,1,1,"B");
c2893e82 769 fHistPtITSMI5InAcc->SetLineColor(3);
770 l3->AddEntry(fHistPtITSMI5InAcc,"5 cls","l");
771 fHistPtITSMI5InAcc->Draw("same");
8fa56655 772 fHistPtITSMI4InAcc->Divide(fHistPtITSMI4InAcc,fHistPtTPCInAcc,1,1,"B");
c2893e82 773 fHistPtITSMI4InAcc->SetLineColor(4);
774 l3->AddEntry(fHistPtITSMI4InAcc,"4 cls","l");
775 fHistPtITSMI4InAcc->Draw("same");
8fa56655 776 fHistPtITSMI3InAcc->Divide(fHistPtITSMI3InAcc,fHistPtTPCInAcc,1,1,"B");
c2893e82 777 fHistPtITSMI3InAcc->SetLineColor(6);
778 l3->AddEntry(fHistPtITSMI3InAcc,"3 cls","l");
779 fHistPtITSMI3InAcc->Draw("same");
8fa56655 780 fHistPtITSMI2InAcc->Divide(fHistPtITSMI2InAcc,fHistPtTPCInAcc,1,1,"B");
c2893e82 781 fHistPtITSMI2InAcc->SetLineColor(7);
782 l3->AddEntry(fHistPtITSMI2InAcc,"2 cls","l");
783 fHistPtITSMI2InAcc->Draw("same");
8fa56655 784 fHistPtITSMISPDInAcc->Divide(fHistPtITSMISPDInAcc,fHistPtTPCInAcc,1,1,"B");
c2893e82 785 fHistPtITSMISPDInAcc->SetLineColor(9);
786 l3->AddEntry(fHistPtITSMISPDInAcc,"2SPD + any","l");
787 fHistPtITSMISPDInAcc->Draw("same");
8fa56655 788 fHistPtITSMIoneSPDInAcc->Divide(fHistPtITSMIoneSPDInAcc,fHistPtTPCInAcc,1,1,"B");
fa516524 789 fHistPtITSMIoneSPDInAcc->SetLineColor(15);
790 l3->AddEntry(fHistPtITSMIoneSPDInAcc,">=1SPD + any","l");
791 fHistPtITSMIoneSPDInAcc->Draw("same");
8fa56655 792 //fHistPtITSMIoneSPDthreeSDDSSDInAcc->Divide(fHistPtITSMIoneSPDthreeSDDSSDInAcc,fHistPtTPCInAcc,1,1,"B");
793 //fHistPtITSMIoneSPDthreeSDDSSDInAcc->SetLineColor(kOrange);
794 //l3->AddEntry(fHistPtITSMIoneSPDthreeSDDSSDInAcc,">=1SPD + >=3SDDSSD","l");
795 //fHistPtITSMIoneSPDthreeSDDSSDInAcc->Draw("same");
796 fHistPtITSTPCsel->Divide(fHistPtITSTPCsel,fHistPtTPCInAcc,1,1,"B");
fa516524 797 fHistPtITSTPCsel->SetLineColor(kAzure+1);
798 l3->AddEntry(fHistPtITSTPCsel,">=1SPD + any + d_{0} cut","l");
799 fHistPtITSTPCsel->Draw("same");
c2893e82 800 fHistPtITSMIge2InAcc->Draw("same");
801 l3->Draw();
b51e971f 802 if(ioValues) {
803 Int_t index,ptbin;
804 ptbin=fHistPtITSMIge2InAcc->FindBin(0.201);
805 index=2;
806 ioValues[index]=fHistPtITSMIge2InAcc->GetBinContent(ptbin);
807 ioErrors[index]=fHistPtITSMIge2InAcc->GetBinError(ptbin);
808 ptbin=fHistPtITSMIge2InAcc->FindBin(1.001);
809 index=3;
810 ioValues[index]=fHistPtITSMIge2InAcc->GetBinContent(ptbin);
811 ioErrors[index]=fHistPtITSMIge2InAcc->GetBinError(ptbin);
812 ptbin=fHistPtITSMIge2InAcc->FindBin(10.001);
813 index=4;
814 ioValues[index]=fHistPtITSMIge2InAcc->GetBinContent(ptbin);
815 ioErrors[index]=fHistPtITSMIge2InAcc->GetBinError(ptbin);
816 ptbin=fHistPtITSMI6InAcc->FindBin(0.201);
817 index=5;
818 ioValues[index]=fHistPtITSMI6InAcc->GetBinContent(ptbin);
819 ioErrors[index]=fHistPtITSMI6InAcc->GetBinError(ptbin);
820 ptbin=fHistPtITSMI6InAcc->FindBin(1.001);
821 index=6;
822 ioValues[index]=fHistPtITSMI6InAcc->GetBinContent(ptbin);
823 ioErrors[index]=fHistPtITSMI6InAcc->GetBinError(ptbin);
824 ptbin=fHistPtITSMI6InAcc->FindBin(10.001);
825 index=7;
826 ioValues[index]=fHistPtITSMI6InAcc->GetBinContent(ptbin);
827 ioErrors[index]=fHistPtITSMI6InAcc->GetBinError(ptbin);
828 ptbin=fHistPtITSMISPDInAcc->FindBin(0.201);
829 index=8;
830 ioValues[index]=fHistPtITSMISPDInAcc->GetBinContent(ptbin);
831 ioErrors[index]=fHistPtITSMISPDInAcc->GetBinError(ptbin);
832 ptbin=fHistPtITSMISPDInAcc->FindBin(1.001);
833 index=9;
834 ioValues[index]=fHistPtITSMISPDInAcc->GetBinContent(ptbin);
835 ioErrors[index]=fHistPtITSMISPDInAcc->GetBinError(ptbin);
836 ptbin=fHistPtITSMISPDInAcc->FindBin(10.001);
837 index=10;
838 ioValues[index]=fHistPtITSMISPDInAcc->GetBinContent(ptbin);
839 ioErrors[index]=fHistPtITSMISPDInAcc->GetBinError(ptbin);
840 ptbin=fHistPtITSMIoneSPDInAcc->FindBin(0.201);
841 index=11;
842 ioValues[index]=fHistPtITSMIoneSPDInAcc->GetBinContent(ptbin);
843 ioErrors[index]=fHistPtITSMIoneSPDInAcc->GetBinError(ptbin);
844 ptbin=fHistPtITSMIoneSPDInAcc->FindBin(1.001);
845 index=12;
846 ioValues[index]=fHistPtITSMIoneSPDInAcc->GetBinContent(ptbin);
847 ioErrors[index]=fHistPtITSMIoneSPDInAcc->GetBinError(ptbin);
848 ptbin=fHistPtITSMIoneSPDInAcc->FindBin(10.001);
849 index=13;
850 ioValues[index]=fHistPtITSMIoneSPDInAcc->GetBinContent(ptbin);
851 ioErrors[index]=fHistPtITSMIoneSPDInAcc->GetBinError(ptbin);
852 }
c2893e82 853 c5->cd(2);
854 TH1F *fHistPtITSMIokbadoutinzge4InAcc = (TH1F*)fHistPtITSMIokbadoutinz6InAcc->Clone("fHistPtITSMIokbadoutinzge4InAcc");
855 fHistPtITSMIokbadoutinzge4InAcc->Add(fHistPtITSMIokbadoutinz5InAcc);
856 fHistPtITSMIokbadoutinzge4InAcc->Add(fHistPtITSMIokbadoutinz4InAcc);
857 fHistPtITSMIokbadoutinzge4InAcc->SetMaximum(1.5);
858 fHistPtITSMIokbadoutinzge4InAcc->SetMinimum(0);
859 fHistPtITSMIokbadoutinzge4InAcc->SetTitle("Fraction of prolonged tracks with N ITS layers \"ok\"");
860 fHistPtITSMIokbadoutinzge4InAcc->SetYTitle("ITS+TPC / TPC");
8fa56655 861 fHistPtITSMIokbadoutinzge4InAcc->Divide(fHistPtITSMIokbadoutinzge4InAcc,fHistPtTPCInAcc,1,1,"B");
c2893e82 862 fHistPtITSMIokbadoutinzge4InAcc->SetLineColor(1);
863 fHistPtITSMIokbadoutinzge4InAcc->Draw();
8fa56655 864 fHistPtITSMIokbadoutinz6InAcc->Divide(fHistPtITSMIokbadoutinz6InAcc,fHistPtTPCInAcc,1,1,"B");
c2893e82 865 fHistPtITSMIokbadoutinz6InAcc->SetLineColor(2);
866 fHistPtITSMIokbadoutinz6InAcc->Draw("same");
8fa56655 867 fHistPtITSMIokbadoutinz5InAcc->Divide(fHistPtITSMIokbadoutinz5InAcc,fHistPtTPCInAcc,1,1,"B");
c2893e82 868 fHistPtITSMIokbadoutinz5InAcc->SetLineColor(3);
869 fHistPtITSMIokbadoutinz5InAcc->Draw("same");
8fa56655 870 fHistPtITSMIokbadoutinz4InAcc->Divide(fHistPtITSMIokbadoutinz4InAcc,fHistPtTPCInAcc,1,1,"B");
c2893e82 871 fHistPtITSMIokbadoutinz4InAcc->SetLineColor(4);
872 fHistPtITSMIokbadoutinz4InAcc->Draw("same");
873 fHistPtITSMIokbadoutinzge4InAcc->Draw("same");
874 l4->AddEntry(fHistPtITSMIokbadoutinzge4InAcc,">=4 layers","l");
875 l4->AddEntry(fHistPtITSMIokbadoutinz6InAcc,"6 layers","l");
876 l4->AddEntry(fHistPtITSMIokbadoutinz5InAcc,"5 layers","l");
877 l4->AddEntry(fHistPtITSMIokbadoutinz4InAcc,"4 layers","l");
878 l4->Draw();
879
af874c53 880 if(fHistPtITSMIge2InAccFake) {
881 TCanvas *c5f =new TCanvas("c5f","c5f",10,10,600,600);
882 c5f->SetGridy();
883 c5f->SetLogx();
884 fHistPtITSMIge2InAccFake->SetMaximum(1.5);
885 fHistPtITSMIge2InAccFake->SetMinimum(0);
886 fHistPtITSMIge2InAccFake->SetTitle("Fraction of fake tracks with N ITS points");
887 fHistPtITSMIge2InAccFake->SetYTitle("Fraction of fakes");
888 fHistPtITSMIge2InAccFake->Draw();
889 fHistPtITSMI6InAccFake->SetLineColor(2);
890 fHistPtITSMI6InAccFake->Draw("same");
891 fHistPtITSMI5InAccFake->SetLineColor(3);
892 //fHistPtITSMI5InAccFake->Draw("same");
893 fHistPtITSMI4InAccFake->SetLineColor(4);
894 //fHistPtITSMI4InAccFake->Draw("same");
895 fHistPtITSMI3InAccFake->SetLineColor(6);
896 //fHistPtITSMI3InAccFake->Draw("same");
897 fHistPtITSMI2InAccFake->SetLineColor(7);
898 //fHistPtITSMI2InAccFake->Draw("same");
899 fHistPtITSMISPDInAccFake->SetLineColor(9);
900 fHistPtITSMISPDInAccFake->Draw("same");
901 fHistPtITSMIoneSPDInAccFake->SetLineColor(15);
902 fHistPtITSMIoneSPDInAccFake->Draw("same");
903 if(fHistPtITSTPCselFake) {
904 fHistPtITSTPCselFake->SetLineColor(kAzure+1);
905 fHistPtITSTPCselFake->Draw("same");
906 }
907 fHistPtITSMIge2InAccFake->Draw("same");
908 l3->Draw();
909 }
910
c2893e82 911
fa516524 912 TLegend *l4d=new TLegend(0.5,0.5,0.9,0.9);
913 TCanvas *c5d =new TCanvas("c5d","c5d",10,10,600,600);
914 c5d->SetGridy();
915 c5d->SetGridy();
916 fHistPtITSMISPDInAccMC->SetMaximum(1.5);
917 fHistPtITSMISPDInAccMC->SetMinimum(0);
918 fHistPtITSMISPDInAccMC->SetTitle("Fraction of prolonged tracks with N ITS points");
919 fHistPtITSMISPDInAccMC->SetYTitle("ITS+TPC / TPC");
8fa56655 920 fHistPtITSMISPDInAccMC->Divide(fHistPtITSMISPDInAccMC,fHistPtTPCInAccMCtwoSPD,1,1,"B");
fa516524 921 fHistPtITSMISPDInAccMC->SetLineColor(9);
922 l4d->AddEntry(fHistPtITSMISPDInAccMC,"2SPD + any","l");
923 fHistPtITSMISPDInAccMC->Draw();
8fa56655 924 fHistPtITSMIoneSPDInAccMC->Divide(fHistPtITSMIoneSPDInAccMC,fHistPtTPCInAccMConeSPD,1,1,"B");
fa516524 925 fHistPtITSMIoneSPDInAccMC->SetLineColor(15);
926 l4d->AddEntry(fHistPtITSMIoneSPDInAccMC,">=1SPD + any","l");
927 fHistPtITSMIoneSPDInAccMC->Draw("same");
928 l4d->Draw();
929
930 TFile *eff=new TFile("eff.root","recreate");
931 fHistPtITSMIge2InAcc->Write();
932 fHistPtITSMI6InAcc->Write();
933 fHistPtITSMI5InAcc->Write();
934 fHistPtITSMI4InAcc->Write();
935 fHistPtITSMI3InAcc->Write();
936 fHistPtITSMI2InAcc->Write();
937 fHistPtITSMISPDInAcc->Write();
938 fHistPtITSMIoneSPDInAcc->Write();
8fa56655 939 //fHistPtITSMIoneSPDthreeSDDSSDInAcc->Write();
fa516524 940 fHistPtITSTPCsel->Write();
8fa56655 941 fHistNclsITSMI->Write();
fa516524 942 fHistClusterMapModuleITSMIokRatioInAcc->Write();
943 fHistClusterMapModuleITSMIbadRatioInAcc->Write();
944 fHistClusterMapModuleITSMInoclsRatioInAcc->Write();
945 eff->Close();
946
947 c5c->cd();
948 l3->Draw();
949
950
951 TCanvas *c5b =new TCanvas("c5b","c5b",10,10,600,600);
952 c5b->SetLogy();
953 fHistRProdVtxInAccP->SetLineColor(2);
954 fHistRProdVtxInAccP->SetMinimum(1);
955 fHistRProdVtxInAccS->SetMinimum(1);
956 fHistRProdVtxInAccP->Draw();
957 fHistRProdVtxInAccS->Draw("sames");
958
959 TCanvas *c5a =new TCanvas("c5a","c5a",10,10,1200,600);
960 c5a->Divide(2,1);
8fa56655 961 c5a_1->SetLogx();
962 c5a_2->SetLogx();
fa516524 963 c5a_1->SetGridy();
964 c5a_2->SetGridy();
965 c5a->cd(1);
966 fHistPtITSMIge2InAccP->SetMaximum(1.5);
967 fHistPtITSMIge2InAccP->SetMinimum(0);
968 fHistPtITSMIge2InAccP->SetTitle("Fraction of prolonged tracks with N ITS points");
969 fHistPtITSMIge2InAccP->SetYTitle("ITS+TPC / TPC");
970 fHistPtITSMIge2InAccP->Draw();
8fa56655 971 fHistPtITSMIge2InAccP->Divide(fHistPtITSMIge2InAccP,fHistPtTPCInAccP,1,1,"B");
972 fHistPtITSMI6InAccP->Divide(fHistPtITSMI6InAccP,fHistPtTPCInAccP,1,1,"B");
fa516524 973 fHistPtITSMI6InAccP->SetLineColor(2);
974 fHistPtITSMI6InAccP->Draw("same");
8fa56655 975 fHistPtITSMI5InAccP->Divide(fHistPtITSMI5InAccP,fHistPtTPCInAccP,1,1,"B");
fa516524 976 fHistPtITSMI5InAccP->SetLineColor(3);
977 fHistPtITSMI5InAccP->Draw("same");
8fa56655 978 fHistPtITSMI4InAccP->Divide(fHistPtITSMI4InAccP,fHistPtTPCInAccP,1,1,"B");
fa516524 979 fHistPtITSMI4InAccP->SetLineColor(4);
980 fHistPtITSMI4InAccP->Draw("same");
8fa56655 981 fHistPtITSMI3InAccP->Divide(fHistPtITSMI3InAccP,fHistPtTPCInAccP,1,1,"B");
fa516524 982 fHistPtITSMI3InAccP->SetLineColor(6);
983 fHistPtITSMI3InAccP->Draw("same");
8fa56655 984 fHistPtITSMI2InAccP->Divide(fHistPtITSMI2InAccP,fHistPtTPCInAccP,1,1,"B");
fa516524 985 fHistPtITSMI2InAccP->SetLineColor(7);
986 fHistPtITSMI2InAccP->Draw("same");
8fa56655 987 fHistPtITSMISPDInAccP->Divide(fHistPtITSMISPDInAccP,fHistPtTPCInAccP,1,1,"B");
fa516524 988 fHistPtITSMISPDInAccP->SetLineColor(9);
989 fHistPtITSMISPDInAccP->Draw("same");
8fa56655 990 fHistPtITSMIoneSPDInAccP->Divide(fHistPtITSMIoneSPDInAccP,fHistPtTPCInAccP,1,1,"B");
fa516524 991 fHistPtITSMIoneSPDInAccP->SetLineColor(15);
992 fHistPtITSMIoneSPDInAccP->Draw("same");
8fa56655 993 fHistPtITSTPCselP->Divide(fHistPtITSTPCselP,fHistPtTPCInAccP,1,1,"B");
fa516524 994 fHistPtITSTPCselP->SetLineColor(kAzure+1);
995 fHistPtITSTPCselP->Draw("same");
996 fHistPtITSMIge2InAccP->Draw("same");
997 l3->Draw();
998 c5a->cd(2);
999 fHistPtITSMIge2InAccS->SetMaximum(1.5);
1000 fHistPtITSMIge2InAccS->SetMinimum(0);
1001 fHistPtITSMIge2InAccS->SetTitle("Fraction of prolonged tracks with N ITS points");
1002 fHistPtITSMIge2InAccS->SetYTitle("ITS+TPC / TPC");
8fa56655 1003 fHistPtITSMIge2InAccS->Divide(fHistPtITSMIge2InAccS,fHistPtTPCInAccS,1,1,"B");
fa516524 1004 fHistPtITSMIge2InAccS->Draw();
8fa56655 1005 fHistPtITSMI6InAccS->Divide(fHistPtITSMI6InAccS,fHistPtTPCInAccS,1,1,"B");
fa516524 1006 fHistPtITSMI6InAccS->SetLineColor(2);
1007 fHistPtITSMI6InAccS->Draw("same");
8fa56655 1008 fHistPtITSMI5InAccS->Divide(fHistPtITSMI5InAccS,fHistPtTPCInAccS,1,1,"B");
fa516524 1009 fHistPtITSMI5InAccS->SetLineColor(3);
1010 fHistPtITSMI5InAccS->Draw("same");
8fa56655 1011 fHistPtITSMI4InAccS->Divide(fHistPtITSMI4InAccS,fHistPtTPCInAccS,1,1,"B");
fa516524 1012 fHistPtITSMI4InAccS->SetLineColor(4);
1013 fHistPtITSMI4InAccS->Draw("same");
8fa56655 1014 fHistPtITSMI3InAccS->Divide(fHistPtITSMI3InAccS,fHistPtTPCInAccS,1,1,"B");
fa516524 1015 fHistPtITSMI3InAccS->SetLineColor(6);
1016 fHistPtITSMI3InAccS->Draw("same");
8fa56655 1017 fHistPtITSMI2InAccS->Divide(fHistPtITSMI2InAccS,fHistPtTPCInAccS,1,1,"B");
fa516524 1018 fHistPtITSMI2InAccS->SetLineColor(7);
1019 fHistPtITSMI2InAccS->Draw("same");
8fa56655 1020 fHistPtITSMISPDInAccS->Divide(fHistPtITSMISPDInAccS,fHistPtTPCInAccS,1,1,"B");
fa516524 1021 fHistPtITSMISPDInAccS->SetLineColor(9);
1022 fHistPtITSMISPDInAccS->Draw("same");
8fa56655 1023 fHistPtITSMIoneSPDInAccS->Divide(fHistPtITSMIoneSPDInAccS,fHistPtTPCInAccS,1,1,"B");
fa516524 1024 fHistPtITSMIoneSPDInAccS->SetLineColor(15);
1025 fHistPtITSMIoneSPDInAccS->Draw("same");
8fa56655 1026 fHistPtITSTPCselS->Divide(fHistPtITSTPCselS,fHistPtTPCInAccS,1,1,"B");
fa516524 1027 fHistPtITSTPCselS->SetLineColor(kAzure+1);
1028 fHistPtITSTPCselS->Draw("same");
1029 fHistPtITSMIge2InAccS->Draw("same");
1030 l3->Draw();
1031
1032
b51e971f 1033 if(!plotAlignmentChecks) return kTRUE;
fa516524 1034
c2893e82 1035 // PLOT ALIGNMENT CHECKS
1036 //
1037 TH1F *hSPDTrackletsTBdxy = new TH1F("hSPDTrackletsTBdxy","SPD tracklets; SPD tracklet to SPD vertex distance in (x,y) [cm]; entries",100,-0.1,0.1);
1038 TH1F *hSPDTrackletsLRdxy = new TH1F("hSPDTrackletsLRdxy","SPD tracklets; SPD tracklet to SPD vertex distance in (x,y) [cm]; entries",100,-0.1,0.1);
1039 TH1F *hSPDTrackletsTBdz = new TH1F("hSPDTrackletsTBdz","SPD tracklets; SPD tracklet to SPD vertex distance in z [cm]; entries",100,-0.1,0.1);
1040 TH1F *hSPDTrackletsLRdz = new TH1F("hSPDTrackletsLRdz","SPD tracklets; SPD tracklet to SPD vertex distance in z [cm]; entries",100,-0.1,0.1);
1041
1042 TNtuple *fNtupleITSAlignSPDTracklets = (TNtuple*)list->FindObject("fNtupleITSAlignSPDTracklets");
1043 Float_t dxy,dz,phi,pt;
1044 fNtupleITSAlignSPDTracklets->SetBranchAddress("pt",&pt);
1045 fNtupleITSAlignSPDTracklets->SetBranchAddress("phi",&phi);
1046 fNtupleITSAlignSPDTracklets->SetBranchAddress("dxy",&dxy);
1047 fNtupleITSAlignSPDTracklets->SetBranchAddress("dz",&dz);
1048
1049 for(Int_t i=0;i<fNtupleITSAlignSPDTracklets->GetEntries();i++) {
1050 fNtupleITSAlignSPDTracklets->GetEvent(i);
fa516524 1051 if(pt<.01) continue;
c2893e82 1052 if(TMath::Abs(TMath::Abs(phi)-0.5*TMath::Pi())<0.25*TMath::Pi()) {
1053 // top-bottom
1054 hSPDTrackletsTBdxy->Fill(dxy);
1055 hSPDTrackletsTBdz->Fill(dz);
1056 } else {
1057 // left-right
1058 hSPDTrackletsLRdxy->Fill(dxy);
1059 hSPDTrackletsLRdz->Fill(dz);
1060 }
1061 }
1062
1063 TLegend *l6=new TLegend(0.5,0.5,0.9,0.9);
1064
1065 TCanvas *c6 = new TCanvas("c6","c6",0,0,1000,500);
1066 c6->Divide(2,1);
1067 c6->cd(1);
1068 hSPDTrackletsTBdxy->SetLineColor(4);
1069 hSPDTrackletsTBdxy->Draw();
1070 hSPDTrackletsLRdxy->SetLineColor(2);
fa516524 1071 hSPDTrackletsLRdxy->Draw("sames");
c2893e82 1072 l6->AddEntry(hSPDTrackletsTBdxy,"top-bottom","l");
1073 l6->AddEntry(hSPDTrackletsLRdxy,"left-right","l");
1074 l6->Draw();
1075 c6->cd(2);
1076 hSPDTrackletsTBdz->SetLineColor(4);
1077 hSPDTrackletsTBdz->Draw();
1078 hSPDTrackletsLRdz->SetLineColor(2);
fa516524 1079 hSPDTrackletsLRdz->Draw("sames");
c2893e82 1080 l6->Draw();
1081
1082
1083 TH1F *hSPDExtraClsTBdxy = new TH1F("hSPDExtraClsTBdxy","SPD extra clusters; track-to-point distance in (x,y) [cm]; entries",100,-0.1,0.1);
1084 TH1F *hSPDExtraClsLRdxy = new TH1F("hSPDExtraClsLRdxy","SPD extra clusters; track-to-point distance in (x,y) [cm]; entries",100,-0.1,0.1);
1085 TH1F *hSPDExtraClsTBdz = new TH1F("hSPDExtraClsTBdz","SPD extra clusters; track-to-point distance in z [cm]; entries",100,-0.1,0.1);
1086 TH1F *hSPDExtraClsLRdz = new TH1F("hSPDExtraClsLRdz","SPD extra clusters; track-to-point distance in z [cm]; entries",100,-0.1,0.1);
1087
1088 TNtuple *fNtupleITSAlignExtra = (TNtuple*)list->FindObject("fNtupleITSAlignExtra");
1089 Float_t layer,npoints,x,y,z;
1090 fNtupleITSAlignExtra->SetBranchAddress("layer",&layer);
1091 fNtupleITSAlignExtra->SetBranchAddress("npoints",&npoints);
1092 fNtupleITSAlignExtra->SetBranchAddress("x",&x);
1093 fNtupleITSAlignExtra->SetBranchAddress("y",&y);
1094 fNtupleITSAlignExtra->SetBranchAddress("z",&z);
1095 fNtupleITSAlignExtra->SetBranchAddress("dxy",&dxy);
1096 fNtupleITSAlignExtra->SetBranchAddress("dz",&dz);
1097 fNtupleITSAlignExtra->SetBranchAddress("pt",&pt);
1098
1099 for(Int_t i=0;i<fNtupleITSAlignExtra->GetEntries();i++) {
1100 fNtupleITSAlignExtra->GetEvent(i);
fa516524 1101 if(pt<0.1) continue;
c2893e82 1102 if(layer!=0 && layer!=1) continue;
fa516524 1103 if(npoints<3) continue;
c2893e82 1104 phi = TMath::ATan2(y,x);
1105 if(TMath::Abs(TMath::Abs(phi)-0.5*TMath::Pi())<0.25*TMath::Pi()) {
1106 // top-bottom
1107 hSPDExtraClsTBdxy->Fill(dxy);
1108 hSPDExtraClsTBdz->Fill(dz);
1109 } else {
1110 // left-right
1111 hSPDExtraClsLRdxy->Fill(dxy);
1112 hSPDExtraClsLRdz->Fill(dz);
1113 }
1114 }
1115
1116 TCanvas *c7 = new TCanvas("c7","c7",0,0,1000,500);
1117 c7->Divide(2,1);
1118 c7->cd(1);
1119 hSPDExtraClsTBdxy->SetLineColor(4);
1120 hSPDExtraClsTBdxy->Draw();
1121 hSPDExtraClsLRdxy->SetLineColor(2);
1122 hSPDExtraClsLRdxy->Draw("same");
1123 l6->Draw();
1124 c7->cd(2);
1125 hSPDExtraClsTBdz->SetLineColor(4);
1126 hSPDExtraClsTBdz->Draw();
1127 hSPDExtraClsLRdz->SetLineColor(2);
1128 hSPDExtraClsLRdz->Draw("same");
1129 l6->Draw();
1130
1131
b51e971f 1132 return kTRUE;
fa516524 1133}
1134//-----------------------------------------------------------------------------
1135void PlotEffRatio() {
1136
e75c9f34 1137 TFile *f= new TFile("eff.root");
fa516524 1138
1139 TH1F *fHistPtITSMI6InAcc = (TH1F*)f->Get("fHistPtITSMI6InAcc");
1140 TH1F *fHistPtITSMI5InAcc = (TH1F*)f->Get("fHistPtITSMI5InAcc");
1141 TH1F *fHistPtITSMI4InAcc = (TH1F*)f->Get("fHistPtITSMI4InAcc");
1142 TH1F *fHistPtITSMI3InAcc = (TH1F*)f->Get("fHistPtITSMI3InAcc");
1143 TH1F *fHistPtITSMI2InAcc = (TH1F*)f->Get("fHistPtITSMI2InAcc");
1144 TH1F *fHistPtITSMIge2InAcc = (TH1F*)f->Get("fHistPtITSMIge2InAcc");
1145 TH1F *fHistPtITSMISPDInAcc = (TH1F*)f->Get("fHistPtITSMISPDInAcc");
1146 TH1F *fHistPtITSMIoneSPDInAcc = (TH1F*)f->Get("fHistPtITSMIoneSPDInAcc");
8fa56655 1147 TH1F *fHistPtITSMIoneSPDthreeSDDSSDInAcc = (TH1F*)f->Get("fHistPtITSMIoneSPDthreeSDDSSDInAcc");
fa516524 1148 TH1F *fHistPtITSTPCsel = (TH1F*)f->Get("fHistPtITSTPCsel");
1149 TH1F *fHistClusterMapModuleITSMIokRatioInAcc = (TH1F*)f->Get("fHistClusterMapModuleITSMIokRatioInAcc");
8fa56655 1150 TH1F *fHistNclsITSMI = (TH1F*)f->Get("fHistNclsITSMI");
1151
fa516524 1152
e75c9f34 1153 TFile *fMC= new TFile("../MC/MCLHC11b10a/eff.root");
fa516524 1154
1155 TH1F *fHistPtITSMI6InAccMC = (TH1F*)fMC->Get("fHistPtITSMI6InAcc");
1156 TH1F *fHistPtITSMI5InAccMC = (TH1F*)fMC->Get("fHistPtITSMI5InAcc");
1157 TH1F *fHistPtITSMI4InAccMC = (TH1F*)fMC->Get("fHistPtITSMI4InAcc");
1158 TH1F *fHistPtITSMI3InAccMC = (TH1F*)fMC->Get("fHistPtITSMI3InAcc");
1159 TH1F *fHistPtITSMI2InAccMC = (TH1F*)fMC->Get("fHistPtITSMI2InAcc");
1160 TH1F *fHistPtITSMIge2InAccMC = (TH1F*)fMC->Get("fHistPtITSMIge2InAcc");
1161 TH1F *fHistPtITSMISPDInAccMC = (TH1F*)fMC->Get("fHistPtITSMISPDInAcc");
1162 TH1F *fHistPtITSMIoneSPDInAccMC = (TH1F*)fMC->Get("fHistPtITSMIoneSPDInAcc");
8fa56655 1163 TH1F *fHistPtITSMIoneSPDthreeSDDSSDInAccMC = (TH1F*)fMC->Get("fHistPtITSMIoneSPDthreeSDDSSDInAcc");
fa516524 1164 TH1F *fHistPtITSTPCselMC = (TH1F*)fMC->Get("fHistPtITSTPCsel");
1165 TH1F *fHistClusterMapModuleITSMIokRatioInAccMC = (TH1F*)fMC->Get("fHistClusterMapModuleITSMIokRatioInAcc");
8fa56655 1166 TH1F *fHistNclsITSMIMC = (TH1F*)fMC->Get("fHistNclsITSMIMC");
fa516524 1167
8fa56655 1168 /*
1169 TCanvas *c0 = new TCanvas("c0","c0",0,0,600,500);
1170 c0->SetGridy();
1171 fHistNclsITSMI->SetLineColor(4);
1172 fHistNclsITSMI->SetMarkerColor(4);
1173 fHistNclsITSMI->SetLineStyle(1);
1174 fHistNclsITSMI->SetMarkerStyle(20);
1175 fHistNclsITSMI->Draw();
1176 fHistNclsITSMIMC->SetLineColor(4);
1177 fHistNclsITSMIMC->SetMarkerColor(4);
1178 fHistNclsITSMIMC->SetLineStyle(2);
1179 fHistNclsITSMIMC->SetMarkerStyle(24);
1180 fHistNclsITSMIMC->Draw("same");
1181 */
fa516524 1182 TCanvas *c = new TCanvas("c","c",0,0,600,500);
1183 c->SetGridy();
8fa56655 1184 c->SetLogx();
1185
fa516524 1186 fHistPtITSMI6InAcc->Divide(fHistPtITSMI6InAccMC);
1187 fHistPtITSMI6InAcc->Draw();
1188 fHistPtITSMI5InAcc->Divide(fHistPtITSMI5InAccMC);
1189 fHistPtITSMI5InAcc->Draw("same");
1190 fHistPtITSMI4InAcc->Divide(fHistPtITSMI4InAccMC);
1191 fHistPtITSMI4InAcc->Draw("same");
1192 fHistPtITSMI3InAcc->Divide(fHistPtITSMI3InAccMC);
1193 fHistPtITSMI3InAcc->Draw("same");
1194 fHistPtITSMI2InAcc->Divide(fHistPtITSMI2InAccMC);
1195 fHistPtITSMI2InAcc->Draw("same");
1196 fHistPtITSMIge2InAcc->Divide(fHistPtITSMIge2InAccMC);
1197 fHistPtITSMIge2InAcc->Draw("same");
1198 fHistPtITSMISPDInAcc->Divide(fHistPtITSMISPDInAccMC);
1199 fHistPtITSMISPDInAcc->Draw("same");
1200 fHistPtITSMIoneSPDInAcc->Divide(fHistPtITSMIoneSPDInAccMC);
1201 fHistPtITSMIoneSPDInAcc->Draw("same");
8fa56655 1202 //fHistPtITSMIoneSPDthreeSDDSSDInAcc->Divide(fHistPtITSMIoneSPDthreeSDDSSDInAccMC);
1203 //fHistPtITSMIoneSPDthreeSDDSSDInAcc->Draw("same");
1204
fa516524 1205 fHistPtITSTPCsel->Divide(fHistPtITSTPCselMC);
1206 fHistPtITSTPCsel->Draw("same");
8fa56655 1207
fa516524 1208 TLegend *l3=new TLegend(0.5,0.5,0.9,0.9);
1209 l3->AddEntry(fHistPtITSMIge2InAcc,">=2 cls","l");
1210 l3->AddEntry(fHistPtITSMI6InAcc,"6 cls","l");
1211 l3->AddEntry(fHistPtITSMI5InAcc,"5 cls","l");
1212 l3->AddEntry(fHistPtITSMI4InAcc,"4 cls","l");
1213 l3->AddEntry(fHistPtITSMI3InAcc,"3 cls","l");
1214 l3->AddEntry(fHistPtITSMI2InAcc,"2 cls","l");
1215 l3->AddEntry(fHistPtITSMISPDInAcc,"2SPD + any","l");
1216 l3->AddEntry(fHistPtITSMIoneSPDInAcc,">=1SPD + any","l");
8fa56655 1217 //l3->AddEntry(fHistPtITSMIoneSPDthreeSDDSSDInAcc,">=1SPD + >=3SDDSSD","l");
fa516524 1218 l3->AddEntry(fHistPtITSTPCsel,">=1SPD + any + d_{0} cut","l");
1219 l3->Draw();
8fa56655 1220
fa516524 1221 TCanvas *cc = new TCanvas("cc","cc",0,0,600,500);
1222 cc->Divide(1,2);
1223 cc->cd(1);
1224 fHistClusterMapModuleITSMIokRatioInAccMC->SetLineColor(4);
1225 fHistClusterMapModuleITSMIokRatioInAccMC->Draw();
1226 fHistClusterMapModuleITSMIokRatioInAcc->Draw("same");
1227 cc->cd(2);
1228 for(Int_t i=1;i<=fHistClusterMapModuleITSMIokRatioInAccMC->GetNbinsX();i++) {
1229 if(fHistClusterMapModuleITSMIokRatioInAccMC->GetBinContent(i)<0.02) {
1230 fHistClusterMapModuleITSMIokRatioInAccMC->SetBinContent(i,1);
1231 if(fHistClusterMapModuleITSMIokRatioInAcc->GetBinContent(i)<0.02) {
1232 fHistClusterMapModuleITSMIokRatioInAcc->SetBinContent(i,1);
1233 }
1234 }
1235 }
1236 TH1F* fHistClusterMapDataOverMC=(TH1F*)fHistClusterMapModuleITSMIokRatioInAcc->Clone("fHistClusterMapDataOverMC");
1237 fHistClusterMapDataOverMC->Divide(fHistClusterMapModuleITSMIokRatioInAccMC);
1238 fHistClusterMapDataOverMC->Draw();
1239
1240 return;
1241}
1242
8fa56655 1243//-----------------------------------------------------------------------------
1244void PlotEffOfficial(Bool_t drawRatio=kTRUE) {
1245
1246 gStyle->SetOptStat(0);
1247
1248 gROOT->LoadMacro("/Users/dainesea/ALICEWorkInProgress.C");
1249
1250 TFile *f= new TFile("eff_115328_115393_minipass.root");
1251
1252 TH1F *fHistPtITSMI6InAcc = (TH1F*)f->Get("fHistPtITSMI6InAcc");
1253 TH1F *fHistPtITSMI5InAcc = (TH1F*)f->Get("fHistPtITSMI5InAcc");
1254 TH1F *fHistPtITSMI4InAcc = (TH1F*)f->Get("fHistPtITSMI4InAcc");
1255 TH1F *fHistPtITSMI3InAcc = (TH1F*)f->Get("fHistPtITSMI3InAcc");
1256 TH1F *fHistPtITSMI2InAcc = (TH1F*)f->Get("fHistPtITSMI2InAcc");
1257 TH1F *fHistPtITSMIge2InAcc = (TH1F*)f->Get("fHistPtITSMIge2InAcc");
1258 fHistPtITSMIge2InAcc->SetLineColor(1);
1259 fHistPtITSMIge2InAcc->SetLineStyle(1);
1260 fHistPtITSMIge2InAcc->SetMarkerColor(1);
1261 fHistPtITSMIge2InAcc->SetMarkerStyle(21);
1262 TH1F *fHistPtITSMISPDInAcc = (TH1F*)f->Get("fHistPtITSMISPDInAcc");
1263 TH1F *fHistPtITSMIoneSPDInAcc = (TH1F*)f->Get("fHistPtITSMIoneSPDInAcc");
1264 fHistPtITSMIoneSPDInAcc->SetLineColor(2);
1265 fHistPtITSMIoneSPDInAcc->SetLineStyle(1);
1266 fHistPtITSMIoneSPDInAcc->SetMarkerColor(2);
1267 fHistPtITSMIoneSPDInAcc->SetMarkerStyle(20);
1268 TH1F *fHistPtITSTPCsel = (TH1F*)f->Get("fHistPtITSTPCsel");
1269 TH1F *fHistClusterMapModuleITSMIokRatioInAcc = (TH1F*)f->Get("fHistClusterMapModuleITSMIokRatioInAcc");
1270 TH1F *fHistNclsITSMI = (TH1F*)f->Get("fHistNclsITSMI");
1271
1272
1273 TFile *fMC= new TFile("eff_lhc10b2.root");
1274
1275 TH1F *fHistPtITSMI6InAccMC = (TH1F*)fMC->Get("fHistPtITSMI6InAcc");
1276 TH1F *fHistPtITSMI5InAccMC = (TH1F*)fMC->Get("fHistPtITSMI5InAcc");
1277 TH1F *fHistPtITSMI4InAccMC = (TH1F*)fMC->Get("fHistPtITSMI4InAcc");
1278 TH1F *fHistPtITSMI3InAccMC = (TH1F*)fMC->Get("fHistPtITSMI3InAcc");
1279 TH1F *fHistPtITSMI2InAccMC = (TH1F*)fMC->Get("fHistPtITSMI2InAcc");
1280 TH1F *fHistPtITSMIge2InAccMC = (TH1F*)fMC->Get("fHistPtITSMIge2InAcc");
1281 fHistPtITSMIge2InAccMC->SetLineColor(1);
1282 fHistPtITSMIge2InAccMC->SetLineStyle(2);
1283 fHistPtITSMIge2InAccMC->SetMarkerColor(1);
1284 fHistPtITSMIge2InAccMC->SetMarkerStyle(25);
1285 TH1F *fHistPtITSMISPDInAccMC = (TH1F*)fMC->Get("fHistPtITSMISPDInAcc");
1286 TH1F *fHistPtITSMIoneSPDInAccMC = (TH1F*)fMC->Get("fHistPtITSMIoneSPDInAcc");
1287 fHistPtITSMIoneSPDInAccMC->SetLineColor(2);
1288 fHistPtITSMIoneSPDInAccMC->SetLineStyle(2);
1289 fHistPtITSMIoneSPDInAccMC->SetMarkerColor(2);
1290 fHistPtITSMIoneSPDInAccMC->SetMarkerStyle(24);
1291 TH1F *fHistPtITSTPCselMC = (TH1F*)fMC->Get("fHistPtITSTPCsel");
1292 TH1F *fHistClusterMapModuleITSMIokRatioInAccMC = (TH1F*)fMC->Get("fHistClusterMapModuleITSMIokRatioInAcc");
1293 TH1F *fHistNclsITSMIMC = (TH1F*)fMC->Get("fHistNclsITSMI");
1294
1295
1296 TCanvas *c0 = new TCanvas("c0","c0",0,0,600,500);
1297 c0->SetGridy();
1298 fHistNclsITSMI->SetLineColor(4);
1299 fHistNclsITSMI->SetMarkerColor(4);
1300 fHistNclsITSMI->SetLineStyle(1);
1301 fHistNclsITSMI->SetMarkerStyle(20);
1302 fHistNclsITSMI->Scale(1./fHistNclsITSMI->Integral());
1303 fHistNclsITSMI->Draw();
1304 fHistNclsITSMIMC->SetLineColor(4);
1305 fHistNclsITSMIMC->SetMarkerColor(4);
1306 fHistNclsITSMIMC->SetLineStyle(2);
1307 fHistNclsITSMIMC->SetMarkerStyle(24);
1308 fHistNclsITSMIMC->Scale(1./fHistNclsITSMIMC->Integral());
1309 fHistNclsITSMIMC->Draw("same");
1310
1311 TLegend *l0=new TLegend(0.5,0.5,0.9,0.9);
1312 l0->SetFillStyle(0);
1313 l0->SetBorderSize(0);
1314 l0->AddEntry(fHistNclsITSMI,"Data","lp");
1315 l0->AddEntry(fHistNclsITSMIMC,"MC","lp");
1316 l0->Draw();
1317
1318 ALICEWorkInProgress(c0,"20/05/2010");
1319
1320 TCanvas *c = new TCanvas("c","c",0,0,600,500);
1321 c->SetGridy();
1322 c->SetLogx();
1323
1324 TLegend *l3=new TLegend(0.5,0.5,0.9,0.9);
1325 l3->SetFillStyle(0);
1326 l3->SetBorderSize(0);
1327
1328 if(drawRatio) {
1329 //fHistPtITSMI6InAcc->Divide(fHistPtITSMI6InAccMC);
1330 //fHistPtITSMI6InAcc->Draw();
1331 //fHistPtITSMI5InAcc->Divide(fHistPtITSMI5InAccMC);
1332 //fHistPtITSMI5InAcc->Draw("same");
1333 //fHistPtITSMI4InAcc->Divide(fHistPtITSMI4InAccMC);
1334 //fHistPtITSMI4InAcc->Draw("same");
1335 //fHistPtITSMI3InAcc->Divide(fHistPtITSMI3InAccMC);
1336 //fHistPtITSMI3InAcc->Draw("same");
1337 //fHistPtITSMI2InAcc->Divide(fHistPtITSMI2InAccMC);
1338 //fHistPtITSMI2InAcc->Draw("same");
1339 fHistPtITSMIge2InAcc->SetYTitle("Data efficiency / MC efficiency");
1340 fHistPtITSMIge2InAcc->Divide(fHistPtITSMIge2InAccMC);
1341 fHistPtITSMIge2InAcc->Draw();
1342 //fHistPtITSMISPDInAcc->Divide(fHistPtITSMISPDInAccMC);
1343 //fHistPtITSMISPDInAcc->Draw("same");
1344 fHistPtITSMIoneSPDInAcc->Divide(fHistPtITSMIoneSPDInAccMC);
1345 fHistPtITSMIoneSPDInAcc->Draw("same");
1346
1347 //fHistPtITSTPCsel->Divide(fHistPtITSTPCselMC);
1348 //fHistPtITSTPCsel->Draw("same");
1349 l3->AddEntry(fHistPtITSMIge2InAcc,"at least 2 ITS hits","lp");
1350 //l3->AddEntry(fHistPtITSMI6InAcc,"6 cls","l");
1351 //l3->AddEntry(fHistPtITSMI5InAcc,"5 cls","l");
1352 //l3->AddEntry(fHistPtITSMI4InAcc,"4 cls","l");
1353 //l3->AddEntry(fHistPtITSMI3InAcc,"3 cls","l");
1354 //l3->AddEntry(fHistPtITSMI2InAcc,"2 cls","l");
1355 //l3->AddEntry(fHistPtITSMISPDInAcc,"2 SPD hits","lp");
1356 l3->AddEntry(fHistPtITSMIoneSPDInAcc,"at least 1 SPD hit","lp");
1357 //l3->AddEntry(fHistPtITSTPCsel,">=1SPD + any + d_{0} cut","l");
1358
1359 } else {
1360 fHistPtITSMIge2InAcc->SetYTitle("ITS prolongation efficiency");
1361 fHistPtITSMIge2InAcc->Draw();
1362 fHistPtITSMIge2InAccMC->Draw("same");
1363 fHistPtITSMIoneSPDInAcc->Draw("same");
1364 fHistPtITSMIoneSPDInAccMC->Draw("same");
1365 l3->AddEntry(fHistPtITSMIge2InAcc,"at least 2 ITS hits (Data)","lp");
1366 l3->AddEntry(fHistPtITSMIoneSPDInAcc,"at least 1 SPD hit (Data)","lp");
1367 l3->AddEntry(fHistPtITSMIge2InAccMC,"at least 2 ITS hits (MC)","lp");
1368 l3->AddEntry(fHistPtITSMIoneSPDInAccMC,"at least 1 SPD hit (MC)","lp");
1369 }
1370
1371 l3->Draw();
1372
1373 ALICEWorkInProgress(c,"20/05/2010");
1374
1375 return;
1376}
1377
fa516524 1378void PlotImpPar_rphi(Int_t rebin=1) {
1379
1380
71f9d353 1381 TFile *fMC= new TFile("AnalysisResults_onlynonfakes.root");
fa516524 1382
1383 TList *list=(TList*)fMC->Get("cOutputITS");
71f9d353 1384 TDirectoryFile *dir=0;
1385 if(!list) {
1386 dir=(TDirectoryFile*)fMC->GetDirectory("ITS_Performance");
1387 if(dir) list = (TList*)dir->Get("cOutputITS");
1388 }
1389
1390 if(!list) return kFALSE;
1391
fa516524 1392 TH1F *fHistd0rphiITSMIoneSPDInAccP150200MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP150200");
1393 TH1F *fHistd0rphiITSMIoneSPDInAccS150200MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS150200");
1394 TH1F *fHistd0rphiITSMIoneSPDInAccS150200fromStrangeMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS150200fromStrange");
1395 TH1F *fHistd0rphiITSMIoneSPDInAccS150200fromMatMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS150200fromMat");
8fa56655 1396 TH1F *fHistd0rphiITSMIoneSPDInAccP350450MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP350450");
fa516524 1397 TH1F *fHistd0rphiITSMIoneSPDInAccS350450MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS350450");
1398 TH1F *fHistd0rphiITSMIoneSPDInAccS350450fromStrangeMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS350450fromStrange");
8fa56655 1399 TH1F *fHistd0rphiITSMIoneSPDInAccS350450fromMatMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS350450fromMat");
fa516524 1400 TH1F *fHistd0rphiITSMIoneSPDInAccP500700MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP500700");
1401 TH1F *fHistd0rphiITSMIoneSPDInAccS500700MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700");
1402 TH1F *fHistd0rphiITSMIoneSPDInAccS500700fromStrangeMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700fromStrange");
1403 TH1F *fHistd0rphiITSMIoneSPDInAccS500700from211MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700from211");
1404 TH1F *fHistd0rphiITSMIoneSPDInAccS500700from22MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700from22");
1405 TH1F *fHistd0rphiITSMIoneSPDInAccS500700from310MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700from310");
1406 TH1F *fHistd0rphiITSMIoneSPDInAccS500700from321MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700from321");
1407 TH1F *fHistd0rphiITSMIoneSPDInAccS500700from3122MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700from3122");
1408 TH1F *fHistd0rphiITSMIoneSPDInAccS500700fromMatMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700fromMat");
1409 TH1F *fHistd0rphiITSMIoneSPDInAccP10001500MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP10001500");
1410 TH1F *fHistd0rphiITSMIoneSPDInAccS10001500MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS10001500");
1411 TH1F *fHistd0rphiITSMIoneSPDInAccS10001500fromStrangeMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS10001500fromStrange");
1412 TH1F *fHistd0rphiITSMIoneSPDInAccS10001500fromMatMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS10001500fromMat");
8fa56655 1413 TH1F *fHistd0rphiITSMIoneSPDInAccP25004000MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP25004000");
fa516524 1414 TH1F *fHistd0rphiITSMIoneSPDInAccS25004000MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS25004000");
1415 TH1F *fHistd0rphiITSMIoneSPDInAccS25004000fromStrangeMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS25004000fromStrange");
1416 TH1F *fHistd0rphiITSMIoneSPDInAccS25004000fromMatMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS25004000fromMat");
1417 TH1F *fHistd0rphiITSMIoneSPDInAccP40008000MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP40008000");
1418 TH1F *fHistd0rphiITSMIoneSPDInAccS40008000MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS40008000");
1419 TH1F *fHistd0rphiITSMIoneSPDInAccS40008000fromStrangeMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS40008000fromStrange");
8fa56655 1420 TH1F *fHistd0rphiITSMIoneSPDInAccS40008000fromMatMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS40008000fromMat");
fa516524 1421
1422 TH1F *fHistd0rphiITSMIoneSPDInAcc150200MC=(TH1F*)fHistd0rphiITSMIoneSPDInAccP150200MC->Clone("fHistd0rphiITSMIoneSPDInAcc150200MC");
1423 fHistd0rphiITSMIoneSPDInAcc150200MC->Add(fHistd0rphiITSMIoneSPDInAccS150200MC);
1424 fHistd0rphiITSMIoneSPDInAcc150200MC->Scale(1./fHistd0rphiITSMIoneSPDInAcc150200MC->GetEntries());
8fa56655 1425 TH1F *fHistd0rphiITSMIoneSPDInAcc350450MC=(TH1F*)fHistd0rphiITSMIoneSPDInAccP350450MC->Clone("fHistd0rphiITSMIoneSPDInAcc350450MC");
1426 fHistd0rphiITSMIoneSPDInAcc350450MC->Add(fHistd0rphiITSMIoneSPDInAccS350450MC);
1427 fHistd0rphiITSMIoneSPDInAcc350450MC->Scale(1./fHistd0rphiITSMIoneSPDInAcc350450MC->GetEntries());
fa516524 1428 TH1F *fHistd0rphiITSMIoneSPDInAcc500700MC=(TH1F*)fHistd0rphiITSMIoneSPDInAccP500700MC->Clone("fHistd0rphiITSMIoneSPDInAcc500700MC");
1429 fHistd0rphiITSMIoneSPDInAcc500700MC->Add(fHistd0rphiITSMIoneSPDInAccS500700MC);
1430 fHistd0rphiITSMIoneSPDInAcc500700MC->Scale(1./fHistd0rphiITSMIoneSPDInAcc500700MC->GetEntries());
1431 TH1F *fHistd0rphiITSMIoneSPDInAcc10001500MC=(TH1F*)fHistd0rphiITSMIoneSPDInAccP10001500MC->Clone("fHistd0rphiITSMIoneSPDInAcc10001500MC");
1432 fHistd0rphiITSMIoneSPDInAcc10001500MC->Add(fHistd0rphiITSMIoneSPDInAccS10001500MC);
1433 fHistd0rphiITSMIoneSPDInAcc10001500MC->Scale(1./fHistd0rphiITSMIoneSPDInAcc10001500MC->GetEntries());
8fa56655 1434 TH1F *fHistd0rphiITSMIoneSPDInAcc25004000MC=(TH1F*)fHistd0rphiITSMIoneSPDInAccP25004000MC->Clone("fHistd0rphiITSMIoneSPDInAcc25004000MC");
fa516524 1435 fHistd0rphiITSMIoneSPDInAcc25004000MC->Add(fHistd0rphiITSMIoneSPDInAccS25004000MC);
1436 fHistd0rphiITSMIoneSPDInAcc25004000MC->Scale(1./fHistd0rphiITSMIoneSPDInAcc25004000MC->GetEntries());
1437 TH1F *fHistd0rphiITSMIoneSPDInAcc40008000MC=(TH1F*)fHistd0rphiITSMIoneSPDInAccP40008000MC->Clone("fHistd0rphiITSMIoneSPDInAcc40008000MC");
1438 fHistd0rphiITSMIoneSPDInAcc40008000MC->Add(fHistd0rphiITSMIoneSPDInAccS40008000MC);
1439 fHistd0rphiITSMIoneSPDInAcc40008000MC->Scale(1./fHistd0rphiITSMIoneSPDInAcc40008000MC->GetEntries());
8fa56655 1440
fa516524 1441
71f9d353 1442 TFile *f= new TFile("AnalysisResults_onlynonfakes.root");
1443 list=(TList*)f->Get("cOutputITS");
1444 if(!list) {
1445 dir=(TDirectoryFile*)f->GetDirectory("ITS_Performance");
1446 if(dir) list = (TList*)dir->Get("cOutputITS");
1447 }
1448
1449 if(!list) return kFALSE;
fa516524 1450
fa516524 1451 TH1F *fHistd0rphiITSMIoneSPDInAccP150200 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP150200");
1452 TH1F *fHistd0rphiITSMIoneSPDInAccS150200 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS150200");
8fa56655 1453 TH1F *fHistd0rphiITSMIoneSPDInAccP350450 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP350450");
1454 TH1F *fHistd0rphiITSMIoneSPDInAccS350450 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS350450");
fa516524 1455 TH1F *fHistd0rphiITSMIoneSPDInAccP500700 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP500700");
1456 TH1F *fHistd0rphiITSMIoneSPDInAccS500700 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700");
1457 TH1F *fHistd0rphiITSMIoneSPDInAccP10001500 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP10001500");
1458 TH1F *fHistd0rphiITSMIoneSPDInAccS10001500 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS10001500");
8fa56655 1459 TH1F *fHistd0rphiITSMIoneSPDInAccP25004000 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP25004000");
fa516524 1460 TH1F *fHistd0rphiITSMIoneSPDInAccS25004000 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS25004000");
1461 TH1F *fHistd0rphiITSMIoneSPDInAccP40008000 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP40008000");
8fa56655 1462 TH1F *fHistd0rphiITSMIoneSPDInAccS40008000 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS40008000");
fa516524 1463 TH1F *fHistd0rphiITSMIoneSPDInAcc150200=(TH1F*)fHistd0rphiITSMIoneSPDInAccP150200->Clone("fHistd0rphiITSMIoneSPDInAcc150200");
1464 fHistd0rphiITSMIoneSPDInAcc150200->Add(fHistd0rphiITSMIoneSPDInAccS150200);
1465 fHistd0rphiITSMIoneSPDInAcc150200->Scale(1./fHistd0rphiITSMIoneSPDInAcc150200->GetEntries());
8fa56655 1466 TH1F *fHistd0rphiITSMIoneSPDInAcc350450=(TH1F*)fHistd0rphiITSMIoneSPDInAccP350450->Clone("fHistd0rphiITSMIoneSPDInAcc350450");
fa516524 1467 fHistd0rphiITSMIoneSPDInAcc350450->Add(fHistd0rphiITSMIoneSPDInAccS350450);
8fa56655 1468 fHistd0rphiITSMIoneSPDInAcc350450->Scale(1./fHistd0rphiITSMIoneSPDInAcc350450->GetEntries());
fa516524 1469 TH1F *fHistd0rphiITSMIoneSPDInAcc500700=(TH1F*)fHistd0rphiITSMIoneSPDInAccP500700->Clone("fHistd0rphiITSMIoneSPDInAcc500700");
1470 fHistd0rphiITSMIoneSPDInAcc500700->Add(fHistd0rphiITSMIoneSPDInAccS500700);
1471 fHistd0rphiITSMIoneSPDInAcc500700->Scale(1./fHistd0rphiITSMIoneSPDInAcc500700->GetEntries());
1472 TH1F *fHistd0rphiITSMIoneSPDInAcc10001500=(TH1F*)fHistd0rphiITSMIoneSPDInAccP10001500->Clone("fHistd0rphiITSMIoneSPDInAcc10001500");
1473 fHistd0rphiITSMIoneSPDInAcc10001500->Add(fHistd0rphiITSMIoneSPDInAccS10001500);
1474 fHistd0rphiITSMIoneSPDInAcc10001500->Scale(1./fHistd0rphiITSMIoneSPDInAcc10001500->GetEntries());
8fa56655 1475 TH1F *fHistd0rphiITSMIoneSPDInAcc25004000=(TH1F*)fHistd0rphiITSMIoneSPDInAccP25004000->Clone("fHistd0rphiITSMIoneSPDInAcc25004000");
fa516524 1476 fHistd0rphiITSMIoneSPDInAcc25004000->Add(fHistd0rphiITSMIoneSPDInAccS25004000);
1477 fHistd0rphiITSMIoneSPDInAcc25004000->Scale(1./fHistd0rphiITSMIoneSPDInAcc25004000->GetEntries());
1478 TH1F *fHistd0rphiITSMIoneSPDInAcc40008000=(TH1F*)fHistd0rphiITSMIoneSPDInAccP40008000->Clone("fHistd0rphiITSMIoneSPDInAcc40008000");
1479 fHistd0rphiITSMIoneSPDInAcc40008000->Add(fHistd0rphiITSMIoneSPDInAccS40008000);
8fa56655 1480 fHistd0rphiITSMIoneSPDInAcc40008000->Scale(1./fHistd0rphiITSMIoneSPDInAcc40008000->GetEntries());
fa516524 1481
1482
1483 TCanvas *c1 = new TCanvas("c1","c1");
1484 c1->Divide(3,2);
1485 c1->cd(1);
1486 fHistd0rphiITSMIoneSPDInAcc150200MC->Rebin(rebin);
1487 fHistd0rphiITSMIoneSPDInAcc150200->Rebin(rebin);
1488 fHistd0rphiITSMIoneSPDInAcc150200MC->SetLineColor(2);
1489 fHistd0rphiITSMIoneSPDInAcc150200MC->Draw();
1490 fHistd0rphiITSMIoneSPDInAcc150200->SetLineColor(4);
1491 fHistd0rphiITSMIoneSPDInAcc150200->Draw("same");
8fa56655 1492 c1->cd(2);
fa516524 1493 fHistd0rphiITSMIoneSPDInAcc350450MC->Rebin(rebin);
1494 fHistd0rphiITSMIoneSPDInAcc350450->Rebin(rebin);
1495 fHistd0rphiITSMIoneSPDInAcc350450MC->SetLineColor(2);
1496 fHistd0rphiITSMIoneSPDInAcc350450MC->Draw();
1497 fHistd0rphiITSMIoneSPDInAcc350450->SetLineColor(4);
8fa56655 1498 fHistd0rphiITSMIoneSPDInAcc350450->Draw("same");
fa516524 1499 c1->cd(3);
1500 fHistd0rphiITSMIoneSPDInAcc500700MC->Rebin(rebin);
1501 fHistd0rphiITSMIoneSPDInAcc500700->Rebin(rebin);
1502 fHistd0rphiITSMIoneSPDInAcc500700MC->SetLineColor(2);
1503 fHistd0rphiITSMIoneSPDInAcc500700MC->Draw();
1504 fHistd0rphiITSMIoneSPDInAcc500700->SetLineColor(4);
1505 fHistd0rphiITSMIoneSPDInAcc500700->Draw("same");
1506 c1->cd(4);
1507 fHistd0rphiITSMIoneSPDInAcc10001500MC->Rebin(rebin);
1508 fHistd0rphiITSMIoneSPDInAcc10001500->Rebin(rebin);
1509 fHistd0rphiITSMIoneSPDInAcc10001500MC->SetLineColor(2);
1510 fHistd0rphiITSMIoneSPDInAcc10001500MC->Draw();
1511 fHistd0rphiITSMIoneSPDInAcc10001500->SetLineColor(4);
1512 fHistd0rphiITSMIoneSPDInAcc10001500->Draw("same");
8fa56655 1513 c1->cd(5);
fa516524 1514 fHistd0rphiITSMIoneSPDInAcc25004000MC->Rebin(rebin);
1515 fHistd0rphiITSMIoneSPDInAcc25004000->Rebin(rebin);
1516 fHistd0rphiITSMIoneSPDInAcc25004000MC->SetLineColor(2);
1517 fHistd0rphiITSMIoneSPDInAcc25004000MC->Draw();
1518 fHistd0rphiITSMIoneSPDInAcc25004000->SetLineColor(4);
1519 fHistd0rphiITSMIoneSPDInAcc25004000->Draw("same");
1520 c1->cd(6);
1521 fHistd0rphiITSMIoneSPDInAcc40008000MC->Rebin(rebin);
1522 fHistd0rphiITSMIoneSPDInAcc40008000->Rebin(rebin);
1523 fHistd0rphiITSMIoneSPDInAcc40008000MC->SetLineColor(2);
1524 fHistd0rphiITSMIoneSPDInAcc40008000MC->Draw();
1525 fHistd0rphiITSMIoneSPDInAcc40008000->SetLineColor(4);
1526 fHistd0rphiITSMIoneSPDInAcc40008000->Draw("same");
8fa56655 1527
1528
fa516524 1529 TCanvas *c1a = new TCanvas("c1a","c1a");
1530 c1a->Divide(3,1);
1531 c1a->cd(1);
1532 TH1F* fHistd0rphiITSMIoneSPDInAcc150200Ratio=(TH1F*)fHistd0rphiITSMIoneSPDInAcc150200->Clone("fHistd0rphiITSMIoneSPDInAcc150200Ratio");
1533 fHistd0rphiITSMIoneSPDInAcc150200Ratio->Divide(fHistd0rphiITSMIoneSPDInAcc150200MC);
1534 fHistd0rphiITSMIoneSPDInAcc150200Ratio->Draw();
1535 c1a->cd(2);
1536 TH1F* fHistd0rphiITSMIoneSPDInAcc500700Ratio=(TH1F*)fHistd0rphiITSMIoneSPDInAcc500700->Clone("fHistd0rphiITSMIoneSPDInAcc500700Ratio");
1537 fHistd0rphiITSMIoneSPDInAcc500700Ratio->Divide(fHistd0rphiITSMIoneSPDInAcc500700MC);
1538 fHistd0rphiITSMIoneSPDInAcc500700Ratio->Draw();
1539 c1a->cd(3);
1540 TH1F* fHistd0rphiITSMIoneSPDInAcc10001500Ratio=(TH1F*)fHistd0rphiITSMIoneSPDInAcc10001500->Clone("fHistd0rphiITSMIoneSPDInAcc10001500Ratio");
1541 fHistd0rphiITSMIoneSPDInAcc10001500Ratio->Divide(fHistd0rphiITSMIoneSPDInAcc10001500MC);
1542 fHistd0rphiITSMIoneSPDInAcc10001500Ratio->Draw();
1543
1544
1545
1546 TCanvas *c2 = new TCanvas("c2","c2");
1547 c2->Divide(3,2);
1548 c2_1->SetLogy();
1549 c2_2->SetLogy();
1550 c2_3->SetLogy();
1551 c2_4->SetLogy();
1552 c2_5->SetLogy();
1553 c2_6->SetLogy();
1554 c2->cd(1);
1555 fHistd0rphiITSMIoneSPDInAccP150200MC->SetMinimum(1);
1556 fHistd0rphiITSMIoneSPDInAccS150200MC->SetMinimum(1);
1557 fHistd0rphiITSMIoneSPDInAccS150200fromStrangeMC->SetMinimum(1);
1558 fHistd0rphiITSMIoneSPDInAccS150200fromMatMC->SetMinimum(1);
1559 fHistd0rphiITSMIoneSPDInAccP150200MC->SetLineColor(1);
1560 fHistd0rphiITSMIoneSPDInAccP150200MC->Draw();
1561 fHistd0rphiITSMIoneSPDInAccS150200MC->SetLineColor(6);
1562 fHistd0rphiITSMIoneSPDInAccS150200MC->Draw("same");
1563 fHistd0rphiITSMIoneSPDInAccS150200fromStrangeMC->SetLineColor(8);
1564 fHistd0rphiITSMIoneSPDInAccS150200fromStrangeMC->Draw("same");
1565 fHistd0rphiITSMIoneSPDInAccS150200fromMatMC->SetLineColor(9);
1566 fHistd0rphiITSMIoneSPDInAccS150200fromMatMC->Draw("same");
8fa56655 1567 c2->cd(2);
fa516524 1568 fHistd0rphiITSMIoneSPDInAccP350450MC->SetMinimum(1);
1569 fHistd0rphiITSMIoneSPDInAccS350450MC->SetMinimum(1);
1570 fHistd0rphiITSMIoneSPDInAccS350450fromStrangeMC->SetMinimum(1);
1571 fHistd0rphiITSMIoneSPDInAccS350450fromMatMC->SetMinimum(1);
1572 fHistd0rphiITSMIoneSPDInAccP350450MC->SetLineColor(1);
1573 fHistd0rphiITSMIoneSPDInAccP350450MC->Draw();
1574 fHistd0rphiITSMIoneSPDInAccS350450MC->SetLineColor(6);
1575 fHistd0rphiITSMIoneSPDInAccS350450MC->Draw("same");
1576 fHistd0rphiITSMIoneSPDInAccS350450fromStrangeMC->SetLineColor(8);
1577 fHistd0rphiITSMIoneSPDInAccS350450fromStrangeMC->Draw("same");
1578 fHistd0rphiITSMIoneSPDInAccS350450fromMatMC->SetLineColor(9);
8fa56655 1579 fHistd0rphiITSMIoneSPDInAccS350450fromMatMC->Draw("same");
fa516524 1580 c2->cd(3);
1581 fHistd0rphiITSMIoneSPDInAccP500700MC->SetMinimum(1);
1582 fHistd0rphiITSMIoneSPDInAccS500700MC->SetMinimum(1);
1583 fHistd0rphiITSMIoneSPDInAccS500700fromStrangeMC->SetMinimum(1);
1584 fHistd0rphiITSMIoneSPDInAccS500700fromMatMC->SetMinimum(1);
1585 fHistd0rphiITSMIoneSPDInAccP500700MC->SetLineColor(1);
1586 fHistd0rphiITSMIoneSPDInAccP500700MC->Draw();
1587 fHistd0rphiITSMIoneSPDInAccS500700MC->SetLineColor(6);
1588 fHistd0rphiITSMIoneSPDInAccS500700MC->Draw("same");
1589 fHistd0rphiITSMIoneSPDInAccS500700fromStrangeMC->SetLineColor(8);
1590 fHistd0rphiITSMIoneSPDInAccS500700fromStrangeMC->Draw("same");
1591 fHistd0rphiITSMIoneSPDInAccS500700fromMatMC->SetLineColor(9);
1592 fHistd0rphiITSMIoneSPDInAccS500700fromMatMC->Draw("same");
1593 c2->cd(4);
1594 fHistd0rphiITSMIoneSPDInAccP10001500MC->SetMinimum(1);
1595 fHistd0rphiITSMIoneSPDInAccS10001500MC->SetMinimum(1);
1596 fHistd0rphiITSMIoneSPDInAccS10001500fromStrangeMC->SetMinimum(1);
1597 fHistd0rphiITSMIoneSPDInAccS10001500fromMatMC->SetMinimum(1);
1598 fHistd0rphiITSMIoneSPDInAccP10001500MC->SetLineColor(1);
1599 fHistd0rphiITSMIoneSPDInAccP10001500MC->Draw();
1600 fHistd0rphiITSMIoneSPDInAccS10001500MC->SetLineColor(6);
1601 fHistd0rphiITSMIoneSPDInAccS10001500MC->Draw("same");
1602 fHistd0rphiITSMIoneSPDInAccS10001500fromStrangeMC->SetLineColor(8);
1603 fHistd0rphiITSMIoneSPDInAccS10001500fromStrangeMC->Draw("same");
1604 fHistd0rphiITSMIoneSPDInAccS10001500fromMatMC->SetLineColor(9);
1605 fHistd0rphiITSMIoneSPDInAccS10001500fromMatMC->Draw("same");
fa516524 1606 c2->cd(5);
1607 fHistd0rphiITSMIoneSPDInAccP25004000MC->SetMinimum(1);
1608 fHistd0rphiITSMIoneSPDInAccS25004000MC->SetMinimum(1);
1609 fHistd0rphiITSMIoneSPDInAccS25004000fromStrangeMC->SetMinimum(1);
1610 fHistd0rphiITSMIoneSPDInAccS25004000fromMatMC->SetMinimum(1);
1611 fHistd0rphiITSMIoneSPDInAccP25004000MC->SetLineColor(1);
1612 fHistd0rphiITSMIoneSPDInAccP25004000MC->Draw();
1613 fHistd0rphiITSMIoneSPDInAccS25004000MC->SetLineColor(6);
1614 fHistd0rphiITSMIoneSPDInAccS25004000MC->Draw("same");
1615 fHistd0rphiITSMIoneSPDInAccS25004000fromStrangeMC->SetLineColor(8);
1616 fHistd0rphiITSMIoneSPDInAccS25004000fromStrangeMC->Draw("same");
1617 fHistd0rphiITSMIoneSPDInAccS25004000fromMatMC->SetLineColor(9);
1618 fHistd0rphiITSMIoneSPDInAccS25004000fromMatMC->Draw("same");
1619 c2->cd(6);
1620 fHistd0rphiITSMIoneSPDInAccP40008000MC->SetMinimum(1);
1621 fHistd0rphiITSMIoneSPDInAccS40008000MC->SetMinimum(1);
1622 fHistd0rphiITSMIoneSPDInAccS40008000fromStrangeMC->SetMinimum(1);
1623 fHistd0rphiITSMIoneSPDInAccS40008000fromMatMC->SetMinimum(1);
1624 fHistd0rphiITSMIoneSPDInAccP40008000MC->SetLineColor(1);
1625 fHistd0rphiITSMIoneSPDInAccP40008000MC->Draw();
1626 fHistd0rphiITSMIoneSPDInAccS40008000MC->SetLineColor(6);
1627 fHistd0rphiITSMIoneSPDInAccS40008000MC->Draw("same");
1628 fHistd0rphiITSMIoneSPDInAccS40008000fromStrangeMC->SetLineColor(8);
1629 fHistd0rphiITSMIoneSPDInAccS40008000fromStrangeMC->Draw("same");
1630 fHistd0rphiITSMIoneSPDInAccS40008000fromMatMC->SetLineColor(9);
1631 fHistd0rphiITSMIoneSPDInAccS40008000fromMatMC->Draw("same");
8fa56655 1632
fa516524 1633 TCanvas *c2b = new TCanvas("c2b","c2b");
1634 fHistd0rphiITSMIoneSPDInAccS500700fromStrangeMC->SetMinimum(1);
1635 fHistd0rphiITSMIoneSPDInAccS500700fromStrangeMC->SetLineColor(8);
1636 fHistd0rphiITSMIoneSPDInAccS500700fromStrangeMC->Draw();
1637 fHistd0rphiITSMIoneSPDInAccS500700from310MC->SetMinimum(1);
1638 fHistd0rphiITSMIoneSPDInAccS500700from310MC->SetLineColor(2);
1639 fHistd0rphiITSMIoneSPDInAccS500700from310MC->Draw("same");
1640 fHistd0rphiITSMIoneSPDInAccS500700from321MC->SetMinimum(1);
1641 fHistd0rphiITSMIoneSPDInAccS500700from321MC->SetLineColor(5);
1642 fHistd0rphiITSMIoneSPDInAccS500700from321MC->Draw("same");
1643 fHistd0rphiITSMIoneSPDInAccS500700from3122MC->SetMinimum(1);
1644 fHistd0rphiITSMIoneSPDInAccS500700from3122MC->SetLineColor(1);
1645 fHistd0rphiITSMIoneSPDInAccS500700from3122MC->Draw("same");
1646
1647 TCanvas *c2c = new TCanvas("c2c","c2c");
1648 fHistd0rphiITSMIoneSPDInAccS500700fromMatMC->SetMinimum(1);
1649 fHistd0rphiITSMIoneSPDInAccS500700fromMatMC->Draw();
1650 fHistd0rphiITSMIoneSPDInAccS500700from211MC->SetMinimum(1);
1651 fHistd0rphiITSMIoneSPDInAccS500700from211MC->SetLineColor(2);
1652 fHistd0rphiITSMIoneSPDInAccS500700from211MC->Draw("same");
1653 fHistd0rphiITSMIoneSPDInAccS500700from22MC->SetMinimum(1);
1654 fHistd0rphiITSMIoneSPDInAccS500700from22MC->SetLineColor(1);
1655 fHistd0rphiITSMIoneSPDInAccS500700from22MC->Draw("same");
1656
1657
1658
1659 TCanvas *c3 = new TCanvas("c3","c3");
1660 c3->Divide(3,2);
1661 c3_1->SetLogx();
1662 c3_2->SetLogx();
1663 c3_3->SetLogx();
1664 c3_4->SetLogx();
1665 c3_5->SetLogx();
1666 c3_6->SetLogx();
1667 Float_t d0cut[15]={0.0301,0.0401,0.0501,0.0601,0.0801,0.101,0.151,0.201,0.251,0.301,0.401,0.601,0.801,1.001,1.401};
8fa56655 1668
fa516524 1669 c3->cd(1);
1670 Float_t fracP150200[15],fracS150200[15],fracSfromStrange150200[15],fracS150200Strp30[15],fracS150200Strm30[15],fracS150200Matm10[15],fracS150200Matp10[15];
1671 Float_t intPtot150200=fHistd0rphiITSMIoneSPDInAccP150200MC->Integral(1,fHistd0rphiITSMIoneSPDInAccP150200MC->GetNbinsX());
1672 for(Int_t i=0;i<15;i++) {
1673 Int_t bin1=fHistd0rphiITSMIoneSPDInAccP150200MC->FindBin(-d0cut[i]);
1674 Int_t bin2=fHistd0rphiITSMIoneSPDInAccP150200MC->FindBin(+d0cut[i]);
1675 Float_t intPcut150200=fHistd0rphiITSMIoneSPDInAccP150200MC->Integral(bin1,bin2);
1676 Float_t intScut150200=fHistd0rphiITSMIoneSPDInAccS150200MC->Integral(bin1,bin2);
1677 Float_t intSfromStrangecut150200=fHistd0rphiITSMIoneSPDInAccS150200fromStrangeMC->Integral(bin1,bin2);
1678 Float_t intScut150200Strp30 = intScut150200 + 0.3*intSfromStrangecut150200;
1679 Float_t intScut150200Strm30 = intScut150200 - 0.3*intSfromStrangecut150200;
1680 Float_t intScut150200Matp10 = intScut150200 + 0.1*(intScut150200-intSfromStrangecut150200);
1681 Float_t intScut150200Matm10 = intScut150200 - 0.1*(intScut150200-intSfromStrangecut150200);
1682 fracP150200[i]=intPcut150200/intPtot150200;
1683 fracS150200[i]=1.-intScut150200/(intPcut150200+intScut150200);
1684 fracS150200Strp30[i]=1.-intScut150200Strp30/(intPcut150200+intScut150200Strp30);
1685 fracS150200Strm30[i]=1.-intScut150200Strm30/(intPcut150200+intScut150200Strm30);
1686 fracS150200Matp10[i]=1.-intScut150200Matp10/(intPcut150200+intScut150200Matp10);
1687 fracS150200Matm10[i]=1.-intScut150200Matm10/(intPcut150200+intScut150200Matm10);
1688 fracSfromStrange150200[i]=1.-intSfromStrangecut150200/(intPcut150200+intScut150200);
1689 }
1690 TGraph *gfracP150200=new TGraph(15,d0cut,fracP150200);
1691 gfracP150200->SetMarkerColor(2);
1692 gfracP150200->SetMarkerStyle(20);
1693 gfracP150200->Draw("ap");
1694 TGraph *gfracS150200=new TGraph(15,d0cut,fracS150200);
1695 gfracS150200->SetMarkerColor(4);
1696 gfracS150200->SetMarkerStyle(21);
1697 gfracS150200->Draw("p");
1698 TGraph *gfracSfromStrange150200=new TGraph(15,d0cut,fracSfromStrange150200);
1699 gfracSfromStrange150200->SetMarkerColor(8);
1700 gfracSfromStrange150200->SetMarkerStyle(22);
8fa56655 1701 gfracSfromStrange150200->Draw("p");
1702
fa516524 1703 c3->cd(2);
1704 Float_t fracP350450[15],fracS350450[15],fracSfromStrange350450[15],fracS350450Strp30[15],fracS350450Strm30[15],fracS350450Matm10[15],fracS350450Matp10[15];
1705 Float_t intPtot350450=fHistd0rphiITSMIoneSPDInAccP350450MC->Integral(1,fHistd0rphiITSMIoneSPDInAccP350450MC->GetNbinsX());
1706 for(Int_t i=0;i<15;i++) {
1707 Int_t bin1=fHistd0rphiITSMIoneSPDInAccP350450MC->FindBin(-d0cut[i]);
1708 Int_t bin2=fHistd0rphiITSMIoneSPDInAccP350450MC->FindBin(+d0cut[i]);
1709 Float_t intPcut350450=fHistd0rphiITSMIoneSPDInAccP350450MC->Integral(bin1,bin2);
1710 Float_t intScut350450=fHistd0rphiITSMIoneSPDInAccS350450MC->Integral(bin1,bin2);
1711 Float_t intSfromStrangecut350450=fHistd0rphiITSMIoneSPDInAccS350450fromStrangeMC->Integral(bin1,bin2);
1712 Float_t intScut350450Strp30 = intScut350450 + 0.3*intSfromStrangecut350450;
1713 Float_t intScut350450Strm30 = intScut350450 - 0.3*intSfromStrangecut350450;
1714 Float_t intScut350450Matp10 = intScut350450 + 0.1*(intScut350450-intSfromStrangecut350450);
1715 Float_t intScut350450Matm10 = intScut350450 - 0.1*(intScut350450-intSfromStrangecut350450);
1716 fracP350450[i]=intPcut350450/intPtot350450;
1717 fracS350450[i]=1.-intScut350450/(intPcut350450+intScut350450);
1718 fracS350450Strp30[i]=1.-intScut350450Strp30/(intPcut350450+intScut350450Strp30);
1719 fracS350450Strm30[i]=1.-intScut350450Strm30/(intPcut350450+intScut350450Strm30);
1720 fracS350450Matp10[i]=1.-intScut350450Matp10/(intPcut350450+intScut350450Matp10);
1721 fracS350450Matm10[i]=1.-intScut350450Matm10/(intPcut350450+intScut350450Matm10);
1722 fracSfromStrange350450[i]=1.-intSfromStrangecut350450/(intPcut350450+intScut350450);
1723 }
1724 TGraph *gfracP350450=new TGraph(15,d0cut,fracP350450);
1725 gfracP350450->SetMarkerColor(2);
1726 gfracP350450->SetMarkerStyle(20);
1727 gfracP350450->Draw("ap");
1728 TGraph *gfracS350450=new TGraph(15,d0cut,fracS350450);
1729 gfracS350450->SetMarkerColor(4);
1730 gfracS350450->SetMarkerStyle(21);
1731 gfracS350450->Draw("p");
1732 TGraph *gfracSfromStrange350450=new TGraph(15,d0cut,fracSfromStrange350450);
1733 gfracSfromStrange350450->SetMarkerColor(8);
1734 gfracSfromStrange350450->SetMarkerStyle(22);
1735 gfracSfromStrange350450->Draw("p");
8fa56655 1736
fa516524 1737 c3->cd(3);
1738 Float_t fracP500700[15],fracS500700[15],fracSfromStrange500700[15],fracS500700Strp30[15],fracS500700Strm30[15],fracS500700Matm10[15],fracS500700Matp10[15];
1739 Float_t intPtot500700=fHistd0rphiITSMIoneSPDInAccP500700MC->Integral(1,fHistd0rphiITSMIoneSPDInAccP500700MC->GetNbinsX());
1740 for(Int_t i=0;i<15;i++) {
1741 Int_t bin1=fHistd0rphiITSMIoneSPDInAccP500700MC->FindBin(-d0cut[i]);
1742 Int_t bin2=fHistd0rphiITSMIoneSPDInAccP500700MC->FindBin(+d0cut[i]);
1743 Float_t intPcut500700=fHistd0rphiITSMIoneSPDInAccP500700MC->Integral(bin1,bin2);
1744 Float_t intScut500700=fHistd0rphiITSMIoneSPDInAccS500700MC->Integral(bin1,bin2);
1745 Float_t intSfromStrangecut500700=fHistd0rphiITSMIoneSPDInAccS500700fromStrangeMC->Integral(bin1,bin2);
1746 Float_t intScut500700Strp30 = intScut500700 + 0.3*intSfromStrangecut500700;
1747 Float_t intScut500700Strm30 = intScut500700 - 0.3*intSfromStrangecut500700;
1748 Float_t intScut500700Matp10 = intScut500700 + 0.1*(intScut500700-intSfromStrangecut500700);
1749 Float_t intScut500700Matm10 = intScut500700 - 0.1*(intScut500700-intSfromStrangecut500700);
1750 fracP500700[i]=intPcut500700/intPtot500700;
1751 fracS500700[i]=1.-intScut500700/(intPcut500700+intScut500700);
1752 fracS500700Strp30[i]=1.-intScut500700Strp30/(intPcut500700+intScut500700Strp30);
1753 fracS500700Strm30[i]=1.-intScut500700Strm30/(intPcut500700+intScut500700Strm30);
1754 fracS500700Matp10[i]=1.-intScut500700Matp10/(intPcut500700+intScut500700Matp10);
1755 fracS500700Matm10[i]=1.-intScut500700Matm10/(intPcut500700+intScut500700Matm10);
1756 fracSfromStrange500700[i]=1.-intSfromStrangecut500700/(intPcut500700+intScut500700);
1757 }
1758 TGraph *gfracP500700=new TGraph(15,d0cut,fracP500700);
1759 gfracP500700->SetMarkerColor(2);
1760 gfracP500700->SetMarkerStyle(20);
1761 gfracP500700->Draw("ap");
1762 TGraph *gfracS500700=new TGraph(15,d0cut,fracS500700);
1763 gfracS500700->SetMarkerColor(4);
1764 gfracS500700->SetMarkerStyle(21);
1765 gfracS500700->Draw("p");
1766 TGraph *gfracSfromStrange500700=new TGraph(15,d0cut,fracSfromStrange500700);
1767 gfracSfromStrange500700->SetMarkerColor(8);
1768 gfracSfromStrange500700->SetMarkerStyle(22);
1769 gfracSfromStrange500700->Draw("p");
1770
1771 c3->cd(4);
1772 Float_t fracP10001500[15],fracS10001500[15],fracSfromStrange10001500[15],fracS10001500Strp30[15],fracS10001500Strm30[15],fracS10001500Matm10[15],fracS10001500Matp10[15];
1773 Float_t intPtot10001500=fHistd0rphiITSMIoneSPDInAccP10001500MC->Integral(1,fHistd0rphiITSMIoneSPDInAccP10001500MC->GetNbinsX());
1774 for(Int_t i=0;i<15;i++) {
1775 Int_t bin1=fHistd0rphiITSMIoneSPDInAccP10001500MC->FindBin(-d0cut[i]);
1776 Int_t bin2=fHistd0rphiITSMIoneSPDInAccP10001500MC->FindBin(+d0cut[i]);
1777 Float_t intPcut10001500=fHistd0rphiITSMIoneSPDInAccP10001500MC->Integral(bin1,bin2);
1778 Float_t intScut10001500=fHistd0rphiITSMIoneSPDInAccS10001500MC->Integral(bin1,bin2);
1779 Float_t intSfromStrangecut10001500=fHistd0rphiITSMIoneSPDInAccS10001500fromStrangeMC->Integral(bin1,bin2);
1780 Float_t intScut10001500Strp30 = intScut10001500 + 0.3*intSfromStrangecut10001500;
1781 Float_t intScut10001500Strm30 = intScut10001500 - 0.3*intSfromStrangecut10001500;
1782 Float_t intScut10001500Matp10 = intScut10001500 + 0.1*(intScut10001500-intSfromStrangecut10001500);
1783 Float_t intScut10001500Matm10 = intScut10001500 - 0.1*(intScut10001500-intSfromStrangecut10001500);
1784 fracP10001500[i]=intPcut10001500/intPtot10001500;
1785 fracS10001500[i]=1.-intScut10001500/(intPcut10001500+intScut10001500);
1786 fracS10001500Strp30[i]=1.-intScut10001500Strp30/(intPcut10001500+intScut10001500Strp30);
1787 fracS10001500Strm30[i]=1.-intScut10001500Strm30/(intPcut10001500+intScut10001500Strm30);
1788 fracS10001500Matp10[i]=1.-intScut10001500Matp10/(intPcut10001500+intScut10001500Matp10);
1789 fracS10001500Matm10[i]=1.-intScut10001500Matm10/(intPcut10001500+intScut10001500Matm10);
1790 fracSfromStrange10001500[i]=1.-intSfromStrangecut10001500/(intPcut10001500+intScut10001500);
1791 }
1792 TGraph *gfracP10001500=new TGraph(15,d0cut,fracP10001500);
1793 gfracP10001500->SetMarkerColor(2);
1794 gfracP10001500->SetMarkerStyle(20);
1795 gfracP10001500->Draw("ap");
1796 TGraph *gfracS10001500=new TGraph(15,d0cut,fracS10001500);
1797 gfracS10001500->SetMarkerColor(4);
1798 gfracS10001500->SetMarkerStyle(21);
1799 gfracS10001500->Draw("p");
1800 TGraph *gfracSfromStrange10001500=new TGraph(15,d0cut,fracSfromStrange10001500);
1801 gfracSfromStrange10001500->SetMarkerColor(8);
1802 gfracSfromStrange10001500->SetMarkerStyle(22);
1803 gfracSfromStrange10001500->Draw("p");
8fa56655 1804
fa516524 1805 c3->cd(5);
1806 Float_t fracP25004000[15],fracS25004000[15],fracSfromStrange25004000[15],fracS25004000Strp30[15],fracS25004000Strm30[15],fracS25004000Matm10[15],fracS25004000Matp10[15];
1807 Float_t intPtot25004000=fHistd0rphiITSMIoneSPDInAccP25004000MC->Integral(1,fHistd0rphiITSMIoneSPDInAccP25004000MC->GetNbinsX());
1808 for(Int_t i=0;i<15;i++) {
1809 Int_t bin1=fHistd0rphiITSMIoneSPDInAccP25004000MC->FindBin(-d0cut[i]);
1810 Int_t bin2=fHistd0rphiITSMIoneSPDInAccP25004000MC->FindBin(+d0cut[i]);
1811 Float_t intPcut25004000=fHistd0rphiITSMIoneSPDInAccP25004000MC->Integral(bin1,bin2);
1812 Float_t intScut25004000=fHistd0rphiITSMIoneSPDInAccS25004000MC->Integral(bin1,bin2);
1813 Float_t intSfromStrangecut25004000=fHistd0rphiITSMIoneSPDInAccS25004000fromStrangeMC->Integral(bin1,bin2);
1814 Float_t intScut25004000Strp30 = intScut25004000 + 0.3*intSfromStrangecut25004000;
1815 Float_t intScut25004000Strm30 = intScut25004000 - 0.3*intSfromStrangecut25004000;
1816 Float_t intScut25004000Matp10 = intScut25004000 + 0.1*(intScut25004000-intSfromStrangecut25004000);
1817 Float_t intScut25004000Matm10 = intScut25004000 - 0.1*(intScut25004000-intSfromStrangecut25004000);
1818 fracP25004000[i]=intPcut25004000/intPtot25004000;
1819 fracS25004000[i]=1.-intScut25004000/(intPcut25004000+intScut25004000);
1820 fracS25004000Strp30[i]=1.-intScut25004000Strp30/(intPcut25004000+intScut25004000Strp30);
1821 fracS25004000Strm30[i]=1.-intScut25004000Strm30/(intPcut25004000+intScut25004000Strm30);
1822 fracS25004000Matp10[i]=1.-intScut25004000Matp10/(intPcut25004000+intScut25004000Matp10);
1823 fracS25004000Matm10[i]=1.-intScut25004000Matm10/(intPcut25004000+intScut25004000Matm10);
1824 fracSfromStrange25004000[i]=1.-intSfromStrangecut25004000/(intPcut25004000+intScut25004000);
1825 }
1826 TGraph *gfracP25004000=new TGraph(15,d0cut,fracP25004000);
1827 gfracP25004000->SetMarkerColor(2);
1828 gfracP25004000->SetMarkerStyle(20);
1829 gfracP25004000->Draw("ap");
1830 TGraph *gfracS25004000=new TGraph(15,d0cut,fracS25004000);
1831 gfracS25004000->SetMarkerColor(4);
1832 gfracS25004000->SetMarkerStyle(21);
1833 gfracS25004000->Draw("p");
1834 TGraph *gfracSfromStrange25004000=new TGraph(15,d0cut,fracSfromStrange25004000);
1835 gfracSfromStrange25004000->SetMarkerColor(8);
1836 gfracSfromStrange25004000->SetMarkerStyle(22);
1837 gfracSfromStrange25004000->Draw("p");
1838
1839 c3->cd(6);
1840 Float_t fracP40008000[15],fracS40008000[15],fracSfromStrange40008000[15],fracS40008000Strp30[15],fracS40008000Strm30[15],fracS40008000Matm10[15],fracS40008000Matp10[15];
1841 Float_t intPtot40008000=fHistd0rphiITSMIoneSPDInAccP40008000MC->Integral(1,fHistd0rphiITSMIoneSPDInAccP40008000MC->GetNbinsX());
1842 for(Int_t i=0;i<15;i++) {
1843 Int_t bin1=fHistd0rphiITSMIoneSPDInAccP40008000MC->FindBin(-d0cut[i]);
1844 Int_t bin2=fHistd0rphiITSMIoneSPDInAccP40008000MC->FindBin(+d0cut[i]);
1845 Float_t intPcut40008000=fHistd0rphiITSMIoneSPDInAccP40008000MC->Integral(bin1,bin2);
1846 Float_t intScut40008000=fHistd0rphiITSMIoneSPDInAccS40008000MC->Integral(bin1,bin2);
1847 Float_t intSfromStrangecut40008000=fHistd0rphiITSMIoneSPDInAccS40008000fromStrangeMC->Integral(bin1,bin2);
1848 Float_t intScut40008000Strp30 = intScut40008000 + 0.3*intSfromStrangecut40008000;
1849 Float_t intScut40008000Strm30 = intScut40008000 - 0.3*intSfromStrangecut40008000;
1850 Float_t intScut40008000Matp10 = intScut40008000 + 0.1*(intScut40008000-intSfromStrangecut40008000);
1851 Float_t intScut40008000Matm10 = intScut40008000 - 0.1*(intScut40008000-intSfromStrangecut40008000);
1852 fracP40008000[i]=intPcut40008000/intPtot40008000;
1853 fracS40008000[i]=1.-intScut40008000/(intPcut40008000+intScut40008000);
1854 fracS40008000Strp30[i]=1.-intScut40008000Strp30/(intPcut40008000+intScut40008000Strp30);
1855 fracS40008000Strm30[i]=1.-intScut40008000Strm30/(intPcut40008000+intScut40008000Strm30);
1856 fracS40008000Matp10[i]=1.-intScut40008000Matp10/(intPcut40008000+intScut40008000Matp10);
1857 fracS40008000Matm10[i]=1.-intScut40008000Matm10/(intPcut40008000+intScut40008000Matm10);
1858 fracSfromStrange40008000[i]=1.-intSfromStrangecut40008000/(intPcut40008000+intScut40008000);
1859 }
1860 TGraph *gfracP40008000=new TGraph(15,d0cut,fracP40008000);
1861 gfracP40008000->SetMarkerColor(2);
1862 gfracP40008000->SetMarkerStyle(20);
1863 gfracP40008000->Draw("ap");
1864 TGraph *gfracS40008000=new TGraph(15,d0cut,fracS40008000);
1865 gfracS40008000->SetMarkerColor(4);
1866 gfracS40008000->SetMarkerStyle(21);
1867 gfracS40008000->Draw("p");
1868 TGraph *gfracSfromStrange40008000=new TGraph(15,d0cut,fracSfromStrange40008000);
1869 gfracSfromStrange40008000->SetMarkerColor(8);
1870 gfracSfromStrange40008000->SetMarkerStyle(22);
1871 gfracSfromStrange40008000->Draw("p");
fa516524 1872
8fa56655 1873
fa516524 1874 TCanvas *c4 = new TCanvas("c4","c4");
1875 c4->Divide(3,1);
1876 c4_1->SetLogx();
1877 c4_2->SetLogx();
1878 c4_3->SetLogx();
1879
1880 c4->cd(1);
1881 Float_t intDatacut150200[15],intDataPcut150200[15],intDataPall150200[15];
1882 for(Int_t i=0;i<15;i++) {
1883 Int_t bin1=fHistd0rphiITSMIoneSPDInAcc150200->FindBin(-d0cut[i]);
1884 Int_t bin2=fHistd0rphiITSMIoneSPDInAcc150200->FindBin(+d0cut[i]);
1885 intDatacut150200[i]=fHistd0rphiITSMIoneSPDInAcc150200->Integral(bin1,bin2);
1886 intDataPcut150200[i]=intDatacut150200[i]*fracS150200[i];
1887 intDataPall150200[i]=intDataPcut150200[i]/fracP150200[i];
1888 }
1889 TGraph *gintDatacut150200=new TGraph(15,d0cut,intDatacut150200);
1890 gintDatacut150200->SetMarkerColor(1);
1891 gintDatacut150200->SetMarkerStyle(20);
1892 gintDatacut150200->Draw("ap");
1893 TGraph *gintDataPcut150200=new TGraph(15,d0cut,intDataPcut150200);
1894 gintDataPcut150200->SetMarkerColor(1);
1895 gintDataPcut150200->SetMarkerStyle(24);
1896 gintDataPcut150200->Draw("p");
1897 TGraph *gintDataPall150200=new TGraph(15,d0cut,intDataPall150200);
1898 gintDataPall150200->SetMarkerColor(2);
1899 gintDataPall150200->SetMarkerStyle(22);
1900 gintDataPall150200->Draw("p");
1901
1902 c4->cd(2);
1903 Float_t intDatacut500700[15],intDataPcut500700[15],intDataPall500700[15];
1904 for(Int_t i=0;i<15;i++) {
1905 Int_t bin1=fHistd0rphiITSMIoneSPDInAcc500700->FindBin(-d0cut[i]);
1906 Int_t bin2=fHistd0rphiITSMIoneSPDInAcc500700->FindBin(+d0cut[i]);
1907 intDatacut500700[i]=fHistd0rphiITSMIoneSPDInAcc500700->Integral(bin1,bin2);
1908 intDataPcut500700[i]=intDatacut500700[i]*fracS500700[i];
1909 intDataPall500700[i]=intDataPcut500700[i]/fracP500700[i];
1910 }
1911 TGraph *gintDatacut500700=new TGraph(15,d0cut,intDatacut500700);
1912 gintDatacut500700->SetMarkerColor(1);
1913 gintDatacut500700->SetMarkerStyle(20);
1914 gintDatacut500700->Draw("ap");
1915 TGraph *gintDataPcut500700=new TGraph(15,d0cut,intDataPcut500700);
1916 gintDataPcut500700->SetMarkerColor(1);
1917 gintDataPcut500700->SetMarkerStyle(24);
1918 gintDataPcut500700->Draw("p");
1919 TGraph *gintDataPall500700=new TGraph(15,d0cut,intDataPall500700);
1920 gintDataPall500700->SetMarkerColor(2);
1921 gintDataPall500700->SetMarkerStyle(22);
1922 gintDataPall500700->Draw("p");
1923
1924 c4->cd(3);
1925 Float_t intDatacut10001500[15],intDataPcut10001500[15],intDataPall10001500[15];
1926 for(Int_t i=0;i<15;i++) {
1927 Int_t bin1=fHistd0rphiITSMIoneSPDInAcc10001500->FindBin(-d0cut[i]);
1928 Int_t bin2=fHistd0rphiITSMIoneSPDInAcc10001500->FindBin(+d0cut[i]);
1929 intDatacut10001500[i]=fHistd0rphiITSMIoneSPDInAcc10001500->Integral(bin1,bin2);
1930 intDataPcut10001500[i]=intDatacut10001500[i]*fracS10001500[i];
1931 intDataPall10001500[i]=intDataPcut10001500[i]/fracP10001500[i];
1932 }
1933 TGraph *gintDatacut10001500=new TGraph(15,d0cut,intDatacut10001500);
1934 gintDatacut10001500->SetMarkerColor(1);
1935 gintDatacut10001500->SetMarkerStyle(20);
1936 gintDatacut10001500->Draw("ap");
1937 TGraph *gintDataPcut10001500=new TGraph(15,d0cut,intDataPcut10001500);
1938 gintDataPcut10001500->SetMarkerColor(1);
1939 gintDataPcut10001500->SetMarkerStyle(24);
1940 gintDataPcut10001500->Draw("p");
1941 TGraph *gintDataPall10001500=new TGraph(15,d0cut,intDataPall10001500);
1942 gintDataPall10001500->SetMarkerColor(2);
1943 gintDataPall10001500->SetMarkerStyle(22);
1944 gintDataPall10001500->Draw("p");
1945
1946
1947 TCanvas *c5 = new TCanvas("c5","c5");
1948 c5->Divide(3,1);
1949 c5_1->SetLogx();
1950 c5_2->SetLogx();
1951 c5_3->SetLogx();
1952
1953 c5->cd(1);
1954 Float_t intDataPall150200Strp30[15],intDataPall150200Strm30[15],intDataPall150200Matp10[15],intDataPall150200Matm10[15];
1955 for(Int_t i=0;i<15;i++) {
1956 intDataPall150200Strp30[i]=intDatacut150200[i]*fracS150200Strp30[i]/fracP150200[i];
1957 intDataPall150200Strm30[i]=intDatacut150200[i]*fracS150200Strm30[i]/fracP150200[i];
1958 intDataPall150200Matp10[i]=intDatacut150200[i]*fracS150200Matp10[i]/fracP150200[i];
1959 intDataPall150200Matm10[i]=intDatacut150200[i]*fracS150200Matm10[i]/fracP150200[i];
1960 }
1961 gintDataPall150200->Draw("ap");
1962
1963 TGraph *gintDataPall150200Strp30=new TGraph(15,d0cut,intDataPall150200Strp30);
1964 gintDataPall150200Strp30->SetMarkerColor(1);
1965 gintDataPall150200Strp30->SetMarkerStyle(22);
1966 gintDataPall150200Strp30->Draw("p");
1967 TGraph *gintDataPall150200Strm30=new TGraph(15,d0cut,intDataPall150200Strm30);
1968 gintDataPall150200Strm30->SetMarkerColor(1);
1969 gintDataPall150200Strm30->SetMarkerStyle(22);
1970 gintDataPall150200Strm30->Draw("p");
1971 TGraph *gintDataPall150200Matp10=new TGraph(15,d0cut,intDataPall150200Matp10);
1972 gintDataPall150200Matp10->SetMarkerColor(3);
1973 gintDataPall150200Matp10->SetMarkerStyle(22);
1974 gintDataPall150200Matp10->Draw("p");
1975 TGraph *gintDataPall150200Matm10=new TGraph(15,d0cut,intDataPall150200Matm10);
1976 gintDataPall150200Matm10->SetMarkerColor(3);
1977 gintDataPall150200Matm10->SetMarkerStyle(22);
1978 gintDataPall150200Matm10->Draw("p");
1979
1980 c5->cd(2);
1981 Float_t intDataPall500700Strp30[15],intDataPall500700Strm30[15],intDataPall500700Matp10[15],intDataPall500700Matm10[15];
1982 for(Int_t i=0;i<15;i++) {
1983 intDataPall500700Strp30[i]=intDatacut500700[i]*fracS500700Strp30[i]/fracP500700[i];
1984 intDataPall500700Strm30[i]=intDatacut500700[i]*fracS500700Strm30[i]/fracP500700[i];
1985 intDataPall500700Matp10[i]=intDatacut500700[i]*fracS500700Matp10[i]/fracP500700[i];
1986 intDataPall500700Matm10[i]=intDatacut500700[i]*fracS500700Matm10[i]/fracP500700[i];
1987 }
1988 gintDataPall500700->Draw("ap");
1989
1990 TGraph *gintDataPall500700Strp30=new TGraph(15,d0cut,intDataPall500700Strp30);
1991 gintDataPall500700Strp30->SetMarkerColor(1);
1992 gintDataPall500700Strp30->SetMarkerStyle(22);
1993 gintDataPall500700Strp30->Draw("p");
1994 TGraph *gintDataPall500700Strm30=new TGraph(15,d0cut,intDataPall500700Strm30);
1995 gintDataPall500700Strm30->SetMarkerColor(1);
1996 gintDataPall500700Strm30->SetMarkerStyle(22);
1997 gintDataPall500700Strm30->Draw("p");
1998 TGraph *gintDataPall500700Matp10=new TGraph(15,d0cut,intDataPall500700Matp10);
1999 gintDataPall500700Matp10->SetMarkerColor(3);
2000 gintDataPall500700Matp10->SetMarkerStyle(22);
2001 gintDataPall500700Matp10->Draw("p");
2002 TGraph *gintDataPall500700Matm10=new TGraph(15,d0cut,intDataPall500700Matm10);
2003 gintDataPall500700Matm10->SetMarkerColor(3);
2004 gintDataPall500700Matm10->SetMarkerStyle(22);
2005 gintDataPall500700Matm10->Draw("p");
2006
2007 c5->cd(3);
2008 Float_t intDataPall10001500Strp30[15],intDataPall10001500Strm30[15],intDataPall10001500Matp10[15],intDataPall10001500Matm10[15];
2009 for(Int_t i=0;i<15;i++) {
2010 intDataPall10001500Strp30[i]=intDatacut10001500[i]*fracS10001500Strp30[i]/fracP10001500[i];
2011 intDataPall10001500Strm30[i]=intDatacut10001500[i]*fracS10001500Strm30[i]/fracP10001500[i];
2012 intDataPall10001500Matp10[i]=intDatacut10001500[i]*fracS10001500Matp10[i]/fracP10001500[i];
2013 intDataPall10001500Matm10[i]=intDatacut10001500[i]*fracS10001500Matm10[i]/fracP10001500[i];
2014 }
2015 gintDataPall10001500->Draw("ap");
2016
2017 TGraph *gintDataPall10001500Strp30=new TGraph(15,d0cut,intDataPall10001500Strp30);
2018 gintDataPall10001500Strp30->SetMarkerColor(1);
2019 gintDataPall10001500Strp30->SetMarkerStyle(22);
2020 gintDataPall10001500Strp30->Draw("p");
2021 TGraph *gintDataPall10001500Strm30=new TGraph(15,d0cut,intDataPall10001500Strm30);
2022 gintDataPall10001500Strm30->SetMarkerColor(1);
2023 gintDataPall10001500Strm30->SetMarkerStyle(22);
2024 gintDataPall10001500Strm30->Draw("p");
2025 TGraph *gintDataPall10001500Matp10=new TGraph(15,d0cut,intDataPall10001500Matp10);
2026 gintDataPall10001500Matp10->SetMarkerColor(3);
2027 gintDataPall10001500Matp10->SetMarkerStyle(22);
2028 gintDataPall10001500Matp10->Draw("p");
2029 TGraph *gintDataPall10001500Matm10=new TGraph(15,d0cut,intDataPall10001500Matm10);
2030 gintDataPall10001500Matm10->SetMarkerColor(3);
2031 gintDataPall10001500Matm10->SetMarkerStyle(22);
2032 gintDataPall10001500Matm10->Draw("p");
8fa56655 2033
fa516524 2034 return;
2035}
2036//---------------------------------------------------------------------------
2037void PlotImpPar_z() {
2038
2039 TFile *fMC= new TFile("ITS.Performance_lhc10a8_100k.root");
2040
2041 TList *list=(TList*)fMC->Get("cOutputITS");
2042 TH1F *fHistd0zITSMIoneSPDInAccP150200MC = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccP150200");
2043 TH1F *fHistd0zITSMIoneSPDInAccS150200MC = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccS150200");
2044 TH1F *fHistd0zITSMIoneSPDInAccP500700MC = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccP500700");
2045 TH1F *fHistd0zITSMIoneSPDInAccS500700MC = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccS500700");
2046 TH1F *fHistd0zITSMIoneSPDInAccP10001500MC = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccP10001500");
2047 TH1F *fHistd0zITSMIoneSPDInAccS10001500MC = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccS10001500");
2048 TH1F *fHistd0zITSMIoneSPDInAcc150200MC=(TH1F*)fHistd0zITSMIoneSPDInAccP150200MC->Clone("fHistd0zITSMIoneSPDInAcc150200MC");
2049 fHistd0zITSMIoneSPDInAcc150200MC->Add(fHistd0zITSMIoneSPDInAccS150200MC);
2050 fHistd0zITSMIoneSPDInAcc150200MC->Scale(1./fHistd0zITSMIoneSPDInAcc150200MC->GetEntries());
2051 TH1F *fHistd0zITSMIoneSPDInAcc500700MC=(TH1F*)fHistd0zITSMIoneSPDInAccP500700MC->Clone("fHistd0zITSMIoneSPDInAcc500700MC");
2052 fHistd0zITSMIoneSPDInAcc500700MC->Add(fHistd0zITSMIoneSPDInAccS500700MC);
2053 fHistd0zITSMIoneSPDInAcc500700MC->Scale(1./fHistd0zITSMIoneSPDInAcc500700MC->GetEntries());
2054 TH1F *fHistd0zITSMIoneSPDInAcc10001500MC=(TH1F*)fHistd0zITSMIoneSPDInAccP10001500MC->Clone("fHistd0zITSMIoneSPDInAcc10001500MC");
2055 fHistd0zITSMIoneSPDInAcc10001500MC->Add(fHistd0zITSMIoneSPDInAccS10001500MC);
2056 fHistd0zITSMIoneSPDInAcc10001500MC->Scale(1./fHistd0zITSMIoneSPDInAcc10001500MC->GetEntries());
2057
2058
2059 TFile *f= new TFile("ITS.Performance_104892.root");
2060
2061 TList *list=(TList*)f->Get("cOutputITS");
2062 TH1F *fHistd0zITSMIoneSPDInAccP150200 = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccP150200");
2063 TH1F *fHistd0zITSMIoneSPDInAccS150200 = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccS150200");
2064 TH1F *fHistd0zITSMIoneSPDInAccP500700 = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccP500700");
2065 TH1F *fHistd0zITSMIoneSPDInAccS500700 = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccS500700");
2066 TH1F *fHistd0zITSMIoneSPDInAccP10001500 = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccP10001500");
2067 TH1F *fHistd0zITSMIoneSPDInAccS10001500 = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccS10001500");
2068 TH1F *fHistd0zITSMIoneSPDInAcc150200=(TH1F*)fHistd0zITSMIoneSPDInAccP150200->Clone("fHistd0zITSMIoneSPDInAcc150200");
2069 fHistd0zITSMIoneSPDInAcc150200->Add(fHistd0zITSMIoneSPDInAccS150200);
2070 fHistd0zITSMIoneSPDInAcc150200->Scale(1./fHistd0zITSMIoneSPDInAcc150200->GetEntries());
2071 TH1F *fHistd0zITSMIoneSPDInAcc500700=(TH1F*)fHistd0zITSMIoneSPDInAccP500700->Clone("fHistd0zITSMIoneSPDInAcc500700");
2072 fHistd0zITSMIoneSPDInAcc500700->Add(fHistd0zITSMIoneSPDInAccS500700);
2073 fHistd0zITSMIoneSPDInAcc500700->Scale(1./fHistd0zITSMIoneSPDInAcc500700->GetEntries());
2074 TH1F *fHistd0zITSMIoneSPDInAcc10001500=(TH1F*)fHistd0zITSMIoneSPDInAccP10001500->Clone("fHistd0zITSMIoneSPDInAcc10001500");
2075 fHistd0zITSMIoneSPDInAcc10001500->Add(fHistd0zITSMIoneSPDInAccS10001500);
2076 fHistd0zITSMIoneSPDInAcc10001500->Scale(1./fHistd0zITSMIoneSPDInAcc10001500->GetEntries());
2077
2078
2079 TCanvas *c1 = new TCanvas("c1","c1");
2080 c1->Divide(3,1);
2081 c1->cd(1);
2082 fHistd0zITSMIoneSPDInAcc150200MC->SetLineColor(2);
2083 fHistd0zITSMIoneSPDInAcc150200MC->Draw();
2084 fHistd0zITSMIoneSPDInAcc150200->SetLineColor(4);
2085 fHistd0zITSMIoneSPDInAcc150200->Draw("same");
2086 c1->cd(2);
2087 fHistd0zITSMIoneSPDInAcc500700MC->SetLineColor(2);
2088 fHistd0zITSMIoneSPDInAcc500700MC->Draw();
2089 fHistd0zITSMIoneSPDInAcc500700->SetLineColor(4);
2090 fHistd0zITSMIoneSPDInAcc500700->Draw("same");
2091 c1->cd(3);
2092 fHistd0zITSMIoneSPDInAcc10001500MC->SetLineColor(2);
2093 fHistd0zITSMIoneSPDInAcc10001500MC->Draw();
2094 fHistd0zITSMIoneSPDInAcc10001500->SetLineColor(4);
2095 fHistd0zITSMIoneSPDInAcc10001500->Draw("same");
2096
2097 TCanvas *c2 = new TCanvas("c2","c2");
2098 c2->Divide(3,1);
2099 c2_1->SetLogy();
2100 c2_2->SetLogy();
2101 c2_3->SetLogy();
2102 c2->cd(1);
2103 fHistd0zITSMIoneSPDInAccP150200MC->SetMinimum(1);
2104 fHistd0zITSMIoneSPDInAccS150200MC->SetMinimum(1);
2105 fHistd0zITSMIoneSPDInAccP150200MC->SetLineColor(1);
2106 fHistd0zITSMIoneSPDInAccP150200MC->Draw();
2107 fHistd0zITSMIoneSPDInAccS150200MC->SetLineColor(6);
2108 fHistd0zITSMIoneSPDInAccS150200MC->Draw("same");
2109 c2->cd(2);
2110 fHistd0zITSMIoneSPDInAccP500700MC->SetMinimum(1);
2111 fHistd0zITSMIoneSPDInAccS500700MC->SetMinimum(1);
2112 fHistd0zITSMIoneSPDInAccP500700MC->SetLineColor(1);
2113 fHistd0zITSMIoneSPDInAccP500700MC->Draw();
2114 fHistd0zITSMIoneSPDInAccS500700MC->SetLineColor(6);
2115 fHistd0zITSMIoneSPDInAccS500700MC->Draw("same");
2116 c2->cd(3);
2117 fHistd0zITSMIoneSPDInAccP10001500MC->SetMinimum(1);
2118 fHistd0zITSMIoneSPDInAccS10001500MC->SetMinimum(1);
2119 fHistd0zITSMIoneSPDInAccP10001500MC->SetLineColor(1);
2120 fHistd0zITSMIoneSPDInAccP10001500MC->Draw();
2121 fHistd0zITSMIoneSPDInAccS10001500MC->SetLineColor(6);
2122 fHistd0zITSMIoneSPDInAccS10001500MC->Draw("same");
2123
2124
2125 TCanvas *c3 = new TCanvas("c3","c3");
2126 c3->Divide(3,1);
2127 c3_1->SetLogx();
2128 c3_2->SetLogx();
2129 c3_3->SetLogx();
2130 Float_t d0cut[15]={0.05,0.06,0.08,0.10,0.15,0.2,0.25,0.30,0.35,0.40,0.50,0.60,0.80,1.,3.40};
2131
2132 c3->cd(1);
2133 Float_t fracP150200[15],fracS150200[15];
2134 Float_t intPtot150200=fHistd0zITSMIoneSPDInAccP150200MC->Integral(1,fHistd0zITSMIoneSPDInAccP150200MC->GetNbinsX());
2135 for(Int_t i=0;i<15;i++) {
2136 Int_t bin1=fHistd0zITSMIoneSPDInAccP150200MC->FindBin(-d0cut[i]);
2137 Int_t bin2=fHistd0zITSMIoneSPDInAccP150200MC->FindBin(+d0cut[i]);
2138 Float_t intPcut150200=fHistd0zITSMIoneSPDInAccP150200MC->Integral(bin1,bin2);
2139 Float_t intScut150200=fHistd0zITSMIoneSPDInAccS150200MC->Integral(bin1,bin2);
2140 fracP150200[i]=intPcut150200/intPtot150200;
2141 fracS150200[i]=1.-intScut150200/(intPcut150200+intScut150200);
2142 }
2143 TGraph *gfracP150200=new TGraph(15,d0cut,fracP150200);
2144 gfracP150200->SetMarkerColor(2);
2145 gfracP150200->SetMarkerStyle(20);
2146 gfracP150200->Draw("ap");
2147 TGraph *gfracS150200=new TGraph(15,d0cut,fracS150200);
2148 gfracS150200->SetMarkerColor(4);
2149 gfracS150200->SetMarkerStyle(21);
2150 gfracS150200->Draw("p");
2151
2152 c3->cd(2);
2153 Float_t fracP500700[15],fracS500700[15];
2154 Float_t intPtot500700=fHistd0zITSMIoneSPDInAccP500700MC->Integral(1,fHistd0zITSMIoneSPDInAccP500700MC->GetNbinsX());
2155 for(Int_t i=0;i<15;i++) {
2156 Int_t bin1=fHistd0zITSMIoneSPDInAccP500700MC->FindBin(-d0cut[i]);
2157 Int_t bin2=fHistd0zITSMIoneSPDInAccP500700MC->FindBin(+d0cut[i]);
2158 Float_t intPcut500700=fHistd0zITSMIoneSPDInAccP500700MC->Integral(bin1,bin2);
2159 Float_t intScut500700=fHistd0zITSMIoneSPDInAccS500700MC->Integral(bin1,bin2);
2160 fracP500700[i]=intPcut500700/intPtot500700;
2161 fracS500700[i]=1.-intScut500700/(intPcut500700+intScut500700);
2162 }
2163 TGraph *gfracP500700=new TGraph(15,d0cut,fracP500700);
2164 gfracP500700->SetMarkerColor(2);
2165 gfracP500700->SetMarkerStyle(20);
2166 gfracP500700->Draw("ap");
2167 TGraph *gfracS500700=new TGraph(15,d0cut,fracS500700);
2168 gfracS500700->SetMarkerColor(4);
2169 gfracS500700->SetMarkerStyle(21);
2170 gfracS500700->Draw("p");
2171
2172 c3->cd(3);
2173 Float_t fracP10001500[15],fracS10001500[15];
2174 Float_t intPtot10001500=fHistd0zITSMIoneSPDInAccP10001500MC->Integral(1,fHistd0zITSMIoneSPDInAccP10001500MC->GetNbinsX());
2175 for(Int_t i=0;i<15;i++) {
2176 Int_t bin1=fHistd0zITSMIoneSPDInAccP10001500MC->FindBin(-d0cut[i]);
2177 Int_t bin2=fHistd0zITSMIoneSPDInAccP10001500MC->FindBin(+d0cut[i]);
2178 Float_t intPcut10001500=fHistd0zITSMIoneSPDInAccP10001500MC->Integral(bin1,bin2);
2179 Float_t intScut10001500=fHistd0zITSMIoneSPDInAccS10001500MC->Integral(bin1,bin2);
2180 fracP10001500[i]=intPcut10001500/intPtot10001500;
2181 fracS10001500[i]=1.-intScut10001500/(intPcut10001500+intScut10001500);
2182 }
2183 TGraph *gfracP10001500=new TGraph(15,d0cut,fracP10001500);
2184 gfracP10001500->SetMarkerColor(2);
2185 gfracP10001500->SetMarkerStyle(20);
2186 gfracP10001500->Draw("ap");
2187 TGraph *gfracS10001500=new TGraph(15,d0cut,fracS10001500);
2188 gfracS10001500->SetMarkerColor(4);
2189 gfracS10001500->SetMarkerStyle(21);
2190 gfracS10001500->Draw("p");
2191
2192 return;
2193}
2194//----------------------------------------------------------------------------
2195void Corrections() {
2196
2197 TFile *f_cutits= new TFile("ITS.Performance_lhc09d10_500k_noz0cut_nodcaTPC.root");
2198
2199 TList *list=(TList*)f_cutits->Get("cOutputITS");
2200
2201 TH1F *fHistNEvents = (TH1F*)list->FindObject("fHistNEvents");
2202 Float_t nEventsSelWithVertex = fHistNEvents->GetBinContent(5);
2203
2204 TH1F *fHistPtITSTPCsel = (TH1F*)list->FindObject("fHistPtITSTPCsel");
2205 NormalizePtHist(fHistPtITSTPCsel,nEventsSelWithVertex);
2206 TH1F *fHistPtITSTPCselP = (TH1F*)list->FindObject("fHistPtITSTPCselP");
2207 NormalizePtHist(fHistPtITSTPCselP,nEventsSelWithVertex);
2208 TH1F *fHistPtITSTPCselS = (TH1F*)list->FindObject("fHistPtITSTPCselS");
2209 NormalizePtHist(fHistPtITSTPCselS,nEventsSelWithVertex);
2210 TH1F *fHistPtITSTPCselPfromStrange = (TH1F*)list->FindObject("fHistPtITSTPCselPfromStrange");
2211 NormalizePtHist(fHistPtITSTPCselPfromStrange,nEventsSelWithVertex);
2212 TH1F *fHistPtITSTPCselSfromStrange = (TH1F*)list->FindObject("fHistPtITSTPCselSfromStrange");
2213 NormalizePtHist(fHistPtITSTPCselSfromStrange,nEventsSelWithVertex);
2214 TH1F *fHistPtITSTPCselSfromMat = (TH1F*)list->FindObject("fHistPtITSTPCselSfromMat");
2215 NormalizePtHist(fHistPtITSTPCselSfromMat,nEventsSelWithVertex);
2216
2217
2218 TFile *f_cuttpc= new TFile("ITS.Performance_lhc09d10_500k_noz0cut.root");
2219
2220 TList *list=(TList*)f_cuttpc->Get("cOutputITS");
2221
2222 TH1F *fHistNEvents = (TH1F*)list->FindObject("fHistNEvents");
2223 nEventsSelWithVertex = fHistNEvents->GetBinContent(5);
2224
2225 TH1F *fHistPtTPCInAcc = (TH1F*)list->FindObject("fHistPtTPCInAcc");
2226 NormalizePtHist(fHistPtTPCInAcc,nEventsSelWithVertex);
2227 TH1F *fHistPtTPCInAccP = (TH1F*)list->FindObject("fHistPtTPCInAccP");
2228 NormalizePtHist(fHistPtTPCInAccP,nEventsSelWithVertex);
2229 TH1F *fHistPtTPCInAccS = (TH1F*)list->FindObject("fHistPtTPCInAccS");
2230 NormalizePtHist(fHistPtTPCInAccS,nEventsSelWithVertex);
2231 TH1F *fHistPtTPCInAccPfromStrange = (TH1F*)list->FindObject("fHistPtTPCInAccPfromStrange");
2232 NormalizePtHist(fHistPtTPCInAccPfromStrange,nEventsSelWithVertex);
2233 TH1F *fHistPtTPCInAccSfromStrange = (TH1F*)list->FindObject("fHistPtTPCInAccSfromStrange");
2234 NormalizePtHist(fHistPtTPCInAccSfromStrange,nEventsSelWithVertex);
2235 TH1F *fHistPtTPCInAccSfromMat = (TH1F*)list->FindObject("fHistPtTPCInAccSfromMat");
2236 NormalizePtHist(fHistPtTPCInAccSfromMat,nEventsSelWithVertex);
2237
2238
2239 TFile *f_nocut= new TFile("ITS.Performance_lhc09d10_500k_nod0z0cut.root");
2240
2241 TList *list=(TList*)f_nocut->Get("cOutputITS");
2242
2243 TH1F *fHistNEvents = (TH1F*)list->FindObject("fHistNEvents");
2244 nEventsSelWithVertex = fHistNEvents->GetBinContent(5);
2245
2246 TH1F *fHistPtITSTPCselnocut = (TH1F*)list->FindObject("fHistPtITSTPCsel");
2247 NormalizePtHist(fHistPtITSTPCselnocut,nEventsSelWithVertex);
2248 TH1F *fHistPtITSTPCselnocutP = (TH1F*)list->FindObject("fHistPtITSTPCselP");
2249 NormalizePtHist(fHistPtITSTPCselnocutP,nEventsSelWithVertex);
2250 TH1F *fHistPtITSTPCselnocutS = (TH1F*)list->FindObject("fHistPtITSTPCselS");
2251 NormalizePtHist(fHistPtITSTPCselnocutS,nEventsSelWithVertex);
2252 TH1F *fHistPtITSTPCselnocutPfromStrange = (TH1F*)list->FindObject("fHistPtITSTPCselPfromStrange");
2253 NormalizePtHist(fHistPtITSTPCselnocutPfromStrange,nEventsSelWithVertex);
2254 TH1F *fHistPtITSTPCselnocutSfromStrange = (TH1F*)list->FindObject("fHistPtITSTPCselSfromStrange");
2255 NormalizePtHist(fHistPtITSTPCselnocutSfromStrange,nEventsSelWithVertex);
2256 TH1F *fHistPtITSTPCselnocutSfromMat = (TH1F*)list->FindObject("fHistPtITSTPCselSfromMat");
2257 NormalizePtHist(fHistPtITSTPCselnocutSfromMat,nEventsSelWithVertex);
2258
2259 TH1F *fHistPtTPCInAccnocut = (TH1F*)list->FindObject("fHistPtTPCInAcc");
2260 NormalizePtHist(fHistPtTPCInAccnocut,nEventsSelWithVertex);
2261 TH1F *fHistPtTPCInAccnocutP = (TH1F*)list->FindObject("fHistPtTPCInAccP");
2262 NormalizePtHist(fHistPtTPCInAccnocutP,nEventsSelWithVertex);
2263 TH1F *fHistPtTPCInAccnocutS = (TH1F*)list->FindObject("fHistPtTPCInAccS");
2264 NormalizePtHist(fHistPtTPCInAccnocutS,nEventsSelWithVertex);
2265 TH1F *fHistPtTPCInAccnocutPfromStrange = (TH1F*)list->FindObject("fHistPtTPCInAccPfromStrange");
2266 NormalizePtHist(fHistPtTPCInAccnocutPfromStrange,nEventsSelWithVertex);
2267 TH1F *fHistPtTPCInAccnocutSfromStrange = (TH1F*)list->FindObject("fHistPtTPCInAccSfromStrange");
2268 NormalizePtHist(fHistPtTPCInAccnocutSfromStrange,nEventsSelWithVertex);
2269 TH1F *fHistPtTPCInAccnocutSfromMat = (TH1F*)list->FindObject("fHistPtTPCInAccSfromMat");
2270 NormalizePtHist(fHistPtTPCInAccnocutSfromMat,nEventsSelWithVertex);
2271
2272 // cut efficiencies
2273
2274 TH1F *fHistPtITSTPCeffselP = (TH1F*)fHistPtITSTPCselP->Clone("fHistPtITSTPCeffselP");
2275 fHistPtITSTPCeffselP->Divide(fHistPtITSTPCselnocutP);
2276 TH1F *fHistPtITSTPCeffselS = (TH1F*)fHistPtITSTPCselS->Clone("fHistPtITSTPCeffselS");
2277 fHistPtITSTPCeffselS->Divide(fHistPtITSTPCselnocutS);
2278 TH1F *fHistPtITSTPCeffselSfromStrange = (TH1F*)fHistPtITSTPCselSfromStrange->Clone("fHistPtITSTPCeffselSfromStrange");
2279 fHistPtITSTPCeffselSfromStrange->Divide(fHistPtITSTPCselnocutSfromStrange);
2280 TH1F *fHistPtITSTPCeffselSfromMat = (TH1F*)fHistPtITSTPCselSfromMat->Clone("fHistPtITSTPCeffselSfromMat");
2281 fHistPtITSTPCeffselSfromMat->Divide(fHistPtITSTPCselnocutSfromMat);
2282
2283 TH1F *fHistPtTPCeffInAccP = (TH1F*)fHistPtTPCInAccP->Clone("fHistPtTPCeffInAccP");
2284 fHistPtTPCeffInAccP->Divide(fHistPtTPCInAccnocutP);
2285 TH1F *fHistPtTPCeffInAccS = (TH1F*)fHistPtTPCInAccS->Clone("fHistPtTPCeffInAccS");
2286 fHistPtTPCeffInAccS->Divide(fHistPtTPCInAccnocutS);
2287 TH1F *fHistPtTPCeffInAccSfromStrange = (TH1F*)fHistPtTPCInAccSfromStrange->Clone("fHistPtTPCeffInAccSfromStrange");
2288 fHistPtTPCeffInAccSfromStrange->Divide(fHistPtTPCInAccnocutSfromStrange);
2289 TH1F *fHistPtTPCeffInAccSfromMat = (TH1F*)fHistPtTPCInAccSfromMat->Clone("fHistPtTPCeffInAccSfromMat");
2290 fHistPtTPCeffInAccSfromMat->Divide(fHistPtTPCInAccnocutSfromMat);
2291
2292
2293 TLegend *l0=new TLegend(0.5,0.5,0.9,0.9);
2294 TCanvas *c0=new TCanvas("c0","c0");
2295 c0->Divide(2,1);
2296 c0->cd(1);
2297 TH1F *fHistPtITSTPCselFracS = (TH1F*)fHistPtITSTPCselS->Clone("fHistPtITSTPCselFracS");
2298 fHistPtITSTPCselFracS->Divide(fHistPtITSTPCsel);
2299 fHistPtITSTPCselFracS->SetLineColor(2);
2300 l0->AddEntry(fHistPtITSTPCselFracS,"secondaries","l");
2301 fHistPtITSTPCselFracS->Draw();
2302 TH1F *fHistPtITSTPCselFracSfromStrange = (TH1F*)fHistPtITSTPCselSfromStrange->Clone("fHistPtITSTPCselFracSfromStrange");
2303 fHistPtITSTPCselFracSfromStrange->Divide(fHistPtITSTPCsel);
2304 fHistPtITSTPCselFracSfromStrange->SetLineColor(6);
2305 l0->AddEntry(fHistPtITSTPCselFracSfromStrange,"sec. from strange","l");
2306 fHistPtITSTPCselFracSfromStrange->Draw("same");
2307 TH1F *fHistPtITSTPCselFracSfromMat = (TH1F*)fHistPtITSTPCselSfromMat->Clone("fHistPtITSTPCselFracSfromMat");
2308 fHistPtITSTPCselFracSfromMat->Divide(fHistPtITSTPCsel);
2309 fHistPtITSTPCselFracSfromMat->SetLineColor(kOrange+7);
2310 l0->AddEntry(fHistPtITSTPCselFracSfromMat,"sec. from material","l");
2311 fHistPtITSTPCselFracSfromMat->Draw("same");
2312 l0->Draw();
2313 c0->cd(2);
2314 TH1F *fHistPtTPCInAccFracS = (TH1F*)fHistPtTPCInAccS->Clone("fHistPtTPCInAccFracS");
2315 fHistPtTPCInAccFracS->Divide(fHistPtTPCInAcc);
2316 fHistPtTPCInAccFracS->SetLineColor(2);
2317 fHistPtTPCInAccFracS->Draw();
2318 TH1F *fHistPtTPCInAccFracSfromStrange = (TH1F*)fHistPtTPCInAccSfromStrange->Clone("fHistPtTPCInAccFracSfromStrange");
2319 fHistPtTPCInAccFracSfromStrange->Divide(fHistPtTPCInAcc);
2320 fHistPtTPCInAccFracSfromStrange->SetLineColor(6);
2321 fHistPtTPCInAccFracSfromStrange->Draw("same");
2322 TH1F *fHistPtTPCInAccFracSfromMat = (TH1F*)fHistPtTPCInAccSfromMat->Clone("fHistPtTPCInAccFracSfromMat");
2323 fHistPtTPCInAccFracSfromMat->Divide(fHistPtTPCInAcc);
2324 fHistPtTPCInAccFracSfromMat->SetLineColor(kOrange+7);
2325 fHistPtTPCInAccFracSfromMat->Draw("same");
2326
2327 TLegend *l1=new TLegend(0.5,0.5,0.9,0.9);
2328 TCanvas *c1=new TCanvas("c1","c1");
2329 c1->Divide(2,1);
2330 c1->cd(1);
2331 fHistPtITSTPCeffselP->SetYTitle("dca cut efficiency");
2332 fHistPtITSTPCeffselP->SetLineColor(1);
2333 l1->AddEntry(fHistPtITSTPCeffselP,"primaries","l");
2334 fHistPtITSTPCeffselP->Draw();
2335 fHistPtITSTPCeffselS->SetLineColor(2);
2336 l1->AddEntry(fHistPtITSTPCeffselS,"secondaries","l");
2337 fHistPtITSTPCeffselS->Draw("same");
2338 fHistPtITSTPCeffselSfromStrange->SetLineColor(6);
2339 l1->AddEntry(fHistPtITSTPCeffselSfromStrange,"sec. from strange","l");
2340 fHistPtITSTPCeffselSfromStrange->Draw("same");
2341 fHistPtITSTPCeffselSfromMat->SetLineColor(kOrange+7);
2342 l1->AddEntry(fHistPtITSTPCeffselSfromMat,"sec. from material","l");
2343 fHistPtITSTPCeffselSfromMat->Draw("same");
2344 l1->Draw();
2345 c1->cd(2);
2346 fHistPtTPCeffInAccP->SetYTitle("dca cut efficiency");
2347 fHistPtTPCeffInAccP->SetLineColor(1);
2348 fHistPtTPCeffInAccP->Draw();
2349 fHistPtTPCeffInAccS->SetLineColor(2);
2350 fHistPtTPCeffInAccS->Draw("same");
2351 fHistPtTPCeffInAccSfromStrange->SetLineColor(6);
2352 fHistPtTPCeffInAccSfromStrange->Draw("same");
2353 fHistPtTPCeffInAccSfromMat->SetLineColor(kOrange+7);
2354 fHistPtTPCeffInAccSfromMat->Draw("same");
2355
2356
2357
2358 Float_t weightStrange=1.;
2359 Float_t weightMat=1.;
2360
2361 TH1F *fHistPtITSTPCselCocktail = MakeCocktail(fHistPtITSTPCselP,
2362 fHistPtITSTPCselPfromStrange,
2363 fHistPtITSTPCselS,
2364 fHistPtITSTPCselSfromStrange,
2365 fHistPtITSTPCselSfromMat,
2366 weightStrange,
2367 weightMat,
2368 "fHistPtITSTPCselCocktail");
2369
2370 TH1F *fHistPtITSTPCselPCocktail = CorrectToP(fHistPtITSTPCselCocktail,
2371 fHistPtITSTPCselSfromStrange,
2372 fHistPtITSTPCselSfromMat,
2373 weightStrange,
2374 weightMat,
2375 "fHistPtITSTPCselPCocktail");
2376
2377 TH1F *fHistPtITSTPCallPCocktail = CorrectToPnocut(fHistPtITSTPCselPCocktail,
2378 fHistPtITSTPCeffselP,
2379 "fHistPtITSTPCallPCocktail");
2380
2381
2382 TH1F *fHistPtTPCInAccCocktail = MakeCocktail(fHistPtTPCInAccP,
2383 fHistPtTPCInAccPfromStrange,
2384 fHistPtTPCInAccS,
2385 fHistPtTPCInAccSfromStrange,
2386 fHistPtTPCInAccSfromMat,
2387 weightStrange,
2388 weightMat,
2389 "fHistPtTPCInAccCocktail");
2390
2391 TH1F *fHistPtTPCInAccPCocktail = CorrectToP(fHistPtTPCInAccCocktail,
2392 fHistPtTPCInAccSfromStrange,
2393 fHistPtTPCInAccSfromMat,
2394 weightStrange,
2395 weightMat,
2396 "fHistPtTPCInAccPCocktail");
2397
2398 TH1F *fHistPtTPCallPCocktail = CorrectToPnocut(fHistPtTPCInAccPCocktail,
2399 fHistPtTPCeffInAccP,
2400 "fHistPtTPCallPCocktail");
2401
2402
2403
2404 TLegend *l2=new TLegend(0.5,0.5,0.9,0.9);
2405 TCanvas *c2 = new TCanvas("c2","c2");
2406 c2->Divide(2,1);
2407 c2->cd(1);
2408 fHistPtITSTPCselCocktail->SetLineColor(4);
2409 l2->AddEntry(fHistPtITSTPCselCocktail,"all, with dca cut","l");
2410 fHistPtITSTPCselCocktail->Draw();
2411 fHistPtITSTPCselPCocktail->SetLineColor(7);
2412 l2->AddEntry(fHistPtITSTPCselPCocktail,"primaries, with dca cut","l");
2413 fHistPtITSTPCselPCocktail->Draw("same");
2414 fHistPtITSTPCallPCocktail->SetLineColor(6);
2415 l2->AddEntry(fHistPtITSTPCallPCocktail,"primaries, w/o dca cut","l");
2416 fHistPtITSTPCallPCocktail->Draw("same");
2417 l2->Draw();
2418 c2->cd(2);
2419 fHistPtTPCInAccCocktail->SetLineColor(4);
2420 fHistPtTPCInAccCocktail->Draw();
2421 fHistPtTPCInAccPCocktail->SetLineColor(7);
2422 fHistPtTPCInAccPCocktail->Draw("same");
2423 fHistPtTPCallPCocktail->SetLineColor(6);
2424 fHistPtTPCallPCocktail->Draw("same");
2425
2426
2427 // systematic from secondaries
2428 weightStrange=1.3;
2429 weightMat=1.0;
2430 TH1F *fHistPtITSTPCselPCocktail1 = CorrectToP(fHistPtITSTPCselCocktail,
2431 fHistPtITSTPCselSfromStrange,
2432 fHistPtITSTPCselSfromMat,
2433 weightStrange,
2434 weightMat,
2435 "fHistPtITSTPCselPCocktail1");
2436 TH1F *fHistPtITSTPCallPCocktail1 = CorrectToPnocut(fHistPtITSTPCselPCocktail1,
2437 fHistPtITSTPCeffselP,
2438 "fHistPtITSTPCallPCocktail1");
2439 weightStrange=0.7;
2440 weightMat=1.0;
2441 TH1F *fHistPtITSTPCselPCocktail2 = CorrectToP(fHistPtITSTPCselCocktail,
2442 fHistPtITSTPCselSfromStrange,
2443 fHistPtITSTPCselSfromMat,
2444 weightStrange,
2445 weightMat,
2446 "fHistPtITSTPCselPCocktail2");
2447 TH1F *fHistPtITSTPCallPCocktail2 = CorrectToPnocut(fHistPtITSTPCselPCocktail2,
2448 fHistPtITSTPCeffselP,
2449 "fHistPtITSTPCallPCocktail2");
2450 weightStrange=1.0;
2451 weightMat=1.1;
2452 TH1F *fHistPtITSTPCselPCocktail3 = CorrectToP(fHistPtITSTPCselCocktail,
2453 fHistPtITSTPCselSfromStrange,
2454 fHistPtITSTPCselSfromMat,
2455 weightStrange,
2456 weightMat,
2457 "fHistPtITSTPCselPCocktail3");
2458 TH1F *fHistPtITSTPCallPCocktail3 = CorrectToPnocut(fHistPtITSTPCselPCocktail3,
2459 fHistPtITSTPCeffselP,
2460 "fHistPtITSTPCallPCocktail3");
2461 weightStrange=1.0;
2462 weightMat=0.9;
2463 TH1F *fHistPtITSTPCselPCocktail4 = CorrectToP(fHistPtITSTPCselCocktail,
2464 fHistPtITSTPCselSfromStrange,
2465 fHistPtITSTPCselSfromMat,
2466 weightStrange,
2467 weightMat,
2468 "fHistPtITSTPCselPCocktail4");
2469 TH1F *fHistPtITSTPCallPCocktail4 = CorrectToPnocut(fHistPtITSTPCselPCocktail4,
2470 fHistPtITSTPCeffselP,
2471 "fHistPtITSTPCallPCocktail4");
2472 weightStrange=1.3;
2473 weightMat=1.1;
2474 TH1F *fHistPtITSTPCselPCocktail5 = CorrectToP(fHistPtITSTPCselCocktail,
2475 fHistPtITSTPCselSfromStrange,
2476 fHistPtITSTPCselSfromMat,
2477 weightStrange,
2478 weightMat,
2479 "fHistPtITSTPCselPCocktail5");
2480 TH1F *fHistPtITSTPCallPCocktail5 = CorrectToPnocut(fHistPtITSTPCselPCocktail5,
2481 fHistPtITSTPCeffselP,
2482 "fHistPtITSTPCallPCocktail5");
2483 weightStrange=0.7;
2484 weightMat=0.9;
2485 TH1F *fHistPtITSTPCselPCocktail6 = CorrectToP(fHistPtITSTPCselCocktail,
2486 fHistPtITSTPCselSfromStrange,
2487 fHistPtITSTPCselSfromMat,
2488 weightStrange,
2489 weightMat,
2490 "fHistPtITSTPCselPCocktail6");
2491 TH1F *fHistPtITSTPCallPCocktail6 = CorrectToPnocut(fHistPtITSTPCselPCocktail6,
2492 fHistPtITSTPCeffselP,
2493 "fHistPtITSTPCallPCocktail6");
2494
2495 weightStrange=1.3;
2496 weightMat=1.0;
2497 TH1F *fHistPtTPCInAccPCocktail1 = CorrectToP(fHistPtTPCInAccCocktail,
2498 fHistPtTPCInAccSfromStrange,
2499 fHistPtTPCInAccSfromMat,
2500 weightStrange,
2501 weightMat,
2502 "fHistPtTPCInAccPCocktail1");
2503 TH1F *fHistPtTPCallPCocktail1 = CorrectToPnocut(fHistPtTPCInAccPCocktail1,
2504 fHistPtTPCeffInAccP,
2505 "fHistPtTPCallPCocktail1");
2506 weightStrange=0.7;
2507 weightMat=1.0;
2508 TH1F *fHistPtTPCInAccPCocktail2 = CorrectToP(fHistPtTPCInAccCocktail,
2509 fHistPtTPCInAccSfromStrange,
2510 fHistPtTPCInAccSfromMat,
2511 weightStrange,
2512 weightMat,
2513 "fHistPtTPCInAccPCocktail2");
2514 TH1F *fHistPtTPCallPCocktail2 = CorrectToPnocut(fHistPtTPCInAccPCocktail2,
2515 fHistPtTPCeffInAccP,
2516 "fHistPtTPCallPCocktail2");
2517 weightStrange=1.0;
2518 weightMat=1.1;
2519 TH1F *fHistPtTPCInAccPCocktail3 = CorrectToP(fHistPtTPCInAccCocktail,
2520 fHistPtTPCInAccSfromStrange,
2521 fHistPtTPCInAccSfromMat,
2522 weightStrange,
2523 weightMat,
2524 "fHistPtTPCInAccPCocktail3");
2525 TH1F *fHistPtTPCallPCocktail3 = CorrectToPnocut(fHistPtTPCInAccPCocktail3,
2526 fHistPtTPCeffInAccP,
2527 "fHistPtTPCallPCocktail3");
2528 weightStrange=1.0;
2529 weightMat=0.9;
2530 TH1F *fHistPtTPCInAccPCocktail4 = CorrectToP(fHistPtTPCInAccCocktail,
2531 fHistPtTPCInAccSfromStrange,
2532 fHistPtTPCInAccSfromMat,
2533 weightStrange,
2534 weightMat,
2535 "fHistPtTPCInAccPCocktail4");
2536 TH1F *fHistPtTPCallPCocktail4 = CorrectToPnocut(fHistPtTPCInAccPCocktail4,
2537 fHistPtTPCeffInAccP,
2538 "fHistPtTPCallPCocktail4");
2539 weightStrange=1.3;
2540 weightMat=1.1;
2541 TH1F *fHistPtTPCInAccPCocktail5 = CorrectToP(fHistPtTPCInAccCocktail,
2542 fHistPtTPCInAccSfromStrange,
2543 fHistPtTPCInAccSfromMat,
2544 weightStrange,
2545 weightMat,
2546 "fHistPtTPCInAccPCocktail5");
2547 TH1F *fHistPtTPCallPCocktail5 = CorrectToPnocut(fHistPtTPCInAccPCocktail5,
2548 fHistPtTPCeffInAccP,
2549 "fHistPtTPCallPCocktail5");
2550 weightStrange=0.7;
2551 weightMat=0.9;
2552 TH1F *fHistPtTPCInAccPCocktail6 = CorrectToP(fHistPtTPCInAccCocktail,
2553 fHistPtTPCInAccSfromStrange,
2554 fHistPtTPCInAccSfromMat,
2555 weightStrange,
2556 weightMat,
2557 "fHistPtTPCInAccPCocktail6");
2558 TH1F *fHistPtTPCallPCocktail6 = CorrectToPnocut(fHistPtTPCInAccPCocktail6,
2559 fHistPtTPCeffInAccP,
2560 "fHistPtTPCallPCocktail6");
2561
2562 TLegend *l3=new TLegend(0.5,0.5,0.9,0.9);
2563 TCanvas *c3 = new TCanvas("c3","c3");
2564 c3->Divide(2,1);
2565 c3->cd(1);
2566 l3->AddEntry(fHistPtITSTPCallPCocktail,"central","l");
2567 fHistPtITSTPCallPCocktail->Draw();
2568 l3->AddEntry(fHistPtITSTPCallPCocktail1,"strange #pm 30%","l");
2569 fHistPtITSTPCallPCocktail1->SetLineColor(1);
2570 fHistPtITSTPCallPCocktail2->SetLineColor(1);
2571 fHistPtITSTPCallPCocktail1->Draw("same");
2572 fHistPtITSTPCallPCocktail2->Draw("same");
2573 l3->AddEntry(fHistPtITSTPCallPCocktail3,"material #pm 10%","l");
2574 fHistPtITSTPCallPCocktail3->SetLineColor(8);
2575 fHistPtITSTPCallPCocktail4->SetLineColor(8);
2576 fHistPtITSTPCallPCocktail3->Draw("same");
2577 fHistPtITSTPCallPCocktail4->Draw("same");
2578 l3->AddEntry(fHistPtITSTPCallPCocktail5,"strange #pm 30% & material #pm 10%","l");
2579 fHistPtITSTPCallPCocktail5->SetLineColor(4);
2580 fHistPtITSTPCallPCocktail6->SetLineColor(4);
2581 fHistPtITSTPCallPCocktail5->Draw("same");
2582 fHistPtITSTPCallPCocktail6->Draw("same");
2583 l3->Draw();
2584 c3->cd(2);
2585 fHistPtTPCallPCocktail->Draw();
2586 fHistPtTPCallPCocktail1->SetLineColor(1);
2587 fHistPtTPCallPCocktail2->SetLineColor(1);
2588 fHistPtTPCallPCocktail1->Draw("same");
2589 fHistPtTPCallPCocktail2->Draw("same");
2590 fHistPtTPCallPCocktail3->SetLineColor(8);
2591 fHistPtTPCallPCocktail4->SetLineColor(8);
2592 fHistPtTPCallPCocktail3->Draw("same");
2593 fHistPtTPCallPCocktail4->Draw("same");
2594 fHistPtTPCallPCocktail5->SetLineColor(4);
2595 fHistPtTPCallPCocktail6->SetLineColor(4);
2596 fHistPtTPCallPCocktail5->Draw("same");
2597 fHistPtTPCallPCocktail6->Draw("same");
2598
2599 /*
2600 TCanvas *c4 = new TCanvas("c4","c4");
2601 c4->Divide(2,1);
2602 c4->cd(1);
2603 fHistPtITSTPCallPCocktail2->Add(fHistPtITSTPCallPCocktail,-1);
2604 fHistPtITSTPCallPCocktail2->Divide(fHistPtITSTPCallPCocktail);
2605 fHistPtITSTPCallPCocktail2->Draw();
2606 fHistPtITSTPCallPCocktail4->Add(fHistPtITSTPCallPCocktail,-1);
2607 fHistPtITSTPCallPCocktail4->Divide(fHistPtITSTPCallPCocktail);
2608 fHistPtITSTPCallPCocktail4->Draw("same");
2609 fHistPtITSTPCallPCocktail6->Add(fHistPtITSTPCallPCocktail,-1);
2610 fHistPtITSTPCallPCocktail6->Divide(fHistPtITSTPCallPCocktail);
2611 fHistPtITSTPCallPCocktail6->Draw("same");
2612 l3->Draw();
2613 c4->cd(2);
2614 fHistPtTPCallPCocktail2->Add(fHistPtTPCallPCocktail,-1);
2615 fHistPtTPCallPCocktail2->Divide(fHistPtTPCallPCocktail);
2616 fHistPtTPCallPCocktail2->Draw();
2617 fHistPtTPCallPCocktail4->Add(fHistPtTPCallPCocktail,-1);
2618 fHistPtTPCallPCocktail4->Divide(fHistPtTPCallPCocktail);
2619 fHistPtTPCallPCocktail4->Draw("same");
2620 fHistPtTPCallPCocktail6->Add(fHistPtTPCallPCocktail,-1);
2621 fHistPtTPCallPCocktail6->Divide(fHistPtTPCallPCocktail);
2622 fHistPtTPCallPCocktail6->Draw("same");
2623 */
2624
2625 return;
2626}
2627//-------------------------------------------------------------
2628void NormalizePtHist(TH1F *h,Float_t n) {
2629
2630 for(Int_t i=1; i<=h->GetNbinsX(); i++) {
2631 if(h->GetBinContent(i)) {
2632 h->SetBinContent(i,h->GetBinContent(i)/h->GetBinWidth(i));
2633 h->SetBinError(i,h->GetBinError(i)/h->GetBinWidth(i));
2634 }
2635 }
2636 h->Scale(1./n);
2637
2638 return;
2639}
2640//----------------------------------------------------------------------
2641TH1F *MakeCocktail(TH1F *fHistPtselP,
2642 TH1F *fHistPtselPfromStrange,
2643 TH1F *fHistPtselS,
2644 TH1F *fHistPtselSfromStrange,
2645 TH1F *fHistPtselSfromMat,
2646 Float_t weightStrange,
2647 Float_t weightMat,TString name) {
2648
2649 // build histogram with yield passing cut
2650 TH1F *fHistPtselCocktail = (TH1F*)fHistPtselP->Clone(name.Data());
2651 fHistPtselCocktail->Add(fHistPtselS);
2652 fHistPtselCocktail->Add(fHistPtselPfromStrange,weightStrange-1.);
2653 fHistPtselCocktail->Add(fHistPtselSfromStrange,weightStrange-1.);
2654 fHistPtselCocktail->Add(fHistPtselSfromMat,weightMat-1.);
2655
2656
2657 return fHistPtselCocktail;
2658}
2659//----------------------------------------------------------------------
2660TH1F *CorrectToP(TH1F *fHistPtselCocktail,
2661 TH1F *fHistPtselSfromStrange,
2662 TH1F *fHistPtselSfromMat,
2663 Float_t weightStrange,
2664 Float_t weightMat,TString name) {
2665
2666
2667 // build histogram with yield of primaries passing cut
2668 TH1F* fHistPtselPCocktail = (TH1F*)fHistPtselCocktail->Clone(name.Data());
2669 fHistPtselPCocktail->Add(fHistPtselSfromStrange,-weightStrange);
2670 fHistPtselPCocktail->Add(fHistPtselSfromMat,-weightMat);
2671
2672 return fHistPtselPCocktail;
2673}
2674//----------------------------------------------------------------------
2675TH1F *CorrectToPnocut(TH1F *fHistPtselPCocktail,
2676 TH1F *fHistPteffselP,TString name) {
2677
2678 // build histogram with yield of primaries without cut
2679 TH1F *fHistPtallPCocktail = (TH1F*)fHistPtselPCocktail->Clone(name.Data());
2680 //printf("%f\n",fHistPtallPCocktail->GetBinContent(6));
2681 fHistPtallPCocktail->Divide(fHistPteffselP);
2682 //printf("%f\n",fHistPtallPCocktail->GetBinContent(6));
2683
2684 return fHistPtallPCocktail;
2685}
2686//----------------------------------------------------------------------
2687void CompareTPCPt() {
2688
2689 TFile *f_tpcrefit= new TFile("ITS.Performance_104892pass2_etale05.root");
2690
2691 TList *list=(TList*)f_tpcrefit->Get("cOutputITS");
2692
2693 TH1F *fHistNEvents = (TH1F*)list->FindObject("fHistNEvents");
2694 Float_t nEventsSelWithVertex = fHistNEvents->GetBinContent(5);
2695
2696 TH1F *fHistPtTPCInAcc = (TH1F*)list->FindObject("fHistPtTPCInAcc");
2697 NormalizePtHist(fHistPtTPCInAcc,nEventsSelWithVertex);
2698 TH1F *fHistPtTPCInAccNoTRDout = (TH1F*)list->FindObject("fHistPtTPCInAccNoTRDout");
2699 NormalizePtHist(fHistPtTPCInAccNoTRDout,nEventsSelWithVertex);
2700 TH1F *fHistPtTPCInAccNoTOFout = (TH1F*)list->FindObject("fHistPtTPCInAccNoTOFout");
2701 NormalizePtHist(fHistPtTPCInAccNoTOFout,nEventsSelWithVertex);
2702 TH1F *fHistPtTPCInAccWithPtTPCAtVtx = (TH1F*)list->FindObject("fHistPtTPCInAccWithPtTPCAtVtx");
2703 NormalizePtHist(fHistPtTPCInAccWithPtTPCAtVtx,nEventsSelWithVertex);
2704 TH1F *fHistPtTPCInAccWithPtTPCAtInnerWall = (TH1F*)list->FindObject("fHistPtTPCInAccWithPtTPCAtInnerWall");
2705 NormalizePtHist(fHistPtTPCInAccWithPtTPCAtInnerWall,nEventsSelWithVertex);
2706
2707
2708 TFile *f_notpcrefit= new TFile("ITS.Performance_104892pass3_etale05.root");
2709
2710 TList *list=(TList*)f_notpcrefit->Get("cOutputITS");
2711
2712 TH1F *fHistNEventsNoRefit = (TH1F*)list->FindObject("fHistNEvents");
2713 nEventsSelWithVertex = fHistNEventsNoRefit->GetBinContent(5);
2714
2715 TH1F *fHistPtTPCInAccNoRefit = (TH1F*)list->FindObject("fHistPtTPCInAcc");
2716 NormalizePtHist(fHistPtTPCInAccNoRefit,nEventsSelWithVertex);
2717 TH1F *fHistPtTPCInAccNoTRDoutNoRefit = (TH1F*)list->FindObject("fHistPtTPCInAccNoTRDout");
2718 NormalizePtHist(fHistPtTPCInAccNoTRDoutNoRefit,nEventsSelWithVertex);
2719 TH1F *fHistPtTPCInAccNoTOFoutNoRefit = (TH1F*)list->FindObject("fHistPtTPCInAccNoTOFout");
2720 NormalizePtHist(fHistPtTPCInAccNoTOFoutNoRefit,nEventsSelWithVertex);
2721 TH1F *fHistPtTPCInAccWithPtTPCAtVtxNoRefit = (TH1F*)list->FindObject("fHistPtTPCInAccWithPtTPCAtVtx");
2722 NormalizePtHist(fHistPtTPCInAccWithPtTPCAtVtxNoRefit,nEventsSelWithVertex);
2723 TH1F *fHistPtTPCInAccWithPtTPCAtInnerWallNoRefit = (TH1F*)list->FindObject("fHistPtTPCInAccWithPtTPCAtInnerWall");
2724 NormalizePtHist(fHistPtTPCInAccWithPtTPCAtInnerWallNoRefit,nEventsSelWithVertex);
2725
2726
2727
2728 TLegend *l1 = new TLegend(0.5,0.5,0.9,0.9);
2729 TCanvas *c1=new TCanvas("c1","c1",0,0,1000,600);
2730 c1->Divide(2,1);
2731 c1->cd(1);
2732 fHistPtTPCInAcc->SetMarkerStyle(20);
2733 l1->AddEntry(fHistPtTPCInAcc,"p_{t} measurement:","");
2734 l1->AddEntry(fHistPtTPCInAcc,"at vtx, from main params","p");
2735 fHistPtTPCInAcc->Draw();
2736 fHistPtTPCInAccWithPtTPCAtVtx->SetMarkerStyle(21);
2737 fHistPtTPCInAccWithPtTPCAtVtx->SetMarkerColor(2);
2738 l1->AddEntry(fHistPtTPCInAccWithPtTPCAtVtx,"at vtx, from TPC params","p");
2739 fHistPtTPCInAccWithPtTPCAtVtx->Draw("same");
2740 fHistPtTPCInAccWithPtTPCAtInnerWall->SetMarkerStyle(25);
2741 fHistPtTPCInAccWithPtTPCAtInnerWall->SetMarkerColor(2);
2742 l1->AddEntry(fHistPtTPCInAccWithPtTPCAtInnerWall,"at r=80cm, from TPC params","p");
2743 fHistPtTPCInAccWithPtTPCAtInnerWall->Draw("same");
2744 fHistPtTPCInAccNoTOFout->SetMarkerStyle(23);
2745 fHistPtTPCInAccNoTOFout->SetMarkerColor(3);
2746 fHistPtTPCInAccNoTOFout->Draw("same");
2747 fHistPtTPCInAccNoTRDout->SetMarkerStyle(24);
2748 fHistPtTPCInAccNoTRDout->SetMarkerColor(4);
2749 fHistPtTPCInAccNoTRDout->Draw("same");
2750 l1->Draw();
2751 c1->cd(2);
2752 fHistPtTPCInAccNoRefit->SetMarkerStyle(20);
2753 fHistPtTPCInAccNoRefit->Draw();
2754 fHistPtTPCInAccWithPtTPCAtVtxNoRefit->SetMarkerStyle(21);
2755 fHistPtTPCInAccWithPtTPCAtVtxNoRefit->SetMarkerColor(2);
2756 fHistPtTPCInAccWithPtTPCAtVtxNoRefit->Draw("same");
2757 fHistPtTPCInAccWithPtTPCAtInnerWallNoRefit->SetMarkerStyle(25);
2758 fHistPtTPCInAccWithPtTPCAtInnerWallNoRefit->SetMarkerColor(2);
2759 fHistPtTPCInAccWithPtTPCAtInnerWallNoRefit->Draw("same");
2760 fHistPtTPCInAccNoTOFoutNoRefit->SetMarkerStyle(23);
2761 fHistPtTPCInAccNoTOFoutNoRefit->SetMarkerColor(3);
2762 fHistPtTPCInAccNoTOFoutNoRefit->Draw("same");
2763 fHistPtTPCInAccNoTRDoutNoRefit->SetMarkerStyle(24);
2764 fHistPtTPCInAccNoTRDoutNoRefit->SetMarkerColor(4);
2765 fHistPtTPCInAccNoTRDoutNoRefit->Draw("same");
2766 //l1->Draw();
2767
2768 return;
2769}
2770
2771TH1F* gHistTemplateStrange;
2772TH1F* gHistTemplatePandMat;
2773Float_t gd0min=0.15;
2774Float_t gd0max=1.5;
2775
2776
2777Double_t FitMCTemplate(Double_t *x, Double_t *par) {
2778 Double_t xx = x[0];
2779 if(TMath::Abs(xx)<gd0min) return 0;
2780 Int_t bin = gHistTemplateStrange->GetXaxis()->FindBin(xx);
2781 Double_t pandmat = par[0]*gHistTemplatePandMat->GetBinContent(bin);
2782 Double_t strange = par[1]*gHistTemplateStrange->GetBinContent(bin);
2783 return strange + pandmat;
2784}
2785
2786void FitImpPar_rphi() {
2787
2788 Int_t rebin=1;
2789
2790 TFile *fMC= new TFile("ITS.Performance_lhc10a8a12_trkvtx_noTPCdca_120310.root");
2791
2792 TList *list=(TList*)fMC->Get("cOutputITS");
2793 TH1F *fHistd0rphiITSMIoneSPDInAccPMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP150200");
2794 TH1F *fHistd0rphiITSMIoneSPDInAccSMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS150200");
2795 TH1F *fHistd0rphiITSMIoneSPDInAccSfromMatMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS150200fromMat");
2796 fHistd0rphiITSMIoneSPDInAccPMC->Rebin(rebin);
2797 fHistd0rphiITSMIoneSPDInAccSMC->Rebin(rebin);
2798 fHistd0rphiITSMIoneSPDInAccSfromMatMC->Rebin(rebin);
2799
2800 TH1F *fHistd0rphiITSMIoneSPDInAccSfromStrangeMC=(TH1F*)fHistd0rphiITSMIoneSPDInAccSMC->Clone("fHistd0rphiITSMIoneSPDInAccSfromStrangeMC");
2801 fHistd0rphiITSMIoneSPDInAccSfromStrangeMC->Add(fHistd0rphiITSMIoneSPDInAccSfromMatMC,-1.);
2802 TH1F *fHistd0rphiITSMIoneSPDInAccMC=(TH1F*)fHistd0rphiITSMIoneSPDInAccPMC->Clone("fHistd0rphiITSMIoneSPDInAccMC");
2803 fHistd0rphiITSMIoneSPDInAccMC->Add(fHistd0rphiITSMIoneSPDInAccSMC);
2804 //fHistd0rphiITSMIoneSPDInAccMC->Scale(1./fHistd0rphiITSMIoneSPDInAccMC->GetEntries());
2805 TH1F *fHistd0rphiITSMIoneSPDInAccPandMatMC=(TH1F*)fHistd0rphiITSMIoneSPDInAccPMC->Clone("fHistd0rphiITSMIoneSPDInAccPandMatMC");
2806 fHistd0rphiITSMIoneSPDInAccPandMatMC->Add(fHistd0rphiITSMIoneSPDInAccSfromMatMC);
2807
2808 // templates
2809 gHistTemplateStrange = (TH1F*)fHistd0rphiITSMIoneSPDInAccSfromStrangeMC->Clone("gHistTemplateStrange");
2810 gHistTemplatePandMat = (TH1F*)fHistd0rphiITSMIoneSPDInAccPandMatMC->Clone("gHistTemplatePandMat");
2811
2812
2813
2814
2815 TFile *f= new TFile("ITS.Performance_104065_104892_pass4_trkvtx_noTPCdca.root");
2816 //TFile *f= new TFile("ITS.Performance_lhc10a8_300k_trkvtx_noTPCdca.root");
2817
2818 TList *list=(TList*)f->Get("cOutputITS");
2819 TH1F *fHistd0rphiITSMIoneSPDInAccP = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP150200");
2820 TH1F *fHistd0rphiITSMIoneSPDInAccS = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS150200");
2821 fHistd0rphiITSMIoneSPDInAccP->Rebin(rebin);
2822 fHistd0rphiITSMIoneSPDInAccS->Rebin(rebin);
2823
2824 TH1F *fHistd0rphiITSMIoneSPDInAcc=(TH1F*)fHistd0rphiITSMIoneSPDInAccP->Clone("fHistd0rphiITSMIoneSPDInAcc");
2825 fHistd0rphiITSMIoneSPDInAcc->Add(fHistd0rphiITSMIoneSPDInAccS);
2826
2827
2828 TF1 *fitMCtemplate = new TF1("fitMCtemplate",FitMCTemplate,-gd0max,+gd0max,2);
2829
2830 TH1F* fHistd0rphiITSMIoneSPDInAccCopy = (TH1F*)fHistd0rphiITSMIoneSPDInAcc->Clone("fHistd0rphiITSMIoneSPDInAccCopy");
2831 for(Int_t ib=1;ib<=fHistd0rphiITSMIoneSPDInAccCopy->GetNbinsX();ib++) {
2832 if(TMath::Abs(fHistd0rphiITSMIoneSPDInAccCopy->GetBinCenter(ib))<gd0min) {
2833 fHistd0rphiITSMIoneSPDInAccCopy->SetBinContent(ib,0);
2834 fHistd0rphiITSMIoneSPDInAccCopy->SetBinError(ib,0);
2835 }
2836 }
2837 fHistd0rphiITSMIoneSPDInAccCopy->Fit("fitMCtemplate","RL");
2838
2839
2840 fHistd0rphiITSMIoneSPDInAccPandMatMC->Scale(fitMCtemplate->GetParameter(0));
2841 fHistd0rphiITSMIoneSPDInAccSfromStrangeMC->Scale(fitMCtemplate->GetParameter(1));
2842 TH1F *fHistd0rphiITSMIoneSPDInAccMCFit=(TH1F*)fHistd0rphiITSMIoneSPDInAccPandMatMC->Clone("fHistd0rphiITSMIoneSPDInAccMCFit");
2843 fHistd0rphiITSMIoneSPDInAccMCFit->Add(fHistd0rphiITSMIoneSPDInAccSfromStrangeMC);
2844
2845 TCanvas *c1 = new TCanvas("c1","c1",1000,1000);
2846 c1->SetLogy();
2847 fHistd0rphiITSMIoneSPDInAccCopy->SetMinimum(1);
2848 fHistd0rphiITSMIoneSPDInAccCopy->SetMaximum(2*fHistd0rphiITSMIoneSPDInAcc->GetMaximum());
2849 fHistd0rphiITSMIoneSPDInAcc->SetMinimum(1);
2850 fHistd0rphiITSMIoneSPDInAccMC->SetMinimum(1);
2851 fHistd0rphiITSMIoneSPDInAccSfromStrangeMC->SetMinimum(1);
2852 fHistd0rphiITSMIoneSPDInAccPandMatMC->SetMinimum(1);
2853 fHistd0rphiITSMIoneSPDInAccCopy->SetLineColor(4);
2854 fHistd0rphiITSMIoneSPDInAccCopy->Draw();
2855 fHistd0rphiITSMIoneSPDInAcc->SetLineColor(4);
2856 fHistd0rphiITSMIoneSPDInAcc->Draw("same");
2857 fHistd0rphiITSMIoneSPDInAccMCFit->SetLineColor(2);
2858 fHistd0rphiITSMIoneSPDInAccMCFit->Draw("same");
2859 fHistd0rphiITSMIoneSPDInAccSfromStrangeMC->SetLineColor(3);
2860 fHistd0rphiITSMIoneSPDInAccSfromStrangeMC->Draw("same");
2861 fHistd0rphiITSMIoneSPDInAccPandMatMC->SetLineColor(15);
2862 fHistd0rphiITSMIoneSPDInAccPandMatMC->Draw("same");
2863
2864
2865
2866 TCanvas *c3 = new TCanvas("c3","c3");
2867 c3->SetLogx();
2868 c3->SetGridx();
2869 c3->SetGridy();
2870 Float_t d0cut[15]={0.0301,0.0401,0.0501,0.0601,0.0801,0.101,0.151,0.201,0.251,0.301,0.401,0.601,0.801,1.001,1.401};
2871
2872 Float_t fracSfromStrange[15],fracSfromStrangeMC[15],fracSfromMatMC[15],fracS[15],fracSMC[15],fracSRatio[15];
2873 for(Int_t i=0;i<15;i++) {
2874 Int_t bin1=fHistd0rphiITSMIoneSPDInAccPandMatMC->FindBin(-d0cut[i]);
2875 Int_t bin2=fHistd0rphiITSMIoneSPDInAccPandMatMC->FindBin(+d0cut[i]);
2876 Float_t intDatacut=fHistd0rphiITSMIoneSPDInAcc->Integral(bin1,bin2);
2877 Float_t intMCcut=fHistd0rphiITSMIoneSPDInAccMC->Integral(bin1,bin2);
2878 Float_t intSfromStrangecut=fHistd0rphiITSMIoneSPDInAccSfromStrangeMC->Integral(bin1,bin2);
2879 Float_t intSfromMatcut=fHistd0rphiITSMIoneSPDInAccSfromMatMC->Integral(bin1,bin2);
2880 fracSfromStrange[i]=intSfromStrangecut/intDatacut;
2881 fracSfromStrangeMC[i]=intSfromStrangecut/fitMCtemplate->GetParameter(1)/intMCcut;
2882 fracSfromMatMC[i]=intSfromMatcut/intMCcut;
2883
2884 fracS[i]=fracSfromStrange[i]+fracSfromMatMC[i];
2885 fracSMC[i]=fracSfromStrangeMC[i]+fracSfromMatMC[i];
2886
2887 fracSRatio[i]=fracS[i]/fracSMC[i];
2888 }
2889 TGraph *gfracSfromStrange=new TGraph(15,d0cut,fracSfromStrange);
2890 gfracSfromStrange->SetMarkerColor(2);
2891 gfracSfromStrange->SetMarkerStyle(20);
2892 gfracSfromStrange->Draw("ap");
2893
2894 TGraph *gfracSfromStrangeMC=new TGraph(15,d0cut,fracSfromStrangeMC);
2895 gfracSfromStrangeMC->SetMarkerColor(1);
2896 gfracSfromStrangeMC->SetMarkerStyle(22);
2897 gfracSfromStrangeMC->Draw("p");
2898
2899 TGraph *gfracSfromMatMC=new TGraph(15,d0cut,fracSfromMatMC);
2900 gfracSfromMatMC->SetMarkerColor(4);
2901 gfracSfromMatMC->SetMarkerStyle(21);
2902 gfracSfromMatMC->Draw("p");
2903
2904 TGraph *gfracS=new TGraph(15,d0cut,fracS);
2905 gfracS->SetMarkerColor(2);
2906 gfracS->SetMarkerStyle(24);
2907 gfracS->Draw("p");
2908
2909 TGraph *gfracSMC=new TGraph(15,d0cut,fracSMC);
2910 gfracSMC->SetMarkerColor(1);
2911 gfracSMC->SetMarkerStyle(25);
2912 gfracSMC->Draw("p");
2913
2914
2915 TCanvas *c4 = new TCanvas("c4","c4");
2916 c4->SetLogx();
2917 c4->SetGridx();
2918 c4->SetGridy();
2919
2920 TGraph *gfracSRatio=new TGraph(15,d0cut,fracSRatio);
2921 gfracSRatio->SetMarkerColor(9);
2922 gfracSRatio->SetMarkerStyle(21);
2923 gfracSRatio->Draw("ap");
2924
2925
2926 return;
2927}
2928//-----------------------------------------------------------------------------
2929void PlotEffVSErrors() {
2930
2931 TFile *f1= new TFile("eff_104892_pd_testnew1.root");
2932
2933 TH1F *fHistPtITSMI6InAcctestnew1 = (TH1F*)f1->Get("fHistPtITSMI6InAcc");
2934 TH1F *fHistPtITSMIge2InAcctestnew1 = (TH1F*)f1->Get("fHistPtITSMIge2InAcc");
2935 TH1F *fHistPtITSMISPDInAcctestnew1 = (TH1F*)f1->Get("fHistPtITSMISPDInAcc");
2936 TH1F *fHistPtITSMIoneSPDInAcctestnew1 = (TH1F*)f1->Get("fHistPtITSMIoneSPDInAcc");
2937
2938 fHistPtITSMI6InAcctestnew1->SetMarkerStyle(20);
2939 fHistPtITSMIge2InAcctestnew1->SetMarkerStyle(20);
2940 fHistPtITSMISPDInAcctestnew1->SetMarkerStyle(20);
2941 fHistPtITSMIoneSPDInAcctestnew1->SetMarkerStyle(20);
2942 fHistPtITSMI6InAcctestnew1->SetMarkerColor(2);
2943 fHistPtITSMIge2InAcctestnew1->SetMarkerColor(1);
2944 fHistPtITSMISPDInAcctestnew1->SetMarkerColor(9);
2945 fHistPtITSMIoneSPDInAcctestnew1->SetMarkerColor(15);
2946
2947
2948 TFile *f2= new TFile("eff_104892_pd_testnew2.root");
2949
2950 TH1F *fHistPtITSMI6InAcctestnew2 = (TH1F*)f2->Get("fHistPtITSMI6InAcc");
2951 TH1F *fHistPtITSMIge2InAcctestnew2 = (TH1F*)f2->Get("fHistPtITSMIge2InAcc");
2952 TH1F *fHistPtITSMISPDInAcctestnew2 = (TH1F*)f2->Get("fHistPtITSMISPDInAcc");
2953 TH1F *fHistPtITSMIoneSPDInAcctestnew2 = (TH1F*)f2->Get("fHistPtITSMIoneSPDInAcc");
2954
2955 fHistPtITSMI6InAcctestnew2->SetMarkerStyle(21);
2956 fHistPtITSMIge2InAcctestnew2->SetMarkerStyle(21);
2957 fHistPtITSMISPDInAcctestnew2->SetMarkerStyle(21);
2958 fHistPtITSMIoneSPDInAcctestnew2->SetMarkerStyle(21);
2959 fHistPtITSMI6InAcctestnew2->SetMarkerColor(2);
2960 fHistPtITSMIge2InAcctestnew2->SetMarkerColor(1);
2961 fHistPtITSMISPDInAcctestnew2->SetMarkerColor(9);
2962 fHistPtITSMIoneSPDInAcctestnew2->SetMarkerColor(15);
2963
2964
2965 TFile *f3= new TFile("eff_104892_pd_testnew3.root");
2966
2967 TH1F *fHistPtITSMI6InAcctestnew3 = (TH1F*)f3->Get("fHistPtITSMI6InAcc");
2968 TH1F *fHistPtITSMIge2InAcctestnew3 = (TH1F*)f3->Get("fHistPtITSMIge2InAcc");
2969 TH1F *fHistPtITSMISPDInAcctestnew3 = (TH1F*)f3->Get("fHistPtITSMISPDInAcc");
2970 TH1F *fHistPtITSMIoneSPDInAcctestnew3 = (TH1F*)f3->Get("fHistPtITSMIoneSPDInAcc");
2971
2972 fHistPtITSMI6InAcctestnew3->SetMarkerStyle(22);
2973 fHistPtITSMIge2InAcctestnew3->SetMarkerStyle(22);
2974 fHistPtITSMISPDInAcctestnew3->SetMarkerStyle(22);
2975 fHistPtITSMIoneSPDInAcctestnew3->SetMarkerStyle(22);
2976 fHistPtITSMI6InAcctestnew3->SetMarkerColor(2);
2977 fHistPtITSMIge2InAcctestnew3->SetMarkerColor(1);
2978 fHistPtITSMISPDInAcctestnew3->SetMarkerColor(9);
2979 fHistPtITSMIoneSPDInAcctestnew3->SetMarkerColor(15);
2980
2981
2982 TFile *f5= new TFile("eff_104892_pd_testnew5.root");
2983
2984 TH1F *fHistPtITSMI6InAcctestnew5 = (TH1F*)f5->Get("fHistPtITSMI6InAcc");
2985 TH1F *fHistPtITSMIge2InAcctestnew5 = (TH1F*)f5->Get("fHistPtITSMIge2InAcc");
2986 TH1F *fHistPtITSMISPDInAcctestnew5 = (TH1F*)f5->Get("fHistPtITSMISPDInAcc");
2987 TH1F *fHistPtITSMIoneSPDInAcctestnew5 = (TH1F*)f5->Get("fHistPtITSMIoneSPDInAcc");
2988
2989 fHistPtITSMI6InAcctestnew5->SetMarkerStyle(24);
2990 fHistPtITSMIge2InAcctestnew5->SetMarkerStyle(24);
2991 fHistPtITSMISPDInAcctestnew5->SetMarkerStyle(24);
2992 fHistPtITSMIoneSPDInAcctestnew5->SetMarkerStyle(24);
2993 fHistPtITSMI6InAcctestnew5->SetMarkerColor(2);
2994 fHistPtITSMIge2InAcctestnew5->SetMarkerColor(1);
2995 fHistPtITSMISPDInAcctestnew5->SetMarkerColor(9);
2996 fHistPtITSMIoneSPDInAcctestnew5->SetMarkerColor(15);
2997
2998
2999 TFile *f6= new TFile("eff_104892_pd_testnew6.root");
3000
3001 TH1F *fHistPtITSMI6InAcctestnew6 = (TH1F*)f6->Get("fHistPtITSMI6InAcc");
3002 TH1F *fHistPtITSMIge2InAcctestnew6 = (TH1F*)f6->Get("fHistPtITSMIge2InAcc");
3003 TH1F *fHistPtITSMISPDInAcctestnew6 = (TH1F*)f6->Get("fHistPtITSMISPDInAcc");
3004 TH1F *fHistPtITSMIoneSPDInAcctestnew6 = (TH1F*)f6->Get("fHistPtITSMIoneSPDInAcc");
3005
3006 fHistPtITSMI6InAcctestnew6->SetMarkerStyle(25);
3007 fHistPtITSMIge2InAcctestnew6->SetMarkerStyle(25);
3008 fHistPtITSMISPDInAcctestnew6->SetMarkerStyle(25);
3009 fHistPtITSMIoneSPDInAcctestnew6->SetMarkerStyle(25);
3010 fHistPtITSMI6InAcctestnew6->SetMarkerColor(2);
3011 fHistPtITSMIge2InAcctestnew6->SetMarkerColor(1);
3012 fHistPtITSMISPDInAcctestnew6->SetMarkerColor(9);
3013 fHistPtITSMIoneSPDInAcctestnew6->SetMarkerColor(15);
3014
3015
3016 TFile *f7= new TFile("eff_104892_pd_testnew7.root");
3017
3018 TH1F *fHistPtITSMI6InAcctestnew7 = (TH1F*)f7->Get("fHistPtITSMI6InAcc");
3019 TH1F *fHistPtITSMIge2InAcctestnew7 = (TH1F*)f7->Get("fHistPtITSMIge2InAcc");
3020 TH1F *fHistPtITSMISPDInAcctestnew7 = (TH1F*)f7->Get("fHistPtITSMISPDInAcc");
3021 TH1F *fHistPtITSMIoneSPDInAcctestnew7 = (TH1F*)f7->Get("fHistPtITSMIoneSPDInAcc");
3022
3023 fHistPtITSMI6InAcctestnew7->SetMarkerStyle(23);
3024 fHistPtITSMIge2InAcctestnew7->SetMarkerStyle(23);
3025 fHistPtITSMISPDInAcctestnew7->SetMarkerStyle(23);
3026 fHistPtITSMIoneSPDInAcctestnew7->SetMarkerStyle(23);
3027 fHistPtITSMI6InAcctestnew7->SetMarkerColor(2);
3028 fHistPtITSMIge2InAcctestnew7->SetMarkerColor(1);
3029 fHistPtITSMISPDInAcctestnew7->SetMarkerColor(9);
3030 fHistPtITSMIoneSPDInAcctestnew7->SetMarkerColor(15);
3031
3032
3033 TFile *f8= new TFile("eff_104892_pd_testnew8.root");
3034
3035 TH1F *fHistPtITSMI6InAcctestnew8 = (TH1F*)f8->Get("fHistPtITSMI6InAcc");
3036 TH1F *fHistPtITSMIge2InAcctestnew8 = (TH1F*)f8->Get("fHistPtITSMIge2InAcc");
3037 TH1F *fHistPtITSMISPDInAcctestnew8 = (TH1F*)f8->Get("fHistPtITSMISPDInAcc");
3038 TH1F *fHistPtITSMIoneSPDInAcctestnew8 = (TH1F*)f8->Get("fHistPtITSMIoneSPDInAcc");
3039
3040 fHistPtITSMI6InAcctestnew8->SetMarkerStyle(28);
3041 fHistPtITSMIge2InAcctestnew8->SetMarkerStyle(28);
3042 fHistPtITSMISPDInAcctestnew8->SetMarkerStyle(28);
3043 fHistPtITSMIoneSPDInAcctestnew8->SetMarkerStyle(28);
3044 fHistPtITSMI6InAcctestnew8->SetMarkerColor(2);
3045 fHistPtITSMIge2InAcctestnew8->SetMarkerColor(1);
3046 fHistPtITSMISPDInAcctestnew8->SetMarkerColor(9);
3047 fHistPtITSMIoneSPDInAcctestnew8->SetMarkerColor(15);
3048
3049
3050 TCanvas *c= new TCanvas("c","c");
3051 fHistPtITSMI6InAcctestnew1->Draw();
3052 fHistPtITSMIge2InAcctestnew1->Draw("same");
3053 fHistPtITSMISPDInAcctestnew1->Draw("same");
3054 fHistPtITSMIoneSPDInAcctestnew1->Draw("same");
3055 fHistPtITSMI6InAcctestnew2->Draw("same");
3056 fHistPtITSMIge2InAcctestnew2->Draw("same");
3057 fHistPtITSMISPDInAcctestnew2->Draw("same");
3058 fHistPtITSMIoneSPDInAcctestnew2->Draw("same");
3059 fHistPtITSMI6InAcctestnew3->Draw("same");
3060 fHistPtITSMIge2InAcctestnew3->Draw("same");
3061 fHistPtITSMISPDInAcctestnew3->Draw("same");
3062 fHistPtITSMIoneSPDInAcctestnew3->Draw("same");
3063 fHistPtITSMI6InAcctestnew5->Draw("same");
3064 fHistPtITSMIge2InAcctestnew5->Draw("same");
3065 fHistPtITSMISPDInAcctestnew5->Draw("same");
3066 fHistPtITSMIoneSPDInAcctestnew5->Draw("same");
3067 fHistPtITSMI6InAcctestnew6->Draw("same");
3068 fHistPtITSMIge2InAcctestnew6->Draw("same");
3069 fHistPtITSMISPDInAcctestnew6->Draw("same");
3070 fHistPtITSMIoneSPDInAcctestnew6->Draw("same");
3071 fHistPtITSMI6InAcctestnew7->Draw("same");
3072 fHistPtITSMIge2InAcctestnew7->Draw("same");
3073 fHistPtITSMISPDInAcctestnew7->Draw("same");
3074 fHistPtITSMIoneSPDInAcctestnew7->Draw("same");
3075 fHistPtITSMI6InAcctestnew8->Draw("same");
3076 fHistPtITSMIge2InAcctestnew8->Draw("same");
3077 fHistPtITSMISPDInAcctestnew8->Draw("same");
3078 fHistPtITSMIoneSPDInAcctestnew8->Draw("same");
3079
3080
8fa56655 3081 return;
3082}
3083//--------------------------------------------------------------------------
3084void ReweightStrange(TH1F *hPt,TH1F* hPtPfromStrange,TH1F* hPtSfromStrange) {
3085
3086 for(Int_t i=1;i<=hPt->GetNbinsX();i++) {
3087 Double_t pt=hPt->GetBinCenter(i);
3088 Double_t weight=1.;
3089 Double_t weightP=1.;
3090 if(pt<.25) {
3091 weight=1.3;//1.;
3092 } else if(pt>=0.25 && pt<0.5) {
3093 weight=1.5;//1.3;
3094 } else if(pt>=0.5 && pt<1.1) {
3095 weight=1.7;//1.44;
3096 } else if(pt>=1.1) {
3097 weight=2;//1.7;
3098 }
3099
3100 weightP*=1.3;
3101 hPt->SetBinContent(i,hPt->GetBinContent(i)+(weight-1.)*hPtSfromStrange->GetBinContent(i));
3102 if(hPtPfromStrange) hPt->SetBinContent(i,hPt->GetBinContent(i)+(weightP-1.)*hPtPfromStrange->GetBinContent(i));
3103 }
3104
2308c814 3105 return;
3106}
b51e971f 3107//--------------------------------------------------------------------------
6eb43d54 3108void ITSTrackingTrending(Int_t firstrun=138870,Int_t lastrun=139510,
3109 TString pathBeforeRun="/alice/sim/2012/LHC12c4/",
3110 TString pathAfterRun="/QAresults.root",
3111 //TString pathBeforeRun="/alice/data/2011/LHC11d/000",
3112 //TString pathAfterRun="/ESDs/pass1/QAresults.root",
71f9d353 3113 //TString pathBeforeRun="/alice/data/2010/LHC10b/000",
3114 //TString pathAfterRun="/ESDs/pass2/QA9/QAresults.root",
af874c53 3115 TString pathAfterRun2="")
3116{
b51e971f 3117 //
3118 // Make ITS efficiency trending plots from QAresults.root files
3119 //
3120 gStyle->SetOptStat(0);
3121
d388aa11 3122 TGrid::Connect("alien://");
3123
b51e971f 3124 Float_t ioValues[100],ioErrors[100];
3125 Int_t index;
3126 Int_t nruns=lastrun-firstrun+1;
3127
3128
3129 TH1F *hFracSPD1 = new TH1F("hFracSPD1","SPD inner; run number; Fraction of HSs",nruns,firstrun-0.5,lastrun+0.5);
3130 hFracSPD1->SetLineColor(3);
3131 hFracSPD1->SetMarkerColor(3);
e75c9f34 3132 hFracSPD1->SetMarkerStyle(20);
b51e971f 3133 TH1F *hFracSPD2 = new TH1F("hFracSPD2","SPD outer; run number; Fraction of HSs",nruns,firstrun-0.5,lastrun+0.5);
3134 hFracSPD2->SetLineColor(8);
3135 hFracSPD2->SetMarkerColor(8);
3136
3137
3138 TH1F *hEffge2Pt02 = new TH1F("hEffge2Pt02","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
3139 hEffge2Pt02->SetLineWidth(2);
3140 hEffge2Pt02->SetLineColor(1);
3141 hEffge2Pt02->SetMarkerColor(1);
d388aa11 3142 hEffge2Pt02->SetMarkerStyle(20);
b51e971f 3143 TH1F *hEffge2Pt1 = new TH1F("hEffge2Pt1","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
3144 hEffge2Pt1->SetLineWidth(2);
3145 hEffge2Pt1->SetLineColor(1);
3146 hEffge2Pt1->SetMarkerColor(1);
d388aa11 3147 hEffge2Pt1->SetMarkerStyle(20);
b51e971f 3148 TH1F *hEffge2Pt10 = new TH1F("hEffge2Pt10","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
3149 hEffge2Pt10->SetLineWidth(2);
3150 hEffge2Pt10->SetLineColor(1);
3151 hEffge2Pt10->SetMarkerColor(1);
d388aa11 3152 hEffge2Pt10->SetMarkerStyle(20);
b51e971f 3153
3154 TH1F *hEff6Pt02 = new TH1F("hEff6Pt02","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
3155 hEff6Pt02->SetLineWidth(2);
3156 hEff6Pt02->SetLineColor(2);
3157 hEff6Pt02->SetMarkerColor(2);
d388aa11 3158 hEff6Pt02->SetMarkerStyle(20);
b51e971f 3159 TH1F *hEff6Pt1 = new TH1F("hEff6Pt1","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
3160 hEff6Pt1->SetLineWidth(2);
3161 hEff6Pt1->SetLineColor(2);
3162 hEff6Pt1->SetMarkerColor(2);
d388aa11 3163 hEff6Pt1->SetMarkerStyle(20);
b51e971f 3164 TH1F *hEff6Pt10 = new TH1F("hEff6Pt10","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
3165 hEff6Pt10->SetLineWidth(2);
3166 hEff6Pt10->SetLineColor(2);
3167 hEff6Pt10->SetMarkerColor(2);
d388aa11 3168 hEff6Pt10->SetMarkerStyle(20);
b51e971f 3169
3170 TH1F *hEffSPDPt02 = new TH1F("hEffSPDPt02","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
3171 hEffSPDPt02->SetLineWidth(2);
3172 hEffSPDPt02->SetLineColor(9);
3173 hEffSPDPt02->SetMarkerColor(9);
d388aa11 3174 hEffSPDPt02->SetMarkerStyle(20);
b51e971f 3175 TH1F *hEffSPDPt1 = new TH1F("hEffSPDPt1","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
3176 hEffSPDPt1->SetLineWidth(2);
3177 hEffSPDPt1->SetLineColor(9);
3178 hEffSPDPt1->SetMarkerColor(9);
d388aa11 3179 hEffSPDPt1->SetMarkerStyle(20);
b51e971f 3180 TH1F *hEffSPDPt10 = new TH1F("hEffSPDPt10","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
3181 hEffSPDPt10->SetLineWidth(2);
3182 hEffSPDPt10->SetLineColor(9);
3183 hEffSPDPt10->SetMarkerColor(9);
d388aa11 3184 hEffSPDPt10->SetMarkerStyle(20);
b51e971f 3185
3186 TH1F *hEffoneSPDPt02 = new TH1F("hEffoneSPDPt02","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
3187 hEffoneSPDPt02->SetLineWidth(2);
3188 hEffoneSPDPt02->SetLineColor(15);
3189 hEffoneSPDPt02->SetMarkerColor(15);
d388aa11 3190 hEffoneSPDPt02->SetMarkerStyle(20);
b51e971f 3191 TH1F *hEffoneSPDPt1 = new TH1F("hEffoneSPDPt1","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
3192 hEffoneSPDPt1->SetLineWidth(2);
3193 hEffoneSPDPt1->SetLineColor(15);
3194 hEffoneSPDPt1->SetMarkerColor(15);
d388aa11 3195 hEffoneSPDPt1->SetMarkerStyle(20);
b51e971f 3196 TH1F *hEffoneSPDPt10 = new TH1F("hEffoneSPDPt10","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
3197 hEffoneSPDPt10->SetLineWidth(2);
3198 hEffoneSPDPt10->SetLineColor(15);
3199 hEffoneSPDPt10->SetMarkerColor(15);
d388aa11 3200 hEffoneSPDPt10->SetMarkerStyle(20);
3201
b51e971f 3202 // loop on runs
3203 for(Int_t irun=firstrun; irun<=lastrun; irun++) {
3204 if(!KeepRun(irun)) continue;
3205
3206 TString path=pathBeforeRun;
3207 path+=irun;
3208 path.Append(pathAfterRun.Data());
3209 path.Prepend("alien://");
3210
e75c9f34 3211 printf("%s\n",path.Data());
3212
af874c53 3213 if(!PlotITSTrackingHists(path.Data(),ioValues,ioErrors)) {
3214 if(pathAfterRun2.Data()=="") continue;
3215 TString path2=pathBeforeRun;
3216 path2+=irun;
3217 path2.Append(pathAfterRun2.Data());
3218 path2.Prepend("alien://");
3219 if(!PlotITSTrackingHists(path2.Data(),ioValues,ioErrors)) continue;
3220 }
b51e971f 3221
3222 Int_t bin=hEffge2Pt1->FindBin(irun);
3223
3224
3225 // fill histos
3226 index=0;
3227 hFracSPD1->SetBinContent(bin,ioValues[index]);
3228 hFracSPD1->SetBinError(bin,.01);
3229 index=1;
3230 hFracSPD2->SetBinContent(bin,ioValues[index]);
3231 hFracSPD2->SetBinError(bin,.01);
3232
3233 index=2;
3234 hEffge2Pt02->SetBinContent(bin,ioValues[index]);
3235 hEffge2Pt02->SetBinError(bin,ioErrors[index]);
3236 index=3;
3237 hEffge2Pt1->SetBinContent(bin,ioValues[index]);
3238 hEffge2Pt1->SetBinError(bin,ioErrors[index]);
3239 index=4;
3240 hEffge2Pt10->SetBinContent(bin,ioValues[index]);
3241 hEffge2Pt10->SetBinError(bin,ioErrors[index]);
3242
3243 index=5;
3244 hEff6Pt02->SetBinContent(bin,ioValues[index]);
3245 hEff6Pt02->SetBinError(bin,ioErrors[index]);
3246 index=6;
3247 hEff6Pt1->SetBinContent(bin,ioValues[index]);
3248 hEff6Pt1->SetBinError(bin,ioErrors[index]);
3249 index=7;
3250 hEff6Pt10->SetBinContent(bin,ioValues[index]);
3251 hEff6Pt10->SetBinError(bin,ioErrors[index]);
3252
3253 index=8;
3254 hEffSPDPt02->SetBinContent(bin,ioValues[index]);
3255 hEffSPDPt02->SetBinError(bin,ioErrors[index]);
3256 index=9;
3257 hEffSPDPt1->SetBinContent(bin,ioValues[index]);
3258 hEffSPDPt1->SetBinError(bin,ioErrors[index]);
3259 index=10;
3260 hEffSPDPt10->SetBinContent(bin,ioValues[index]);
3261 hEffSPDPt10->SetBinError(bin,ioErrors[index]);
3262
3263 index=11;
3264 hEffoneSPDPt02->SetBinContent(bin,ioValues[index]);
3265 hEffoneSPDPt02->SetBinError(bin,ioErrors[index]);
3266 index=12;
3267 hEffoneSPDPt1->SetBinContent(bin,ioValues[index]);
3268 hEffoneSPDPt1->SetBinError(bin,ioErrors[index]);
3269 index=13;
3270 hEffoneSPDPt10->SetBinContent(bin,ioValues[index]);
3271 hEffoneSPDPt10->SetBinError(bin,ioErrors[index]);
3272
3273 }
3274
3275 TCanvas *cSPD = new TCanvas("cSPD","cSPD",0,0,1000,300);
3276 cSPD->SetGridy();
3277 hFracSPD1->SetMaximum(1.2);
3278 hFracSPD1->SetMaximum(0);
3279 hFracSPD1->Draw("p");
3280 hFracSPD2->Draw("same,p");
3281 TLegend* lSPD=new TLegend(0.9,0.8,1,1);
3282 lSPD->AddEntry(hFracSPD1,"Frac. SPD1 ON","l");
3283 lSPD->AddEntry(hFracSPD2,"Frac. SPD2 ON","l");
3284 lSPD->Draw();
3285
3286 TCanvas *cPt02 = new TCanvas("cPt02","cPt02",0,0,1000,300);
3287 cPt02->SetGridy();
3288 hEffge2Pt02->SetMaximum(1.2);
3289 hEffge2Pt02->SetMaximum(0);
3290 hEffge2Pt02->Draw();
3291 hEff6Pt02->Draw("same");
3292 hEffSPDPt02->Draw("same");
3293 hEffoneSPDPt02->Draw("same");
3294 TLegend* lPt02=new TLegend(0.9,0.8,1,1);
3295 lPt02->AddEntry(hEffge2Pt02,">=2 cls","l");
3296 lPt02->AddEntry(hEffoneSPDPt02,">=1 SPD + any","l");
3297 lPt02->AddEntry(hEffSPDPt02,"2 SPD + any","l");
3298 lPt02->AddEntry(hEff6Pt02,"6 cls","l");
3299 lPt02->Draw();
3300
3301 TCanvas *cPt1 = new TCanvas("cPt1","cPt1",0,0,1000,300);
3302 cPt1->SetGridy();
3303 hEffge2Pt1->SetMaximum(1.2);
3304 hEffge2Pt1->SetMaximum(0);
3305 hEffge2Pt1->Draw();
3306 hEff6Pt1->Draw("same");
3307 hEffSPDPt1->Draw("same");
3308 hEffoneSPDPt1->Draw("same");
3309 lPt02->Draw();
3310
3311 TCanvas *cPt10 = new TCanvas("cPt10","cPt10",0,0,1000,300);
3312 cPt10->SetGridy();
3313 hEffge2Pt10->SetMaximum(1.2);
3314 hEffge2Pt10->SetMaximum(0);
3315 hEffge2Pt10->Draw("p");
3316 hEff6Pt10->Draw("same,p");
3317 hEffSPDPt10->Draw("same,p");
3318 hEffoneSPDPt10->Draw("same,p");
3319 lPt02->Draw();
3320
3321 return;
3322}
3323//------------------------------------------------------------------------
3324Bool_t KeepRun(Int_t irun) {
3325
3326
71f9d353 3327
3328 // LHC10c good runs
3329 Int_t nruns10b=33;
3330 Int_t goodruns10b[33]={117222, 117220, 117116, 117112, 117109, 117099, 117092, 117086, 117077, 117065, 117063, 117060, 117059, 117054, 117053, 117052, 117050, 117048, 116645, 116643, 116574, 116571, 116562, 116403, 116402, 116288, 116102, 115414, 115401, 115393, 115193, 115186, 114931};
3331
b51e971f 3332 // LHC10c good runs
af874c53 3333 Int_t nruns10c=46;
3334 Int_t goodruns10c[46]={121040, 121039, 120829, 120825, 120824, 120823, 120822, 120821, 120820, 120758, 120750, 120741, 120671, 120617, 120616, 120505, 120504, 120503, 120244, 120079, 120076, 120073, 120072, 120069, 120067, 119862, 119859, 119856, 119853, 119849, 119846, 119845, 119844, 119842, 119841, 119163, 119161, 119159, 118561, 118560, 118558, 118556, 118518, 118512, 118507, 118506};
3335 //
3336
3337 // LHC10d good runs
3338 Int_t nruns10d=80;
3339 Int_t goodruns10d[80]={126437, 126432, 126425, 126424, 126422, 126409, 126408, 126407, 126406, 126405, 126404, 126403, 126359, 126352, 126351, 126350, 126285, 126284, 126283, 126168, 126167, 126160, 126158, 126097, 126090, 126088, 126082, 126081, 126078, 126073, 126008, 126007, 126004, 125855, 125851, 125850, 125849, 125848, 125847, 125844, 125843, 125842, 125633, 125632, 125630, 125628, 125296, 125295, 125186, 125156, 125140, 125139, 125134, 125133, 125101, 125100, 125097, 125085, 125083, 125023, 124751, 124750, 124746, 124702, 124608, 124607, 124606, 124605, 124604, 124381, 124380, 124378, 124367, 124362, 124358, 124355, 124191, 124187, 122375, 122374};
b51e971f 3340 //
3341
af874c53 3342 // LHC10e good runs
e75c9f34 3343 Int_t nruns10e=158;
3344 Int_t goodruns10e[158]={130369, 130365, 130360, 130358, 130356, 130354, 130353, 130348, 130343, 130342, 130179, 130178, 130172, 130170, 130168, 130158, 130157, 130156, 130151, 130149, 130148, 129983, 129966, 129962, 129961, 129960, 129959, 129763, 129760, 129750, 129748, 129747, 129745, 129744, 129742, 129738, 129736, 129735, 129734, 129731, 129729, 129726, 129725, 129723, 129667, 129666, 129659, 129655, 129654, 129653, 129652, 129651, 129650, 129649, 129648, 129647, 129641, 129639, 129599, 129598, 129597, 129587, 129586, 129541, 129540, 129536, 129529, 129528, 129527, 129526, 129525, 129524, 129523, 129522, 129521, 129520, 129519, 129516, 129515, 129514, 129513, 129512, 129510, 129508, 129042, 129041, 128913, 128912, 128911, 128910, 128855, 128853, 128850, 128849, 128843, 128836, 128835, 128833, 128824, 128823, 128820, 128819, 128817, 128813, 128777, 128776, 128678, 128677, 128621, 128615, 128611, 128609, 128605, 128596, 128594, 128592, 128590, 128582, 128581, 128507, 128506, 128505, 128504, 128503, 128498, 128495, 128494, 128486, 128483, 128452, 128366, 128260, 128257, 128192, 128191, 128189, 128186, 128185, 128182, 128180, 128175, 128053, 127942, 127941, 127937, 127936, 127935, 127933, 127932, 127931, 127822, 127817, 127815, 127814, 127730, 127729, 127724, 127719};
3345
d388aa11 3346
3347
3348 // LHC10h good runs
e75c9f34 3349 Int_t nruns10h=49;
3350 Int_t goodruns10h[49]={138624, 138637, 138666, 138730, 138731, 138732, 138737, 138740, 138742, 138830, 138836, 138871, 138872, 138924, 138965, 138972, 138977, 138978, 138980, 138982, 138983, 139029, 139036, 139037, 139038, 139042, 139105, 139107, 139309, 139310, 139314, 139360, 139438, 139439, 139440, 139441, 139465, 139466, 139467, 139470, 139471, 139503, 139505, 139507, 139510, 139511, 139513, 139514, 139517};
d388aa11 3351
e75c9f34 3352 /*
3353 Int_t nruns10h=91;
3354 Int_t goodruns10h[91]={139510, 139507, 139505, 139503, 139465, 139438, 139437, 139360, 139329, 139328, 139314, 139310, 139309, 139173, 139107, 139105, 139038, 139037, 139036, 139029, 139028, 138872, 138871, 138870, 138837, 138732, 138730, 138666, 138662, 138653, 138652, 138638, 138624, 138621, 138583, 138582, 138579, 138578, 138534, 138469, 138442, 138439, 138438, 138396, 138364, 138275, 138225, 138201, 138197, 138192, 138190, 137848, 137844, 137752, 137751, 137724, 137722, 137718, 137704, 137693, 137692, 137691, 137686, 137685, 137639, 137638, 137608, 137595, 137549, 137546, 137544, 137541, 137539, 137531, 137530, 137443, 137441, 137440, 137439, 137434, 137432, 137431, 137430, 137366, 137243, 137236, 137235, 137232, 137231, 137162, 137161};
3355 */
d388aa11 3356
e75c9f34 3357 // LHC11b good runs
3358 Int_t nruns11b=83;
3359 Int_t goodruns11b[83]={148531, 148541, 148544, 148648, 148800, 148847, 148857, 149102, 149115, 149122, 149123, 149367, 149382, 149389, 149395, 149398, 149432, 149434, 149442, 149449, 149452, 149453, 149456, 149461, 149462, 149472, 149484, 149487, 149499, 149529, 149530, 149531, 149533, 149534, 149540, 149543, 149544, 149545, 149547, 149549, 149582, 149584, 149585, 149588, 149590, 149592, 149594, 149596, 149598, 149600, 149604, 149657, 149669, 149680, 149682, 149712, 149723, 149726, 149727, 149734, 149735, 149740, 149746, 149749, 149757, 149761, 149769, 149771, 149772, 149773, 149774, 149775, 149776, 149781, 149785, 149786, 149789, 149790, 150375, 150421, 150586, 150589, 150705};
d388aa11 3360
e75c9f34 3361 // LHC11c good runs
3362 Int_t nruns11c=244;
3363 Int_t goodruns11c[244]={154570, 154495, 154485, 154483, 154482, 154480, 154478, 154448, 154385, 154383, 154382, 154296, 154293, 154289, 154286, 154283, 154281, 154273, 154270, 154269, 154266, 154264, 154261, 154257, 154252, 154222, 154221, 154220, 154219, 154211, 154207, 154163, 154158, 154151, 154145, 154143, 154141, 154138, 154136, 154132, 154131, 154130, 154129, 154126, 154125, 154091, 154083, 154081, 154039, 154031, 154030, 154026, 154024, 154018, 153954, 153946, 153944, 153939, 153938, 153935, 153929, 153924, 153916, 153911, 153909, 153906, 153876, 153875, 153873, 153812, 153808, 153807, 153805, 153798, 153796, 153794, 153784, 153781, 153779, 153778, 153777, 153776, 153738, 153733, 153728, 153727, 153726, 153725, 153718, 153709, 153702, 153594, 153591, 153589, 153588, 153587, 153583, 153578, 153571, 153570, 153566, 153560, 153558, 153552, 153548, 153544, 153542, 153541, 153539, 153536, 153533, 153513, 153465, 153415, 153413, 153373, 153371, 153369, 153363, 153362, 153360, 153296, 153234, 153232, 153227, 153223, 153127, 153121, 153120, 153117, 153116, 153115, 153059, 153056, 152935, 152934, 152907, 152823, 152822, 152821, 152820, 152819, 152817, 152780, 152773, 152772, 152751, 152750, 152718, 152717, 152716, 152715, 152708, 152702, 152701, 152698, 152697, 152696, 152695, 152658, 152581, 152513, 152512, 152488, 152455, 152377, 152371, 152369, 152368, 152367, 152334, 152332, 152323, 152322, 152321, 152320, 152319, 152318, 152314, 152313, 152312, 152311, 152310, 152309, 152307, 152306, 152304, 152285, 152284, 152257, 152256, 152214, 152209, 152208, 152207, 152206, 152146, 152138, 152137, 152136, 152091, 152090, 152089, 152087, 152086, 152083, 152082, 152081, 152079, 152078, 152046, 152015, 152011, 152008, 152007, 152005, 152003, 152002, 151852, 151851, 151850, 151849, 151810, 151809, 151752, 151751, 151732, 151724, 151689, 151681, 151680, 151678, 151674, 151672, 151671, 151669, 151666, 151665, 151664, 151661, 151660, 151655, 151638, 151636};
d388aa11 3364
e75c9f34 3365 // LHC11d good runs
3366 Int_t nruns11d=81;
3367 Int_t goodruns11d[81]={158508, 158509, 158511, 158518, 158520, 158521, 158526, 158528, 158531, 158592, 158602, 158604, 158611, 158615, 158622, 158626, 158706, 158717, 158722, 158745, 158777, 158780, 158784, 158788, 158791, 158793, 158794, 158848, 158868, 158876, 158877, 158879, 159028, 159042, 159076, 159090, 159120, 159121, 159128, 159147, 159154, 159162, 159168, 159173, 159185, 159191, 159193, 159199, 159201, 159205, 159207, 159214, 159216, 159218, 159221, 159223, 159255, 159258, 159260, 159285, 159286, 159318, 159379, 159451, 159503, 159517, 159521, 159535, 159538, 159571, 159577, 159580, 159581, 159582, 159586, 159593, 159595, 159599, 159602, 159606, 159635};
af874c53 3368
b51e971f 3369
3370 Bool_t found=kFALSE;
af874c53 3371 Int_t i=0;
3372
71f9d353 3373 for(i=0; i<nruns10b; i++) {
3374 if(irun==goodruns10b[i]) {found=kTRUE; break;}
3375 }
3376 if(found) return kTRUE;
3377
af874c53 3378 for(i=0; i<nruns10c; i++) {
3379 if(irun==goodruns10c[i]) {found=kTRUE; break;}
3380 }
3381 if(found) return kTRUE;
3382
3383 for(i=0; i<nruns10d; i++) {
3384 if(irun==goodruns10d[i]) {found=kTRUE; break;}
3385 }
b51e971f 3386 if(found) return kTRUE;
af874c53 3387
3388 for(i=0; i<nruns10e; i++) {
3389 if(irun==goodruns10e[i]) {found=kTRUE; break;}
3390 }
3391 if(found) return kTRUE;
3392
d388aa11 3393 for(i=0; i<nruns10h; i++) {
3394 if(irun==goodruns10h[i]) {found=kTRUE; break;}
3395 }
3396 if(found) return kTRUE;
3397
e75c9f34 3398 for(i=0; i<nruns11b; i++) {
3399 if(irun==goodruns11b[i]) {found=kTRUE; break;}
3400 }
3401 if(found) return kTRUE;
3402
3403 for(i=0; i<nruns11c; i++) {
3404 if(irun==goodruns11c[i]) {found=kTRUE; break;}
3405 }
3406 if(found) return kTRUE;
3407
3408 for(i=0; i<nruns11d; i++) {
3409 if(irun==goodruns11d[i]) {found=kTRUE; break;}
d388aa11 3410 }
3411 if(found) return kTRUE;
3412
3413
b51e971f 3414 return kFALSE;
3415}
af874c53 3416//-------------------------------------------------------------------------
3417void FakesWithChi2Cut(TString fname) {
3418
3419 gStyle->SetOptStat(0);
3420
3421 TFile *f= TFile::Open(fname.Data());
3422 if(!f) return kFALSE;
3423
3424 TList *list=(TList*)f->Get("cOutputITS");
3425 TDirectoryFile *dir=0;
3426 if(!list) {
3427 dir=(TDirectoryFile*)f->GetDirectory("ITS_Performance");
3428 if(dir) list = (TList*)dir->Get("cOutputITS");
3429 }
3430
3431 if(!list) return kFALSE;
3432
3433
3434
3435
3436 TH1F *fHistRedChi2AllPt02 = (TH1F*)list->FindObject("fHistITSRedChi2NonFakePt02");
3437 TH1F *fHistRedChi2FakesPt02 = (TH1F*)list->FindObject("fHistITSRedChi2FakePt02");
3438 TH1F *fHistRedChi2NonFakesPt02 = (TH1F*)fHistRedChi2AllPt02->Clone("fHistITSRedChi2NonFakePt02");
3439 fHistRedChi2NonFakesPt02->Add(fHistRedChi2FakesPt02,-1.);
3440
3441 TH1F *fHistFakeFracVSChi2CutPt02 = (TH1F*)fHistRedChi2AllPt02->Clone("fHistFakeFracVSChi2CutPt02");
3442 fHistFakeFracVSChi2CutPt02->SetLineColor(2);
3443 fHistFakeFracVSChi2CutPt02->SetLineWidth(2);
3444 TH1F *fHistNonFakeEffVSChi2CutPt02 = (TH1F*)fHistRedChi2AllPt02->Clone("fHistFakeEffVSChi2CutPt02");
3445 fHistNonFakeEffVSChi2CutPt02->SetLineColor(4);
3446 fHistNonFakeEffVSChi2CutPt02->SetLineWidth(2);
3447
3448 for(Int_t bin=1;bin<=fHistFakeFracVSChi2CutPt02->GetNbinsX();bin++) {
3449 Float_t fakesBelowCut=fHistRedChi2FakesPt02->Integral(1,bin);
3450 Float_t nonfakesBelowCut=fHistRedChi2NonFakesPt02->Integral(1,bin);
3451 Float_t allBelowCut=fHistRedChi2AllPt02->Integral(1,bin);
3452 Float_t nonfakesNoCut=fHistRedChi2NonFakesPt02->Integral();
3453 fHistFakeFracVSChi2CutPt02->SetBinContent(bin,fakesBelowCut/allBelowCut);
3454 fHistNonFakeEffVSChi2CutPt02->SetBinContent(bin,nonfakesBelowCut/nonfakesNoCut);
3455 }
3456
3457 TH1F *fHistRedChi2AllPt05 = (TH1F*)list->FindObject("fHistITSRedChi2NonFakePt05");
3458 TH1F *fHistRedChi2FakesPt05 = (TH1F*)list->FindObject("fHistITSRedChi2FakePt05");
3459 TH1F *fHistRedChi2NonFakesPt05 = (TH1F*)fHistRedChi2AllPt05->Clone("fHistITSRedChi2NonFakePt05");
3460 fHistRedChi2NonFakesPt05->Add(fHistRedChi2FakesPt05,-1.);
3461
3462 TH1F *fHistFakeFracVSChi2CutPt05 = (TH1F*)fHistRedChi2AllPt05->Clone("fHistFakeFracVSChi2CutPt05");
3463 fHistFakeFracVSChi2CutPt05->SetLineColor(2);
3464 fHistFakeFracVSChi2CutPt05->SetLineWidth(2);
3465 TH1F *fHistNonFakeEffVSChi2CutPt05 = (TH1F*)fHistRedChi2AllPt05->Clone("fHistFakeEffVSChi2CutPt05");
3466 fHistNonFakeEffVSChi2CutPt05->SetLineColor(4);
3467 fHistNonFakeEffVSChi2CutPt05->SetLineWidth(2);
3468
3469 for(Int_t bin=1;bin<=fHistFakeFracVSChi2CutPt05->GetNbinsX();bin++) {
3470 Float_t fakesBelowCut=fHistRedChi2FakesPt05->Integral(1,bin);
3471 Float_t nonfakesBelowCut=fHistRedChi2NonFakesPt05->Integral(1,bin);
3472 Float_t allBelowCut=fHistRedChi2AllPt05->Integral(1,bin);
3473 Float_t nonfakesNoCut=fHistRedChi2NonFakesPt05->Integral();
3474 fHistFakeFracVSChi2CutPt05->SetBinContent(bin,fakesBelowCut/allBelowCut);
3475 fHistNonFakeEffVSChi2CutPt05->SetBinContent(bin,nonfakesBelowCut/nonfakesNoCut);
3476 }
3477
3478 TH1F *fHistRedChi2AllPt1 = (TH1F*)list->FindObject("fHistITSRedChi2NonFakePt1");
3479 TH1F *fHistRedChi2FakesPt1 = (TH1F*)list->FindObject("fHistITSRedChi2FakePt1");
3480 TH1F *fHistRedChi2NonFakesPt1 = (TH1F*)fHistRedChi2AllPt1->Clone("fHistITSRedChi2NonFakePt1");
3481 fHistRedChi2NonFakesPt1->Add(fHistRedChi2FakesPt1,-1.);
3482
3483 TH1F *fHistFakeFracVSChi2CutPt1 = (TH1F*)fHistRedChi2AllPt1->Clone("fHistFakeFracVSChi2CutPt1");
3484 fHistFakeFracVSChi2CutPt1->SetLineColor(2);
3485 fHistFakeFracVSChi2CutPt1->SetLineWidth(2);
3486 TH1F *fHistNonFakeEffVSChi2CutPt1 = (TH1F*)fHistRedChi2AllPt1->Clone("fHistFakeEffVSChi2CutPt1");
3487 fHistNonFakeEffVSChi2CutPt1->SetLineColor(4);
3488 fHistNonFakeEffVSChi2CutPt1->SetLineWidth(2);
3489
3490 for(Int_t bin=1;bin<=fHistFakeFracVSChi2CutPt1->GetNbinsX();bin++) {
3491 Float_t fakesBelowCut=fHistRedChi2FakesPt1->Integral(1,bin);
3492 Float_t nonfakesBelowCut=fHistRedChi2NonFakesPt1->Integral(1,bin);
3493 Float_t allBelowCut=fHistRedChi2AllPt1->Integral(1,bin);
3494 Float_t nonfakesNoCut=fHistRedChi2NonFakesPt1->Integral();
3495 fHistFakeFracVSChi2CutPt1->SetBinContent(bin,fakesBelowCut/allBelowCut);
3496 fHistNonFakeEffVSChi2CutPt1->SetBinContent(bin,nonfakesBelowCut/nonfakesNoCut);
3497 }
3498
3499
3500 TCanvas *c=new TCanvas("c","c",0,0,1000,500);
3501 c->Divide(3,1);
3502 c->cd(1);
3503 fHistRedChi2NonFakesPt02->Scale(1./fHistRedChi2NonFakesPt02->Integral());
3504 fHistRedChi2NonFakesPt02->SetLineColor(4);
3505 fHistRedChi2NonFakesPt02->Draw();
3506 fHistRedChi2FakesPt02->Scale(1./fHistRedChi2FakesPt02->Integral());
3507 fHistRedChi2FakesPt02->SetLineColor(2);
3508 fHistRedChi2FakesPt02->Draw("same");
3509 c->cd(2);
3510 fHistRedChi2NonFakesPt05->Scale(1./fHistRedChi2NonFakesPt05->Integral());
3511 fHistRedChi2NonFakesPt05->SetLineColor(4);
3512 fHistRedChi2NonFakesPt05->Draw();
3513 fHistRedChi2FakesPt05->Scale(1./fHistRedChi2FakesPt05->Integral());
3514 fHistRedChi2FakesPt05->SetLineColor(2);
3515 fHistRedChi2FakesPt05->Draw("same");
3516 c->cd(3);
3517 fHistRedChi2NonFakesPt1->Scale(1./fHistRedChi2NonFakesPt1->Integral());
3518 fHistRedChi2NonFakesPt1->SetLineColor(4);
3519 fHistRedChi2NonFakesPt1->Draw();
3520 fHistRedChi2FakesPt1->Scale(1./fHistRedChi2FakesPt1->Integral());
3521 fHistRedChi2FakesPt1->SetLineColor(2);
3522 fHistRedChi2FakesPt1->Draw("same");
3523
3524 TCanvas *cc=new TCanvas("cc","cc",0,0,1000,500);
3525 cc->Divide(3,1);
3526 cc_1->SetLogx();
3527 cc_2->SetLogx();
3528 cc_3->SetLogx();
3529 cc->cd(1);
3530 fHistFakeFracVSChi2CutPt02->SetXTitle("maximum ITS #chi^{2}/nclusters");
3531 fHistFakeFracVSChi2CutPt02->SetMinimum(0);
3532 fHistFakeFracVSChi2CutPt02->SetMaximum(1);
3533 fHistFakeFracVSChi2CutPt02->Draw();
3534 fHistNonFakeEffVSChi2CutPt02->Draw("same");
3535 cc->cd(2);
3536 fHistFakeFracVSChi2CutPt05->SetXTitle("maximum ITS #chi^{2}/nclusters");
3537 fHistFakeFracVSChi2CutPt05->SetMinimum(0);
3538 fHistFakeFracVSChi2CutPt05->SetMaximum(1);
3539 fHistFakeFracVSChi2CutPt05->Draw();
3540 fHistNonFakeEffVSChi2CutPt05->Draw("same");
3541 cc->cd(3);
3542 fHistFakeFracVSChi2CutPt1->SetXTitle("maximum ITS #chi^{2}/nclusters");
3543 fHistFakeFracVSChi2CutPt1->SetMinimum(0);
3544 fHistFakeFracVSChi2CutPt1->SetMaximum(1);
3545 fHistFakeFracVSChi2CutPt1->Draw();
3546 fHistNonFakeEffVSChi2CutPt1->Draw("same");
3547
3548
3549
3550 return;
3551}