]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG1/macros/PlotITSTrackingHists.C
Trending plots for efficiency VS run
[u/mrichter/AliRoot.git] / PWG1 / macros / PlotITSTrackingHists.C
1 Bool_t PlotITSTrackingHists(TString fname="ITS.Performance.root",
2                             Float_t *ioValues=0,Float_t *ioErrors=0) 
3 {
4   //
5   // Macro to plot the histos from the task AliAnalysisTaskITSTrackingCheck
6   // A. Dainese 28.11.09
7   // 
8
9   Bool_t plotAlignmentChecks=kFALSE;
10   //gStyle->SetOptStat(0);
11
12   if(fname.Contains("alien")) TGrid::Connect("alien://");
13
14   TFile *f= TFile::Open(fname.Data());
15   if(!f) return kFALSE;
16
17   TList *list=(TList*)f->Get("cOutputITS");
18   TList *listSPD=0;
19   if(!list) {
20     TDirectoryFile *dir=(TDirectoryFile*)f->GetDirectory("ITS_Performance");
21     if(dir) list = (TList*)dir->Get("cOutputITS");
22     // count active SPD HSs
23     dir=(TDirectoryFile*)f->GetDirectory("SPD_Performance");
24     if(dir) listSPD = (TList*)dir->Get("coutput1");
25   }
26
27   if(!list || !dir) return kFALSE;
28
29   TH1F *hnHSsSPD=new TH1F("hnHSsSPD","Active HSs in SPD layers 1 and 2; layer; HSs",2,0.5,2.5);
30   if(listSPD) {
31     listSPD->Print();
32     TH1F *hFiredChip = (TH1F*)listSPD->FindObject("hFiredChip");
33     Int_t nHSsInner=0,nHSsOuter=0;
34     for(Int_t i=0;i<400;i++) if(hFiredChip->GetBinContent(i)>0) nHSsInner++;
35     for(Int_t i=400;i<1200;i++) if(hFiredChip->GetBinContent(i)>0) nHSsOuter++;
36     nHSsInner = (Int_t)(nHSsInner/10);
37     nHSsOuter = (Int_t)(nHSsOuter/10);
38     hnHSsSPD->SetBinContent(1,nHSsInner);
39     hnHSsSPD->SetBinContent(2,nHSsOuter);
40     if(ioValues) ioValues[0]=(Float_t)nHSsInner/40.;
41     if(ioValues) ioValues[1]=(Float_t)nHSsOuter/80.;
42   }
43
44   TCanvas *cSPD=new TCanvas("cSPD","cSPD");
45   hnHSsSPD->SetMaximum(90);
46   hnHSsSPD->SetMinimum(0);
47   hnHSsSPD->Draw();
48
49   TH1F *fHistNclsITSSA = (TH1F*)list->FindObject("fHistNclsITSSA");
50   TH1F *fHistClusterMapITSSA = (TH1F*)list->FindObject("fHistClusterMapITSSA");
51   TH1F *fHistClusterMapITSSAok = (TH1F*)list->FindObject("fHistClusterMapITSSAok");
52   TH1F *fHistClusterMapITSSAbad = (TH1F*)list->FindObject("fHistClusterMapITSSAbad");
53   TH1F *fHistClusterMapITSSAskipped = (TH1F*)list->FindObject("fHistClusterMapITSSAskipped");
54   TH1F *fHistClusterMapITSSAoutinz = (TH1F*)list->FindObject("fHistClusterMapITSSAoutinz");
55   TH1F *fHistClusterMapITSSAokoutinzbad = (TH1F*)list->FindObject("fHistClusterMapITSSAokoutinzbad");
56   TH1F *fHistClusterMapITSSAnorefit = (TH1F*)list->FindObject("fHistClusterMapITSSAnorefit");
57   TH1F *fHistClusterMapITSSAnocls = (TH1F*)list->FindObject("fHistClusterMapITSSAnocls");
58   TH1F *fHistNclsITSSAInAcc = (TH1F*)list->FindObject("fHistNclsITSSAInAcc");
59   TH1F *fHistClusterMapITSSAInAcc = (TH1F*)list->FindObject("fHistClusterMapITSSAInAcc");
60   TH1F *fHistClusterMapITSSAokInAcc = (TH1F*)list->FindObject("fHistClusterMapITSSAokInAcc");
61   TH1F *fHistClusterMapITSSAbadInAcc = (TH1F*)list->FindObject("fHistClusterMapITSSAbadInAcc");
62   TH1F *fHistClusterMapModuleITSMIokInAcc = (TH1F*)list->FindObject("fHistClusterMapModuleITSMIokInAcc");
63   TH1F *fHistClusterMapModuleITSMIbadInAcc = (TH1F*)list->FindObject("fHistClusterMapModuleITSMIbadInAcc");
64   TH1F *fHistClusterMapITSSAskippedInAcc = (TH1F*)list->FindObject("fHistClusterMapITSSAskippedInAcc");
65   TH1F *fHistClusterMapITSSAoutinzInAcc = (TH1F*)list->FindObject("fHistClusterMapITSSAoutinzInAcc");
66   TH1F *fHistClusterMapITSSAokoutinzbadInAcc = (TH1F*)list->FindObject("fHistClusterMapITSSAokoutinzbadInAcc");
67   TH1F *fHistClusterMapITSSAnorefitInAcc = (TH1F*)list->FindObject("fHistClusterMapITSSAnorefitInAcc");
68   TH1F *fHistClusterMapITSSAnoclsInAcc = (TH1F*)list->FindObject("fHistClusterMapITSSAnoclsInAcc");
69   TH1F *fHistClusterMapModuleITSMInoclsInAcc = (TH1F*)list->FindObject("fHistClusterMapModuleITSMInoclsInAcc");
70   TH1F *fHistNclsITSMI = (TH1F*)list->FindObject("fHistNclsITSMI");
71   TH1F *fHistClusterMapITSMI = (TH1F*)list->FindObject("fHistClusterMapITSMI");
72   TH1F *fHistClusterMapITSMIok = (TH1F*)list->FindObject("fHistClusterMapITSMIok");
73   TH1F *fHistClusterMapITSMIbad = (TH1F*)list->FindObject("fHistClusterMapITSMIbad");
74   TH1F *fHistClusterMapITSMIskipped = (TH1F*)list->FindObject("fHistClusterMapITSMIskipped");
75   TH1F *fHistClusterMapITSMIoutinz = (TH1F*)list->FindObject("fHistClusterMapITSMIoutinz");
76   TH1F *fHistClusterMapITSMIokoutinzbad = (TH1F*)list->FindObject("fHistClusterMapITSMIokoutinzbad");
77   TH1F *fHistClusterMapITSMInorefit = (TH1F*)list->FindObject("fHistClusterMapITSMInorefit");
78   TH1F *fHistClusterMapITSMInocls = (TH1F*)list->FindObject("fHistClusterMapITSMInocls");
79
80   TH1F *fHistPhiTPCInAcc = (TH1F*)list->FindObject("fHistPhiTPCInAcc");
81   TH1F *fHistPhiITSMIokbadoutinz6InAcc = (TH1F*)list->FindObject("fHistPhiITSMIokbadoutinz6InAcc");
82
83   TH1F *fHistPtTPCInAcc = (TH1F*)list->FindObject("fHistPtTPCInAcc");
84   TH1F *fHistPtTPCInAccSfromStrange = (TH1F*)list->FindObject("fHistPtTPCInAccSfromStrange");
85   TH1F *fHistPtTPCInAccPfromStrange = (TH1F*)list->FindObject("fHistPtTPCInAccPfromStrange");
86   TH1F *fHistPtTPCInAccMCtwoSPD = (TH1F*)list->FindObject("fHistPtTPCInAccMCtwoSPD");
87   TH1F *fHistPtTPCInAccMConeSPD = (TH1F*)list->FindObject("fHistPtTPCInAccMConeSPD");
88   TH1F *fHistPtITSMI6InAcc = (TH1F*)list->FindObject("fHistPtITSMI6InAcc");
89   TH1F *fHistPtITSMI5InAcc = (TH1F*)list->FindObject("fHistPtITSMI5InAcc");
90   TH1F *fHistPtITSMI4InAcc = (TH1F*)list->FindObject("fHistPtITSMI4InAcc");
91   TH1F *fHistPtITSMI3InAcc = (TH1F*)list->FindObject("fHistPtITSMI3InAcc");
92   TH1F *fHistPtITSMI2InAcc = (TH1F*)list->FindObject("fHistPtITSMI2InAcc");
93   TH1F *fHistPtITSMISPDInAcc = (TH1F*)list->FindObject("fHistPtITSMISPDInAcc");
94   TH1F *fHistPtITSMIoneSPDInAcc = (TH1F*)list->FindObject("fHistPtITSMIoneSPDInAcc");
95   TH1F *fHistPtITSMIoneSPDthreeSDDSSDInAcc = (TH1F*)list->FindObject("fHistPtITSMIoneSPDthreeSDDSSDInAcc");
96   TH1F *fHistPtITSMIokbadoutinz6InAcc = (TH1F*)list->FindObject("fHistPtITSMIokbadoutinz6InAcc");
97   TH1F *fHistPtITSMIokbadoutinz5InAcc = (TH1F*)list->FindObject("fHistPtITSMIokbadoutinz5InAcc");
98   TH1F *fHistPtITSMIokbadoutinz4InAcc = (TH1F*)list->FindObject("fHistPtITSMIokbadoutinz4InAcc");
99   TH1F *fHistPtTPCInAccP = (TH1F*)list->FindObject("fHistPtTPCInAccP");
100   TH1F *fHistPtITSMI6InAccP = (TH1F*)list->FindObject("fHistPtITSMI6InAccP");
101   TH1F *fHistPtITSMI5InAccP = (TH1F*)list->FindObject("fHistPtITSMI5InAccP");
102   TH1F *fHistPtITSMI4InAccP = (TH1F*)list->FindObject("fHistPtITSMI4InAccP");
103   TH1F *fHistPtITSMI3InAccP = (TH1F*)list->FindObject("fHistPtITSMI3InAccP");
104   TH1F *fHistPtITSMI2InAccP = (TH1F*)list->FindObject("fHistPtITSMI2InAccP");
105   TH1F *fHistPtITSMISPDInAccP = (TH1F*)list->FindObject("fHistPtITSMISPDInAccP");
106   TH1F *fHistPtITSMIoneSPDInAccP = (TH1F*)list->FindObject("fHistPtITSMIoneSPDInAccP");
107   TH1F *fHistPtTPCInAccS = (TH1F*)list->FindObject("fHistPtTPCInAccS");
108   TH1F *fHistPtITSMI6InAccS = (TH1F*)list->FindObject("fHistPtITSMI6InAccS");
109   TH1F *fHistPtITSMI5InAccS = (TH1F*)list->FindObject("fHistPtITSMI5InAccS");
110   TH1F *fHistPtITSMI4InAccS = (TH1F*)list->FindObject("fHistPtITSMI4InAccS");
111   TH1F *fHistPtITSMI3InAccS = (TH1F*)list->FindObject("fHistPtITSMI3InAccS");
112   TH1F *fHistPtITSMI2InAccS = (TH1F*)list->FindObject("fHistPtITSMI2InAccS");
113   TH1F *fHistPtITSMISPDInAccS = (TH1F*)list->FindObject("fHistPtITSMISPDInAccS");
114   TH1F *fHistPtITSMIoneSPDInAccS = (TH1F*)list->FindObject("fHistPtITSMIoneSPDInAccS");
115
116   TH1F *fHistRProdVtxInAccP = (TH1F*)list->FindObject("fHistRProdVtxInAccP");
117   TH1F *fHistRProdVtxInAccS = (TH1F*)list->FindObject("fHistRProdVtxInAccS");
118
119   TH1F *fHistxlocSDDok = (TH1F*)list->FindObject("fHistxlocSDDok");
120   TH1F *fHistxlocSDDall = (TH1F*)list->FindObject("fHistxlocSDDall");
121   TH1F *fHistzlocSDDok = (TH1F*)list->FindObject("fHistzlocSDDok");
122   TH1F *fHistzlocSDDall = (TH1F*)list->FindObject("fHistzlocSDDall");
123
124   TH1F *fHistPtITSTPCsel = (TH1F*)list->FindObject("fHistPtITSTPCsel");
125   TH1F *fHistPtITSTPCselP = (TH1F*)list->FindObject("fHistPtITSTPCselP");
126   TH1F *fHistPtITSTPCselS = (TH1F*)list->FindObject("fHistPtITSTPCselS");
127   TH1F *fHistPtITSTPCselPfromStrange = (TH1F*)list->FindObject("fHistPtITSTPCselSfromStrange");
128   TH1F *fHistPtITSTPCselSfromStrange = (TH1F*)list->FindObject("fHistPtITSTPCselSfromStrange");
129   TH1F *fHistPtITSTPCselSfromMat = (TH1F*)list->FindObject("fHistPtITSTPCselSfromMat");
130
131   TH1F *fHistPtTPCInAccSfromMat = (TH1F*)list->FindObject("fHistPtTPCInAccSfromMat");
132
133   //ReweightStrange(fHistPtTPCInAcc,fHistPtTPCInAccPfromStrange,fHistPtTPCInAccSfromStrange);
134   //ReweightStrange(fHistPtITSTPCsel,fHistPtITSTPCselPfromStrange,fHistPtITSTPCselSfromStrange);
135
136   //---------------------------------------------------------------
137   TH1F *fHistPtITSMIge2InAcc = (TH1F*)fHistPtITSMI6InAcc->Clone("fHistPtITSMIge2InAcc");
138   fHistPtITSMIge2InAcc->Add(fHistPtITSMI5InAcc);
139   fHistPtITSMIge2InAcc->Add(fHistPtITSMI4InAcc);
140   fHistPtITSMIge2InAcc->Add(fHistPtITSMI3InAcc);
141   fHistPtITSMIge2InAcc->Add(fHistPtITSMI2InAcc);
142   TH1F *fHistPtITSMIge2InAccP = (TH1F*)fHistPtITSMI6InAccP->Clone("fHistPtITSMIge2InAccP");
143   fHistPtITSMIge2InAccP->Add(fHistPtITSMI5InAccP);
144   fHistPtITSMIge2InAccP->Add(fHistPtITSMI4InAccP);
145   fHistPtITSMIge2InAccP->Add(fHistPtITSMI3InAccP);
146   fHistPtITSMIge2InAccP->Add(fHistPtITSMI2InAccP);
147   TH1F *fHistPtITSMIge2InAccS = (TH1F*)fHistPtITSMI6InAccS->Clone("fHistPtITSMIge2InAccS");
148   fHistPtITSMIge2InAccS->Add(fHistPtITSMI5InAccS);
149   fHistPtITSMIge2InAccS->Add(fHistPtITSMI4InAccS);
150   fHistPtITSMIge2InAccS->Add(fHistPtITSMI3InAccS);
151   fHistPtITSMIge2InAccS->Add(fHistPtITSMI2InAccS);
152
153   TH1F* fHistPtITSMISPDInAccMC=(TH1F*)fHistPtITSMISPDInAcc->Clone("fHistPtITSMISPDInAccMC");
154   TH1F* fHistPtITSMIoneSPDInAccMC=(TH1F*)fHistPtITSMIoneSPDInAcc->Clone("fHistPtITSMIoneSPDInAccMC");
155
156
157   TLegend *l1=new TLegend(0.5,0.5,0.9,0.9);
158   TLegend *l2=new TLegend(0.5,0.5,0.9,0.9);
159
160   TCanvas *c1= new TCanvas("c1","c1",10,10,600,500);
161   fHistNclsITSSA->SetMinimum(0);
162   fHistNclsITSSA->SetLineColor(1);
163   l1->AddEntry(fHistNclsITSSA,"ITS-SA","l");
164   fHistNclsITSSA->Draw();
165   fHistNclsITSSAInAcc->SetLineColor(4);
166   l1->AddEntry(fHistNclsITSSAInAcc,"ITS-SA in acc.","l");
167   fHistNclsITSSAInAcc->Draw("same");
168   fHistNclsITSMI->SetLineColor(2);
169   l1->AddEntry(fHistNclsITSMI,"ITS from TPC","l");
170   fHistNclsITSMI->Draw("same");
171   l1->Draw();
172
173
174   TCanvas *c2 =new TCanvas("c2","c2",10,10,1200,800);
175   c2->Divide(3,2);
176   c2->cd(1);
177   //
178   fHistClusterMapITSSAokoutinzbad->SetLineColor(1);
179   fHistClusterMapITSSAokoutinzbad->SetMarkerColor(1);
180   fHistClusterMapITSSAokoutinzbad->SetMarkerStyle(20);
181   fHistClusterMapITSSAokoutinzbad->Draw();
182   fHistClusterMapITSMIokoutinzbad->SetLineColor(2);
183   fHistClusterMapITSMIokoutinzbad->SetMarkerColor(2);
184   fHistClusterMapITSMIokoutinzbad->SetMarkerStyle(20);
185   fHistClusterMapITSMIokoutinzbad->Draw("same");
186   l1->Draw();
187   //
188   c2->cd(2);
189   fHistClusterMapITSSAok->SetLineColor(1);
190   fHistClusterMapITSSAok->SetMarkerColor(1);
191   fHistClusterMapITSSAok->SetMarkerStyle(21);
192   fHistClusterMapITSSAok->Draw();
193   fHistClusterMapITSMIok->SetLineColor(2);
194   fHistClusterMapITSMIok->SetMarkerColor(2);
195   fHistClusterMapITSMIok->SetMarkerStyle(21);
196   fHistClusterMapITSMIok->Draw("same");
197   //
198   c2->cd(3);
199   fHistClusterMapITSSAoutinz->SetLineColor(1);
200   fHistClusterMapITSSAoutinz->SetMarkerColor(1);
201   fHistClusterMapITSSAoutinz->SetMarkerStyle(22);
202   fHistClusterMapITSSAoutinz->Draw();
203   fHistClusterMapITSMIoutinz->SetLineColor(2);
204   fHistClusterMapITSMIoutinz->SetMarkerColor(2);
205   fHistClusterMapITSMIoutinz->SetMarkerStyle(22);
206   fHistClusterMapITSMIoutinz->Draw("same");
207   //
208   c2->cd(4);
209   fHistClusterMapITSSAbad->SetLineColor(1);
210   fHistClusterMapITSSAbad->SetMarkerColor(1);
211   fHistClusterMapITSSAbad->SetMarkerStyle(23);
212   fHistClusterMapITSSAbad->Draw();
213   fHistClusterMapITSMIbad->SetLineColor(2);
214   fHistClusterMapITSMIbad->SetMarkerColor(2);
215   fHistClusterMapITSMIbad->SetMarkerStyle(23);
216   fHistClusterMapITSMIbad->Draw("same");
217   //
218   c2->cd(5);
219   fHistClusterMapITSSAnocls->SetLineColor(1);
220   fHistClusterMapITSSAnocls->SetMarkerColor(1);
221   fHistClusterMapITSSAnocls->SetMarkerStyle(24);
222   fHistClusterMapITSSAnocls->Draw();
223   fHistClusterMapITSMInocls->SetLineColor(2);
224   fHistClusterMapITSMInocls->SetMarkerColor(2);
225   fHistClusterMapITSMInocls->SetMarkerStyle(24);
226   fHistClusterMapITSMInocls->Draw("same");
227
228   TCanvas *c3 =new TCanvas("c3","c3",10,10,1200,800);
229   c3->Divide(1,2);
230   c3->cd(1);
231   fHistClusterMapModuleITSMIokInAcc->SetLineColor(1);
232   fHistClusterMapModuleITSMIokInAcc->Draw();
233   l2->AddEntry(fHistClusterMapModuleITSMIokInAcc,"ok","l");
234   fHistClusterMapModuleITSMIbadInAcc->SetLineColor(3);
235   fHistClusterMapModuleITSMIbadInAcc->Draw("same");
236   l2->AddEntry(fHistClusterMapModuleITSMIbadInAcc,"bad","l");
237   fHistClusterMapModuleITSMInoclsInAcc->SetLineColor(2);
238   fHistClusterMapModuleITSMInoclsInAcc->Draw("same");
239   l2->AddEntry(fHistClusterMapModuleITSMInoclsInAcc,"no cls","l");
240   l2->Draw();
241   c3->cd(2);
242   TH1F *fHistClusterMapModuleITSMIallInAcc=(TH1F*)fHistClusterMapModuleITSMIokInAcc->Clone("fHistClusterMapModuleITSMIallInAcc");
243   fHistClusterMapModuleITSMIallInAcc->Add(fHistClusterMapModuleITSMIbadInAcc);
244   fHistClusterMapModuleITSMIallInAcc->Add(fHistClusterMapModuleITSMInoclsInAcc);
245   TH1F *fHistClusterMapModuleITSMIokRatioInAcc=(TH1F*)fHistClusterMapModuleITSMIokInAcc->Clone("fHistClusterMapModuleITSMIokRatioInAcc");
246   fHistClusterMapModuleITSMIokRatioInAcc->Divide(fHistClusterMapModuleITSMIallInAcc);
247   for(Int_t ib=1;ib<=fHistClusterMapModuleITSMIokRatioInAcc->GetNbinsX();ib++) {
248     fHistClusterMapModuleITSMIokRatioInAcc->SetBinError(ib,0);
249     if(fHistClusterMapModuleITSMIallInAcc->GetBinContent(ib)) fHistClusterMapModuleITSMIokRatioInAcc->SetBinError(ib,TMath::Sqrt(fHistClusterMapModuleITSMIokRatioInAcc->GetBinContent(ib)*(1.-fHistClusterMapModuleITSMIokRatioInAcc->GetBinContent(ib))/fHistClusterMapModuleITSMIallInAcc->GetBinContent(ib))); 
250   }
251   fHistClusterMapModuleITSMIokRatioInAcc->Draw();
252   TH1F *fHistClusterMapModuleITSMIbadRatioInAcc=(TH1F*)fHistClusterMapModuleITSMIbadInAcc->Clone("fHistClusterMapModuleITSMIbadRatioInAcc");
253   fHistClusterMapModuleITSMIbadRatioInAcc->Divide(fHistClusterMapModuleITSMIallInAcc);
254   for(Int_t ib=1;ib<=fHistClusterMapModuleITSMIokRatioInAcc->GetNbinsX();ib++) {
255     fHistClusterMapModuleITSMIbadRatioInAcc->SetBinError(ib,0);
256     if(fHistClusterMapModuleITSMIallInAcc->GetBinContent(ib)) fHistClusterMapModuleITSMIbadRatioInAcc->SetBinError(ib,TMath::Sqrt(fHistClusterMapModuleITSMIbadRatioInAcc->GetBinContent(ib)*(1.-fHistClusterMapModuleITSMIbadRatioInAcc->GetBinContent(ib))/fHistClusterMapModuleITSMIallInAcc->GetBinContent(ib))); 
257   }
258   fHistClusterMapModuleITSMIbadRatioInAcc->Draw("same");
259   TH1F *fHistClusterMapModuleITSMInoclsRatioInAcc=(TH1F*)fHistClusterMapModuleITSMInoclsInAcc->Clone("fHistClusterMapModuleITSMInoclsRatioInAcc");
260   fHistClusterMapModuleITSMInoclsRatioInAcc->Divide(fHistClusterMapModuleITSMIallInAcc);
261   for(Int_t ib=1;ib<=fHistClusterMapModuleITSMIokRatioInAcc->GetNbinsX();ib++) {
262     fHistClusterMapModuleITSMInoclsRatioInAcc->SetBinError(ib,0);
263     if(fHistClusterMapModuleITSMIallInAcc->GetBinContent(ib)) fHistClusterMapModuleITSMInoclsRatioInAcc->SetBinError(ib,TMath::Sqrt(fHistClusterMapModuleITSMInoclsRatioInAcc->GetBinContent(ib)*(1.-fHistClusterMapModuleITSMInoclsRatioInAcc->GetBinContent(ib))/fHistClusterMapModuleITSMIallInAcc->GetBinContent(ib))); 
264   }
265   fHistClusterMapModuleITSMInoclsRatioInAcc->Draw("same");
266
267   TCanvas *c3b = new TCanvas("c3b","c3b");
268   c3b->Divide(2,1);
269   c3b->cd(1);
270   fHistxlocSDDok->Divide(fHistxlocSDDall);
271   fHistxlocSDDok->Draw();
272   c3b->cd(2);
273   fHistzlocSDDok->Divide(fHistzlocSDDall);
274   fHistzlocSDDok->Draw();
275
276   TCanvas *c4 =new TCanvas("c4","c4",10,10,500,500);
277   c4->SetGridy();
278   fHistPhiITSMIokbadoutinz6InAcc->Divide(fHistPhiTPCInAcc);
279   fHistPhiITSMIokbadoutinz6InAcc->SetMinimum(0);
280   fHistPhiITSMIokbadoutinz6InAcc->SetMaximum(1.5);
281   fHistPhiITSMIokbadoutinz6InAcc->SetYTitle("ITS+TPC / TPC");
282   fHistPhiITSMIokbadoutinz6InAcc->SetTitle("Fraction of tracks with 6 layers ok");
283   fHistPhiITSMIokbadoutinz6InAcc->Draw();
284
285   TCanvas *c5c =new TCanvas("c5c","c5c",10,10,600,600);
286   c5c->SetGridy();
287   TH1F *fHistPtTPCInAccSecFrac = (TH1F*)fHistPtTPCInAccS->Clone("fHistPtTPCInAccSecFrac");  
288   fHistPtTPCInAccSecFrac->Divide(fHistPtTPCInAcc);
289   fHistPtTPCInAccSecFrac->SetLineColor(kOrange+7);
290   fHistPtTPCInAccSecFrac->SetTitle("Fraction of secondaries");
291   fHistPtTPCInAccSecFrac->SetYTitle("sec/all");
292   fHistPtTPCInAccSecFrac->Draw();
293   TH1F *fHistPtITSMI2InAccSecFrac = (TH1F*)fHistPtITSMI2InAccS->Clone("fHistPtITSMI2InAccSecFrac");  
294   fHistPtITSMI2InAccSecFrac->Divide(fHistPtITSMI2InAcc);
295   fHistPtITSMI2InAccSecFrac->SetLineColor(7);
296   fHistPtITSMI2InAccSecFrac->Draw("same"); 
297   TH1F *fHistPtITSMIge2InAccSecFrac = (TH1F*)fHistPtITSMIge2InAccS->Clone("fHistPtITSMIge2InAccSecFrac");  
298   fHistPtITSMIge2InAccSecFrac->Divide(fHistPtITSMIge2InAcc);
299   fHistPtITSMIge2InAccSecFrac->Draw("same");
300   TH1F *fHistPtITSMI3InAccSecFrac = (TH1F*)fHistPtITSMI3InAccS->Clone("fHistPtITSMI3InAccSecFrac");  
301   fHistPtITSMI3InAccSecFrac->Divide(fHistPtITSMI3InAcc);
302   fHistPtITSMI3InAccSecFrac->SetLineColor(6);
303   fHistPtITSMI3InAccSecFrac->Draw("same");
304   TH1F *fHistPtITSMI4InAccSecFrac = (TH1F*)fHistPtITSMI4InAccS->Clone("fHistPtITSMI4InAccSecFrac");  
305   fHistPtITSMI4InAccSecFrac->Divide(fHistPtITSMI4InAcc);
306   fHistPtITSMI4InAccSecFrac->SetLineColor(4);
307   fHistPtITSMI4InAccSecFrac->Draw("same");
308   TH1F *fHistPtITSMI5InAccSecFrac = (TH1F*)fHistPtITSMI5InAccS->Clone("fHistPtITSMI5InAccSecFrac");  
309   fHistPtITSMI5InAccSecFrac->Divide(fHistPtITSMI5InAcc);
310   fHistPtITSMI5InAccSecFrac->SetLineColor(3);
311   fHistPtITSMI5InAccSecFrac->Draw("same");
312   TH1F *fHistPtITSMI6InAccSecFrac = (TH1F*)fHistPtITSMI6InAccS->Clone("fHistPtITSMI6InAccSecFrac");  
313   fHistPtITSMI6InAccSecFrac->Divide(fHistPtITSMI6InAcc);
314   fHistPtITSMI6InAccSecFrac->SetLineColor(2);
315   fHistPtITSMI6InAccSecFrac->SetLineColor(2);
316   fHistPtITSMI6InAccSecFrac->Draw("same");
317   TH1F *fHistPtITSMISPDInAccSecFrac = (TH1F*)fHistPtITSMISPDInAccS->Clone("fHistPtITSMISPDInAccSecFrac");  
318   fHistPtITSMISPDInAccSecFrac->Divide(fHistPtITSMISPDInAcc);
319   fHistPtITSMISPDInAccSecFrac->SetLineColor(9);
320   fHistPtITSMISPDInAccSecFrac->Draw("same");
321   TH1F *fHistPtITSMIoneSPDInAccSecFrac = (TH1F*)fHistPtITSMIoneSPDInAccS->Clone("fHistPtITSMIoneSPDInAccSecFrac");  
322   fHistPtITSMIoneSPDInAccSecFrac->Divide(fHistPtITSMIoneSPDInAcc);
323   fHistPtITSMIoneSPDInAccSecFrac->SetLineColor(15);
324   fHistPtITSMIoneSPDInAccSecFrac->Draw("same");
325   TH1F *fHistPtITSTPCselSecFrac = (TH1F*)fHistPtITSTPCselS->Clone("fHistPtITSTPCselSecFrac");  
326   fHistPtITSTPCselSecFrac->Divide(fHistPtITSTPCsel);
327   fHistPtITSTPCselSecFrac->SetLineColor(15);
328   fHistPtITSTPCselSecFrac->Draw("same");
329
330
331   TLegend *l3=new TLegend(0.5,0.5,0.9,0.9);
332   TLegend *l4=new TLegend(0.5,0.5,0.9,0.9);
333   TCanvas *c5 =new TCanvas("c5","c5",10,10,1200,600);
334   c5->Divide(2,1);
335   c5_1->SetGridy();
336   c5_2->SetGridy();
337   c5_1->SetLogx();
338   c5_2->SetLogx();
339   c5->cd(1);
340   fHistPtITSMIge2InAcc->SetMaximum(1.5);
341   fHistPtITSMIge2InAcc->SetMinimum(0);
342   fHistPtITSMIge2InAcc->SetTitle("Fraction of prolonged tracks with N ITS points");
343   fHistPtITSMIge2InAcc->SetYTitle("ITS+TPC / TPC");
344   fHistPtITSMIge2InAcc->Divide(fHistPtITSMIge2InAcc,fHistPtTPCInAcc,1,1,"B");
345   fHistPtITSMIge2InAcc->Draw();
346   l3->AddEntry(fHistPtITSMIge2InAcc,">=2 cls","l");
347   fHistPtITSMI6InAcc->Divide(fHistPtITSMI6InAcc,fHistPtTPCInAcc,1,1,"B");
348   fHistPtITSMI6InAcc->SetLineColor(2);
349   l3->AddEntry(fHistPtITSMI6InAcc,"6 cls","l");
350   fHistPtITSMI6InAcc->Draw("same");
351   fHistPtITSMI5InAcc->Divide(fHistPtITSMI5InAcc,fHistPtTPCInAcc,1,1,"B");
352   fHistPtITSMI5InAcc->SetLineColor(3);
353   l3->AddEntry(fHistPtITSMI5InAcc,"5 cls","l");
354   fHistPtITSMI5InAcc->Draw("same");
355   fHistPtITSMI4InAcc->Divide(fHistPtITSMI4InAcc,fHistPtTPCInAcc,1,1,"B");
356   fHistPtITSMI4InAcc->SetLineColor(4);
357   l3->AddEntry(fHistPtITSMI4InAcc,"4 cls","l");
358   fHistPtITSMI4InAcc->Draw("same");
359   fHistPtITSMI3InAcc->Divide(fHistPtITSMI3InAcc,fHistPtTPCInAcc,1,1,"B");
360   fHistPtITSMI3InAcc->SetLineColor(6);
361   l3->AddEntry(fHistPtITSMI3InAcc,"3 cls","l");
362   fHistPtITSMI3InAcc->Draw("same");
363   fHistPtITSMI2InAcc->Divide(fHistPtITSMI2InAcc,fHistPtTPCInAcc,1,1,"B");
364   fHistPtITSMI2InAcc->SetLineColor(7);
365   l3->AddEntry(fHistPtITSMI2InAcc,"2 cls","l");
366   fHistPtITSMI2InAcc->Draw("same");
367   fHistPtITSMISPDInAcc->Divide(fHistPtITSMISPDInAcc,fHistPtTPCInAcc,1,1,"B");
368   fHistPtITSMISPDInAcc->SetLineColor(9);
369   l3->AddEntry(fHistPtITSMISPDInAcc,"2SPD + any","l");
370   fHistPtITSMISPDInAcc->Draw("same");
371   fHistPtITSMIoneSPDInAcc->Divide(fHistPtITSMIoneSPDInAcc,fHistPtTPCInAcc,1,1,"B");
372   fHistPtITSMIoneSPDInAcc->SetLineColor(15);
373   l3->AddEntry(fHistPtITSMIoneSPDInAcc,">=1SPD + any","l");
374   fHistPtITSMIoneSPDInAcc->Draw("same");
375   //fHistPtITSMIoneSPDthreeSDDSSDInAcc->Divide(fHistPtITSMIoneSPDthreeSDDSSDInAcc,fHistPtTPCInAcc,1,1,"B");
376   //fHistPtITSMIoneSPDthreeSDDSSDInAcc->SetLineColor(kOrange);
377   //l3->AddEntry(fHistPtITSMIoneSPDthreeSDDSSDInAcc,">=1SPD + >=3SDDSSD","l");
378   //fHistPtITSMIoneSPDthreeSDDSSDInAcc->Draw("same");
379   fHistPtITSTPCsel->Divide(fHistPtITSTPCsel,fHistPtTPCInAcc,1,1,"B");
380   fHistPtITSTPCsel->SetLineColor(kAzure+1);
381   l3->AddEntry(fHistPtITSTPCsel,">=1SPD + any + d_{0} cut","l");
382   fHistPtITSTPCsel->Draw("same");
383   fHistPtITSMIge2InAcc->Draw("same");
384   l3->Draw();
385   if(ioValues) {
386     Int_t index,ptbin;
387     ptbin=fHistPtITSMIge2InAcc->FindBin(0.201);
388     index=2;
389     ioValues[index]=fHistPtITSMIge2InAcc->GetBinContent(ptbin);
390     ioErrors[index]=fHistPtITSMIge2InAcc->GetBinError(ptbin);
391     ptbin=fHistPtITSMIge2InAcc->FindBin(1.001);
392     index=3;
393     ioValues[index]=fHistPtITSMIge2InAcc->GetBinContent(ptbin);
394     ioErrors[index]=fHistPtITSMIge2InAcc->GetBinError(ptbin);
395     ptbin=fHistPtITSMIge2InAcc->FindBin(10.001);
396     index=4;
397     ioValues[index]=fHistPtITSMIge2InAcc->GetBinContent(ptbin);
398     ioErrors[index]=fHistPtITSMIge2InAcc->GetBinError(ptbin);
399     ptbin=fHistPtITSMI6InAcc->FindBin(0.201);
400     index=5;
401     ioValues[index]=fHistPtITSMI6InAcc->GetBinContent(ptbin);
402     ioErrors[index]=fHistPtITSMI6InAcc->GetBinError(ptbin);
403     ptbin=fHistPtITSMI6InAcc->FindBin(1.001);
404     index=6;
405     ioValues[index]=fHistPtITSMI6InAcc->GetBinContent(ptbin);
406     ioErrors[index]=fHistPtITSMI6InAcc->GetBinError(ptbin);
407     ptbin=fHistPtITSMI6InAcc->FindBin(10.001);
408     index=7;
409     ioValues[index]=fHistPtITSMI6InAcc->GetBinContent(ptbin);
410     ioErrors[index]=fHistPtITSMI6InAcc->GetBinError(ptbin);
411     ptbin=fHistPtITSMISPDInAcc->FindBin(0.201);
412     index=8;
413     ioValues[index]=fHistPtITSMISPDInAcc->GetBinContent(ptbin);
414     ioErrors[index]=fHistPtITSMISPDInAcc->GetBinError(ptbin);
415     ptbin=fHistPtITSMISPDInAcc->FindBin(1.001);
416     index=9;
417     ioValues[index]=fHistPtITSMISPDInAcc->GetBinContent(ptbin);
418     ioErrors[index]=fHistPtITSMISPDInAcc->GetBinError(ptbin);
419     ptbin=fHistPtITSMISPDInAcc->FindBin(10.001);
420     index=10;
421     ioValues[index]=fHistPtITSMISPDInAcc->GetBinContent(ptbin);
422     ioErrors[index]=fHistPtITSMISPDInAcc->GetBinError(ptbin);
423     ptbin=fHistPtITSMIoneSPDInAcc->FindBin(0.201);
424     index=11;
425     ioValues[index]=fHistPtITSMIoneSPDInAcc->GetBinContent(ptbin);
426     ioErrors[index]=fHistPtITSMIoneSPDInAcc->GetBinError(ptbin);
427     ptbin=fHistPtITSMIoneSPDInAcc->FindBin(1.001);
428     index=12;
429     ioValues[index]=fHistPtITSMIoneSPDInAcc->GetBinContent(ptbin);
430     ioErrors[index]=fHistPtITSMIoneSPDInAcc->GetBinError(ptbin);
431     ptbin=fHistPtITSMIoneSPDInAcc->FindBin(10.001);
432     index=13;
433     ioValues[index]=fHistPtITSMIoneSPDInAcc->GetBinContent(ptbin);
434     ioErrors[index]=fHistPtITSMIoneSPDInAcc->GetBinError(ptbin);
435   }
436   c5->cd(2);
437   TH1F *fHistPtITSMIokbadoutinzge4InAcc = (TH1F*)fHistPtITSMIokbadoutinz6InAcc->Clone("fHistPtITSMIokbadoutinzge4InAcc");
438   fHistPtITSMIokbadoutinzge4InAcc->Add(fHistPtITSMIokbadoutinz5InAcc);
439   fHistPtITSMIokbadoutinzge4InAcc->Add(fHistPtITSMIokbadoutinz4InAcc);
440   fHistPtITSMIokbadoutinzge4InAcc->SetMaximum(1.5);
441   fHistPtITSMIokbadoutinzge4InAcc->SetMinimum(0);
442   fHistPtITSMIokbadoutinzge4InAcc->SetTitle("Fraction of prolonged tracks with N ITS layers \"ok\"");
443   fHistPtITSMIokbadoutinzge4InAcc->SetYTitle("ITS+TPC / TPC");
444   fHistPtITSMIokbadoutinzge4InAcc->Divide(fHistPtITSMIokbadoutinzge4InAcc,fHistPtTPCInAcc,1,1,"B");
445   fHistPtITSMIokbadoutinzge4InAcc->SetLineColor(1);
446   fHistPtITSMIokbadoutinzge4InAcc->Draw();
447   fHistPtITSMIokbadoutinz6InAcc->Divide(fHistPtITSMIokbadoutinz6InAcc,fHistPtTPCInAcc,1,1,"B");
448   fHistPtITSMIokbadoutinz6InAcc->SetLineColor(2);
449   fHistPtITSMIokbadoutinz6InAcc->Draw("same");
450   fHistPtITSMIokbadoutinz5InAcc->Divide(fHistPtITSMIokbadoutinz5InAcc,fHistPtTPCInAcc,1,1,"B");
451   fHistPtITSMIokbadoutinz5InAcc->SetLineColor(3);
452   fHistPtITSMIokbadoutinz5InAcc->Draw("same");
453   fHistPtITSMIokbadoutinz4InAcc->Divide(fHistPtITSMIokbadoutinz4InAcc,fHistPtTPCInAcc,1,1,"B");
454   fHistPtITSMIokbadoutinz4InAcc->SetLineColor(4);
455   fHistPtITSMIokbadoutinz4InAcc->Draw("same");
456   fHistPtITSMIokbadoutinzge4InAcc->Draw("same");
457   l4->AddEntry(fHistPtITSMIokbadoutinzge4InAcc,">=4 layers","l");
458   l4->AddEntry(fHistPtITSMIokbadoutinz6InAcc,"6 layers","l");
459   l4->AddEntry(fHistPtITSMIokbadoutinz5InAcc,"5 layers","l");
460   l4->AddEntry(fHistPtITSMIokbadoutinz4InAcc,"4 layers","l");
461   l4->Draw();
462
463
464   TLegend *l4d=new TLegend(0.5,0.5,0.9,0.9);
465   TCanvas *c5d =new TCanvas("c5d","c5d",10,10,600,600);
466   c5d->SetGridy();
467   c5d->SetGridy();
468   fHistPtITSMISPDInAccMC->SetMaximum(1.5);
469   fHistPtITSMISPDInAccMC->SetMinimum(0);
470   fHistPtITSMISPDInAccMC->SetTitle("Fraction of prolonged tracks with N ITS points");
471   fHistPtITSMISPDInAccMC->SetYTitle("ITS+TPC / TPC");
472   fHistPtITSMISPDInAccMC->Divide(fHistPtITSMISPDInAccMC,fHistPtTPCInAccMCtwoSPD,1,1,"B");
473   fHistPtITSMISPDInAccMC->SetLineColor(9);
474   l4d->AddEntry(fHistPtITSMISPDInAccMC,"2SPD + any","l");
475   fHistPtITSMISPDInAccMC->Draw();
476   fHistPtITSMIoneSPDInAccMC->Divide(fHistPtITSMIoneSPDInAccMC,fHistPtTPCInAccMConeSPD,1,1,"B");
477   fHistPtITSMIoneSPDInAccMC->SetLineColor(15);
478   l4d->AddEntry(fHistPtITSMIoneSPDInAccMC,">=1SPD + any","l");
479   fHistPtITSMIoneSPDInAccMC->Draw("same");
480   l4d->Draw();
481
482   TFile *eff=new TFile("eff.root","recreate");
483   fHistPtITSMIge2InAcc->Write();
484   fHistPtITSMI6InAcc->Write();
485   fHistPtITSMI5InAcc->Write();
486   fHistPtITSMI4InAcc->Write();
487   fHistPtITSMI3InAcc->Write();
488   fHistPtITSMI2InAcc->Write();
489   fHistPtITSMISPDInAcc->Write();
490   fHistPtITSMIoneSPDInAcc->Write();
491   //fHistPtITSMIoneSPDthreeSDDSSDInAcc->Write();
492   fHistPtITSTPCsel->Write();
493   fHistNclsITSMI->Write();
494   fHistClusterMapModuleITSMIokRatioInAcc->Write();
495   fHistClusterMapModuleITSMIbadRatioInAcc->Write();
496   fHistClusterMapModuleITSMInoclsRatioInAcc->Write();
497   eff->Close();
498
499   c5c->cd();
500   l3->Draw();
501
502
503   TCanvas *c5b =new TCanvas("c5b","c5b",10,10,600,600);
504   c5b->SetLogy();
505   fHistRProdVtxInAccP->SetLineColor(2);
506   fHistRProdVtxInAccP->SetMinimum(1);
507   fHistRProdVtxInAccS->SetMinimum(1);
508   fHistRProdVtxInAccP->Draw();
509   fHistRProdVtxInAccS->Draw("sames");
510
511   TCanvas *c5a =new TCanvas("c5a","c5a",10,10,1200,600);
512   c5a->Divide(2,1);
513   c5a_1->SetLogx();
514   c5a_2->SetLogx();
515   c5a_1->SetGridy();
516   c5a_2->SetGridy();
517   c5a->cd(1);
518   fHistPtITSMIge2InAccP->SetMaximum(1.5);
519   fHistPtITSMIge2InAccP->SetMinimum(0);
520   fHistPtITSMIge2InAccP->SetTitle("Fraction of prolonged tracks with N ITS points");
521   fHistPtITSMIge2InAccP->SetYTitle("ITS+TPC / TPC");
522   fHistPtITSMIge2InAccP->Draw();
523   fHistPtITSMIge2InAccP->Divide(fHistPtITSMIge2InAccP,fHistPtTPCInAccP,1,1,"B");
524   fHistPtITSMI6InAccP->Divide(fHistPtITSMI6InAccP,fHistPtTPCInAccP,1,1,"B");
525   fHistPtITSMI6InAccP->SetLineColor(2);
526   fHistPtITSMI6InAccP->Draw("same");
527   fHistPtITSMI5InAccP->Divide(fHistPtITSMI5InAccP,fHistPtTPCInAccP,1,1,"B");
528   fHistPtITSMI5InAccP->SetLineColor(3);
529   fHistPtITSMI5InAccP->Draw("same");
530   fHistPtITSMI4InAccP->Divide(fHistPtITSMI4InAccP,fHistPtTPCInAccP,1,1,"B");
531   fHistPtITSMI4InAccP->SetLineColor(4);
532   fHistPtITSMI4InAccP->Draw("same");
533   fHistPtITSMI3InAccP->Divide(fHistPtITSMI3InAccP,fHistPtTPCInAccP,1,1,"B");
534   fHistPtITSMI3InAccP->SetLineColor(6);
535   fHistPtITSMI3InAccP->Draw("same");
536   fHistPtITSMI2InAccP->Divide(fHistPtITSMI2InAccP,fHistPtTPCInAccP,1,1,"B");
537   fHistPtITSMI2InAccP->SetLineColor(7);
538   fHistPtITSMI2InAccP->Draw("same");
539   fHistPtITSMISPDInAccP->Divide(fHistPtITSMISPDInAccP,fHistPtTPCInAccP,1,1,"B");
540   fHistPtITSMISPDInAccP->SetLineColor(9);
541   fHistPtITSMISPDInAccP->Draw("same");
542   fHistPtITSMIoneSPDInAccP->Divide(fHistPtITSMIoneSPDInAccP,fHistPtTPCInAccP,1,1,"B");
543   fHistPtITSMIoneSPDInAccP->SetLineColor(15);
544   fHistPtITSMIoneSPDInAccP->Draw("same");
545   fHistPtITSTPCselP->Divide(fHistPtITSTPCselP,fHistPtTPCInAccP,1,1,"B");
546   fHistPtITSTPCselP->SetLineColor(kAzure+1);
547   fHistPtITSTPCselP->Draw("same");
548   fHistPtITSMIge2InAccP->Draw("same");
549   l3->Draw();
550   c5a->cd(2);
551   fHistPtITSMIge2InAccS->SetMaximum(1.5);
552   fHistPtITSMIge2InAccS->SetMinimum(0);
553   fHistPtITSMIge2InAccS->SetTitle("Fraction of prolonged tracks with N ITS points");
554   fHistPtITSMIge2InAccS->SetYTitle("ITS+TPC / TPC");
555   fHistPtITSMIge2InAccS->Divide(fHistPtITSMIge2InAccS,fHistPtTPCInAccS,1,1,"B");
556   fHistPtITSMIge2InAccS->Draw();
557   fHistPtITSMI6InAccS->Divide(fHistPtITSMI6InAccS,fHistPtTPCInAccS,1,1,"B");
558   fHistPtITSMI6InAccS->SetLineColor(2);
559   fHistPtITSMI6InAccS->Draw("same");
560   fHistPtITSMI5InAccS->Divide(fHistPtITSMI5InAccS,fHistPtTPCInAccS,1,1,"B");
561   fHistPtITSMI5InAccS->SetLineColor(3);
562   fHistPtITSMI5InAccS->Draw("same");
563   fHistPtITSMI4InAccS->Divide(fHistPtITSMI4InAccS,fHistPtTPCInAccS,1,1,"B");
564   fHistPtITSMI4InAccS->SetLineColor(4);
565   fHistPtITSMI4InAccS->Draw("same");
566   fHistPtITSMI3InAccS->Divide(fHistPtITSMI3InAccS,fHistPtTPCInAccS,1,1,"B");
567   fHistPtITSMI3InAccS->SetLineColor(6);
568   fHistPtITSMI3InAccS->Draw("same");
569   fHistPtITSMI2InAccS->Divide(fHistPtITSMI2InAccS,fHistPtTPCInAccS,1,1,"B");
570   fHistPtITSMI2InAccS->SetLineColor(7);
571   fHistPtITSMI2InAccS->Draw("same");
572   fHistPtITSMISPDInAccS->Divide(fHistPtITSMISPDInAccS,fHistPtTPCInAccS,1,1,"B");
573   fHistPtITSMISPDInAccS->SetLineColor(9);
574   fHistPtITSMISPDInAccS->Draw("same");
575   fHistPtITSMIoneSPDInAccS->Divide(fHistPtITSMIoneSPDInAccS,fHistPtTPCInAccS,1,1,"B");
576   fHistPtITSMIoneSPDInAccS->SetLineColor(15);
577   fHistPtITSMIoneSPDInAccS->Draw("same");
578   fHistPtITSTPCselS->Divide(fHistPtITSTPCselS,fHistPtTPCInAccS,1,1,"B");
579   fHistPtITSTPCselS->SetLineColor(kAzure+1);
580   fHistPtITSTPCselS->Draw("same");
581   fHistPtITSMIge2InAccS->Draw("same");
582   l3->Draw();
583
584
585   if(!plotAlignmentChecks) return kTRUE;
586
587   // PLOT ALIGNMENT CHECKS
588   //
589   TH1F *hSPDTrackletsTBdxy = new TH1F("hSPDTrackletsTBdxy","SPD tracklets; SPD tracklet to SPD vertex distance in (x,y) [cm]; entries",100,-0.1,0.1);
590   TH1F *hSPDTrackletsLRdxy = new TH1F("hSPDTrackletsLRdxy","SPD tracklets; SPD tracklet to SPD vertex distance in (x,y) [cm]; entries",100,-0.1,0.1);
591   TH1F *hSPDTrackletsTBdz = new TH1F("hSPDTrackletsTBdz","SPD tracklets; SPD tracklet to SPD vertex distance in z [cm]; entries",100,-0.1,0.1);
592   TH1F *hSPDTrackletsLRdz = new TH1F("hSPDTrackletsLRdz","SPD tracklets; SPD tracklet to SPD vertex distance in z [cm]; entries",100,-0.1,0.1);
593
594   TNtuple *fNtupleITSAlignSPDTracklets = (TNtuple*)list->FindObject("fNtupleITSAlignSPDTracklets");
595   Float_t dxy,dz,phi,pt;
596   fNtupleITSAlignSPDTracklets->SetBranchAddress("pt",&pt);
597   fNtupleITSAlignSPDTracklets->SetBranchAddress("phi",&phi);
598   fNtupleITSAlignSPDTracklets->SetBranchAddress("dxy",&dxy);
599   fNtupleITSAlignSPDTracklets->SetBranchAddress("dz",&dz);
600
601   for(Int_t i=0;i<fNtupleITSAlignSPDTracklets->GetEntries();i++) {
602     fNtupleITSAlignSPDTracklets->GetEvent(i);
603     if(pt<.01) continue;
604     if(TMath::Abs(TMath::Abs(phi)-0.5*TMath::Pi())<0.25*TMath::Pi()) {
605       // top-bottom
606       hSPDTrackletsTBdxy->Fill(dxy);
607       hSPDTrackletsTBdz->Fill(dz);
608     } else {
609       // left-right
610       hSPDTrackletsLRdxy->Fill(dxy);
611       hSPDTrackletsLRdz->Fill(dz);
612     }
613   }
614
615   TLegend *l6=new TLegend(0.5,0.5,0.9,0.9);
616
617   TCanvas *c6 = new TCanvas("c6","c6",0,0,1000,500);
618   c6->Divide(2,1);
619   c6->cd(1);
620   hSPDTrackletsTBdxy->SetLineColor(4);
621   hSPDTrackletsTBdxy->Draw();
622   hSPDTrackletsLRdxy->SetLineColor(2);
623   hSPDTrackletsLRdxy->Draw("sames");
624   l6->AddEntry(hSPDTrackletsTBdxy,"top-bottom","l");
625   l6->AddEntry(hSPDTrackletsLRdxy,"left-right","l");
626   l6->Draw();
627   c6->cd(2);
628   hSPDTrackletsTBdz->SetLineColor(4);
629   hSPDTrackletsTBdz->Draw();
630   hSPDTrackletsLRdz->SetLineColor(2);
631   hSPDTrackletsLRdz->Draw("sames");
632   l6->Draw();
633
634
635   TH1F *hSPDExtraClsTBdxy = new TH1F("hSPDExtraClsTBdxy","SPD extra clusters; track-to-point distance in (x,y) [cm]; entries",100,-0.1,0.1);
636   TH1F *hSPDExtraClsLRdxy = new TH1F("hSPDExtraClsLRdxy","SPD extra clusters; track-to-point distance in (x,y) [cm]; entries",100,-0.1,0.1);
637   TH1F *hSPDExtraClsTBdz = new TH1F("hSPDExtraClsTBdz","SPD extra clusters; track-to-point distance in z [cm]; entries",100,-0.1,0.1);
638   TH1F *hSPDExtraClsLRdz = new TH1F("hSPDExtraClsLRdz","SPD extra clusters; track-to-point distance in z [cm]; entries",100,-0.1,0.1);
639
640   TNtuple *fNtupleITSAlignExtra = (TNtuple*)list->FindObject("fNtupleITSAlignExtra");
641   Float_t layer,npoints,x,y,z;
642   fNtupleITSAlignExtra->SetBranchAddress("layer",&layer);
643   fNtupleITSAlignExtra->SetBranchAddress("npoints",&npoints);
644   fNtupleITSAlignExtra->SetBranchAddress("x",&x);
645   fNtupleITSAlignExtra->SetBranchAddress("y",&y);
646   fNtupleITSAlignExtra->SetBranchAddress("z",&z);
647   fNtupleITSAlignExtra->SetBranchAddress("dxy",&dxy);
648   fNtupleITSAlignExtra->SetBranchAddress("dz",&dz);
649   fNtupleITSAlignExtra->SetBranchAddress("pt",&pt);
650
651   for(Int_t i=0;i<fNtupleITSAlignExtra->GetEntries();i++) {
652     fNtupleITSAlignExtra->GetEvent(i);
653     if(pt<0.1) continue;
654     if(layer!=0 && layer!=1) continue;
655     if(npoints<3) continue;
656     phi = TMath::ATan2(y,x);
657     if(TMath::Abs(TMath::Abs(phi)-0.5*TMath::Pi())<0.25*TMath::Pi()) {
658       // top-bottom
659       hSPDExtraClsTBdxy->Fill(dxy);
660       hSPDExtraClsTBdz->Fill(dz);
661     } else {
662       // left-right
663       hSPDExtraClsLRdxy->Fill(dxy);
664       hSPDExtraClsLRdz->Fill(dz);
665     }
666   }
667
668   TCanvas *c7 = new TCanvas("c7","c7",0,0,1000,500);
669   c7->Divide(2,1);
670   c7->cd(1);
671   hSPDExtraClsTBdxy->SetLineColor(4);
672   hSPDExtraClsTBdxy->Draw();
673   hSPDExtraClsLRdxy->SetLineColor(2);
674   hSPDExtraClsLRdxy->Draw("same");
675   l6->Draw();
676   c7->cd(2);
677   hSPDExtraClsTBdz->SetLineColor(4);
678   hSPDExtraClsTBdz->Draw();
679   hSPDExtraClsLRdz->SetLineColor(2);
680   hSPDExtraClsLRdz->Draw("same");
681   l6->Draw();
682
683
684   return kTRUE;
685 }
686 //-----------------------------------------------------------------------------
687 void PlotEffRatio() {
688
689   TFile *f= new TFile("eff_117220_117223_pass1.root");
690
691   TH1F *fHistPtITSMI6InAcc = (TH1F*)f->Get("fHistPtITSMI6InAcc");
692   TH1F *fHistPtITSMI5InAcc = (TH1F*)f->Get("fHistPtITSMI5InAcc");
693   TH1F *fHistPtITSMI4InAcc = (TH1F*)f->Get("fHistPtITSMI4InAcc");
694   TH1F *fHistPtITSMI3InAcc = (TH1F*)f->Get("fHistPtITSMI3InAcc");
695   TH1F *fHistPtITSMI2InAcc = (TH1F*)f->Get("fHistPtITSMI2InAcc");
696   TH1F *fHistPtITSMIge2InAcc = (TH1F*)f->Get("fHistPtITSMIge2InAcc");
697   TH1F *fHistPtITSMISPDInAcc = (TH1F*)f->Get("fHistPtITSMISPDInAcc");
698   TH1F *fHistPtITSMIoneSPDInAcc = (TH1F*)f->Get("fHistPtITSMIoneSPDInAcc");
699   TH1F *fHistPtITSMIoneSPDthreeSDDSSDInAcc = (TH1F*)f->Get("fHistPtITSMIoneSPDthreeSDDSSDInAcc");
700   TH1F *fHistPtITSTPCsel = (TH1F*)f->Get("fHistPtITSTPCsel");
701   TH1F *fHistClusterMapModuleITSMIokRatioInAcc = (TH1F*)f->Get("fHistClusterMapModuleITSMIokRatioInAcc");
702   TH1F *fHistNclsITSMI = (TH1F*)f->Get("fHistNclsITSMI");
703
704
705   TFile *fMC= new TFile("eff_lhc10c4.root");
706
707   TH1F *fHistPtITSMI6InAccMC = (TH1F*)fMC->Get("fHistPtITSMI6InAcc");
708   TH1F *fHistPtITSMI5InAccMC = (TH1F*)fMC->Get("fHistPtITSMI5InAcc");
709   TH1F *fHistPtITSMI4InAccMC = (TH1F*)fMC->Get("fHistPtITSMI4InAcc");
710   TH1F *fHistPtITSMI3InAccMC = (TH1F*)fMC->Get("fHistPtITSMI3InAcc");
711   TH1F *fHistPtITSMI2InAccMC = (TH1F*)fMC->Get("fHistPtITSMI2InAcc");
712   TH1F *fHistPtITSMIge2InAccMC = (TH1F*)fMC->Get("fHistPtITSMIge2InAcc");
713   TH1F *fHistPtITSMISPDInAccMC = (TH1F*)fMC->Get("fHistPtITSMISPDInAcc");
714   TH1F *fHistPtITSMIoneSPDInAccMC = (TH1F*)fMC->Get("fHistPtITSMIoneSPDInAcc");
715   TH1F *fHistPtITSMIoneSPDthreeSDDSSDInAccMC = (TH1F*)fMC->Get("fHistPtITSMIoneSPDthreeSDDSSDInAcc");
716   TH1F *fHistPtITSTPCselMC = (TH1F*)fMC->Get("fHistPtITSTPCsel");
717   TH1F *fHistClusterMapModuleITSMIokRatioInAccMC = (TH1F*)fMC->Get("fHistClusterMapModuleITSMIokRatioInAcc");
718   TH1F *fHistNclsITSMIMC = (TH1F*)fMC->Get("fHistNclsITSMIMC");
719
720   /*
721   TCanvas *c0 = new TCanvas("c0","c0",0,0,600,500);
722   c0->SetGridy();
723   fHistNclsITSMI->SetLineColor(4);
724   fHistNclsITSMI->SetMarkerColor(4);
725   fHistNclsITSMI->SetLineStyle(1);
726   fHistNclsITSMI->SetMarkerStyle(20);
727   fHistNclsITSMI->Draw();
728   fHistNclsITSMIMC->SetLineColor(4);
729   fHistNclsITSMIMC->SetMarkerColor(4);
730   fHistNclsITSMIMC->SetLineStyle(2);
731   fHistNclsITSMIMC->SetMarkerStyle(24);
732   fHistNclsITSMIMC->Draw("same");
733   */
734   TCanvas *c = new TCanvas("c","c",0,0,600,500);
735   c->SetGridy();
736   c->SetLogx();
737   
738   fHistPtITSMI6InAcc->Divide(fHistPtITSMI6InAccMC);
739   fHistPtITSMI6InAcc->Draw();
740   fHistPtITSMI5InAcc->Divide(fHistPtITSMI5InAccMC);
741   fHistPtITSMI5InAcc->Draw("same");
742   fHistPtITSMI4InAcc->Divide(fHistPtITSMI4InAccMC);
743   fHistPtITSMI4InAcc->Draw("same");
744   fHistPtITSMI3InAcc->Divide(fHistPtITSMI3InAccMC);
745   fHistPtITSMI3InAcc->Draw("same");
746   fHistPtITSMI2InAcc->Divide(fHistPtITSMI2InAccMC);
747   fHistPtITSMI2InAcc->Draw("same");
748   fHistPtITSMIge2InAcc->Divide(fHistPtITSMIge2InAccMC);
749   fHistPtITSMIge2InAcc->Draw("same");
750   fHistPtITSMISPDInAcc->Divide(fHistPtITSMISPDInAccMC);
751   fHistPtITSMISPDInAcc->Draw("same");
752   fHistPtITSMIoneSPDInAcc->Divide(fHistPtITSMIoneSPDInAccMC);
753   fHistPtITSMIoneSPDInAcc->Draw("same");
754   //fHistPtITSMIoneSPDthreeSDDSSDInAcc->Divide(fHistPtITSMIoneSPDthreeSDDSSDInAccMC);
755   //fHistPtITSMIoneSPDthreeSDDSSDInAcc->Draw("same");
756   
757   fHistPtITSTPCsel->Divide(fHistPtITSTPCselMC);
758   fHistPtITSTPCsel->Draw("same");
759   
760   TLegend *l3=new TLegend(0.5,0.5,0.9,0.9);
761   l3->AddEntry(fHistPtITSMIge2InAcc,">=2 cls","l");
762   l3->AddEntry(fHistPtITSMI6InAcc,"6 cls","l");
763   l3->AddEntry(fHistPtITSMI5InAcc,"5 cls","l");
764   l3->AddEntry(fHistPtITSMI4InAcc,"4 cls","l");
765   l3->AddEntry(fHistPtITSMI3InAcc,"3 cls","l");
766   l3->AddEntry(fHistPtITSMI2InAcc,"2 cls","l");
767   l3->AddEntry(fHistPtITSMISPDInAcc,"2SPD + any","l");
768   l3->AddEntry(fHistPtITSMIoneSPDInAcc,">=1SPD + any","l");
769   //l3->AddEntry(fHistPtITSMIoneSPDthreeSDDSSDInAcc,">=1SPD + >=3SDDSSD","l");
770   l3->AddEntry(fHistPtITSTPCsel,">=1SPD + any + d_{0} cut","l");
771   l3->Draw();
772   
773   TCanvas *cc = new TCanvas("cc","cc",0,0,600,500);
774   cc->Divide(1,2);
775   cc->cd(1);
776   fHistClusterMapModuleITSMIokRatioInAccMC->SetLineColor(4);
777   fHistClusterMapModuleITSMIokRatioInAccMC->Draw();
778   fHistClusterMapModuleITSMIokRatioInAcc->Draw("same");
779   cc->cd(2);
780   for(Int_t i=1;i<=fHistClusterMapModuleITSMIokRatioInAccMC->GetNbinsX();i++) {
781     if(fHistClusterMapModuleITSMIokRatioInAccMC->GetBinContent(i)<0.02) {
782       fHistClusterMapModuleITSMIokRatioInAccMC->SetBinContent(i,1); 
783       if(fHistClusterMapModuleITSMIokRatioInAcc->GetBinContent(i)<0.02) {
784         fHistClusterMapModuleITSMIokRatioInAcc->SetBinContent(i,1); 
785       }
786     }
787   }
788   TH1F* fHistClusterMapDataOverMC=(TH1F*)fHistClusterMapModuleITSMIokRatioInAcc->Clone("fHistClusterMapDataOverMC");
789   fHistClusterMapDataOverMC->Divide(fHistClusterMapModuleITSMIokRatioInAccMC);
790   fHistClusterMapDataOverMC->Draw();
791
792   return;
793 }
794
795 //-----------------------------------------------------------------------------
796 void PlotEffOfficial(Bool_t drawRatio=kTRUE) {
797
798   gStyle->SetOptStat(0);
799
800   gROOT->LoadMacro("/Users/dainesea/ALICEWorkInProgress.C");
801
802   TFile *f= new TFile("eff_115328_115393_minipass.root");
803
804   TH1F *fHistPtITSMI6InAcc = (TH1F*)f->Get("fHistPtITSMI6InAcc");
805   TH1F *fHistPtITSMI5InAcc = (TH1F*)f->Get("fHistPtITSMI5InAcc");
806   TH1F *fHistPtITSMI4InAcc = (TH1F*)f->Get("fHistPtITSMI4InAcc");
807   TH1F *fHistPtITSMI3InAcc = (TH1F*)f->Get("fHistPtITSMI3InAcc");
808   TH1F *fHistPtITSMI2InAcc = (TH1F*)f->Get("fHistPtITSMI2InAcc");
809   TH1F *fHistPtITSMIge2InAcc = (TH1F*)f->Get("fHistPtITSMIge2InAcc");
810   fHistPtITSMIge2InAcc->SetLineColor(1);
811   fHistPtITSMIge2InAcc->SetLineStyle(1);
812   fHistPtITSMIge2InAcc->SetMarkerColor(1);
813   fHistPtITSMIge2InAcc->SetMarkerStyle(21);
814   TH1F *fHistPtITSMISPDInAcc = (TH1F*)f->Get("fHistPtITSMISPDInAcc");
815   TH1F *fHistPtITSMIoneSPDInAcc = (TH1F*)f->Get("fHistPtITSMIoneSPDInAcc");
816   fHistPtITSMIoneSPDInAcc->SetLineColor(2);
817   fHistPtITSMIoneSPDInAcc->SetLineStyle(1);
818   fHistPtITSMIoneSPDInAcc->SetMarkerColor(2);
819   fHistPtITSMIoneSPDInAcc->SetMarkerStyle(20);
820   TH1F *fHistPtITSTPCsel = (TH1F*)f->Get("fHistPtITSTPCsel");
821   TH1F *fHistClusterMapModuleITSMIokRatioInAcc = (TH1F*)f->Get("fHistClusterMapModuleITSMIokRatioInAcc");
822   TH1F *fHistNclsITSMI = (TH1F*)f->Get("fHistNclsITSMI");
823
824
825   TFile *fMC= new TFile("eff_lhc10b2.root");
826
827   TH1F *fHistPtITSMI6InAccMC = (TH1F*)fMC->Get("fHistPtITSMI6InAcc");
828   TH1F *fHistPtITSMI5InAccMC = (TH1F*)fMC->Get("fHistPtITSMI5InAcc");
829   TH1F *fHistPtITSMI4InAccMC = (TH1F*)fMC->Get("fHistPtITSMI4InAcc");
830   TH1F *fHistPtITSMI3InAccMC = (TH1F*)fMC->Get("fHistPtITSMI3InAcc");
831   TH1F *fHistPtITSMI2InAccMC = (TH1F*)fMC->Get("fHistPtITSMI2InAcc");
832   TH1F *fHistPtITSMIge2InAccMC = (TH1F*)fMC->Get("fHistPtITSMIge2InAcc");
833   fHistPtITSMIge2InAccMC->SetLineColor(1);
834   fHistPtITSMIge2InAccMC->SetLineStyle(2);
835   fHistPtITSMIge2InAccMC->SetMarkerColor(1);
836   fHistPtITSMIge2InAccMC->SetMarkerStyle(25);
837   TH1F *fHistPtITSMISPDInAccMC = (TH1F*)fMC->Get("fHistPtITSMISPDInAcc");
838   TH1F *fHistPtITSMIoneSPDInAccMC = (TH1F*)fMC->Get("fHistPtITSMIoneSPDInAcc");
839   fHistPtITSMIoneSPDInAccMC->SetLineColor(2);
840   fHistPtITSMIoneSPDInAccMC->SetLineStyle(2);
841   fHistPtITSMIoneSPDInAccMC->SetMarkerColor(2);
842   fHistPtITSMIoneSPDInAccMC->SetMarkerStyle(24);
843   TH1F *fHistPtITSTPCselMC = (TH1F*)fMC->Get("fHistPtITSTPCsel");
844   TH1F *fHistClusterMapModuleITSMIokRatioInAccMC = (TH1F*)fMC->Get("fHistClusterMapModuleITSMIokRatioInAcc");
845   TH1F *fHistNclsITSMIMC = (TH1F*)fMC->Get("fHistNclsITSMI");
846
847
848   TCanvas *c0 = new TCanvas("c0","c0",0,0,600,500);
849   c0->SetGridy();
850   fHistNclsITSMI->SetLineColor(4);
851   fHistNclsITSMI->SetMarkerColor(4);
852   fHistNclsITSMI->SetLineStyle(1);
853   fHistNclsITSMI->SetMarkerStyle(20);
854   fHistNclsITSMI->Scale(1./fHistNclsITSMI->Integral());
855   fHistNclsITSMI->Draw();
856   fHistNclsITSMIMC->SetLineColor(4);
857   fHistNclsITSMIMC->SetMarkerColor(4);
858   fHistNclsITSMIMC->SetLineStyle(2);
859   fHistNclsITSMIMC->SetMarkerStyle(24);
860   fHistNclsITSMIMC->Scale(1./fHistNclsITSMIMC->Integral());
861   fHistNclsITSMIMC->Draw("same");
862
863   TLegend *l0=new TLegend(0.5,0.5,0.9,0.9);
864   l0->SetFillStyle(0);
865   l0->SetBorderSize(0);
866   l0->AddEntry(fHistNclsITSMI,"Data","lp");
867   l0->AddEntry(fHistNclsITSMIMC,"MC","lp");
868   l0->Draw();
869  
870   ALICEWorkInProgress(c0,"20/05/2010");
871
872   TCanvas *c = new TCanvas("c","c",0,0,600,500);
873   c->SetGridy();
874   c->SetLogx();
875
876   TLegend *l3=new TLegend(0.5,0.5,0.9,0.9);
877   l3->SetFillStyle(0);
878   l3->SetBorderSize(0);
879   
880   if(drawRatio) {
881     //fHistPtITSMI6InAcc->Divide(fHistPtITSMI6InAccMC);
882     //fHistPtITSMI6InAcc->Draw();
883     //fHistPtITSMI5InAcc->Divide(fHistPtITSMI5InAccMC);
884     //fHistPtITSMI5InAcc->Draw("same");
885     //fHistPtITSMI4InAcc->Divide(fHistPtITSMI4InAccMC);
886     //fHistPtITSMI4InAcc->Draw("same");
887     //fHistPtITSMI3InAcc->Divide(fHistPtITSMI3InAccMC);
888     //fHistPtITSMI3InAcc->Draw("same");
889     //fHistPtITSMI2InAcc->Divide(fHistPtITSMI2InAccMC);
890     //fHistPtITSMI2InAcc->Draw("same");
891     fHistPtITSMIge2InAcc->SetYTitle("Data efficiency / MC efficiency");
892     fHistPtITSMIge2InAcc->Divide(fHistPtITSMIge2InAccMC);
893     fHistPtITSMIge2InAcc->Draw();
894     //fHistPtITSMISPDInAcc->Divide(fHistPtITSMISPDInAccMC);
895     //fHistPtITSMISPDInAcc->Draw("same");
896     fHistPtITSMIoneSPDInAcc->Divide(fHistPtITSMIoneSPDInAccMC);
897     fHistPtITSMIoneSPDInAcc->Draw("same");
898     
899     //fHistPtITSTPCsel->Divide(fHistPtITSTPCselMC);
900     //fHistPtITSTPCsel->Draw("same");
901     l3->AddEntry(fHistPtITSMIge2InAcc,"at least 2 ITS hits","lp");
902     //l3->AddEntry(fHistPtITSMI6InAcc,"6 cls","l");
903     //l3->AddEntry(fHistPtITSMI5InAcc,"5 cls","l");
904     //l3->AddEntry(fHistPtITSMI4InAcc,"4 cls","l");
905     //l3->AddEntry(fHistPtITSMI3InAcc,"3 cls","l");
906     //l3->AddEntry(fHistPtITSMI2InAcc,"2 cls","l");
907     //l3->AddEntry(fHistPtITSMISPDInAcc,"2 SPD hits","lp");
908     l3->AddEntry(fHistPtITSMIoneSPDInAcc,"at least 1 SPD hit","lp");
909     //l3->AddEntry(fHistPtITSTPCsel,">=1SPD + any + d_{0} cut","l");
910
911   } else {
912     fHistPtITSMIge2InAcc->SetYTitle("ITS prolongation efficiency");
913     fHistPtITSMIge2InAcc->Draw();
914     fHistPtITSMIge2InAccMC->Draw("same");
915     fHistPtITSMIoneSPDInAcc->Draw("same");
916     fHistPtITSMIoneSPDInAccMC->Draw("same");
917     l3->AddEntry(fHistPtITSMIge2InAcc,"at least 2 ITS hits (Data)","lp");
918     l3->AddEntry(fHistPtITSMIoneSPDInAcc,"at least 1 SPD hit (Data)","lp");
919     l3->AddEntry(fHistPtITSMIge2InAccMC,"at least 2 ITS hits (MC)","lp");
920     l3->AddEntry(fHistPtITSMIoneSPDInAccMC,"at least 1 SPD hit (MC)","lp");
921   } 
922
923   l3->Draw();
924   
925   ALICEWorkInProgress(c,"20/05/2010");
926
927   return;
928 }
929
930 void PlotImpPar_rphi(Int_t rebin=1) {
931
932
933   TFile *fMC= new TFile("ITS.Performance_lhc10b2.root");
934
935   TList *list=(TList*)fMC->Get("cOutputITS");
936   TH1F *fHistd0rphiITSMIoneSPDInAccP150200MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP150200");
937   TH1F *fHistd0rphiITSMIoneSPDInAccS150200MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS150200");
938   TH1F *fHistd0rphiITSMIoneSPDInAccS150200fromStrangeMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS150200fromStrange");
939   TH1F *fHistd0rphiITSMIoneSPDInAccS150200fromMatMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS150200fromMat");
940   TH1F *fHistd0rphiITSMIoneSPDInAccP350450MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP350450");
941   TH1F *fHistd0rphiITSMIoneSPDInAccS350450MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS350450");
942   TH1F *fHistd0rphiITSMIoneSPDInAccS350450fromStrangeMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS350450fromStrange");
943   TH1F *fHistd0rphiITSMIoneSPDInAccS350450fromMatMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS350450fromMat");
944   TH1F *fHistd0rphiITSMIoneSPDInAccP500700MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP500700");
945   TH1F *fHistd0rphiITSMIoneSPDInAccS500700MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700");
946   TH1F *fHistd0rphiITSMIoneSPDInAccS500700fromStrangeMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700fromStrange");
947   TH1F *fHistd0rphiITSMIoneSPDInAccS500700from211MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700from211");
948   TH1F *fHistd0rphiITSMIoneSPDInAccS500700from22MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700from22");
949   TH1F *fHistd0rphiITSMIoneSPDInAccS500700from310MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700from310");
950   TH1F *fHistd0rphiITSMIoneSPDInAccS500700from321MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700from321");
951   TH1F *fHistd0rphiITSMIoneSPDInAccS500700from3122MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700from3122");
952   TH1F *fHistd0rphiITSMIoneSPDInAccS500700fromMatMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700fromMat");
953   TH1F *fHistd0rphiITSMIoneSPDInAccP10001500MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP10001500");
954   TH1F *fHistd0rphiITSMIoneSPDInAccS10001500MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS10001500");
955   TH1F *fHistd0rphiITSMIoneSPDInAccS10001500fromStrangeMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS10001500fromStrange");
956   TH1F *fHistd0rphiITSMIoneSPDInAccS10001500fromMatMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS10001500fromMat");
957   TH1F *fHistd0rphiITSMIoneSPDInAccP25004000MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP25004000");
958   TH1F *fHistd0rphiITSMIoneSPDInAccS25004000MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS25004000");
959   TH1F *fHistd0rphiITSMIoneSPDInAccS25004000fromStrangeMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS25004000fromStrange");
960   TH1F *fHistd0rphiITSMIoneSPDInAccS25004000fromMatMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS25004000fromMat");
961   TH1F *fHistd0rphiITSMIoneSPDInAccP40008000MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP40008000");
962   TH1F *fHistd0rphiITSMIoneSPDInAccS40008000MC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS40008000");
963   TH1F *fHistd0rphiITSMIoneSPDInAccS40008000fromStrangeMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS40008000fromStrange");
964   TH1F *fHistd0rphiITSMIoneSPDInAccS40008000fromMatMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS40008000fromMat"); 
965
966   TH1F *fHistd0rphiITSMIoneSPDInAcc150200MC=(TH1F*)fHistd0rphiITSMIoneSPDInAccP150200MC->Clone("fHistd0rphiITSMIoneSPDInAcc150200MC");
967   fHistd0rphiITSMIoneSPDInAcc150200MC->Add(fHistd0rphiITSMIoneSPDInAccS150200MC);
968   fHistd0rphiITSMIoneSPDInAcc150200MC->Scale(1./fHistd0rphiITSMIoneSPDInAcc150200MC->GetEntries());
969   TH1F *fHistd0rphiITSMIoneSPDInAcc350450MC=(TH1F*)fHistd0rphiITSMIoneSPDInAccP350450MC->Clone("fHistd0rphiITSMIoneSPDInAcc350450MC");
970   fHistd0rphiITSMIoneSPDInAcc350450MC->Add(fHistd0rphiITSMIoneSPDInAccS350450MC); 
971   fHistd0rphiITSMIoneSPDInAcc350450MC->Scale(1./fHistd0rphiITSMIoneSPDInAcc350450MC->GetEntries());
972   TH1F *fHistd0rphiITSMIoneSPDInAcc500700MC=(TH1F*)fHistd0rphiITSMIoneSPDInAccP500700MC->Clone("fHistd0rphiITSMIoneSPDInAcc500700MC");
973   fHistd0rphiITSMIoneSPDInAcc500700MC->Add(fHistd0rphiITSMIoneSPDInAccS500700MC);
974   fHistd0rphiITSMIoneSPDInAcc500700MC->Scale(1./fHistd0rphiITSMIoneSPDInAcc500700MC->GetEntries());
975   TH1F *fHistd0rphiITSMIoneSPDInAcc10001500MC=(TH1F*)fHistd0rphiITSMIoneSPDInAccP10001500MC->Clone("fHistd0rphiITSMIoneSPDInAcc10001500MC");
976   fHistd0rphiITSMIoneSPDInAcc10001500MC->Add(fHistd0rphiITSMIoneSPDInAccS10001500MC);
977   fHistd0rphiITSMIoneSPDInAcc10001500MC->Scale(1./fHistd0rphiITSMIoneSPDInAcc10001500MC->GetEntries());
978   TH1F *fHistd0rphiITSMIoneSPDInAcc25004000MC=(TH1F*)fHistd0rphiITSMIoneSPDInAccP25004000MC->Clone("fHistd0rphiITSMIoneSPDInAcc25004000MC");
979   fHistd0rphiITSMIoneSPDInAcc25004000MC->Add(fHistd0rphiITSMIoneSPDInAccS25004000MC);
980   fHistd0rphiITSMIoneSPDInAcc25004000MC->Scale(1./fHistd0rphiITSMIoneSPDInAcc25004000MC->GetEntries());
981   TH1F *fHistd0rphiITSMIoneSPDInAcc40008000MC=(TH1F*)fHistd0rphiITSMIoneSPDInAccP40008000MC->Clone("fHistd0rphiITSMIoneSPDInAcc40008000MC");
982   fHistd0rphiITSMIoneSPDInAcc40008000MC->Add(fHistd0rphiITSMIoneSPDInAccS40008000MC);
983   fHistd0rphiITSMIoneSPDInAcc40008000MC->Scale(1./fHistd0rphiITSMIoneSPDInAcc40008000MC->GetEntries());
984   
985
986   TFile *f= new TFile("ITS.Performance_117048_117223_pass1.root");
987
988   TList *list=(TList*)f->Get("cOutputITS");
989   TH1F *fHistd0rphiITSMIoneSPDInAccP150200 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP150200");
990   TH1F *fHistd0rphiITSMIoneSPDInAccS150200 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS150200");
991   TH1F *fHistd0rphiITSMIoneSPDInAccP350450 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP350450");
992   TH1F *fHistd0rphiITSMIoneSPDInAccS350450 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS350450");
993   TH1F *fHistd0rphiITSMIoneSPDInAccP500700 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP500700");
994   TH1F *fHistd0rphiITSMIoneSPDInAccS500700 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS500700");
995   TH1F *fHistd0rphiITSMIoneSPDInAccP10001500 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP10001500");
996   TH1F *fHistd0rphiITSMIoneSPDInAccS10001500 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS10001500");
997   TH1F *fHistd0rphiITSMIoneSPDInAccP25004000 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP25004000");
998   TH1F *fHistd0rphiITSMIoneSPDInAccS25004000 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS25004000");
999   TH1F *fHistd0rphiITSMIoneSPDInAccP40008000 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP40008000");
1000   TH1F *fHistd0rphiITSMIoneSPDInAccS40008000 = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS40008000");
1001   TH1F *fHistd0rphiITSMIoneSPDInAcc150200=(TH1F*)fHistd0rphiITSMIoneSPDInAccP150200->Clone("fHistd0rphiITSMIoneSPDInAcc150200");
1002   fHistd0rphiITSMIoneSPDInAcc150200->Add(fHistd0rphiITSMIoneSPDInAccS150200);
1003   fHistd0rphiITSMIoneSPDInAcc150200->Scale(1./fHistd0rphiITSMIoneSPDInAcc150200->GetEntries());
1004   TH1F *fHistd0rphiITSMIoneSPDInAcc350450=(TH1F*)fHistd0rphiITSMIoneSPDInAccP350450->Clone("fHistd0rphiITSMIoneSPDInAcc350450");
1005   fHistd0rphiITSMIoneSPDInAcc350450->Add(fHistd0rphiITSMIoneSPDInAccS350450);
1006   fHistd0rphiITSMIoneSPDInAcc350450->Scale(1./fHistd0rphiITSMIoneSPDInAcc350450->GetEntries());
1007   TH1F *fHistd0rphiITSMIoneSPDInAcc500700=(TH1F*)fHistd0rphiITSMIoneSPDInAccP500700->Clone("fHistd0rphiITSMIoneSPDInAcc500700");
1008   fHistd0rphiITSMIoneSPDInAcc500700->Add(fHistd0rphiITSMIoneSPDInAccS500700);
1009   fHistd0rphiITSMIoneSPDInAcc500700->Scale(1./fHistd0rphiITSMIoneSPDInAcc500700->GetEntries());
1010   TH1F *fHistd0rphiITSMIoneSPDInAcc10001500=(TH1F*)fHistd0rphiITSMIoneSPDInAccP10001500->Clone("fHistd0rphiITSMIoneSPDInAcc10001500");
1011   fHistd0rphiITSMIoneSPDInAcc10001500->Add(fHistd0rphiITSMIoneSPDInAccS10001500);
1012   fHistd0rphiITSMIoneSPDInAcc10001500->Scale(1./fHistd0rphiITSMIoneSPDInAcc10001500->GetEntries());
1013   TH1F *fHistd0rphiITSMIoneSPDInAcc25004000=(TH1F*)fHistd0rphiITSMIoneSPDInAccP25004000->Clone("fHistd0rphiITSMIoneSPDInAcc25004000");
1014   fHistd0rphiITSMIoneSPDInAcc25004000->Add(fHistd0rphiITSMIoneSPDInAccS25004000);
1015   fHistd0rphiITSMIoneSPDInAcc25004000->Scale(1./fHistd0rphiITSMIoneSPDInAcc25004000->GetEntries());
1016   TH1F *fHistd0rphiITSMIoneSPDInAcc40008000=(TH1F*)fHistd0rphiITSMIoneSPDInAccP40008000->Clone("fHistd0rphiITSMIoneSPDInAcc40008000");
1017   fHistd0rphiITSMIoneSPDInAcc40008000->Add(fHistd0rphiITSMIoneSPDInAccS40008000);
1018   fHistd0rphiITSMIoneSPDInAcc40008000->Scale(1./fHistd0rphiITSMIoneSPDInAcc40008000->GetEntries()); 
1019
1020
1021   TCanvas *c1 = new TCanvas("c1","c1");
1022   c1->Divide(3,2);
1023   c1->cd(1);
1024   fHistd0rphiITSMIoneSPDInAcc150200MC->Rebin(rebin);
1025   fHistd0rphiITSMIoneSPDInAcc150200->Rebin(rebin);
1026   fHistd0rphiITSMIoneSPDInAcc150200MC->SetLineColor(2);
1027   fHistd0rphiITSMIoneSPDInAcc150200MC->Draw();
1028   fHistd0rphiITSMIoneSPDInAcc150200->SetLineColor(4);
1029   fHistd0rphiITSMIoneSPDInAcc150200->Draw("same");
1030   c1->cd(2);
1031   fHistd0rphiITSMIoneSPDInAcc350450MC->Rebin(rebin);
1032   fHistd0rphiITSMIoneSPDInAcc350450->Rebin(rebin);
1033   fHistd0rphiITSMIoneSPDInAcc350450MC->SetLineColor(2);
1034   fHistd0rphiITSMIoneSPDInAcc350450MC->Draw();
1035   fHistd0rphiITSMIoneSPDInAcc350450->SetLineColor(4);
1036   fHistd0rphiITSMIoneSPDInAcc350450->Draw("same"); 
1037   c1->cd(3);
1038   fHistd0rphiITSMIoneSPDInAcc500700MC->Rebin(rebin);
1039   fHistd0rphiITSMIoneSPDInAcc500700->Rebin(rebin);
1040   fHistd0rphiITSMIoneSPDInAcc500700MC->SetLineColor(2);
1041   fHistd0rphiITSMIoneSPDInAcc500700MC->Draw();
1042   fHistd0rphiITSMIoneSPDInAcc500700->SetLineColor(4);
1043   fHistd0rphiITSMIoneSPDInAcc500700->Draw("same");
1044   c1->cd(4);
1045   fHistd0rphiITSMIoneSPDInAcc10001500MC->Rebin(rebin);
1046   fHistd0rphiITSMIoneSPDInAcc10001500->Rebin(rebin);
1047   fHistd0rphiITSMIoneSPDInAcc10001500MC->SetLineColor(2);
1048   fHistd0rphiITSMIoneSPDInAcc10001500MC->Draw();
1049   fHistd0rphiITSMIoneSPDInAcc10001500->SetLineColor(4);
1050   fHistd0rphiITSMIoneSPDInAcc10001500->Draw("same");
1051    c1->cd(5);
1052   fHistd0rphiITSMIoneSPDInAcc25004000MC->Rebin(rebin);
1053   fHistd0rphiITSMIoneSPDInAcc25004000->Rebin(rebin);
1054   fHistd0rphiITSMIoneSPDInAcc25004000MC->SetLineColor(2);
1055   fHistd0rphiITSMIoneSPDInAcc25004000MC->Draw();
1056   fHistd0rphiITSMIoneSPDInAcc25004000->SetLineColor(4);
1057   fHistd0rphiITSMIoneSPDInAcc25004000->Draw("same");
1058   c1->cd(6);
1059   fHistd0rphiITSMIoneSPDInAcc40008000MC->Rebin(rebin);
1060   fHistd0rphiITSMIoneSPDInAcc40008000->Rebin(rebin);
1061   fHistd0rphiITSMIoneSPDInAcc40008000MC->SetLineColor(2);
1062   fHistd0rphiITSMIoneSPDInAcc40008000MC->Draw();
1063   fHistd0rphiITSMIoneSPDInAcc40008000->SetLineColor(4);
1064   fHistd0rphiITSMIoneSPDInAcc40008000->Draw("same");
1065   
1066   
1067   TCanvas *c1a = new TCanvas("c1a","c1a");
1068   c1a->Divide(3,1);
1069   c1a->cd(1);
1070   TH1F* fHistd0rphiITSMIoneSPDInAcc150200Ratio=(TH1F*)fHistd0rphiITSMIoneSPDInAcc150200->Clone("fHistd0rphiITSMIoneSPDInAcc150200Ratio");
1071   fHistd0rphiITSMIoneSPDInAcc150200Ratio->Divide(fHistd0rphiITSMIoneSPDInAcc150200MC);
1072   fHistd0rphiITSMIoneSPDInAcc150200Ratio->Draw();
1073   c1a->cd(2);
1074   TH1F* fHistd0rphiITSMIoneSPDInAcc500700Ratio=(TH1F*)fHistd0rphiITSMIoneSPDInAcc500700->Clone("fHistd0rphiITSMIoneSPDInAcc500700Ratio");
1075   fHistd0rphiITSMIoneSPDInAcc500700Ratio->Divide(fHistd0rphiITSMIoneSPDInAcc500700MC);
1076   fHistd0rphiITSMIoneSPDInAcc500700Ratio->Draw();
1077   c1a->cd(3);
1078   TH1F* fHistd0rphiITSMIoneSPDInAcc10001500Ratio=(TH1F*)fHistd0rphiITSMIoneSPDInAcc10001500->Clone("fHistd0rphiITSMIoneSPDInAcc10001500Ratio");
1079   fHistd0rphiITSMIoneSPDInAcc10001500Ratio->Divide(fHistd0rphiITSMIoneSPDInAcc10001500MC);
1080   fHistd0rphiITSMIoneSPDInAcc10001500Ratio->Draw();
1081
1082
1083
1084   TCanvas *c2 = new TCanvas("c2","c2");
1085   c2->Divide(3,2);
1086   c2_1->SetLogy();
1087   c2_2->SetLogy();
1088   c2_3->SetLogy();
1089   c2_4->SetLogy();
1090   c2_5->SetLogy();
1091   c2_6->SetLogy();
1092   c2->cd(1);
1093   fHistd0rphiITSMIoneSPDInAccP150200MC->SetMinimum(1);
1094   fHistd0rphiITSMIoneSPDInAccS150200MC->SetMinimum(1);
1095   fHistd0rphiITSMIoneSPDInAccS150200fromStrangeMC->SetMinimum(1);
1096   fHistd0rphiITSMIoneSPDInAccS150200fromMatMC->SetMinimum(1);
1097   fHistd0rphiITSMIoneSPDInAccP150200MC->SetLineColor(1);
1098   fHistd0rphiITSMIoneSPDInAccP150200MC->Draw();
1099   fHistd0rphiITSMIoneSPDInAccS150200MC->SetLineColor(6);
1100   fHistd0rphiITSMIoneSPDInAccS150200MC->Draw("same");
1101   fHistd0rphiITSMIoneSPDInAccS150200fromStrangeMC->SetLineColor(8);
1102   fHistd0rphiITSMIoneSPDInAccS150200fromStrangeMC->Draw("same");
1103   fHistd0rphiITSMIoneSPDInAccS150200fromMatMC->SetLineColor(9);
1104   fHistd0rphiITSMIoneSPDInAccS150200fromMatMC->Draw("same");
1105   c2->cd(2);
1106   fHistd0rphiITSMIoneSPDInAccP350450MC->SetMinimum(1);
1107   fHistd0rphiITSMIoneSPDInAccS350450MC->SetMinimum(1);
1108   fHistd0rphiITSMIoneSPDInAccS350450fromStrangeMC->SetMinimum(1);
1109   fHistd0rphiITSMIoneSPDInAccS350450fromMatMC->SetMinimum(1);
1110   fHistd0rphiITSMIoneSPDInAccP350450MC->SetLineColor(1);
1111   fHistd0rphiITSMIoneSPDInAccP350450MC->Draw();
1112   fHistd0rphiITSMIoneSPDInAccS350450MC->SetLineColor(6);
1113   fHistd0rphiITSMIoneSPDInAccS350450MC->Draw("same");
1114   fHistd0rphiITSMIoneSPDInAccS350450fromStrangeMC->SetLineColor(8);
1115   fHistd0rphiITSMIoneSPDInAccS350450fromStrangeMC->Draw("same");
1116   fHistd0rphiITSMIoneSPDInAccS350450fromMatMC->SetLineColor(9);
1117   fHistd0rphiITSMIoneSPDInAccS350450fromMatMC->Draw("same"); 
1118  c2->cd(3);
1119   fHistd0rphiITSMIoneSPDInAccP500700MC->SetMinimum(1);
1120   fHistd0rphiITSMIoneSPDInAccS500700MC->SetMinimum(1);
1121   fHistd0rphiITSMIoneSPDInAccS500700fromStrangeMC->SetMinimum(1);
1122   fHistd0rphiITSMIoneSPDInAccS500700fromMatMC->SetMinimum(1);
1123   fHistd0rphiITSMIoneSPDInAccP500700MC->SetLineColor(1);
1124   fHistd0rphiITSMIoneSPDInAccP500700MC->Draw();
1125   fHistd0rphiITSMIoneSPDInAccS500700MC->SetLineColor(6);
1126   fHistd0rphiITSMIoneSPDInAccS500700MC->Draw("same");
1127   fHistd0rphiITSMIoneSPDInAccS500700fromStrangeMC->SetLineColor(8);
1128   fHistd0rphiITSMIoneSPDInAccS500700fromStrangeMC->Draw("same");
1129   fHistd0rphiITSMIoneSPDInAccS500700fromMatMC->SetLineColor(9);
1130   fHistd0rphiITSMIoneSPDInAccS500700fromMatMC->Draw("same");
1131   c2->cd(4);
1132   fHistd0rphiITSMIoneSPDInAccP10001500MC->SetMinimum(1);
1133   fHistd0rphiITSMIoneSPDInAccS10001500MC->SetMinimum(1);
1134   fHistd0rphiITSMIoneSPDInAccS10001500fromStrangeMC->SetMinimum(1);
1135   fHistd0rphiITSMIoneSPDInAccS10001500fromMatMC->SetMinimum(1);
1136   fHistd0rphiITSMIoneSPDInAccP10001500MC->SetLineColor(1);
1137   fHistd0rphiITSMIoneSPDInAccP10001500MC->Draw();
1138   fHistd0rphiITSMIoneSPDInAccS10001500MC->SetLineColor(6);
1139   fHistd0rphiITSMIoneSPDInAccS10001500MC->Draw("same");
1140   fHistd0rphiITSMIoneSPDInAccS10001500fromStrangeMC->SetLineColor(8);
1141   fHistd0rphiITSMIoneSPDInAccS10001500fromStrangeMC->Draw("same");
1142   fHistd0rphiITSMIoneSPDInAccS10001500fromMatMC->SetLineColor(9);
1143   fHistd0rphiITSMIoneSPDInAccS10001500fromMatMC->Draw("same");
1144   c2->cd(5);
1145   fHistd0rphiITSMIoneSPDInAccP25004000MC->SetMinimum(1);
1146   fHistd0rphiITSMIoneSPDInAccS25004000MC->SetMinimum(1);
1147   fHistd0rphiITSMIoneSPDInAccS25004000fromStrangeMC->SetMinimum(1);
1148   fHistd0rphiITSMIoneSPDInAccS25004000fromMatMC->SetMinimum(1);
1149   fHistd0rphiITSMIoneSPDInAccP25004000MC->SetLineColor(1);
1150   fHistd0rphiITSMIoneSPDInAccP25004000MC->Draw();
1151   fHistd0rphiITSMIoneSPDInAccS25004000MC->SetLineColor(6);
1152   fHistd0rphiITSMIoneSPDInAccS25004000MC->Draw("same");
1153   fHistd0rphiITSMIoneSPDInAccS25004000fromStrangeMC->SetLineColor(8);
1154   fHistd0rphiITSMIoneSPDInAccS25004000fromStrangeMC->Draw("same");
1155   fHistd0rphiITSMIoneSPDInAccS25004000fromMatMC->SetLineColor(9);
1156   fHistd0rphiITSMIoneSPDInAccS25004000fromMatMC->Draw("same");
1157   c2->cd(6);
1158   fHistd0rphiITSMIoneSPDInAccP40008000MC->SetMinimum(1);
1159   fHistd0rphiITSMIoneSPDInAccS40008000MC->SetMinimum(1);
1160   fHistd0rphiITSMIoneSPDInAccS40008000fromStrangeMC->SetMinimum(1);
1161   fHistd0rphiITSMIoneSPDInAccS40008000fromMatMC->SetMinimum(1);
1162   fHistd0rphiITSMIoneSPDInAccP40008000MC->SetLineColor(1);
1163   fHistd0rphiITSMIoneSPDInAccP40008000MC->Draw();
1164   fHistd0rphiITSMIoneSPDInAccS40008000MC->SetLineColor(6);
1165   fHistd0rphiITSMIoneSPDInAccS40008000MC->Draw("same");
1166   fHistd0rphiITSMIoneSPDInAccS40008000fromStrangeMC->SetLineColor(8);
1167   fHistd0rphiITSMIoneSPDInAccS40008000fromStrangeMC->Draw("same");
1168   fHistd0rphiITSMIoneSPDInAccS40008000fromMatMC->SetLineColor(9);
1169   fHistd0rphiITSMIoneSPDInAccS40008000fromMatMC->Draw("same");
1170
1171   TCanvas *c2b = new TCanvas("c2b","c2b");
1172   fHistd0rphiITSMIoneSPDInAccS500700fromStrangeMC->SetMinimum(1);
1173   fHistd0rphiITSMIoneSPDInAccS500700fromStrangeMC->SetLineColor(8);
1174   fHistd0rphiITSMIoneSPDInAccS500700fromStrangeMC->Draw();
1175   fHistd0rphiITSMIoneSPDInAccS500700from310MC->SetMinimum(1);
1176   fHistd0rphiITSMIoneSPDInAccS500700from310MC->SetLineColor(2);
1177   fHistd0rphiITSMIoneSPDInAccS500700from310MC->Draw("same");
1178   fHistd0rphiITSMIoneSPDInAccS500700from321MC->SetMinimum(1);
1179   fHistd0rphiITSMIoneSPDInAccS500700from321MC->SetLineColor(5);
1180   fHistd0rphiITSMIoneSPDInAccS500700from321MC->Draw("same");
1181   fHistd0rphiITSMIoneSPDInAccS500700from3122MC->SetMinimum(1);
1182   fHistd0rphiITSMIoneSPDInAccS500700from3122MC->SetLineColor(1);
1183   fHistd0rphiITSMIoneSPDInAccS500700from3122MC->Draw("same");
1184
1185   TCanvas *c2c = new TCanvas("c2c","c2c");
1186   fHistd0rphiITSMIoneSPDInAccS500700fromMatMC->SetMinimum(1);
1187   fHistd0rphiITSMIoneSPDInAccS500700fromMatMC->Draw();
1188   fHistd0rphiITSMIoneSPDInAccS500700from211MC->SetMinimum(1);
1189   fHistd0rphiITSMIoneSPDInAccS500700from211MC->SetLineColor(2);
1190   fHistd0rphiITSMIoneSPDInAccS500700from211MC->Draw("same");
1191   fHistd0rphiITSMIoneSPDInAccS500700from22MC->SetMinimum(1);
1192   fHistd0rphiITSMIoneSPDInAccS500700from22MC->SetLineColor(1);
1193   fHistd0rphiITSMIoneSPDInAccS500700from22MC->Draw("same");
1194
1195
1196
1197   TCanvas *c3 = new TCanvas("c3","c3");
1198   c3->Divide(3,2);
1199   c3_1->SetLogx();
1200   c3_2->SetLogx();
1201   c3_3->SetLogx();
1202   c3_4->SetLogx();
1203   c3_5->SetLogx();
1204   c3_6->SetLogx();
1205   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};
1206   
1207   c3->cd(1);
1208   Float_t fracP150200[15],fracS150200[15],fracSfromStrange150200[15],fracS150200Strp30[15],fracS150200Strm30[15],fracS150200Matm10[15],fracS150200Matp10[15];
1209   Float_t intPtot150200=fHistd0rphiITSMIoneSPDInAccP150200MC->Integral(1,fHistd0rphiITSMIoneSPDInAccP150200MC->GetNbinsX());
1210   for(Int_t i=0;i<15;i++) {
1211     Int_t bin1=fHistd0rphiITSMIoneSPDInAccP150200MC->FindBin(-d0cut[i]);
1212     Int_t bin2=fHistd0rphiITSMIoneSPDInAccP150200MC->FindBin(+d0cut[i]);
1213     Float_t intPcut150200=fHistd0rphiITSMIoneSPDInAccP150200MC->Integral(bin1,bin2);
1214     Float_t intScut150200=fHistd0rphiITSMIoneSPDInAccS150200MC->Integral(bin1,bin2);
1215     Float_t intSfromStrangecut150200=fHistd0rphiITSMIoneSPDInAccS150200fromStrangeMC->Integral(bin1,bin2);
1216     Float_t intScut150200Strp30 = intScut150200 + 0.3*intSfromStrangecut150200; 
1217     Float_t intScut150200Strm30 = intScut150200 - 0.3*intSfromStrangecut150200; 
1218     Float_t intScut150200Matp10 = intScut150200 + 0.1*(intScut150200-intSfromStrangecut150200); 
1219     Float_t intScut150200Matm10 = intScut150200 - 0.1*(intScut150200-intSfromStrangecut150200); 
1220     fracP150200[i]=intPcut150200/intPtot150200;
1221     fracS150200[i]=1.-intScut150200/(intPcut150200+intScut150200);
1222     fracS150200Strp30[i]=1.-intScut150200Strp30/(intPcut150200+intScut150200Strp30);
1223     fracS150200Strm30[i]=1.-intScut150200Strm30/(intPcut150200+intScut150200Strm30);
1224     fracS150200Matp10[i]=1.-intScut150200Matp10/(intPcut150200+intScut150200Matp10);
1225     fracS150200Matm10[i]=1.-intScut150200Matm10/(intPcut150200+intScut150200Matm10);
1226     fracSfromStrange150200[i]=1.-intSfromStrangecut150200/(intPcut150200+intScut150200);
1227   }
1228   TGraph *gfracP150200=new TGraph(15,d0cut,fracP150200);
1229   gfracP150200->SetMarkerColor(2);
1230   gfracP150200->SetMarkerStyle(20);
1231   gfracP150200->Draw("ap");
1232   TGraph *gfracS150200=new TGraph(15,d0cut,fracS150200);
1233   gfracS150200->SetMarkerColor(4);
1234   gfracS150200->SetMarkerStyle(21);
1235   gfracS150200->Draw("p");
1236   TGraph *gfracSfromStrange150200=new TGraph(15,d0cut,fracSfromStrange150200);
1237   gfracSfromStrange150200->SetMarkerColor(8);
1238   gfracSfromStrange150200->SetMarkerStyle(22);
1239   gfracSfromStrange150200->Draw("p");  
1240    
1241   c3->cd(2);
1242   Float_t fracP350450[15],fracS350450[15],fracSfromStrange350450[15],fracS350450Strp30[15],fracS350450Strm30[15],fracS350450Matm10[15],fracS350450Matp10[15];
1243   Float_t intPtot350450=fHistd0rphiITSMIoneSPDInAccP350450MC->Integral(1,fHistd0rphiITSMIoneSPDInAccP350450MC->GetNbinsX());
1244   for(Int_t i=0;i<15;i++) {
1245     Int_t bin1=fHistd0rphiITSMIoneSPDInAccP350450MC->FindBin(-d0cut[i]);
1246     Int_t bin2=fHistd0rphiITSMIoneSPDInAccP350450MC->FindBin(+d0cut[i]);
1247     Float_t intPcut350450=fHistd0rphiITSMIoneSPDInAccP350450MC->Integral(bin1,bin2);
1248     Float_t intScut350450=fHistd0rphiITSMIoneSPDInAccS350450MC->Integral(bin1,bin2);
1249     Float_t intSfromStrangecut350450=fHistd0rphiITSMIoneSPDInAccS350450fromStrangeMC->Integral(bin1,bin2);
1250     Float_t intScut350450Strp30 = intScut350450 + 0.3*intSfromStrangecut350450; 
1251     Float_t intScut350450Strm30 = intScut350450 - 0.3*intSfromStrangecut350450; 
1252     Float_t intScut350450Matp10 = intScut350450 + 0.1*(intScut350450-intSfromStrangecut350450); 
1253     Float_t intScut350450Matm10 = intScut350450 - 0.1*(intScut350450-intSfromStrangecut350450); 
1254     fracP350450[i]=intPcut350450/intPtot350450;
1255     fracS350450[i]=1.-intScut350450/(intPcut350450+intScut350450);
1256     fracS350450Strp30[i]=1.-intScut350450Strp30/(intPcut350450+intScut350450Strp30);
1257     fracS350450Strm30[i]=1.-intScut350450Strm30/(intPcut350450+intScut350450Strm30);
1258     fracS350450Matp10[i]=1.-intScut350450Matp10/(intPcut350450+intScut350450Matp10);
1259     fracS350450Matm10[i]=1.-intScut350450Matm10/(intPcut350450+intScut350450Matm10);
1260     fracSfromStrange350450[i]=1.-intSfromStrangecut350450/(intPcut350450+intScut350450);
1261   }
1262   TGraph *gfracP350450=new TGraph(15,d0cut,fracP350450);
1263   gfracP350450->SetMarkerColor(2);
1264   gfracP350450->SetMarkerStyle(20);
1265   gfracP350450->Draw("ap");
1266   TGraph *gfracS350450=new TGraph(15,d0cut,fracS350450);
1267   gfracS350450->SetMarkerColor(4);
1268   gfracS350450->SetMarkerStyle(21);
1269   gfracS350450->Draw("p");
1270   TGraph *gfracSfromStrange350450=new TGraph(15,d0cut,fracSfromStrange350450);
1271   gfracSfromStrange350450->SetMarkerColor(8);
1272   gfracSfromStrange350450->SetMarkerStyle(22);
1273   gfracSfromStrange350450->Draw("p");
1274
1275   c3->cd(3);
1276   Float_t fracP500700[15],fracS500700[15],fracSfromStrange500700[15],fracS500700Strp30[15],fracS500700Strm30[15],fracS500700Matm10[15],fracS500700Matp10[15];
1277   Float_t intPtot500700=fHistd0rphiITSMIoneSPDInAccP500700MC->Integral(1,fHistd0rphiITSMIoneSPDInAccP500700MC->GetNbinsX());
1278   for(Int_t i=0;i<15;i++) {
1279     Int_t bin1=fHistd0rphiITSMIoneSPDInAccP500700MC->FindBin(-d0cut[i]);
1280     Int_t bin2=fHistd0rphiITSMIoneSPDInAccP500700MC->FindBin(+d0cut[i]);
1281     Float_t intPcut500700=fHistd0rphiITSMIoneSPDInAccP500700MC->Integral(bin1,bin2);
1282     Float_t intScut500700=fHistd0rphiITSMIoneSPDInAccS500700MC->Integral(bin1,bin2);
1283     Float_t intSfromStrangecut500700=fHistd0rphiITSMIoneSPDInAccS500700fromStrangeMC->Integral(bin1,bin2);
1284     Float_t intScut500700Strp30 = intScut500700 + 0.3*intSfromStrangecut500700; 
1285     Float_t intScut500700Strm30 = intScut500700 - 0.3*intSfromStrangecut500700; 
1286     Float_t intScut500700Matp10 = intScut500700 + 0.1*(intScut500700-intSfromStrangecut500700); 
1287     Float_t intScut500700Matm10 = intScut500700 - 0.1*(intScut500700-intSfromStrangecut500700); 
1288     fracP500700[i]=intPcut500700/intPtot500700;
1289     fracS500700[i]=1.-intScut500700/(intPcut500700+intScut500700);
1290     fracS500700Strp30[i]=1.-intScut500700Strp30/(intPcut500700+intScut500700Strp30);
1291     fracS500700Strm30[i]=1.-intScut500700Strm30/(intPcut500700+intScut500700Strm30);
1292     fracS500700Matp10[i]=1.-intScut500700Matp10/(intPcut500700+intScut500700Matp10);
1293     fracS500700Matm10[i]=1.-intScut500700Matm10/(intPcut500700+intScut500700Matm10);
1294     fracSfromStrange500700[i]=1.-intSfromStrangecut500700/(intPcut500700+intScut500700);
1295   }
1296   TGraph *gfracP500700=new TGraph(15,d0cut,fracP500700);
1297   gfracP500700->SetMarkerColor(2);
1298   gfracP500700->SetMarkerStyle(20);
1299   gfracP500700->Draw("ap");
1300   TGraph *gfracS500700=new TGraph(15,d0cut,fracS500700);
1301   gfracS500700->SetMarkerColor(4);
1302   gfracS500700->SetMarkerStyle(21);
1303   gfracS500700->Draw("p");
1304   TGraph *gfracSfromStrange500700=new TGraph(15,d0cut,fracSfromStrange500700);
1305   gfracSfromStrange500700->SetMarkerColor(8);
1306   gfracSfromStrange500700->SetMarkerStyle(22);
1307   gfracSfromStrange500700->Draw("p");
1308
1309   c3->cd(4);
1310   Float_t fracP10001500[15],fracS10001500[15],fracSfromStrange10001500[15],fracS10001500Strp30[15],fracS10001500Strm30[15],fracS10001500Matm10[15],fracS10001500Matp10[15];
1311   Float_t intPtot10001500=fHistd0rphiITSMIoneSPDInAccP10001500MC->Integral(1,fHistd0rphiITSMIoneSPDInAccP10001500MC->GetNbinsX());
1312   for(Int_t i=0;i<15;i++) {
1313     Int_t bin1=fHistd0rphiITSMIoneSPDInAccP10001500MC->FindBin(-d0cut[i]);
1314     Int_t bin2=fHistd0rphiITSMIoneSPDInAccP10001500MC->FindBin(+d0cut[i]);
1315     Float_t intPcut10001500=fHistd0rphiITSMIoneSPDInAccP10001500MC->Integral(bin1,bin2);
1316     Float_t intScut10001500=fHistd0rphiITSMIoneSPDInAccS10001500MC->Integral(bin1,bin2);
1317     Float_t intSfromStrangecut10001500=fHistd0rphiITSMIoneSPDInAccS10001500fromStrangeMC->Integral(bin1,bin2);
1318     Float_t intScut10001500Strp30 = intScut10001500 + 0.3*intSfromStrangecut10001500; 
1319     Float_t intScut10001500Strm30 = intScut10001500 - 0.3*intSfromStrangecut10001500; 
1320     Float_t intScut10001500Matp10 = intScut10001500 + 0.1*(intScut10001500-intSfromStrangecut10001500); 
1321     Float_t intScut10001500Matm10 = intScut10001500 - 0.1*(intScut10001500-intSfromStrangecut10001500); 
1322     fracP10001500[i]=intPcut10001500/intPtot10001500;
1323     fracS10001500[i]=1.-intScut10001500/(intPcut10001500+intScut10001500);
1324     fracS10001500Strp30[i]=1.-intScut10001500Strp30/(intPcut10001500+intScut10001500Strp30);
1325     fracS10001500Strm30[i]=1.-intScut10001500Strm30/(intPcut10001500+intScut10001500Strm30);
1326     fracS10001500Matp10[i]=1.-intScut10001500Matp10/(intPcut10001500+intScut10001500Matp10);
1327     fracS10001500Matm10[i]=1.-intScut10001500Matm10/(intPcut10001500+intScut10001500Matm10);
1328     fracSfromStrange10001500[i]=1.-intSfromStrangecut10001500/(intPcut10001500+intScut10001500);
1329   }
1330   TGraph *gfracP10001500=new TGraph(15,d0cut,fracP10001500);
1331   gfracP10001500->SetMarkerColor(2);
1332   gfracP10001500->SetMarkerStyle(20);
1333   gfracP10001500->Draw("ap");
1334   TGraph *gfracS10001500=new TGraph(15,d0cut,fracS10001500);
1335   gfracS10001500->SetMarkerColor(4);
1336   gfracS10001500->SetMarkerStyle(21);
1337   gfracS10001500->Draw("p");
1338   TGraph *gfracSfromStrange10001500=new TGraph(15,d0cut,fracSfromStrange10001500);
1339   gfracSfromStrange10001500->SetMarkerColor(8);
1340   gfracSfromStrange10001500->SetMarkerStyle(22);
1341   gfracSfromStrange10001500->Draw("p");
1342   
1343   c3->cd(5);
1344   Float_t fracP25004000[15],fracS25004000[15],fracSfromStrange25004000[15],fracS25004000Strp30[15],fracS25004000Strm30[15],fracS25004000Matm10[15],fracS25004000Matp10[15];
1345   Float_t intPtot25004000=fHistd0rphiITSMIoneSPDInAccP25004000MC->Integral(1,fHistd0rphiITSMIoneSPDInAccP25004000MC->GetNbinsX());
1346   for(Int_t i=0;i<15;i++) {
1347     Int_t bin1=fHistd0rphiITSMIoneSPDInAccP25004000MC->FindBin(-d0cut[i]);
1348     Int_t bin2=fHistd0rphiITSMIoneSPDInAccP25004000MC->FindBin(+d0cut[i]);
1349     Float_t intPcut25004000=fHistd0rphiITSMIoneSPDInAccP25004000MC->Integral(bin1,bin2);
1350     Float_t intScut25004000=fHistd0rphiITSMIoneSPDInAccS25004000MC->Integral(bin1,bin2);
1351     Float_t intSfromStrangecut25004000=fHistd0rphiITSMIoneSPDInAccS25004000fromStrangeMC->Integral(bin1,bin2);
1352     Float_t intScut25004000Strp30 = intScut25004000 + 0.3*intSfromStrangecut25004000; 
1353     Float_t intScut25004000Strm30 = intScut25004000 - 0.3*intSfromStrangecut25004000; 
1354     Float_t intScut25004000Matp10 = intScut25004000 + 0.1*(intScut25004000-intSfromStrangecut25004000); 
1355     Float_t intScut25004000Matm10 = intScut25004000 - 0.1*(intScut25004000-intSfromStrangecut25004000); 
1356     fracP25004000[i]=intPcut25004000/intPtot25004000;
1357     fracS25004000[i]=1.-intScut25004000/(intPcut25004000+intScut25004000);
1358     fracS25004000Strp30[i]=1.-intScut25004000Strp30/(intPcut25004000+intScut25004000Strp30);
1359     fracS25004000Strm30[i]=1.-intScut25004000Strm30/(intPcut25004000+intScut25004000Strm30);
1360     fracS25004000Matp10[i]=1.-intScut25004000Matp10/(intPcut25004000+intScut25004000Matp10);
1361     fracS25004000Matm10[i]=1.-intScut25004000Matm10/(intPcut25004000+intScut25004000Matm10);
1362     fracSfromStrange25004000[i]=1.-intSfromStrangecut25004000/(intPcut25004000+intScut25004000);
1363   }
1364   TGraph *gfracP25004000=new TGraph(15,d0cut,fracP25004000);
1365   gfracP25004000->SetMarkerColor(2);
1366   gfracP25004000->SetMarkerStyle(20);
1367   gfracP25004000->Draw("ap");
1368   TGraph *gfracS25004000=new TGraph(15,d0cut,fracS25004000);
1369   gfracS25004000->SetMarkerColor(4);
1370   gfracS25004000->SetMarkerStyle(21);
1371   gfracS25004000->Draw("p");
1372   TGraph *gfracSfromStrange25004000=new TGraph(15,d0cut,fracSfromStrange25004000);
1373   gfracSfromStrange25004000->SetMarkerColor(8);
1374   gfracSfromStrange25004000->SetMarkerStyle(22);
1375   gfracSfromStrange25004000->Draw("p");
1376
1377   c3->cd(6);
1378   Float_t fracP40008000[15],fracS40008000[15],fracSfromStrange40008000[15],fracS40008000Strp30[15],fracS40008000Strm30[15],fracS40008000Matm10[15],fracS40008000Matp10[15];
1379   Float_t intPtot40008000=fHistd0rphiITSMIoneSPDInAccP40008000MC->Integral(1,fHistd0rphiITSMIoneSPDInAccP40008000MC->GetNbinsX());
1380   for(Int_t i=0;i<15;i++) {
1381     Int_t bin1=fHistd0rphiITSMIoneSPDInAccP40008000MC->FindBin(-d0cut[i]);
1382     Int_t bin2=fHistd0rphiITSMIoneSPDInAccP40008000MC->FindBin(+d0cut[i]);
1383     Float_t intPcut40008000=fHistd0rphiITSMIoneSPDInAccP40008000MC->Integral(bin1,bin2);
1384     Float_t intScut40008000=fHistd0rphiITSMIoneSPDInAccS40008000MC->Integral(bin1,bin2);
1385     Float_t intSfromStrangecut40008000=fHistd0rphiITSMIoneSPDInAccS40008000fromStrangeMC->Integral(bin1,bin2);
1386     Float_t intScut40008000Strp30 = intScut40008000 + 0.3*intSfromStrangecut40008000; 
1387     Float_t intScut40008000Strm30 = intScut40008000 - 0.3*intSfromStrangecut40008000; 
1388     Float_t intScut40008000Matp10 = intScut40008000 + 0.1*(intScut40008000-intSfromStrangecut40008000); 
1389     Float_t intScut40008000Matm10 = intScut40008000 - 0.1*(intScut40008000-intSfromStrangecut40008000); 
1390     fracP40008000[i]=intPcut40008000/intPtot40008000;
1391     fracS40008000[i]=1.-intScut40008000/(intPcut40008000+intScut40008000);
1392     fracS40008000Strp30[i]=1.-intScut40008000Strp30/(intPcut40008000+intScut40008000Strp30);
1393     fracS40008000Strm30[i]=1.-intScut40008000Strm30/(intPcut40008000+intScut40008000Strm30);
1394     fracS40008000Matp10[i]=1.-intScut40008000Matp10/(intPcut40008000+intScut40008000Matp10);
1395     fracS40008000Matm10[i]=1.-intScut40008000Matm10/(intPcut40008000+intScut40008000Matm10);
1396     fracSfromStrange40008000[i]=1.-intSfromStrangecut40008000/(intPcut40008000+intScut40008000);
1397   }
1398   TGraph *gfracP40008000=new TGraph(15,d0cut,fracP40008000);
1399   gfracP40008000->SetMarkerColor(2);
1400   gfracP40008000->SetMarkerStyle(20);
1401   gfracP40008000->Draw("ap");
1402   TGraph *gfracS40008000=new TGraph(15,d0cut,fracS40008000);
1403   gfracS40008000->SetMarkerColor(4);
1404   gfracS40008000->SetMarkerStyle(21);
1405   gfracS40008000->Draw("p");
1406   TGraph *gfracSfromStrange40008000=new TGraph(15,d0cut,fracSfromStrange40008000);
1407   gfracSfromStrange40008000->SetMarkerColor(8);
1408   gfracSfromStrange40008000->SetMarkerStyle(22);
1409   gfracSfromStrange40008000->Draw("p");
1410
1411   
1412   TCanvas *c4 = new TCanvas("c4","c4");
1413   c4->Divide(3,1);
1414   c4_1->SetLogx();
1415   c4_2->SetLogx();
1416   c4_3->SetLogx();
1417
1418   c4->cd(1);
1419   Float_t intDatacut150200[15],intDataPcut150200[15],intDataPall150200[15];
1420   for(Int_t i=0;i<15;i++) {
1421     Int_t bin1=fHistd0rphiITSMIoneSPDInAcc150200->FindBin(-d0cut[i]);
1422     Int_t bin2=fHistd0rphiITSMIoneSPDInAcc150200->FindBin(+d0cut[i]);
1423     intDatacut150200[i]=fHistd0rphiITSMIoneSPDInAcc150200->Integral(bin1,bin2);
1424     intDataPcut150200[i]=intDatacut150200[i]*fracS150200[i];
1425     intDataPall150200[i]=intDataPcut150200[i]/fracP150200[i];
1426   }
1427   TGraph *gintDatacut150200=new TGraph(15,d0cut,intDatacut150200);
1428   gintDatacut150200->SetMarkerColor(1);
1429   gintDatacut150200->SetMarkerStyle(20);
1430   gintDatacut150200->Draw("ap");
1431   TGraph *gintDataPcut150200=new TGraph(15,d0cut,intDataPcut150200);
1432   gintDataPcut150200->SetMarkerColor(1);
1433   gintDataPcut150200->SetMarkerStyle(24);
1434   gintDataPcut150200->Draw("p");
1435   TGraph *gintDataPall150200=new TGraph(15,d0cut,intDataPall150200);
1436   gintDataPall150200->SetMarkerColor(2);
1437   gintDataPall150200->SetMarkerStyle(22);
1438   gintDataPall150200->Draw("p");
1439
1440   c4->cd(2);
1441   Float_t intDatacut500700[15],intDataPcut500700[15],intDataPall500700[15];
1442   for(Int_t i=0;i<15;i++) {
1443     Int_t bin1=fHistd0rphiITSMIoneSPDInAcc500700->FindBin(-d0cut[i]);
1444     Int_t bin2=fHistd0rphiITSMIoneSPDInAcc500700->FindBin(+d0cut[i]);
1445     intDatacut500700[i]=fHistd0rphiITSMIoneSPDInAcc500700->Integral(bin1,bin2);
1446     intDataPcut500700[i]=intDatacut500700[i]*fracS500700[i];
1447     intDataPall500700[i]=intDataPcut500700[i]/fracP500700[i];
1448   }
1449   TGraph *gintDatacut500700=new TGraph(15,d0cut,intDatacut500700);
1450   gintDatacut500700->SetMarkerColor(1);
1451   gintDatacut500700->SetMarkerStyle(20);
1452   gintDatacut500700->Draw("ap");
1453   TGraph *gintDataPcut500700=new TGraph(15,d0cut,intDataPcut500700);
1454   gintDataPcut500700->SetMarkerColor(1);
1455   gintDataPcut500700->SetMarkerStyle(24);
1456   gintDataPcut500700->Draw("p");
1457   TGraph *gintDataPall500700=new TGraph(15,d0cut,intDataPall500700);
1458   gintDataPall500700->SetMarkerColor(2);
1459   gintDataPall500700->SetMarkerStyle(22);
1460   gintDataPall500700->Draw("p");
1461
1462   c4->cd(3);
1463   Float_t intDatacut10001500[15],intDataPcut10001500[15],intDataPall10001500[15];
1464   for(Int_t i=0;i<15;i++) {
1465     Int_t bin1=fHistd0rphiITSMIoneSPDInAcc10001500->FindBin(-d0cut[i]);
1466     Int_t bin2=fHistd0rphiITSMIoneSPDInAcc10001500->FindBin(+d0cut[i]);
1467     intDatacut10001500[i]=fHistd0rphiITSMIoneSPDInAcc10001500->Integral(bin1,bin2);
1468     intDataPcut10001500[i]=intDatacut10001500[i]*fracS10001500[i];
1469     intDataPall10001500[i]=intDataPcut10001500[i]/fracP10001500[i];
1470   }
1471   TGraph *gintDatacut10001500=new TGraph(15,d0cut,intDatacut10001500);
1472   gintDatacut10001500->SetMarkerColor(1);
1473   gintDatacut10001500->SetMarkerStyle(20);
1474   gintDatacut10001500->Draw("ap");
1475   TGraph *gintDataPcut10001500=new TGraph(15,d0cut,intDataPcut10001500);
1476   gintDataPcut10001500->SetMarkerColor(1);
1477   gintDataPcut10001500->SetMarkerStyle(24);
1478   gintDataPcut10001500->Draw("p");
1479   TGraph *gintDataPall10001500=new TGraph(15,d0cut,intDataPall10001500);
1480   gintDataPall10001500->SetMarkerColor(2);
1481   gintDataPall10001500->SetMarkerStyle(22);
1482   gintDataPall10001500->Draw("p");
1483
1484   
1485   TCanvas *c5 = new TCanvas("c5","c5");
1486   c5->Divide(3,1);
1487   c5_1->SetLogx();
1488   c5_2->SetLogx();
1489   c5_3->SetLogx();
1490
1491   c5->cd(1);
1492   Float_t intDataPall150200Strp30[15],intDataPall150200Strm30[15],intDataPall150200Matp10[15],intDataPall150200Matm10[15];
1493   for(Int_t i=0;i<15;i++) {
1494     intDataPall150200Strp30[i]=intDatacut150200[i]*fracS150200Strp30[i]/fracP150200[i];
1495     intDataPall150200Strm30[i]=intDatacut150200[i]*fracS150200Strm30[i]/fracP150200[i];
1496     intDataPall150200Matp10[i]=intDatacut150200[i]*fracS150200Matp10[i]/fracP150200[i];
1497     intDataPall150200Matm10[i]=intDatacut150200[i]*fracS150200Matm10[i]/fracP150200[i];
1498   }
1499   gintDataPall150200->Draw("ap");
1500
1501   TGraph *gintDataPall150200Strp30=new TGraph(15,d0cut,intDataPall150200Strp30);
1502   gintDataPall150200Strp30->SetMarkerColor(1);
1503   gintDataPall150200Strp30->SetMarkerStyle(22);
1504   gintDataPall150200Strp30->Draw("p");
1505   TGraph *gintDataPall150200Strm30=new TGraph(15,d0cut,intDataPall150200Strm30);
1506   gintDataPall150200Strm30->SetMarkerColor(1);
1507   gintDataPall150200Strm30->SetMarkerStyle(22);
1508   gintDataPall150200Strm30->Draw("p");
1509   TGraph *gintDataPall150200Matp10=new TGraph(15,d0cut,intDataPall150200Matp10);
1510   gintDataPall150200Matp10->SetMarkerColor(3);
1511   gintDataPall150200Matp10->SetMarkerStyle(22);
1512   gintDataPall150200Matp10->Draw("p");
1513   TGraph *gintDataPall150200Matm10=new TGraph(15,d0cut,intDataPall150200Matm10);
1514   gintDataPall150200Matm10->SetMarkerColor(3);
1515   gintDataPall150200Matm10->SetMarkerStyle(22);
1516   gintDataPall150200Matm10->Draw("p");
1517
1518   c5->cd(2);
1519   Float_t intDataPall500700Strp30[15],intDataPall500700Strm30[15],intDataPall500700Matp10[15],intDataPall500700Matm10[15];
1520   for(Int_t i=0;i<15;i++) {
1521     intDataPall500700Strp30[i]=intDatacut500700[i]*fracS500700Strp30[i]/fracP500700[i];
1522     intDataPall500700Strm30[i]=intDatacut500700[i]*fracS500700Strm30[i]/fracP500700[i];
1523     intDataPall500700Matp10[i]=intDatacut500700[i]*fracS500700Matp10[i]/fracP500700[i];
1524     intDataPall500700Matm10[i]=intDatacut500700[i]*fracS500700Matm10[i]/fracP500700[i];
1525   }
1526   gintDataPall500700->Draw("ap");
1527
1528   TGraph *gintDataPall500700Strp30=new TGraph(15,d0cut,intDataPall500700Strp30);
1529   gintDataPall500700Strp30->SetMarkerColor(1);
1530   gintDataPall500700Strp30->SetMarkerStyle(22);
1531   gintDataPall500700Strp30->Draw("p");
1532   TGraph *gintDataPall500700Strm30=new TGraph(15,d0cut,intDataPall500700Strm30);
1533   gintDataPall500700Strm30->SetMarkerColor(1);
1534   gintDataPall500700Strm30->SetMarkerStyle(22);
1535   gintDataPall500700Strm30->Draw("p");
1536   TGraph *gintDataPall500700Matp10=new TGraph(15,d0cut,intDataPall500700Matp10);
1537   gintDataPall500700Matp10->SetMarkerColor(3);
1538   gintDataPall500700Matp10->SetMarkerStyle(22);
1539   gintDataPall500700Matp10->Draw("p");
1540   TGraph *gintDataPall500700Matm10=new TGraph(15,d0cut,intDataPall500700Matm10);
1541   gintDataPall500700Matm10->SetMarkerColor(3);
1542   gintDataPall500700Matm10->SetMarkerStyle(22);
1543   gintDataPall500700Matm10->Draw("p");
1544
1545   c5->cd(3);
1546   Float_t intDataPall10001500Strp30[15],intDataPall10001500Strm30[15],intDataPall10001500Matp10[15],intDataPall10001500Matm10[15];
1547   for(Int_t i=0;i<15;i++) {
1548     intDataPall10001500Strp30[i]=intDatacut10001500[i]*fracS10001500Strp30[i]/fracP10001500[i];
1549     intDataPall10001500Strm30[i]=intDatacut10001500[i]*fracS10001500Strm30[i]/fracP10001500[i];
1550     intDataPall10001500Matp10[i]=intDatacut10001500[i]*fracS10001500Matp10[i]/fracP10001500[i];
1551     intDataPall10001500Matm10[i]=intDatacut10001500[i]*fracS10001500Matm10[i]/fracP10001500[i];
1552   }
1553   gintDataPall10001500->Draw("ap");
1554
1555   TGraph *gintDataPall10001500Strp30=new TGraph(15,d0cut,intDataPall10001500Strp30);
1556   gintDataPall10001500Strp30->SetMarkerColor(1);
1557   gintDataPall10001500Strp30->SetMarkerStyle(22);
1558   gintDataPall10001500Strp30->Draw("p");
1559   TGraph *gintDataPall10001500Strm30=new TGraph(15,d0cut,intDataPall10001500Strm30);
1560   gintDataPall10001500Strm30->SetMarkerColor(1);
1561   gintDataPall10001500Strm30->SetMarkerStyle(22);
1562   gintDataPall10001500Strm30->Draw("p");
1563   TGraph *gintDataPall10001500Matp10=new TGraph(15,d0cut,intDataPall10001500Matp10);
1564   gintDataPall10001500Matp10->SetMarkerColor(3);
1565   gintDataPall10001500Matp10->SetMarkerStyle(22);
1566   gintDataPall10001500Matp10->Draw("p");
1567   TGraph *gintDataPall10001500Matm10=new TGraph(15,d0cut,intDataPall10001500Matm10);
1568   gintDataPall10001500Matm10->SetMarkerColor(3);
1569   gintDataPall10001500Matm10->SetMarkerStyle(22);
1570   gintDataPall10001500Matm10->Draw("p");
1571   
1572   return;
1573 }
1574 //---------------------------------------------------------------------------
1575 void PlotImpPar_z() {
1576
1577   TFile *fMC= new TFile("ITS.Performance_lhc10a8_100k.root");
1578
1579   TList *list=(TList*)fMC->Get("cOutputITS");
1580   TH1F *fHistd0zITSMIoneSPDInAccP150200MC = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccP150200");
1581   TH1F *fHistd0zITSMIoneSPDInAccS150200MC = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccS150200");
1582   TH1F *fHistd0zITSMIoneSPDInAccP500700MC = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccP500700");
1583   TH1F *fHistd0zITSMIoneSPDInAccS500700MC = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccS500700");
1584   TH1F *fHistd0zITSMIoneSPDInAccP10001500MC = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccP10001500");
1585   TH1F *fHistd0zITSMIoneSPDInAccS10001500MC = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccS10001500");
1586   TH1F *fHistd0zITSMIoneSPDInAcc150200MC=(TH1F*)fHistd0zITSMIoneSPDInAccP150200MC->Clone("fHistd0zITSMIoneSPDInAcc150200MC");
1587   fHistd0zITSMIoneSPDInAcc150200MC->Add(fHistd0zITSMIoneSPDInAccS150200MC);
1588   fHistd0zITSMIoneSPDInAcc150200MC->Scale(1./fHistd0zITSMIoneSPDInAcc150200MC->GetEntries());
1589   TH1F *fHistd0zITSMIoneSPDInAcc500700MC=(TH1F*)fHistd0zITSMIoneSPDInAccP500700MC->Clone("fHistd0zITSMIoneSPDInAcc500700MC");
1590   fHistd0zITSMIoneSPDInAcc500700MC->Add(fHistd0zITSMIoneSPDInAccS500700MC);
1591   fHistd0zITSMIoneSPDInAcc500700MC->Scale(1./fHistd0zITSMIoneSPDInAcc500700MC->GetEntries());
1592   TH1F *fHistd0zITSMIoneSPDInAcc10001500MC=(TH1F*)fHistd0zITSMIoneSPDInAccP10001500MC->Clone("fHistd0zITSMIoneSPDInAcc10001500MC");
1593   fHistd0zITSMIoneSPDInAcc10001500MC->Add(fHistd0zITSMIoneSPDInAccS10001500MC);
1594   fHistd0zITSMIoneSPDInAcc10001500MC->Scale(1./fHistd0zITSMIoneSPDInAcc10001500MC->GetEntries());
1595
1596
1597   TFile *f= new TFile("ITS.Performance_104892.root");
1598
1599   TList *list=(TList*)f->Get("cOutputITS");
1600   TH1F *fHistd0zITSMIoneSPDInAccP150200 = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccP150200");
1601   TH1F *fHistd0zITSMIoneSPDInAccS150200 = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccS150200");
1602   TH1F *fHistd0zITSMIoneSPDInAccP500700 = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccP500700");
1603   TH1F *fHistd0zITSMIoneSPDInAccS500700 = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccS500700");
1604   TH1F *fHistd0zITSMIoneSPDInAccP10001500 = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccP10001500");
1605   TH1F *fHistd0zITSMIoneSPDInAccS10001500 = (TH1F*)list->FindObject("fHistd0zITSMIoneSPDInAccS10001500");
1606   TH1F *fHistd0zITSMIoneSPDInAcc150200=(TH1F*)fHistd0zITSMIoneSPDInAccP150200->Clone("fHistd0zITSMIoneSPDInAcc150200");
1607   fHistd0zITSMIoneSPDInAcc150200->Add(fHistd0zITSMIoneSPDInAccS150200);
1608   fHistd0zITSMIoneSPDInAcc150200->Scale(1./fHistd0zITSMIoneSPDInAcc150200->GetEntries());
1609   TH1F *fHistd0zITSMIoneSPDInAcc500700=(TH1F*)fHistd0zITSMIoneSPDInAccP500700->Clone("fHistd0zITSMIoneSPDInAcc500700");
1610   fHistd0zITSMIoneSPDInAcc500700->Add(fHistd0zITSMIoneSPDInAccS500700);
1611   fHistd0zITSMIoneSPDInAcc500700->Scale(1./fHistd0zITSMIoneSPDInAcc500700->GetEntries());
1612   TH1F *fHistd0zITSMIoneSPDInAcc10001500=(TH1F*)fHistd0zITSMIoneSPDInAccP10001500->Clone("fHistd0zITSMIoneSPDInAcc10001500");
1613   fHistd0zITSMIoneSPDInAcc10001500->Add(fHistd0zITSMIoneSPDInAccS10001500);
1614   fHistd0zITSMIoneSPDInAcc10001500->Scale(1./fHistd0zITSMIoneSPDInAcc10001500->GetEntries());
1615
1616
1617   TCanvas *c1 = new TCanvas("c1","c1");
1618   c1->Divide(3,1);
1619   c1->cd(1);
1620   fHistd0zITSMIoneSPDInAcc150200MC->SetLineColor(2);
1621   fHistd0zITSMIoneSPDInAcc150200MC->Draw();
1622   fHistd0zITSMIoneSPDInAcc150200->SetLineColor(4);
1623   fHistd0zITSMIoneSPDInAcc150200->Draw("same");
1624   c1->cd(2);
1625   fHistd0zITSMIoneSPDInAcc500700MC->SetLineColor(2);
1626   fHistd0zITSMIoneSPDInAcc500700MC->Draw();
1627   fHistd0zITSMIoneSPDInAcc500700->SetLineColor(4);
1628   fHistd0zITSMIoneSPDInAcc500700->Draw("same");
1629   c1->cd(3);
1630   fHistd0zITSMIoneSPDInAcc10001500MC->SetLineColor(2);
1631   fHistd0zITSMIoneSPDInAcc10001500MC->Draw();
1632   fHistd0zITSMIoneSPDInAcc10001500->SetLineColor(4);
1633   fHistd0zITSMIoneSPDInAcc10001500->Draw("same");
1634
1635   TCanvas *c2 = new TCanvas("c2","c2");
1636   c2->Divide(3,1);
1637   c2_1->SetLogy();
1638   c2_2->SetLogy();
1639   c2_3->SetLogy();
1640   c2->cd(1);
1641   fHistd0zITSMIoneSPDInAccP150200MC->SetMinimum(1);
1642   fHistd0zITSMIoneSPDInAccS150200MC->SetMinimum(1);
1643   fHistd0zITSMIoneSPDInAccP150200MC->SetLineColor(1);
1644   fHistd0zITSMIoneSPDInAccP150200MC->Draw();
1645   fHistd0zITSMIoneSPDInAccS150200MC->SetLineColor(6);
1646   fHistd0zITSMIoneSPDInAccS150200MC->Draw("same");
1647   c2->cd(2);
1648   fHistd0zITSMIoneSPDInAccP500700MC->SetMinimum(1);
1649   fHistd0zITSMIoneSPDInAccS500700MC->SetMinimum(1);
1650   fHistd0zITSMIoneSPDInAccP500700MC->SetLineColor(1);
1651   fHistd0zITSMIoneSPDInAccP500700MC->Draw();
1652   fHistd0zITSMIoneSPDInAccS500700MC->SetLineColor(6);
1653   fHistd0zITSMIoneSPDInAccS500700MC->Draw("same");
1654   c2->cd(3);
1655   fHistd0zITSMIoneSPDInAccP10001500MC->SetMinimum(1);
1656   fHistd0zITSMIoneSPDInAccS10001500MC->SetMinimum(1);
1657   fHistd0zITSMIoneSPDInAccP10001500MC->SetLineColor(1);
1658   fHistd0zITSMIoneSPDInAccP10001500MC->Draw();
1659   fHistd0zITSMIoneSPDInAccS10001500MC->SetLineColor(6);
1660   fHistd0zITSMIoneSPDInAccS10001500MC->Draw("same");
1661
1662
1663   TCanvas *c3 = new TCanvas("c3","c3");
1664   c3->Divide(3,1);
1665   c3_1->SetLogx();
1666   c3_2->SetLogx();
1667   c3_3->SetLogx();
1668   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};
1669
1670   c3->cd(1);
1671   Float_t fracP150200[15],fracS150200[15];
1672   Float_t intPtot150200=fHistd0zITSMIoneSPDInAccP150200MC->Integral(1,fHistd0zITSMIoneSPDInAccP150200MC->GetNbinsX());
1673   for(Int_t i=0;i<15;i++) {
1674     Int_t bin1=fHistd0zITSMIoneSPDInAccP150200MC->FindBin(-d0cut[i]);
1675     Int_t bin2=fHistd0zITSMIoneSPDInAccP150200MC->FindBin(+d0cut[i]);
1676     Float_t intPcut150200=fHistd0zITSMIoneSPDInAccP150200MC->Integral(bin1,bin2);
1677     Float_t intScut150200=fHistd0zITSMIoneSPDInAccS150200MC->Integral(bin1,bin2);
1678     fracP150200[i]=intPcut150200/intPtot150200;
1679     fracS150200[i]=1.-intScut150200/(intPcut150200+intScut150200);
1680   }
1681   TGraph *gfracP150200=new TGraph(15,d0cut,fracP150200);
1682   gfracP150200->SetMarkerColor(2);
1683   gfracP150200->SetMarkerStyle(20);
1684   gfracP150200->Draw("ap");
1685   TGraph *gfracS150200=new TGraph(15,d0cut,fracS150200);
1686   gfracS150200->SetMarkerColor(4);
1687   gfracS150200->SetMarkerStyle(21);
1688   gfracS150200->Draw("p");
1689
1690   c3->cd(2);
1691   Float_t fracP500700[15],fracS500700[15];
1692   Float_t intPtot500700=fHistd0zITSMIoneSPDInAccP500700MC->Integral(1,fHistd0zITSMIoneSPDInAccP500700MC->GetNbinsX());
1693   for(Int_t i=0;i<15;i++) {
1694     Int_t bin1=fHistd0zITSMIoneSPDInAccP500700MC->FindBin(-d0cut[i]);
1695     Int_t bin2=fHistd0zITSMIoneSPDInAccP500700MC->FindBin(+d0cut[i]);
1696     Float_t intPcut500700=fHistd0zITSMIoneSPDInAccP500700MC->Integral(bin1,bin2);
1697     Float_t intScut500700=fHistd0zITSMIoneSPDInAccS500700MC->Integral(bin1,bin2);
1698     fracP500700[i]=intPcut500700/intPtot500700;
1699     fracS500700[i]=1.-intScut500700/(intPcut500700+intScut500700);
1700   }
1701   TGraph *gfracP500700=new TGraph(15,d0cut,fracP500700);
1702   gfracP500700->SetMarkerColor(2);
1703   gfracP500700->SetMarkerStyle(20);
1704   gfracP500700->Draw("ap");
1705   TGraph *gfracS500700=new TGraph(15,d0cut,fracS500700);
1706   gfracS500700->SetMarkerColor(4);
1707   gfracS500700->SetMarkerStyle(21);
1708   gfracS500700->Draw("p");
1709
1710   c3->cd(3);
1711   Float_t fracP10001500[15],fracS10001500[15];
1712   Float_t intPtot10001500=fHistd0zITSMIoneSPDInAccP10001500MC->Integral(1,fHistd0zITSMIoneSPDInAccP10001500MC->GetNbinsX());
1713   for(Int_t i=0;i<15;i++) {
1714     Int_t bin1=fHistd0zITSMIoneSPDInAccP10001500MC->FindBin(-d0cut[i]);
1715     Int_t bin2=fHistd0zITSMIoneSPDInAccP10001500MC->FindBin(+d0cut[i]);
1716     Float_t intPcut10001500=fHistd0zITSMIoneSPDInAccP10001500MC->Integral(bin1,bin2);
1717     Float_t intScut10001500=fHistd0zITSMIoneSPDInAccS10001500MC->Integral(bin1,bin2);
1718     fracP10001500[i]=intPcut10001500/intPtot10001500;
1719     fracS10001500[i]=1.-intScut10001500/(intPcut10001500+intScut10001500);
1720   }
1721   TGraph *gfracP10001500=new TGraph(15,d0cut,fracP10001500);
1722   gfracP10001500->SetMarkerColor(2);
1723   gfracP10001500->SetMarkerStyle(20);
1724   gfracP10001500->Draw("ap");
1725   TGraph *gfracS10001500=new TGraph(15,d0cut,fracS10001500);
1726   gfracS10001500->SetMarkerColor(4);
1727   gfracS10001500->SetMarkerStyle(21);
1728   gfracS10001500->Draw("p");
1729
1730   return;
1731 }
1732 //----------------------------------------------------------------------------
1733 void Corrections() {
1734
1735   TFile *f_cutits= new TFile("ITS.Performance_lhc09d10_500k_noz0cut_nodcaTPC.root");
1736
1737   TList *list=(TList*)f_cutits->Get("cOutputITS");
1738
1739   TH1F *fHistNEvents = (TH1F*)list->FindObject("fHistNEvents");
1740   Float_t nEventsSelWithVertex = fHistNEvents->GetBinContent(5);
1741
1742   TH1F *fHistPtITSTPCsel = (TH1F*)list->FindObject("fHistPtITSTPCsel");
1743   NormalizePtHist(fHistPtITSTPCsel,nEventsSelWithVertex);
1744   TH1F *fHistPtITSTPCselP = (TH1F*)list->FindObject("fHistPtITSTPCselP");
1745   NormalizePtHist(fHistPtITSTPCselP,nEventsSelWithVertex);
1746   TH1F *fHistPtITSTPCselS = (TH1F*)list->FindObject("fHistPtITSTPCselS");
1747   NormalizePtHist(fHistPtITSTPCselS,nEventsSelWithVertex);
1748   TH1F *fHistPtITSTPCselPfromStrange = (TH1F*)list->FindObject("fHistPtITSTPCselPfromStrange");
1749   NormalizePtHist(fHistPtITSTPCselPfromStrange,nEventsSelWithVertex);
1750   TH1F *fHistPtITSTPCselSfromStrange = (TH1F*)list->FindObject("fHistPtITSTPCselSfromStrange");
1751   NormalizePtHist(fHistPtITSTPCselSfromStrange,nEventsSelWithVertex);
1752   TH1F *fHistPtITSTPCselSfromMat = (TH1F*)list->FindObject("fHistPtITSTPCselSfromMat");
1753   NormalizePtHist(fHistPtITSTPCselSfromMat,nEventsSelWithVertex);
1754
1755
1756   TFile *f_cuttpc= new TFile("ITS.Performance_lhc09d10_500k_noz0cut.root");
1757
1758   TList *list=(TList*)f_cuttpc->Get("cOutputITS");
1759
1760   TH1F *fHistNEvents = (TH1F*)list->FindObject("fHistNEvents");
1761   nEventsSelWithVertex = fHistNEvents->GetBinContent(5);
1762
1763   TH1F *fHistPtTPCInAcc = (TH1F*)list->FindObject("fHistPtTPCInAcc");
1764   NormalizePtHist(fHistPtTPCInAcc,nEventsSelWithVertex);
1765   TH1F *fHistPtTPCInAccP = (TH1F*)list->FindObject("fHistPtTPCInAccP");
1766   NormalizePtHist(fHistPtTPCInAccP,nEventsSelWithVertex);
1767   TH1F *fHistPtTPCInAccS = (TH1F*)list->FindObject("fHistPtTPCInAccS");
1768   NormalizePtHist(fHistPtTPCInAccS,nEventsSelWithVertex);
1769   TH1F *fHistPtTPCInAccPfromStrange = (TH1F*)list->FindObject("fHistPtTPCInAccPfromStrange"); 
1770   NormalizePtHist(fHistPtTPCInAccPfromStrange,nEventsSelWithVertex);
1771  TH1F *fHistPtTPCInAccSfromStrange = (TH1F*)list->FindObject("fHistPtTPCInAccSfromStrange");
1772   NormalizePtHist(fHistPtTPCInAccSfromStrange,nEventsSelWithVertex);
1773   TH1F *fHistPtTPCInAccSfromMat = (TH1F*)list->FindObject("fHistPtTPCInAccSfromMat");
1774   NormalizePtHist(fHistPtTPCInAccSfromMat,nEventsSelWithVertex);
1775
1776
1777   TFile *f_nocut= new TFile("ITS.Performance_lhc09d10_500k_nod0z0cut.root");
1778
1779   TList *list=(TList*)f_nocut->Get("cOutputITS");
1780
1781   TH1F *fHistNEvents = (TH1F*)list->FindObject("fHistNEvents");
1782   nEventsSelWithVertex = fHistNEvents->GetBinContent(5);
1783
1784   TH1F *fHistPtITSTPCselnocut = (TH1F*)list->FindObject("fHistPtITSTPCsel");
1785   NormalizePtHist(fHistPtITSTPCselnocut,nEventsSelWithVertex);
1786   TH1F *fHistPtITSTPCselnocutP = (TH1F*)list->FindObject("fHistPtITSTPCselP");
1787   NormalizePtHist(fHistPtITSTPCselnocutP,nEventsSelWithVertex);
1788   TH1F *fHistPtITSTPCselnocutS = (TH1F*)list->FindObject("fHistPtITSTPCselS");
1789   NormalizePtHist(fHistPtITSTPCselnocutS,nEventsSelWithVertex);
1790   TH1F *fHistPtITSTPCselnocutPfromStrange = (TH1F*)list->FindObject("fHistPtITSTPCselPfromStrange");
1791   NormalizePtHist(fHistPtITSTPCselnocutPfromStrange,nEventsSelWithVertex);
1792   TH1F *fHistPtITSTPCselnocutSfromStrange = (TH1F*)list->FindObject("fHistPtITSTPCselSfromStrange");
1793   NormalizePtHist(fHistPtITSTPCselnocutSfromStrange,nEventsSelWithVertex);
1794   TH1F *fHistPtITSTPCselnocutSfromMat = (TH1F*)list->FindObject("fHistPtITSTPCselSfromMat");
1795   NormalizePtHist(fHistPtITSTPCselnocutSfromMat,nEventsSelWithVertex);
1796
1797   TH1F *fHistPtTPCInAccnocut = (TH1F*)list->FindObject("fHistPtTPCInAcc");
1798   NormalizePtHist(fHistPtTPCInAccnocut,nEventsSelWithVertex);
1799   TH1F *fHistPtTPCInAccnocutP = (TH1F*)list->FindObject("fHistPtTPCInAccP");
1800   NormalizePtHist(fHistPtTPCInAccnocutP,nEventsSelWithVertex);
1801   TH1F *fHistPtTPCInAccnocutS = (TH1F*)list->FindObject("fHistPtTPCInAccS");
1802   NormalizePtHist(fHistPtTPCInAccnocutS,nEventsSelWithVertex);
1803   TH1F *fHistPtTPCInAccnocutPfromStrange = (TH1F*)list->FindObject("fHistPtTPCInAccPfromStrange"); 
1804   NormalizePtHist(fHistPtTPCInAccnocutPfromStrange,nEventsSelWithVertex);
1805   TH1F *fHistPtTPCInAccnocutSfromStrange = (TH1F*)list->FindObject("fHistPtTPCInAccSfromStrange");
1806   NormalizePtHist(fHistPtTPCInAccnocutSfromStrange,nEventsSelWithVertex);
1807   TH1F *fHistPtTPCInAccnocutSfromMat = (TH1F*)list->FindObject("fHistPtTPCInAccSfromMat");
1808   NormalizePtHist(fHistPtTPCInAccnocutSfromMat,nEventsSelWithVertex);
1809
1810   // cut efficiencies
1811   
1812   TH1F *fHistPtITSTPCeffselP = (TH1F*)fHistPtITSTPCselP->Clone("fHistPtITSTPCeffselP");
1813   fHistPtITSTPCeffselP->Divide(fHistPtITSTPCselnocutP);
1814   TH1F *fHistPtITSTPCeffselS = (TH1F*)fHistPtITSTPCselS->Clone("fHistPtITSTPCeffselS");
1815   fHistPtITSTPCeffselS->Divide(fHistPtITSTPCselnocutS);
1816   TH1F *fHistPtITSTPCeffselSfromStrange = (TH1F*)fHistPtITSTPCselSfromStrange->Clone("fHistPtITSTPCeffselSfromStrange");
1817   fHistPtITSTPCeffselSfromStrange->Divide(fHistPtITSTPCselnocutSfromStrange);
1818   TH1F *fHistPtITSTPCeffselSfromMat = (TH1F*)fHistPtITSTPCselSfromMat->Clone("fHistPtITSTPCeffselSfromMat");
1819   fHistPtITSTPCeffselSfromMat->Divide(fHistPtITSTPCselnocutSfromMat);
1820
1821   TH1F *fHistPtTPCeffInAccP = (TH1F*)fHistPtTPCInAccP->Clone("fHistPtTPCeffInAccP");
1822   fHistPtTPCeffInAccP->Divide(fHistPtTPCInAccnocutP);
1823   TH1F *fHistPtTPCeffInAccS = (TH1F*)fHistPtTPCInAccS->Clone("fHistPtTPCeffInAccS");
1824   fHistPtTPCeffInAccS->Divide(fHistPtTPCInAccnocutS);
1825   TH1F *fHistPtTPCeffInAccSfromStrange = (TH1F*)fHistPtTPCInAccSfromStrange->Clone("fHistPtTPCeffInAccSfromStrange");
1826   fHistPtTPCeffInAccSfromStrange->Divide(fHistPtTPCInAccnocutSfromStrange);
1827   TH1F *fHistPtTPCeffInAccSfromMat = (TH1F*)fHistPtTPCInAccSfromMat->Clone("fHistPtTPCeffInAccSfromMat");
1828   fHistPtTPCeffInAccSfromMat->Divide(fHistPtTPCInAccnocutSfromMat);
1829
1830
1831   TLegend *l0=new TLegend(0.5,0.5,0.9,0.9);
1832   TCanvas *c0=new TCanvas("c0","c0");
1833   c0->Divide(2,1);
1834   c0->cd(1);
1835   TH1F *fHistPtITSTPCselFracS = (TH1F*)fHistPtITSTPCselS->Clone("fHistPtITSTPCselFracS");
1836   fHistPtITSTPCselFracS->Divide(fHistPtITSTPCsel);
1837   fHistPtITSTPCselFracS->SetLineColor(2);
1838   l0->AddEntry(fHistPtITSTPCselFracS,"secondaries","l");
1839   fHistPtITSTPCselFracS->Draw();
1840   TH1F *fHistPtITSTPCselFracSfromStrange = (TH1F*)fHistPtITSTPCselSfromStrange->Clone("fHistPtITSTPCselFracSfromStrange");
1841   fHistPtITSTPCselFracSfromStrange->Divide(fHistPtITSTPCsel);
1842   fHistPtITSTPCselFracSfromStrange->SetLineColor(6);
1843   l0->AddEntry(fHistPtITSTPCselFracSfromStrange,"sec. from strange","l");
1844   fHistPtITSTPCselFracSfromStrange->Draw("same");
1845   TH1F *fHistPtITSTPCselFracSfromMat = (TH1F*)fHistPtITSTPCselSfromMat->Clone("fHistPtITSTPCselFracSfromMat");
1846   fHistPtITSTPCselFracSfromMat->Divide(fHistPtITSTPCsel);
1847   fHistPtITSTPCselFracSfromMat->SetLineColor(kOrange+7);
1848   l0->AddEntry(fHistPtITSTPCselFracSfromMat,"sec. from material","l");
1849   fHistPtITSTPCselFracSfromMat->Draw("same");
1850   l0->Draw();
1851   c0->cd(2);
1852   TH1F *fHistPtTPCInAccFracS = (TH1F*)fHistPtTPCInAccS->Clone("fHistPtTPCInAccFracS");
1853   fHistPtTPCInAccFracS->Divide(fHistPtTPCInAcc);
1854   fHistPtTPCInAccFracS->SetLineColor(2);
1855   fHistPtTPCInAccFracS->Draw();
1856   TH1F *fHistPtTPCInAccFracSfromStrange = (TH1F*)fHistPtTPCInAccSfromStrange->Clone("fHistPtTPCInAccFracSfromStrange");
1857   fHistPtTPCInAccFracSfromStrange->Divide(fHistPtTPCInAcc);
1858   fHistPtTPCInAccFracSfromStrange->SetLineColor(6);
1859   fHistPtTPCInAccFracSfromStrange->Draw("same");
1860   TH1F *fHistPtTPCInAccFracSfromMat = (TH1F*)fHistPtTPCInAccSfromMat->Clone("fHistPtTPCInAccFracSfromMat");
1861   fHistPtTPCInAccFracSfromMat->Divide(fHistPtTPCInAcc);
1862   fHistPtTPCInAccFracSfromMat->SetLineColor(kOrange+7);
1863   fHistPtTPCInAccFracSfromMat->Draw("same");
1864
1865   TLegend *l1=new TLegend(0.5,0.5,0.9,0.9);
1866   TCanvas *c1=new TCanvas("c1","c1");
1867   c1->Divide(2,1);
1868   c1->cd(1);
1869   fHistPtITSTPCeffselP->SetYTitle("dca cut efficiency");
1870   fHistPtITSTPCeffselP->SetLineColor(1);
1871   l1->AddEntry(fHistPtITSTPCeffselP,"primaries","l");
1872   fHistPtITSTPCeffselP->Draw();
1873   fHistPtITSTPCeffselS->SetLineColor(2);
1874   l1->AddEntry(fHistPtITSTPCeffselS,"secondaries","l");
1875   fHistPtITSTPCeffselS->Draw("same");
1876   fHistPtITSTPCeffselSfromStrange->SetLineColor(6);
1877   l1->AddEntry(fHistPtITSTPCeffselSfromStrange,"sec. from strange","l");
1878   fHistPtITSTPCeffselSfromStrange->Draw("same");
1879   fHistPtITSTPCeffselSfromMat->SetLineColor(kOrange+7);
1880   l1->AddEntry(fHistPtITSTPCeffselSfromMat,"sec. from material","l");
1881   fHistPtITSTPCeffselSfromMat->Draw("same");
1882   l1->Draw();
1883   c1->cd(2);
1884   fHistPtTPCeffInAccP->SetYTitle("dca cut efficiency");
1885   fHistPtTPCeffInAccP->SetLineColor(1);
1886   fHistPtTPCeffInAccP->Draw();
1887   fHistPtTPCeffInAccS->SetLineColor(2);
1888   fHistPtTPCeffInAccS->Draw("same");
1889   fHistPtTPCeffInAccSfromStrange->SetLineColor(6);
1890   fHistPtTPCeffInAccSfromStrange->Draw("same");
1891   fHistPtTPCeffInAccSfromMat->SetLineColor(kOrange+7);
1892   fHistPtTPCeffInAccSfromMat->Draw("same");
1893
1894
1895
1896   Float_t weightStrange=1.;
1897   Float_t weightMat=1.;
1898
1899   TH1F *fHistPtITSTPCselCocktail = MakeCocktail(fHistPtITSTPCselP,
1900                                                 fHistPtITSTPCselPfromStrange,
1901                                                 fHistPtITSTPCselS,
1902                                                 fHistPtITSTPCselSfromStrange,
1903                                                 fHistPtITSTPCselSfromMat,
1904                                                 weightStrange,
1905                                                 weightMat,
1906                                                 "fHistPtITSTPCselCocktail");
1907
1908   TH1F *fHistPtITSTPCselPCocktail = CorrectToP(fHistPtITSTPCselCocktail,
1909                                                fHistPtITSTPCselSfromStrange,
1910                                                fHistPtITSTPCselSfromMat,
1911                                                weightStrange,
1912                                                weightMat,
1913                                                "fHistPtITSTPCselPCocktail");
1914
1915   TH1F *fHistPtITSTPCallPCocktail = CorrectToPnocut(fHistPtITSTPCselPCocktail,
1916                                                     fHistPtITSTPCeffselP,
1917                                                     "fHistPtITSTPCallPCocktail");
1918
1919
1920   TH1F *fHistPtTPCInAccCocktail = MakeCocktail(fHistPtTPCInAccP,
1921                                                 fHistPtTPCInAccPfromStrange,
1922                                                 fHistPtTPCInAccS,
1923                                                 fHistPtTPCInAccSfromStrange,
1924                                                 fHistPtTPCInAccSfromMat,
1925                                                 weightStrange,
1926                                                weightMat,
1927                                                "fHistPtTPCInAccCocktail");
1928
1929   TH1F *fHistPtTPCInAccPCocktail = CorrectToP(fHistPtTPCInAccCocktail,
1930                                               fHistPtTPCInAccSfromStrange,
1931                                               fHistPtTPCInAccSfromMat,
1932                                               weightStrange,
1933                                               weightMat,
1934                                               "fHistPtTPCInAccPCocktail");
1935
1936   TH1F *fHistPtTPCallPCocktail = CorrectToPnocut(fHistPtTPCInAccPCocktail,
1937                                                  fHistPtTPCeffInAccP,
1938                                                  "fHistPtTPCallPCocktail");
1939
1940
1941
1942   TLegend *l2=new TLegend(0.5,0.5,0.9,0.9);
1943   TCanvas *c2 = new TCanvas("c2","c2");
1944   c2->Divide(2,1);
1945   c2->cd(1);
1946   fHistPtITSTPCselCocktail->SetLineColor(4);
1947   l2->AddEntry(fHistPtITSTPCselCocktail,"all, with dca cut","l");
1948   fHistPtITSTPCselCocktail->Draw();
1949   fHistPtITSTPCselPCocktail->SetLineColor(7);
1950   l2->AddEntry(fHistPtITSTPCselPCocktail,"primaries, with dca cut","l");
1951   fHistPtITSTPCselPCocktail->Draw("same");
1952   fHistPtITSTPCallPCocktail->SetLineColor(6);
1953   l2->AddEntry(fHistPtITSTPCallPCocktail,"primaries, w/o dca cut","l");
1954   fHistPtITSTPCallPCocktail->Draw("same");
1955   l2->Draw();
1956   c2->cd(2);
1957   fHistPtTPCInAccCocktail->SetLineColor(4);
1958   fHistPtTPCInAccCocktail->Draw();
1959   fHistPtTPCInAccPCocktail->SetLineColor(7);
1960   fHistPtTPCInAccPCocktail->Draw("same");
1961   fHistPtTPCallPCocktail->SetLineColor(6);
1962   fHistPtTPCallPCocktail->Draw("same");
1963
1964
1965   // systematic from secondaries
1966   weightStrange=1.3;
1967   weightMat=1.0;
1968   TH1F *fHistPtITSTPCselPCocktail1 = CorrectToP(fHistPtITSTPCselCocktail,
1969                                                fHistPtITSTPCselSfromStrange,
1970                                                fHistPtITSTPCselSfromMat,
1971                                                weightStrange,
1972                                                weightMat,
1973                                                "fHistPtITSTPCselPCocktail1");
1974   TH1F *fHistPtITSTPCallPCocktail1 = CorrectToPnocut(fHistPtITSTPCselPCocktail1,
1975                                                     fHistPtITSTPCeffselP,
1976                                                     "fHistPtITSTPCallPCocktail1");
1977   weightStrange=0.7;
1978   weightMat=1.0;
1979   TH1F *fHistPtITSTPCselPCocktail2 = CorrectToP(fHistPtITSTPCselCocktail,
1980                                                fHistPtITSTPCselSfromStrange,
1981                                                fHistPtITSTPCselSfromMat,
1982                                                weightStrange,
1983                                                weightMat,
1984                                                "fHistPtITSTPCselPCocktail2");
1985   TH1F *fHistPtITSTPCallPCocktail2 = CorrectToPnocut(fHistPtITSTPCselPCocktail2,
1986                                                     fHistPtITSTPCeffselP,
1987                                                     "fHistPtITSTPCallPCocktail2");
1988   weightStrange=1.0;
1989   weightMat=1.1;
1990   TH1F *fHistPtITSTPCselPCocktail3 = CorrectToP(fHistPtITSTPCselCocktail,
1991                                                fHistPtITSTPCselSfromStrange,
1992                                                fHistPtITSTPCselSfromMat,
1993                                                weightStrange,
1994                                                weightMat,
1995                                                "fHistPtITSTPCselPCocktail3");
1996   TH1F *fHistPtITSTPCallPCocktail3 = CorrectToPnocut(fHistPtITSTPCselPCocktail3,
1997                                                     fHistPtITSTPCeffselP,
1998                                                     "fHistPtITSTPCallPCocktail3");
1999   weightStrange=1.0;
2000   weightMat=0.9;
2001   TH1F *fHistPtITSTPCselPCocktail4 = CorrectToP(fHistPtITSTPCselCocktail,
2002                                                fHistPtITSTPCselSfromStrange,
2003                                                fHistPtITSTPCselSfromMat,
2004                                                weightStrange,
2005                                                weightMat,
2006                                                "fHistPtITSTPCselPCocktail4");
2007   TH1F *fHistPtITSTPCallPCocktail4 = CorrectToPnocut(fHistPtITSTPCselPCocktail4,
2008                                                     fHistPtITSTPCeffselP,
2009                                                     "fHistPtITSTPCallPCocktail4");
2010   weightStrange=1.3;
2011   weightMat=1.1;
2012   TH1F *fHistPtITSTPCselPCocktail5 = CorrectToP(fHistPtITSTPCselCocktail,
2013                                                fHistPtITSTPCselSfromStrange,
2014                                                fHistPtITSTPCselSfromMat,
2015                                                weightStrange,
2016                                                weightMat,
2017                                                "fHistPtITSTPCselPCocktail5");
2018   TH1F *fHistPtITSTPCallPCocktail5 = CorrectToPnocut(fHistPtITSTPCselPCocktail5,
2019                                                     fHistPtITSTPCeffselP,
2020                                                     "fHistPtITSTPCallPCocktail5");
2021   weightStrange=0.7;
2022   weightMat=0.9;
2023   TH1F *fHistPtITSTPCselPCocktail6 = CorrectToP(fHistPtITSTPCselCocktail,
2024                                                fHistPtITSTPCselSfromStrange,
2025                                                fHistPtITSTPCselSfromMat,
2026                                                weightStrange,
2027                                                weightMat,
2028                                                "fHistPtITSTPCselPCocktail6");
2029   TH1F *fHistPtITSTPCallPCocktail6 = CorrectToPnocut(fHistPtITSTPCselPCocktail6,
2030                                                     fHistPtITSTPCeffselP,
2031                                                     "fHistPtITSTPCallPCocktail6");
2032
2033   weightStrange=1.3;
2034   weightMat=1.0;
2035   TH1F *fHistPtTPCInAccPCocktail1 = CorrectToP(fHistPtTPCInAccCocktail,
2036                                                fHistPtTPCInAccSfromStrange,
2037                                                fHistPtTPCInAccSfromMat,
2038                                                weightStrange,
2039                                                weightMat,
2040                                                "fHistPtTPCInAccPCocktail1");
2041   TH1F *fHistPtTPCallPCocktail1 = CorrectToPnocut(fHistPtTPCInAccPCocktail1,
2042                                                     fHistPtTPCeffInAccP,
2043                                                     "fHistPtTPCallPCocktail1");
2044   weightStrange=0.7;
2045   weightMat=1.0;
2046   TH1F *fHistPtTPCInAccPCocktail2 = CorrectToP(fHistPtTPCInAccCocktail,
2047                                                fHistPtTPCInAccSfromStrange,
2048                                                fHistPtTPCInAccSfromMat,
2049                                                weightStrange,
2050                                                weightMat,
2051                                                "fHistPtTPCInAccPCocktail2");
2052   TH1F *fHistPtTPCallPCocktail2 = CorrectToPnocut(fHistPtTPCInAccPCocktail2,
2053                                                     fHistPtTPCeffInAccP,
2054                                                     "fHistPtTPCallPCocktail2");
2055   weightStrange=1.0;
2056   weightMat=1.1;
2057   TH1F *fHistPtTPCInAccPCocktail3 = CorrectToP(fHistPtTPCInAccCocktail,
2058                                                fHistPtTPCInAccSfromStrange,
2059                                                fHistPtTPCInAccSfromMat,
2060                                                weightStrange,
2061                                                weightMat,
2062                                                "fHistPtTPCInAccPCocktail3");
2063   TH1F *fHistPtTPCallPCocktail3 = CorrectToPnocut(fHistPtTPCInAccPCocktail3,
2064                                                     fHistPtTPCeffInAccP,
2065                                                     "fHistPtTPCallPCocktail3");
2066   weightStrange=1.0;
2067   weightMat=0.9;
2068   TH1F *fHistPtTPCInAccPCocktail4 = CorrectToP(fHistPtTPCInAccCocktail,
2069                                                fHistPtTPCInAccSfromStrange,
2070                                                fHistPtTPCInAccSfromMat,
2071                                                weightStrange,
2072                                                weightMat,
2073                                                "fHistPtTPCInAccPCocktail4");
2074   TH1F *fHistPtTPCallPCocktail4 = CorrectToPnocut(fHistPtTPCInAccPCocktail4,
2075                                                     fHistPtTPCeffInAccP,
2076                                                     "fHistPtTPCallPCocktail4");
2077   weightStrange=1.3;
2078   weightMat=1.1;
2079   TH1F *fHistPtTPCInAccPCocktail5 = CorrectToP(fHistPtTPCInAccCocktail,
2080                                                fHistPtTPCInAccSfromStrange,
2081                                                fHistPtTPCInAccSfromMat,
2082                                                weightStrange,
2083                                                weightMat,
2084                                                "fHistPtTPCInAccPCocktail5");
2085   TH1F *fHistPtTPCallPCocktail5 = CorrectToPnocut(fHistPtTPCInAccPCocktail5,
2086                                                     fHistPtTPCeffInAccP,
2087                                                     "fHistPtTPCallPCocktail5");
2088   weightStrange=0.7;
2089   weightMat=0.9;
2090   TH1F *fHistPtTPCInAccPCocktail6 = CorrectToP(fHistPtTPCInAccCocktail,
2091                                                fHistPtTPCInAccSfromStrange,
2092                                                fHistPtTPCInAccSfromMat,
2093                                                weightStrange,
2094                                                weightMat,
2095                                                "fHistPtTPCInAccPCocktail6");
2096   TH1F *fHistPtTPCallPCocktail6 = CorrectToPnocut(fHistPtTPCInAccPCocktail6,
2097                                                     fHistPtTPCeffInAccP,
2098                                                     "fHistPtTPCallPCocktail6");
2099
2100   TLegend *l3=new TLegend(0.5,0.5,0.9,0.9);
2101   TCanvas *c3 = new TCanvas("c3","c3");
2102   c3->Divide(2,1);
2103   c3->cd(1);
2104   l3->AddEntry(fHistPtITSTPCallPCocktail,"central","l");
2105   fHistPtITSTPCallPCocktail->Draw();
2106   l3->AddEntry(fHistPtITSTPCallPCocktail1,"strange #pm 30%","l");
2107   fHistPtITSTPCallPCocktail1->SetLineColor(1);
2108   fHistPtITSTPCallPCocktail2->SetLineColor(1);
2109   fHistPtITSTPCallPCocktail1->Draw("same");
2110   fHistPtITSTPCallPCocktail2->Draw("same");
2111   l3->AddEntry(fHistPtITSTPCallPCocktail3,"material #pm 10%","l");
2112   fHistPtITSTPCallPCocktail3->SetLineColor(8);
2113   fHistPtITSTPCallPCocktail4->SetLineColor(8);
2114   fHistPtITSTPCallPCocktail3->Draw("same");
2115   fHistPtITSTPCallPCocktail4->Draw("same");
2116   l3->AddEntry(fHistPtITSTPCallPCocktail5,"strange #pm 30% & material #pm 10%","l");
2117   fHistPtITSTPCallPCocktail5->SetLineColor(4);
2118   fHistPtITSTPCallPCocktail6->SetLineColor(4);
2119   fHistPtITSTPCallPCocktail5->Draw("same");
2120   fHistPtITSTPCallPCocktail6->Draw("same");
2121   l3->Draw();
2122   c3->cd(2);
2123   fHistPtTPCallPCocktail->Draw();
2124   fHistPtTPCallPCocktail1->SetLineColor(1);
2125   fHistPtTPCallPCocktail2->SetLineColor(1);
2126   fHistPtTPCallPCocktail1->Draw("same");
2127   fHistPtTPCallPCocktail2->Draw("same");
2128   fHistPtTPCallPCocktail3->SetLineColor(8);
2129   fHistPtTPCallPCocktail4->SetLineColor(8);
2130   fHistPtTPCallPCocktail3->Draw("same");
2131   fHistPtTPCallPCocktail4->Draw("same");
2132   fHistPtTPCallPCocktail5->SetLineColor(4);
2133   fHistPtTPCallPCocktail6->SetLineColor(4);
2134   fHistPtTPCallPCocktail5->Draw("same");
2135   fHistPtTPCallPCocktail6->Draw("same");
2136
2137   /*
2138   TCanvas *c4 = new TCanvas("c4","c4");
2139   c4->Divide(2,1);
2140   c4->cd(1);
2141   fHistPtITSTPCallPCocktail2->Add(fHistPtITSTPCallPCocktail,-1);
2142   fHistPtITSTPCallPCocktail2->Divide(fHistPtITSTPCallPCocktail);
2143   fHistPtITSTPCallPCocktail2->Draw();
2144   fHistPtITSTPCallPCocktail4->Add(fHistPtITSTPCallPCocktail,-1);
2145   fHistPtITSTPCallPCocktail4->Divide(fHistPtITSTPCallPCocktail);
2146   fHistPtITSTPCallPCocktail4->Draw("same");
2147   fHistPtITSTPCallPCocktail6->Add(fHistPtITSTPCallPCocktail,-1);
2148   fHistPtITSTPCallPCocktail6->Divide(fHistPtITSTPCallPCocktail);
2149   fHistPtITSTPCallPCocktail6->Draw("same");
2150   l3->Draw();
2151   c4->cd(2);
2152   fHistPtTPCallPCocktail2->Add(fHistPtTPCallPCocktail,-1);
2153   fHistPtTPCallPCocktail2->Divide(fHistPtTPCallPCocktail);
2154   fHistPtTPCallPCocktail2->Draw();
2155   fHistPtTPCallPCocktail4->Add(fHistPtTPCallPCocktail,-1);
2156   fHistPtTPCallPCocktail4->Divide(fHistPtTPCallPCocktail);
2157   fHistPtTPCallPCocktail4->Draw("same");
2158   fHistPtTPCallPCocktail6->Add(fHistPtTPCallPCocktail,-1);
2159   fHistPtTPCallPCocktail6->Divide(fHistPtTPCallPCocktail);
2160   fHistPtTPCallPCocktail6->Draw("same");
2161   */
2162
2163   return;
2164 }
2165 //-------------------------------------------------------------
2166 void NormalizePtHist(TH1F *h,Float_t n) {
2167
2168   for(Int_t i=1; i<=h->GetNbinsX(); i++) {
2169     if(h->GetBinContent(i)) {
2170       h->SetBinContent(i,h->GetBinContent(i)/h->GetBinWidth(i));
2171       h->SetBinError(i,h->GetBinError(i)/h->GetBinWidth(i));
2172     }
2173   }
2174   h->Scale(1./n);
2175
2176   return;
2177 }
2178 //----------------------------------------------------------------------
2179 TH1F *MakeCocktail(TH1F *fHistPtselP,
2180                    TH1F *fHistPtselPfromStrange,
2181                    TH1F *fHistPtselS,
2182                    TH1F *fHistPtselSfromStrange,
2183                    TH1F *fHistPtselSfromMat,
2184                    Float_t weightStrange,
2185                    Float_t weightMat,TString name) {
2186
2187   // build histogram with yield passing cut
2188   TH1F *fHistPtselCocktail = (TH1F*)fHistPtselP->Clone(name.Data());
2189   fHistPtselCocktail->Add(fHistPtselS);
2190   fHistPtselCocktail->Add(fHistPtselPfromStrange,weightStrange-1.);
2191   fHistPtselCocktail->Add(fHistPtselSfromStrange,weightStrange-1.);
2192   fHistPtselCocktail->Add(fHistPtselSfromMat,weightMat-1.);
2193
2194
2195   return fHistPtselCocktail;
2196 }
2197 //----------------------------------------------------------------------
2198 TH1F *CorrectToP(TH1F *fHistPtselCocktail,
2199                 TH1F *fHistPtselSfromStrange,
2200                 TH1F *fHistPtselSfromMat,
2201                 Float_t weightStrange,
2202                 Float_t weightMat,TString name) {
2203
2204
2205   // build histogram with yield of primaries passing cut
2206   TH1F* fHistPtselPCocktail = (TH1F*)fHistPtselCocktail->Clone(name.Data());
2207   fHistPtselPCocktail->Add(fHistPtselSfromStrange,-weightStrange);
2208   fHistPtselPCocktail->Add(fHistPtselSfromMat,-weightMat);
2209
2210   return fHistPtselPCocktail;
2211 }
2212 //----------------------------------------------------------------------
2213 TH1F *CorrectToPnocut(TH1F *fHistPtselPCocktail,
2214                      TH1F *fHistPteffselP,TString name) {
2215
2216   // build histogram with yield of primaries without cut
2217   TH1F *fHistPtallPCocktail = (TH1F*)fHistPtselPCocktail->Clone(name.Data());
2218   //printf("%f\n",fHistPtallPCocktail->GetBinContent(6));
2219   fHistPtallPCocktail->Divide(fHistPteffselP);
2220   //printf("%f\n",fHistPtallPCocktail->GetBinContent(6));
2221
2222   return fHistPtallPCocktail;
2223 }
2224 //----------------------------------------------------------------------
2225 void CompareTPCPt() {
2226
2227   TFile *f_tpcrefit= new TFile("ITS.Performance_104892pass2_etale05.root");
2228
2229   TList *list=(TList*)f_tpcrefit->Get("cOutputITS");
2230
2231   TH1F *fHistNEvents = (TH1F*)list->FindObject("fHistNEvents");
2232   Float_t nEventsSelWithVertex = fHistNEvents->GetBinContent(5);
2233
2234   TH1F *fHistPtTPCInAcc = (TH1F*)list->FindObject("fHistPtTPCInAcc");
2235   NormalizePtHist(fHistPtTPCInAcc,nEventsSelWithVertex);
2236   TH1F *fHistPtTPCInAccNoTRDout = (TH1F*)list->FindObject("fHistPtTPCInAccNoTRDout");
2237   NormalizePtHist(fHistPtTPCInAccNoTRDout,nEventsSelWithVertex);
2238   TH1F *fHistPtTPCInAccNoTOFout = (TH1F*)list->FindObject("fHistPtTPCInAccNoTOFout");
2239   NormalizePtHist(fHistPtTPCInAccNoTOFout,nEventsSelWithVertex);
2240   TH1F *fHistPtTPCInAccWithPtTPCAtVtx = (TH1F*)list->FindObject("fHistPtTPCInAccWithPtTPCAtVtx");
2241   NormalizePtHist(fHistPtTPCInAccWithPtTPCAtVtx,nEventsSelWithVertex);
2242   TH1F *fHistPtTPCInAccWithPtTPCAtInnerWall = (TH1F*)list->FindObject("fHistPtTPCInAccWithPtTPCAtInnerWall");
2243   NormalizePtHist(fHistPtTPCInAccWithPtTPCAtInnerWall,nEventsSelWithVertex);
2244
2245
2246   TFile *f_notpcrefit= new TFile("ITS.Performance_104892pass3_etale05.root");
2247
2248   TList *list=(TList*)f_notpcrefit->Get("cOutputITS");
2249
2250   TH1F *fHistNEventsNoRefit = (TH1F*)list->FindObject("fHistNEvents");
2251   nEventsSelWithVertex = fHistNEventsNoRefit->GetBinContent(5);
2252
2253   TH1F *fHistPtTPCInAccNoRefit = (TH1F*)list->FindObject("fHistPtTPCInAcc");
2254   NormalizePtHist(fHistPtTPCInAccNoRefit,nEventsSelWithVertex);
2255   TH1F *fHistPtTPCInAccNoTRDoutNoRefit = (TH1F*)list->FindObject("fHistPtTPCInAccNoTRDout");
2256   NormalizePtHist(fHistPtTPCInAccNoTRDoutNoRefit,nEventsSelWithVertex);
2257   TH1F *fHistPtTPCInAccNoTOFoutNoRefit = (TH1F*)list->FindObject("fHistPtTPCInAccNoTOFout");
2258   NormalizePtHist(fHistPtTPCInAccNoTOFoutNoRefit,nEventsSelWithVertex);
2259   TH1F *fHistPtTPCInAccWithPtTPCAtVtxNoRefit = (TH1F*)list->FindObject("fHistPtTPCInAccWithPtTPCAtVtx");
2260   NormalizePtHist(fHistPtTPCInAccWithPtTPCAtVtxNoRefit,nEventsSelWithVertex);
2261   TH1F *fHistPtTPCInAccWithPtTPCAtInnerWallNoRefit = (TH1F*)list->FindObject("fHistPtTPCInAccWithPtTPCAtInnerWall");
2262   NormalizePtHist(fHistPtTPCInAccWithPtTPCAtInnerWallNoRefit,nEventsSelWithVertex);
2263
2264
2265
2266   TLegend *l1 = new TLegend(0.5,0.5,0.9,0.9);
2267   TCanvas *c1=new TCanvas("c1","c1",0,0,1000,600);
2268   c1->Divide(2,1);
2269   c1->cd(1);
2270   fHistPtTPCInAcc->SetMarkerStyle(20);
2271   l1->AddEntry(fHistPtTPCInAcc,"p_{t} measurement:","");
2272   l1->AddEntry(fHistPtTPCInAcc,"at vtx, from main params","p");
2273   fHistPtTPCInAcc->Draw();
2274   fHistPtTPCInAccWithPtTPCAtVtx->SetMarkerStyle(21);
2275   fHistPtTPCInAccWithPtTPCAtVtx->SetMarkerColor(2);
2276   l1->AddEntry(fHistPtTPCInAccWithPtTPCAtVtx,"at vtx, from TPC params","p");
2277   fHistPtTPCInAccWithPtTPCAtVtx->Draw("same");
2278   fHistPtTPCInAccWithPtTPCAtInnerWall->SetMarkerStyle(25);
2279   fHistPtTPCInAccWithPtTPCAtInnerWall->SetMarkerColor(2);
2280   l1->AddEntry(fHistPtTPCInAccWithPtTPCAtInnerWall,"at r=80cm, from TPC params","p");
2281   fHistPtTPCInAccWithPtTPCAtInnerWall->Draw("same");
2282   fHistPtTPCInAccNoTOFout->SetMarkerStyle(23);
2283   fHistPtTPCInAccNoTOFout->SetMarkerColor(3);
2284   fHistPtTPCInAccNoTOFout->Draw("same");
2285   fHistPtTPCInAccNoTRDout->SetMarkerStyle(24);
2286   fHistPtTPCInAccNoTRDout->SetMarkerColor(4);
2287   fHistPtTPCInAccNoTRDout->Draw("same");
2288   l1->Draw();
2289   c1->cd(2);
2290   fHistPtTPCInAccNoRefit->SetMarkerStyle(20);
2291   fHistPtTPCInAccNoRefit->Draw();
2292   fHistPtTPCInAccWithPtTPCAtVtxNoRefit->SetMarkerStyle(21);
2293   fHistPtTPCInAccWithPtTPCAtVtxNoRefit->SetMarkerColor(2);
2294   fHistPtTPCInAccWithPtTPCAtVtxNoRefit->Draw("same");
2295   fHistPtTPCInAccWithPtTPCAtInnerWallNoRefit->SetMarkerStyle(25);
2296   fHistPtTPCInAccWithPtTPCAtInnerWallNoRefit->SetMarkerColor(2);
2297   fHistPtTPCInAccWithPtTPCAtInnerWallNoRefit->Draw("same");
2298   fHistPtTPCInAccNoTOFoutNoRefit->SetMarkerStyle(23);
2299   fHistPtTPCInAccNoTOFoutNoRefit->SetMarkerColor(3);
2300   fHistPtTPCInAccNoTOFoutNoRefit->Draw("same");
2301   fHistPtTPCInAccNoTRDoutNoRefit->SetMarkerStyle(24);
2302   fHistPtTPCInAccNoTRDoutNoRefit->SetMarkerColor(4);
2303   fHistPtTPCInAccNoTRDoutNoRefit->Draw("same");
2304   //l1->Draw();
2305
2306   return;
2307 }
2308
2309 TH1F*  gHistTemplateStrange;
2310 TH1F*  gHistTemplatePandMat;
2311 Float_t gd0min=0.15;
2312 Float_t gd0max=1.5;
2313
2314
2315 Double_t FitMCTemplate(Double_t *x, Double_t *par) {
2316    Double_t xx = x[0];
2317    if(TMath::Abs(xx)<gd0min) return 0;
2318    Int_t bin = gHistTemplateStrange->GetXaxis()->FindBin(xx);
2319    Double_t pandmat = par[0]*gHistTemplatePandMat->GetBinContent(bin);
2320    Double_t strange = par[1]*gHistTemplateStrange->GetBinContent(bin);
2321    return strange + pandmat;
2322 }
2323
2324 void FitImpPar_rphi() {
2325
2326   Int_t rebin=1;
2327
2328   TFile *fMC= new TFile("ITS.Performance_lhc10a8a12_trkvtx_noTPCdca_120310.root");
2329
2330   TList *list=(TList*)fMC->Get("cOutputITS");
2331   TH1F *fHistd0rphiITSMIoneSPDInAccPMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP150200");
2332   TH1F *fHistd0rphiITSMIoneSPDInAccSMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS150200");
2333   TH1F *fHistd0rphiITSMIoneSPDInAccSfromMatMC = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS150200fromMat");
2334   fHistd0rphiITSMIoneSPDInAccPMC->Rebin(rebin);
2335   fHistd0rphiITSMIoneSPDInAccSMC->Rebin(rebin);
2336   fHistd0rphiITSMIoneSPDInAccSfromMatMC->Rebin(rebin);
2337
2338   TH1F *fHistd0rphiITSMIoneSPDInAccSfromStrangeMC=(TH1F*)fHistd0rphiITSMIoneSPDInAccSMC->Clone("fHistd0rphiITSMIoneSPDInAccSfromStrangeMC");
2339   fHistd0rphiITSMIoneSPDInAccSfromStrangeMC->Add(fHistd0rphiITSMIoneSPDInAccSfromMatMC,-1.);
2340   TH1F *fHistd0rphiITSMIoneSPDInAccMC=(TH1F*)fHistd0rphiITSMIoneSPDInAccPMC->Clone("fHistd0rphiITSMIoneSPDInAccMC");
2341   fHistd0rphiITSMIoneSPDInAccMC->Add(fHistd0rphiITSMIoneSPDInAccSMC);
2342   //fHistd0rphiITSMIoneSPDInAccMC->Scale(1./fHistd0rphiITSMIoneSPDInAccMC->GetEntries());
2343   TH1F *fHistd0rphiITSMIoneSPDInAccPandMatMC=(TH1F*)fHistd0rphiITSMIoneSPDInAccPMC->Clone("fHistd0rphiITSMIoneSPDInAccPandMatMC");
2344   fHistd0rphiITSMIoneSPDInAccPandMatMC->Add(fHistd0rphiITSMIoneSPDInAccSfromMatMC);
2345
2346   // templates
2347   gHistTemplateStrange = (TH1F*)fHistd0rphiITSMIoneSPDInAccSfromStrangeMC->Clone("gHistTemplateStrange");
2348   gHistTemplatePandMat = (TH1F*)fHistd0rphiITSMIoneSPDInAccPandMatMC->Clone("gHistTemplatePandMat");
2349
2350   
2351
2352
2353   TFile *f= new TFile("ITS.Performance_104065_104892_pass4_trkvtx_noTPCdca.root");
2354   //TFile *f= new TFile("ITS.Performance_lhc10a8_300k_trkvtx_noTPCdca.root");
2355
2356   TList *list=(TList*)f->Get("cOutputITS");
2357   TH1F *fHistd0rphiITSMIoneSPDInAccP = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccP150200");
2358   TH1F *fHistd0rphiITSMIoneSPDInAccS = (TH1F*)list->FindObject("fHistd0rphiITSMIoneSPDInAccS150200");
2359   fHistd0rphiITSMIoneSPDInAccP->Rebin(rebin);
2360   fHistd0rphiITSMIoneSPDInAccS->Rebin(rebin);
2361
2362   TH1F *fHistd0rphiITSMIoneSPDInAcc=(TH1F*)fHistd0rphiITSMIoneSPDInAccP->Clone("fHistd0rphiITSMIoneSPDInAcc");
2363   fHistd0rphiITSMIoneSPDInAcc->Add(fHistd0rphiITSMIoneSPDInAccS);
2364
2365
2366   TF1 *fitMCtemplate = new TF1("fitMCtemplate",FitMCTemplate,-gd0max,+gd0max,2);
2367
2368   TH1F* fHistd0rphiITSMIoneSPDInAccCopy = (TH1F*)fHistd0rphiITSMIoneSPDInAcc->Clone("fHistd0rphiITSMIoneSPDInAccCopy");
2369   for(Int_t ib=1;ib<=fHistd0rphiITSMIoneSPDInAccCopy->GetNbinsX();ib++) {
2370     if(TMath::Abs(fHistd0rphiITSMIoneSPDInAccCopy->GetBinCenter(ib))<gd0min) {
2371       fHistd0rphiITSMIoneSPDInAccCopy->SetBinContent(ib,0);
2372       fHistd0rphiITSMIoneSPDInAccCopy->SetBinError(ib,0);
2373     }
2374   }
2375   fHistd0rphiITSMIoneSPDInAccCopy->Fit("fitMCtemplate","RL");
2376
2377
2378   fHistd0rphiITSMIoneSPDInAccPandMatMC->Scale(fitMCtemplate->GetParameter(0));
2379   fHistd0rphiITSMIoneSPDInAccSfromStrangeMC->Scale(fitMCtemplate->GetParameter(1));
2380   TH1F *fHistd0rphiITSMIoneSPDInAccMCFit=(TH1F*)fHistd0rphiITSMIoneSPDInAccPandMatMC->Clone("fHistd0rphiITSMIoneSPDInAccMCFit");
2381   fHistd0rphiITSMIoneSPDInAccMCFit->Add(fHistd0rphiITSMIoneSPDInAccSfromStrangeMC);
2382
2383   TCanvas *c1 = new TCanvas("c1","c1",1000,1000);
2384   c1->SetLogy();
2385   fHistd0rphiITSMIoneSPDInAccCopy->SetMinimum(1);
2386   fHistd0rphiITSMIoneSPDInAccCopy->SetMaximum(2*fHistd0rphiITSMIoneSPDInAcc->GetMaximum());
2387   fHistd0rphiITSMIoneSPDInAcc->SetMinimum(1);
2388   fHistd0rphiITSMIoneSPDInAccMC->SetMinimum(1);
2389   fHistd0rphiITSMIoneSPDInAccSfromStrangeMC->SetMinimum(1);
2390   fHistd0rphiITSMIoneSPDInAccPandMatMC->SetMinimum(1);
2391   fHistd0rphiITSMIoneSPDInAccCopy->SetLineColor(4);
2392   fHistd0rphiITSMIoneSPDInAccCopy->Draw();
2393   fHistd0rphiITSMIoneSPDInAcc->SetLineColor(4);
2394   fHistd0rphiITSMIoneSPDInAcc->Draw("same");
2395   fHistd0rphiITSMIoneSPDInAccMCFit->SetLineColor(2);
2396   fHistd0rphiITSMIoneSPDInAccMCFit->Draw("same");
2397   fHistd0rphiITSMIoneSPDInAccSfromStrangeMC->SetLineColor(3);
2398   fHistd0rphiITSMIoneSPDInAccSfromStrangeMC->Draw("same");
2399   fHistd0rphiITSMIoneSPDInAccPandMatMC->SetLineColor(15);
2400   fHistd0rphiITSMIoneSPDInAccPandMatMC->Draw("same");
2401
2402
2403
2404   TCanvas *c3 = new TCanvas("c3","c3");
2405   c3->SetLogx();
2406   c3->SetGridx();
2407   c3->SetGridy();
2408   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};
2409
2410   Float_t fracSfromStrange[15],fracSfromStrangeMC[15],fracSfromMatMC[15],fracS[15],fracSMC[15],fracSRatio[15];
2411   for(Int_t i=0;i<15;i++) {
2412     Int_t bin1=fHistd0rphiITSMIoneSPDInAccPandMatMC->FindBin(-d0cut[i]);
2413     Int_t bin2=fHistd0rphiITSMIoneSPDInAccPandMatMC->FindBin(+d0cut[i]);
2414     Float_t intDatacut=fHistd0rphiITSMIoneSPDInAcc->Integral(bin1,bin2);
2415     Float_t intMCcut=fHistd0rphiITSMIoneSPDInAccMC->Integral(bin1,bin2);
2416     Float_t intSfromStrangecut=fHistd0rphiITSMIoneSPDInAccSfromStrangeMC->Integral(bin1,bin2);
2417     Float_t intSfromMatcut=fHistd0rphiITSMIoneSPDInAccSfromMatMC->Integral(bin1,bin2);
2418     fracSfromStrange[i]=intSfromStrangecut/intDatacut;
2419     fracSfromStrangeMC[i]=intSfromStrangecut/fitMCtemplate->GetParameter(1)/intMCcut;
2420     fracSfromMatMC[i]=intSfromMatcut/intMCcut;
2421
2422     fracS[i]=fracSfromStrange[i]+fracSfromMatMC[i];
2423     fracSMC[i]=fracSfromStrangeMC[i]+fracSfromMatMC[i];
2424
2425     fracSRatio[i]=fracS[i]/fracSMC[i];
2426   }
2427   TGraph *gfracSfromStrange=new TGraph(15,d0cut,fracSfromStrange);
2428   gfracSfromStrange->SetMarkerColor(2);
2429   gfracSfromStrange->SetMarkerStyle(20);
2430   gfracSfromStrange->Draw("ap");
2431
2432   TGraph *gfracSfromStrangeMC=new TGraph(15,d0cut,fracSfromStrangeMC);
2433   gfracSfromStrangeMC->SetMarkerColor(1);
2434   gfracSfromStrangeMC->SetMarkerStyle(22);
2435   gfracSfromStrangeMC->Draw("p");
2436
2437   TGraph *gfracSfromMatMC=new TGraph(15,d0cut,fracSfromMatMC);
2438   gfracSfromMatMC->SetMarkerColor(4);
2439   gfracSfromMatMC->SetMarkerStyle(21);
2440   gfracSfromMatMC->Draw("p");
2441
2442   TGraph *gfracS=new TGraph(15,d0cut,fracS);
2443   gfracS->SetMarkerColor(2);
2444   gfracS->SetMarkerStyle(24);
2445   gfracS->Draw("p");
2446
2447   TGraph *gfracSMC=new TGraph(15,d0cut,fracSMC);
2448   gfracSMC->SetMarkerColor(1);
2449   gfracSMC->SetMarkerStyle(25);
2450   gfracSMC->Draw("p");
2451
2452
2453   TCanvas *c4 = new TCanvas("c4","c4");
2454   c4->SetLogx();
2455   c4->SetGridx();
2456   c4->SetGridy();
2457
2458   TGraph *gfracSRatio=new TGraph(15,d0cut,fracSRatio);
2459   gfracSRatio->SetMarkerColor(9);
2460   gfracSRatio->SetMarkerStyle(21);
2461   gfracSRatio->Draw("ap");
2462
2463
2464   return;
2465 }
2466 //-----------------------------------------------------------------------------
2467 void PlotEffVSErrors() {
2468
2469   TFile *f1= new TFile("eff_104892_pd_testnew1.root");
2470
2471   TH1F *fHistPtITSMI6InAcctestnew1 = (TH1F*)f1->Get("fHistPtITSMI6InAcc");
2472   TH1F *fHistPtITSMIge2InAcctestnew1 = (TH1F*)f1->Get("fHistPtITSMIge2InAcc");
2473   TH1F *fHistPtITSMISPDInAcctestnew1 = (TH1F*)f1->Get("fHistPtITSMISPDInAcc");
2474   TH1F *fHistPtITSMIoneSPDInAcctestnew1 = (TH1F*)f1->Get("fHistPtITSMIoneSPDInAcc");
2475
2476   fHistPtITSMI6InAcctestnew1->SetMarkerStyle(20);
2477   fHistPtITSMIge2InAcctestnew1->SetMarkerStyle(20);
2478   fHistPtITSMISPDInAcctestnew1->SetMarkerStyle(20);
2479   fHistPtITSMIoneSPDInAcctestnew1->SetMarkerStyle(20);
2480   fHistPtITSMI6InAcctestnew1->SetMarkerColor(2);
2481   fHistPtITSMIge2InAcctestnew1->SetMarkerColor(1);
2482   fHistPtITSMISPDInAcctestnew1->SetMarkerColor(9);
2483   fHistPtITSMIoneSPDInAcctestnew1->SetMarkerColor(15);
2484
2485
2486   TFile *f2= new TFile("eff_104892_pd_testnew2.root");
2487
2488   TH1F *fHistPtITSMI6InAcctestnew2 = (TH1F*)f2->Get("fHistPtITSMI6InAcc");
2489   TH1F *fHistPtITSMIge2InAcctestnew2 = (TH1F*)f2->Get("fHistPtITSMIge2InAcc");
2490   TH1F *fHistPtITSMISPDInAcctestnew2 = (TH1F*)f2->Get("fHistPtITSMISPDInAcc");
2491   TH1F *fHistPtITSMIoneSPDInAcctestnew2 = (TH1F*)f2->Get("fHistPtITSMIoneSPDInAcc");
2492
2493   fHistPtITSMI6InAcctestnew2->SetMarkerStyle(21);
2494   fHistPtITSMIge2InAcctestnew2->SetMarkerStyle(21);
2495   fHistPtITSMISPDInAcctestnew2->SetMarkerStyle(21);
2496   fHistPtITSMIoneSPDInAcctestnew2->SetMarkerStyle(21);
2497   fHistPtITSMI6InAcctestnew2->SetMarkerColor(2);
2498   fHistPtITSMIge2InAcctestnew2->SetMarkerColor(1);
2499   fHistPtITSMISPDInAcctestnew2->SetMarkerColor(9);
2500   fHistPtITSMIoneSPDInAcctestnew2->SetMarkerColor(15);
2501
2502
2503   TFile *f3= new TFile("eff_104892_pd_testnew3.root");
2504
2505   TH1F *fHistPtITSMI6InAcctestnew3 = (TH1F*)f3->Get("fHistPtITSMI6InAcc");
2506   TH1F *fHistPtITSMIge2InAcctestnew3 = (TH1F*)f3->Get("fHistPtITSMIge2InAcc");
2507   TH1F *fHistPtITSMISPDInAcctestnew3 = (TH1F*)f3->Get("fHistPtITSMISPDInAcc");
2508   TH1F *fHistPtITSMIoneSPDInAcctestnew3 = (TH1F*)f3->Get("fHistPtITSMIoneSPDInAcc");
2509
2510   fHistPtITSMI6InAcctestnew3->SetMarkerStyle(22);
2511   fHistPtITSMIge2InAcctestnew3->SetMarkerStyle(22);
2512   fHistPtITSMISPDInAcctestnew3->SetMarkerStyle(22);
2513   fHistPtITSMIoneSPDInAcctestnew3->SetMarkerStyle(22);
2514   fHistPtITSMI6InAcctestnew3->SetMarkerColor(2);
2515   fHistPtITSMIge2InAcctestnew3->SetMarkerColor(1);
2516   fHistPtITSMISPDInAcctestnew3->SetMarkerColor(9);
2517   fHistPtITSMIoneSPDInAcctestnew3->SetMarkerColor(15);
2518
2519
2520   TFile *f5= new TFile("eff_104892_pd_testnew5.root");
2521
2522   TH1F *fHistPtITSMI6InAcctestnew5 = (TH1F*)f5->Get("fHistPtITSMI6InAcc");
2523   TH1F *fHistPtITSMIge2InAcctestnew5 = (TH1F*)f5->Get("fHistPtITSMIge2InAcc");
2524   TH1F *fHistPtITSMISPDInAcctestnew5 = (TH1F*)f5->Get("fHistPtITSMISPDInAcc");
2525   TH1F *fHistPtITSMIoneSPDInAcctestnew5 = (TH1F*)f5->Get("fHistPtITSMIoneSPDInAcc");
2526
2527   fHistPtITSMI6InAcctestnew5->SetMarkerStyle(24);
2528   fHistPtITSMIge2InAcctestnew5->SetMarkerStyle(24);
2529   fHistPtITSMISPDInAcctestnew5->SetMarkerStyle(24);
2530   fHistPtITSMIoneSPDInAcctestnew5->SetMarkerStyle(24);
2531   fHistPtITSMI6InAcctestnew5->SetMarkerColor(2);
2532   fHistPtITSMIge2InAcctestnew5->SetMarkerColor(1);
2533   fHistPtITSMISPDInAcctestnew5->SetMarkerColor(9);
2534   fHistPtITSMIoneSPDInAcctestnew5->SetMarkerColor(15);
2535
2536
2537   TFile *f6= new TFile("eff_104892_pd_testnew6.root");
2538
2539   TH1F *fHistPtITSMI6InAcctestnew6 = (TH1F*)f6->Get("fHistPtITSMI6InAcc");
2540   TH1F *fHistPtITSMIge2InAcctestnew6 = (TH1F*)f6->Get("fHistPtITSMIge2InAcc");
2541   TH1F *fHistPtITSMISPDInAcctestnew6 = (TH1F*)f6->Get("fHistPtITSMISPDInAcc");
2542   TH1F *fHistPtITSMIoneSPDInAcctestnew6 = (TH1F*)f6->Get("fHistPtITSMIoneSPDInAcc");
2543
2544   fHistPtITSMI6InAcctestnew6->SetMarkerStyle(25);
2545   fHistPtITSMIge2InAcctestnew6->SetMarkerStyle(25);
2546   fHistPtITSMISPDInAcctestnew6->SetMarkerStyle(25);
2547   fHistPtITSMIoneSPDInAcctestnew6->SetMarkerStyle(25);
2548   fHistPtITSMI6InAcctestnew6->SetMarkerColor(2);
2549   fHistPtITSMIge2InAcctestnew6->SetMarkerColor(1);
2550   fHistPtITSMISPDInAcctestnew6->SetMarkerColor(9);
2551   fHistPtITSMIoneSPDInAcctestnew6->SetMarkerColor(15);
2552
2553
2554   TFile *f7= new TFile("eff_104892_pd_testnew7.root");
2555
2556   TH1F *fHistPtITSMI6InAcctestnew7 = (TH1F*)f7->Get("fHistPtITSMI6InAcc");
2557   TH1F *fHistPtITSMIge2InAcctestnew7 = (TH1F*)f7->Get("fHistPtITSMIge2InAcc");
2558   TH1F *fHistPtITSMISPDInAcctestnew7 = (TH1F*)f7->Get("fHistPtITSMISPDInAcc");
2559   TH1F *fHistPtITSMIoneSPDInAcctestnew7 = (TH1F*)f7->Get("fHistPtITSMIoneSPDInAcc");
2560
2561   fHistPtITSMI6InAcctestnew7->SetMarkerStyle(23);
2562   fHistPtITSMIge2InAcctestnew7->SetMarkerStyle(23);
2563   fHistPtITSMISPDInAcctestnew7->SetMarkerStyle(23);
2564   fHistPtITSMIoneSPDInAcctestnew7->SetMarkerStyle(23);
2565   fHistPtITSMI6InAcctestnew7->SetMarkerColor(2);
2566   fHistPtITSMIge2InAcctestnew7->SetMarkerColor(1);
2567   fHistPtITSMISPDInAcctestnew7->SetMarkerColor(9);
2568   fHistPtITSMIoneSPDInAcctestnew7->SetMarkerColor(15);
2569
2570
2571   TFile *f8= new TFile("eff_104892_pd_testnew8.root");
2572
2573   TH1F *fHistPtITSMI6InAcctestnew8 = (TH1F*)f8->Get("fHistPtITSMI6InAcc");
2574   TH1F *fHistPtITSMIge2InAcctestnew8 = (TH1F*)f8->Get("fHistPtITSMIge2InAcc");
2575   TH1F *fHistPtITSMISPDInAcctestnew8 = (TH1F*)f8->Get("fHistPtITSMISPDInAcc");
2576   TH1F *fHistPtITSMIoneSPDInAcctestnew8 = (TH1F*)f8->Get("fHistPtITSMIoneSPDInAcc");
2577
2578   fHistPtITSMI6InAcctestnew8->SetMarkerStyle(28);
2579   fHistPtITSMIge2InAcctestnew8->SetMarkerStyle(28);
2580   fHistPtITSMISPDInAcctestnew8->SetMarkerStyle(28);
2581   fHistPtITSMIoneSPDInAcctestnew8->SetMarkerStyle(28);
2582   fHistPtITSMI6InAcctestnew8->SetMarkerColor(2);
2583   fHistPtITSMIge2InAcctestnew8->SetMarkerColor(1);
2584   fHistPtITSMISPDInAcctestnew8->SetMarkerColor(9);
2585   fHistPtITSMIoneSPDInAcctestnew8->SetMarkerColor(15);
2586
2587
2588   TCanvas *c= new TCanvas("c","c");
2589   fHistPtITSMI6InAcctestnew1->Draw();
2590   fHistPtITSMIge2InAcctestnew1->Draw("same");
2591   fHistPtITSMISPDInAcctestnew1->Draw("same");
2592   fHistPtITSMIoneSPDInAcctestnew1->Draw("same");
2593   fHistPtITSMI6InAcctestnew2->Draw("same");
2594   fHistPtITSMIge2InAcctestnew2->Draw("same");
2595   fHistPtITSMISPDInAcctestnew2->Draw("same");
2596   fHistPtITSMIoneSPDInAcctestnew2->Draw("same");
2597   fHistPtITSMI6InAcctestnew3->Draw("same");
2598   fHistPtITSMIge2InAcctestnew3->Draw("same");
2599   fHistPtITSMISPDInAcctestnew3->Draw("same");
2600   fHistPtITSMIoneSPDInAcctestnew3->Draw("same");
2601   fHistPtITSMI6InAcctestnew5->Draw("same");
2602   fHistPtITSMIge2InAcctestnew5->Draw("same");
2603   fHistPtITSMISPDInAcctestnew5->Draw("same");
2604   fHistPtITSMIoneSPDInAcctestnew5->Draw("same");
2605   fHistPtITSMI6InAcctestnew6->Draw("same");
2606   fHistPtITSMIge2InAcctestnew6->Draw("same");
2607   fHistPtITSMISPDInAcctestnew6->Draw("same");
2608   fHistPtITSMIoneSPDInAcctestnew6->Draw("same");
2609   fHistPtITSMI6InAcctestnew7->Draw("same");
2610   fHistPtITSMIge2InAcctestnew7->Draw("same");
2611   fHistPtITSMISPDInAcctestnew7->Draw("same");
2612   fHistPtITSMIoneSPDInAcctestnew7->Draw("same");
2613   fHistPtITSMI6InAcctestnew8->Draw("same");
2614   fHistPtITSMIge2InAcctestnew8->Draw("same");
2615   fHistPtITSMISPDInAcctestnew8->Draw("same");
2616   fHistPtITSMIoneSPDInAcctestnew8->Draw("same");
2617
2618
2619   return;
2620 }
2621 //--------------------------------------------------------------------------
2622 void ReweightStrange(TH1F *hPt,TH1F* hPtPfromStrange,TH1F* hPtSfromStrange) {
2623
2624   for(Int_t i=1;i<=hPt->GetNbinsX();i++) {
2625     Double_t pt=hPt->GetBinCenter(i);
2626     Double_t weight=1.;
2627     Double_t weightP=1.;
2628     if(pt<.25) {
2629       weight=1.3;//1.;
2630     } else if(pt>=0.25 && pt<0.5) {
2631       weight=1.5;//1.3;
2632     } else if(pt>=0.5 && pt<1.1) {
2633       weight=1.7;//1.44;
2634     } else if(pt>=1.1) {
2635       weight=2;//1.7;
2636     }
2637     
2638     weightP*=1.3;
2639     hPt->SetBinContent(i,hPt->GetBinContent(i)+(weight-1.)*hPtSfromStrange->GetBinContent(i));
2640     if(hPtPfromStrange) hPt->SetBinContent(i,hPt->GetBinContent(i)+(weightP-1.)*hPtPfromStrange->GetBinContent(i));
2641   }
2642
2643   return;
2644 }
2645 //--------------------------------------------------------------------------
2646 void ITSTrackingTrending(Int_t firstrun,Int_t lastrun,
2647                          TString pathBeforeRun="/alice/data/2010/LHC10c/000",
2648                          TString pathAfterRun="/ESDs/pass2/QA13/QAresults.root") {
2649   //
2650   // Make ITS efficiency trending plots from QAresults.root files
2651   //
2652   gStyle->SetOptStat(0);
2653
2654   Float_t ioValues[100],ioErrors[100];
2655   Int_t index;
2656   Int_t nruns=lastrun-firstrun+1;
2657
2658
2659   TH1F *hFracSPD1 = new TH1F("hFracSPD1","SPD inner; run number; Fraction of HSs",nruns,firstrun-0.5,lastrun+0.5);
2660   hFracSPD1->SetLineColor(3);
2661   hFracSPD1->SetMarkerColor(3);
2662   TH1F *hFracSPD2 = new TH1F("hFracSPD2","SPD outer; run number; Fraction of HSs",nruns,firstrun-0.5,lastrun+0.5);
2663   hFracSPD2->SetLineColor(8);
2664   hFracSPD2->SetMarkerColor(8);
2665
2666
2667   TH1F *hEffge2Pt02 = new TH1F("hEffge2Pt02","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
2668   hEffge2Pt02->SetLineWidth(2);
2669   hEffge2Pt02->SetLineColor(1);
2670   hEffge2Pt02->SetMarkerColor(1);
2671   TH1F *hEffge2Pt1 = new TH1F("hEffge2Pt1","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
2672   hEffge2Pt1->SetLineWidth(2);
2673   hEffge2Pt1->SetLineColor(1);
2674   hEffge2Pt1->SetMarkerColor(1);
2675   TH1F *hEffge2Pt10 = new TH1F("hEffge2Pt10","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
2676   hEffge2Pt10->SetLineWidth(2);
2677   hEffge2Pt10->SetLineColor(1);
2678   hEffge2Pt10->SetMarkerColor(1);
2679
2680   TH1F *hEff6Pt02 = new TH1F("hEff6Pt02","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
2681   hEff6Pt02->SetLineWidth(2);
2682   hEff6Pt02->SetLineColor(2);
2683   hEff6Pt02->SetMarkerColor(2);
2684   TH1F *hEff6Pt1 = new TH1F("hEff6Pt1","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
2685   hEff6Pt1->SetLineWidth(2);
2686   hEff6Pt1->SetLineColor(2);
2687   hEff6Pt1->SetMarkerColor(2);
2688   TH1F *hEff6Pt10 = new TH1F("hEff6Pt10","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
2689   hEff6Pt10->SetLineWidth(2);
2690   hEff6Pt10->SetLineColor(2);
2691   hEff6Pt10->SetMarkerColor(2);
2692
2693   TH1F *hEffSPDPt02 = new TH1F("hEffSPDPt02","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
2694   hEffSPDPt02->SetLineWidth(2);
2695   hEffSPDPt02->SetLineColor(9);
2696   hEffSPDPt02->SetMarkerColor(9);
2697   TH1F *hEffSPDPt1 = new TH1F("hEffSPDPt1","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
2698   hEffSPDPt1->SetLineWidth(2);
2699   hEffSPDPt1->SetLineColor(9);
2700   hEffSPDPt1->SetMarkerColor(9);
2701   TH1F *hEffSPDPt10 = new TH1F("hEffSPDPt10","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
2702   hEffSPDPt10->SetLineWidth(2);
2703   hEffSPDPt10->SetLineColor(9);
2704   hEffSPDPt10->SetMarkerColor(9);
2705
2706   TH1F *hEffoneSPDPt02 = new TH1F("hEffoneSPDPt02","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
2707   hEffoneSPDPt02->SetLineWidth(2);
2708   hEffoneSPDPt02->SetLineColor(15);
2709   hEffoneSPDPt02->SetMarkerColor(15);
2710   TH1F *hEffoneSPDPt1 = new TH1F("hEffoneSPDPt1","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
2711   hEffoneSPDPt1->SetLineWidth(2);
2712   hEffoneSPDPt1->SetLineColor(15);
2713   hEffoneSPDPt1->SetMarkerColor(15);
2714   TH1F *hEffoneSPDPt10 = new TH1F("hEffoneSPDPt10","Efficiency; run number; TPC+ITS / TPC",nruns,firstrun-0.5,lastrun+0.5);
2715   hEffoneSPDPt10->SetLineWidth(2);
2716   hEffoneSPDPt10->SetLineColor(15);
2717   hEffoneSPDPt10->SetMarkerColor(15);
2718
2719   // loop on runs
2720   for(Int_t irun=firstrun; irun<=lastrun; irun++) {
2721     if(!KeepRun(irun)) continue;
2722
2723     TString path=pathBeforeRun;
2724     path+=irun;
2725     path.Append(pathAfterRun.Data());
2726     path.Prepend("alien://");
2727
2728     if(!PlotITSTrackingHists(path.Data(),ioValues,ioErrors)) continue;
2729
2730     Int_t bin=hEffge2Pt1->FindBin(irun);
2731
2732
2733     // fill histos
2734     index=0;
2735     hFracSPD1->SetBinContent(bin,ioValues[index]);
2736     hFracSPD1->SetBinError(bin,.01);
2737     index=1;
2738     hFracSPD2->SetBinContent(bin,ioValues[index]);
2739     hFracSPD2->SetBinError(bin,.01);
2740
2741     index=2;
2742     hEffge2Pt02->SetBinContent(bin,ioValues[index]);
2743     hEffge2Pt02->SetBinError(bin,ioErrors[index]);
2744     index=3;
2745     hEffge2Pt1->SetBinContent(bin,ioValues[index]);
2746     hEffge2Pt1->SetBinError(bin,ioErrors[index]);
2747     index=4;
2748     hEffge2Pt10->SetBinContent(bin,ioValues[index]);
2749     hEffge2Pt10->SetBinError(bin,ioErrors[index]);
2750
2751     index=5;
2752     hEff6Pt02->SetBinContent(bin,ioValues[index]);
2753     hEff6Pt02->SetBinError(bin,ioErrors[index]);
2754     index=6;
2755     hEff6Pt1->SetBinContent(bin,ioValues[index]);
2756     hEff6Pt1->SetBinError(bin,ioErrors[index]);
2757     index=7;
2758     hEff6Pt10->SetBinContent(bin,ioValues[index]);
2759     hEff6Pt10->SetBinError(bin,ioErrors[index]);
2760
2761     index=8;
2762     hEffSPDPt02->SetBinContent(bin,ioValues[index]);
2763     hEffSPDPt02->SetBinError(bin,ioErrors[index]);
2764     index=9;
2765     hEffSPDPt1->SetBinContent(bin,ioValues[index]);
2766     hEffSPDPt1->SetBinError(bin,ioErrors[index]);
2767     index=10;
2768     hEffSPDPt10->SetBinContent(bin,ioValues[index]);
2769     hEffSPDPt10->SetBinError(bin,ioErrors[index]);
2770
2771     index=11;
2772     hEffoneSPDPt02->SetBinContent(bin,ioValues[index]);
2773     hEffoneSPDPt02->SetBinError(bin,ioErrors[index]);
2774     index=12;
2775     hEffoneSPDPt1->SetBinContent(bin,ioValues[index]);
2776     hEffoneSPDPt1->SetBinError(bin,ioErrors[index]);
2777     index=13;
2778     hEffoneSPDPt10->SetBinContent(bin,ioValues[index]);
2779     hEffoneSPDPt10->SetBinError(bin,ioErrors[index]);
2780
2781   }
2782
2783   TCanvas *cSPD = new TCanvas("cSPD","cSPD",0,0,1000,300);
2784   cSPD->SetGridy();
2785   hFracSPD1->SetMaximum(1.2);
2786   hFracSPD1->SetMaximum(0);
2787   hFracSPD1->Draw("p");
2788   hFracSPD2->Draw("same,p");
2789   TLegend* lSPD=new TLegend(0.9,0.8,1,1);
2790   lSPD->AddEntry(hFracSPD1,"Frac. SPD1 ON","l");
2791   lSPD->AddEntry(hFracSPD2,"Frac. SPD2 ON","l");
2792   lSPD->Draw();
2793
2794   TCanvas *cPt02 = new TCanvas("cPt02","cPt02",0,0,1000,300);
2795   cPt02->SetGridy();
2796   hEffge2Pt02->SetMaximum(1.2);
2797   hEffge2Pt02->SetMaximum(0);
2798   hEffge2Pt02->Draw();
2799   hEff6Pt02->Draw("same");
2800   hEffSPDPt02->Draw("same");
2801   hEffoneSPDPt02->Draw("same");
2802   TLegend* lPt02=new TLegend(0.9,0.8,1,1);
2803   lPt02->AddEntry(hEffge2Pt02,">=2 cls","l");
2804   lPt02->AddEntry(hEffoneSPDPt02,">=1 SPD + any","l");
2805   lPt02->AddEntry(hEffSPDPt02,"2 SPD + any","l");
2806   lPt02->AddEntry(hEff6Pt02,"6 cls","l");
2807   lPt02->Draw();
2808
2809   TCanvas *cPt1 = new TCanvas("cPt1","cPt1",0,0,1000,300);
2810   cPt1->SetGridy();
2811   hEffge2Pt1->SetMaximum(1.2);
2812   hEffge2Pt1->SetMaximum(0);
2813   hEffge2Pt1->Draw();
2814   hEff6Pt1->Draw("same");
2815   hEffSPDPt1->Draw("same");
2816   hEffoneSPDPt1->Draw("same");
2817   lPt02->Draw();
2818
2819   TCanvas *cPt10 = new TCanvas("cPt10","cPt10",0,0,1000,300);
2820   cPt10->SetGridy();
2821   hEffge2Pt10->SetMaximum(1.2);
2822   hEffge2Pt10->SetMaximum(0);
2823   hEffge2Pt10->Draw("p");
2824   hEff6Pt10->Draw("same,p");
2825   hEffSPDPt10->Draw("same,p");
2826   hEffoneSPDPt10->Draw("same,p");
2827   lPt02->Draw();
2828
2829   return;
2830 }
2831 //------------------------------------------------------------------------
2832 Bool_t KeepRun(Int_t irun) {
2833
2834
2835   // LHC10c good runs
2836   Int_t nruns=46;
2837   Int_t goodruns[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};
2838   //
2839
2840
2841   Bool_t found=kFALSE;
2842   for(Int_t i=0; i<nruns; i++) {
2843     if(irun==goodruns[i]) {found=kTRUE; break;}
2844   }
2845   
2846   if(found) return kTRUE;
2847   return kFALSE;
2848 }