Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-02-14 14:34:14

0001 {
0002   
0003   gROOT->Reset();
0004   gROOT->Clear();
0005   
0006   gStyle->SetNdivisions(5);
0007   gStyle->SetCanvasBorderMode(0); 
0008   gStyle->SetPadBorderMode(1);
0009   gStyle->SetOptTitle(1);
0010   gStyle->SetStatFont(42);
0011   gStyle->SetCanvasColor(10);
0012   gStyle->SetPadColor(0);
0013   gStyle->SetTitleFont(62,"xy");
0014   gStyle->SetLabelFont(62,"xy");
0015   gStyle->SetTitleFontSize(0.07);
0016   gStyle->SetTitleSize(0.045,"xy");
0017   gStyle->SetLabelSize(0.05,"xy");
0018   gStyle->SetHistFillStyle(1001);
0019   gStyle->SetHistFillColor(0);
0020   gStyle->SetHistLineStyle(1);
0021   gStyle->SetHistLineWidth(1);
0022   gStyle->SetHistLineColor(1);
0023   gStyle->SetTitleXOffset(1.1);
0024   gStyle->SetTitleYOffset(1.15);
0025   //gStyle->SetOptStat(1110);
0026   gStyle->SetOptStat(kFALSE);
0027   gStyle->SetOptFit(0111);
0028   gStyle->SetStatH(0.1);
0029 
0030   //  string rdirName="general_AssociatorByHits/";
0031 
0032   //  const char * samples=getenv ("SCENARIOS");
0033   const char * samples="SCENARIOS";
0034   TString samplestring(samples);
0035   std::cout<<"Going to analyze the following scenarios:"<<samplestring<<endl;
0036   TString delim(" ");
0037   TObjArray *samplelist=samplestring.Tokenize(delim);
0038   int nscenarios=samplelist->GetEntries();
0039   TFile *files[nscenarios];
0040   TDirectory *dir[nscenarios];
0041   TH1F *fakeratevseta[nscenarios], *fakeratevsPt[nscenarios], *fakeratevshits[nscenarios];
0042   TH1F *efficvseta[nscenarios], *efficvsPt[nscenarios], *efficvshits[nscenarios];
0043   TH1F *sigmadxyvseta[nscenarios], *sigmadxyvspt[nscenarios], *pullDxy[nscenarios];
0044   TH1F *sigmadzvseta[nscenarios], *sigmadzvspt[nscenarios], *pullDz[nscenarios];
0045   TH1F *sigmaptvseta[nscenarios], *sigmaptvspt[nscenarios], *pullPt[nscenarios];
0046   for(int i=0;i<nscenarios;i++){
0047     TObjString * string =(TObjString*)samplelist->At(i);
0048     files[i]=new TFile("val.SAMPLE."+string->GetString()+".root");  
0049     files[i]->cd("DQMData/RecoTrackV/Track");
0050     TDirectory * dir[i]=gDirectory;
0051     TList *l= dir[i]->GetListOfKeys();
0052     string rdirName=l->At(0)->GetName();
0053     //fake
0054     dir[i]->GetObject((rdirName+"/fakerate").c_str(),fakeratevseta[i]);
0055     dir[i]->GetObject((rdirName+"/fakeratePt").c_str(),fakeratevsPt[i]);
0056     dir[i]->GetObject((rdirName+"/fakerate_vs_hit").c_str(),fakeratevshits[i]);
0057     //efficiency
0058     dir[i]->GetObject((rdirName+"/effic").c_str(),efficvseta[i]);
0059     dir[i]->GetObject((rdirName+"/efficPt").c_str(),efficvsPt[i]);
0060     dir[i]->GetObject((rdirName+"/effic_vs_hit").c_str(),efficvshits[i]);
0061     //dxy
0062     dir[i]->GetObject((rdirName+"/sigmadxy").c_str(),sigmadxyvseta[i]);
0063     dir[i]->GetObject((rdirName+"/sigmadxyPt").c_str(),sigmadxyvspt[i]);
0064     dir[i]->GetObject((rdirName+"/pullDxy").c_str(),pullDxy[i]);
0065     //dz
0066     dir[i]->GetObject((rdirName+"/sigmadz").c_str(),sigmadzvseta[i]);
0067     dir[i]->GetObject((rdirName+"/sigmadzPt").c_str(),sigmadzvspt[i]);
0068     dir[i]->GetObject((rdirName+"/pullDz").c_str(),pullDz[i]);
0069     //dpt
0070     dir[i]->GetObject((rdirName+"/sigmapt").c_str(),sigmaptvseta[i]);
0071     dir[i]->GetObject((rdirName+"/sigmaptPt").c_str(),sigmaptvspt[i]);
0072     dir[i]->GetObject((rdirName+"/pullPt").c_str(),pullPt[i]);
0073   }
0074 
0075   //&&&&&&&&&&&&&&&&&&&&&&&&&&&
0076   // fakerate vs eta
0077   //&&&&&&&&&&&&&&&&&&&&&&&&&&&
0078   
0079   TCanvas *c1 = new TCanvas("c1", "c1",129,17,926,703);
0080   // c1->SetBorderSize(2);
0081   // c1->SetFrameFillColor(0);
0082   // c1->SetFillColor(0);
0083   c1->SetGrid(1,1);
0084   for(int i=0;i<nscenarios;i++){
0085     
0086     fakeratevseta[i]->SetTitle("Fake rate vs #eta for SAMPLE events");
0087     fakeratevseta[i]->SetMarkerStyle(20+i);
0088     fakeratevseta[i]->SetMarkerColor(2+i);
0089     fakeratevseta[i]->SetMarkerSize(0.9);
0090     fakeratevseta[i]->SetLineColor(1);
0091     fakeratevseta[i]->SetLineWidth(1);
0092   }  
0093 
0094   TLegend *leg1 = new TLegend(0.1,0.75,0.35,0.9);
0095   leg1->SetTextAlign(32);
0096   leg1->SetTextColor(1);
0097   leg1->SetTextSize(0.04);
0098 
0099   for(int i=0;i<nscenarios;i++){
0100     fakeratevseta[i]->SetTitle("Fake rate vs #eta for SAMPLE events");
0101     fakeratevseta[i]->SetXTitle("#eta");
0102     fakeratevseta[i]->SetYTitle("Fake Rate");
0103     fakeratevseta[i]->SetAxisRange(-0.005,0.4,"Y");
0104     if(i==0)fakeratevseta[i]->Draw();
0105     else fakeratevseta[i]->Draw("same");
0106     leg1->AddEntry(fakeratevseta[i],((TObjString *)(samplelist->At(i)))->GetString(),"P");
0107   }
0108 
0109   leg1->Draw();
0110   
0111   c1->Update();
0112   c1->SaveAs("Fake_eta_SAMPLE.eps");
0113   c1->SaveAs("Fake_eta_SAMPLE.gif");
0114   c1->WaitPrimitive();
0115 
0116   delete c1;
0117   delete leg1;
0118   //&&&&&&&&&&&&&&&&&&&&&&&&&&&
0119   // fakerate vs Pt
0120   //&&&&&&&&&&&&&&&&&&&&&&&&&&&
0121   
0122   TCanvas *c1 = new TCanvas("c1", "c1",129,17,926,703);
0123   // c1->SetBorderSize(2);
0124   // c1->SetFrameFillColor(0);
0125   // c1->SetFillColor(0);
0126   c1->SetGrid(1,1);
0127   for(int i=0;i<nscenarios;i++){
0128     
0129     fakeratevsPt[i]->SetTitle("Fake rate vs Pt for SAMPLE events");
0130     fakeratevsPt[i]->SetMarkerStyle(20+i);
0131     fakeratevsPt[i]->SetMarkerColor(2+i);
0132     fakeratevsPt[i]->SetMarkerSize(0.9);
0133     fakeratevsPt[i]->SetLineColor(1);
0134     fakeratevsPt[i]->SetLineWidth(1);
0135   }  
0136 
0137   TLegend *leg1 = new TLegend(0.1,0.75,0.35,0.9);
0138   leg1->SetTextAlign(32);
0139   leg1->SetTextColor(1);
0140   leg1->SetTextSize(0.04);
0141 
0142   for(int i=0;i<nscenarios;i++){
0143     fakeratevsPt[i]->SetTitle("Fake rate vs Pt for SAMPLE events");
0144     fakeratevsPt[i]->SetXTitle("Pt");
0145     fakeratevsPt[i]->SetYTitle("Fake Rate");
0146     fakeratevsPt[i]->SetAxisRange(-0.005,0.5,"Y");
0147     if(i==0)fakeratevsPt[i]->Draw();
0148     else fakeratevsPt[i]->Draw("same");
0149     leg1->AddEntry(fakeratevsPt[i],((TObjString *)(samplelist->At(i)))->GetString(),"P");
0150   }
0151 
0152   leg1->Draw();
0153   
0154   c1->Update();
0155   c1->SaveAs("Fake_Pt_SAMPLE.eps");
0156   c1->SaveAs("Fake_Pt_SAMPLE.gif");
0157   c1->WaitPrimitive();
0158 
0159   delete c1;
0160   delete leg1;
0161   //&&&&&&&&&&&&&&&&&&&&&&&&&&&
0162   // fakerate vs hits
0163   //&&&&&&&&&&&&&&&&&&&&&&&&&&&
0164   
0165   TCanvas *c1 = new TCanvas("c1", "c1",129,17,926,703);
0166   // c1->SetBorderSize(2);
0167   // c1->SetFrameFillColor(0);
0168   // c1->SetFillColor(0);
0169   c1->SetGrid(1,1);
0170   for(int i=0;i<nscenarios;i++){
0171     
0172     fakeratevshits[i]->SetTitle("Fake rate vs hits for SAMPLE events");
0173     fakeratevshits[i]->SetMarkerStyle(20+i);
0174     fakeratevshits[i]->SetMarkerColor(2+i);
0175     fakeratevshits[i]->SetMarkerSize(0.9);
0176     fakeratevshits[i]->SetLineColor(1);
0177     fakeratevshits[i]->SetLineWidth(1);
0178   }  
0179 
0180   TLegend *leg1 = new TLegend(0.65,0.75,0.9,0.9);
0181   leg1->SetTextAlign(32);
0182   leg1->SetTextColor(1);
0183   leg1->SetTextSize(0.04);
0184 
0185   for(int i=0;i<nscenarios;i++){
0186     fakeratevshits[i]->SetTitle("Fake rate vs hits for SAMPLE events");
0187     fakeratevshits[i]->SetXTitle("hits");
0188     fakeratevshits[i]->SetYTitle("Fake Rate");
0189     fakeratevshits[i]->SetAxisRange(-0.005,0.7,"Y");
0190     if(i==0)fakeratevshits[i]->Draw();
0191     else fakeratevshits[i]->Draw("same");
0192     leg1->AddEntry(fakeratevshits[i],((TObjString *)(samplelist->At(i)))->GetString(),"P");
0193   }
0194 
0195   leg1->Draw();
0196   
0197   c1->Update();
0198   c1->SaveAs("Fake_hits_SAMPLE.eps");
0199   c1->SaveAs("Fake_hits_SAMPLE.gif");
0200   c1->WaitPrimitive();
0201 
0202   delete c1;
0203   delete leg1;
0204   //&&&&&&&&&&&&&&&&&&&&&&&&&&&
0205   // effic vs eta
0206   //&&&&&&&&&&&&&&&&&&&&&&&&&&&
0207   
0208   TCanvas *c1 = new TCanvas("c1", "c1",129,17,926,703);
0209   // c1->SetBorderSize(2);
0210   // c1->SetFrameFillColor(0);
0211   // c1->SetFillColor(0);
0212   c1->SetGrid(1,1);
0213   for(int i=0;i<nscenarios;i++){
0214     
0215     efficvseta[i]->SetTitle("Efficiency vs #eta for SAMPLE events");
0216     efficvseta[i]->SetMarkerStyle(20+i);
0217     efficvseta[i]->SetMarkerColor(2+i);
0218     efficvseta[i]->SetMarkerSize(0.9);
0219     efficvseta[i]->SetLineColor(1);
0220     efficvseta[i]->SetLineWidth(1);
0221   }  
0222 
0223   TLegend *leg1 = new TLegend(0.1,0.1,0.35,0.35);
0224   leg1->SetTextAlign(32);
0225   leg1->SetTextColor(1);
0226   leg1->SetTextSize(0.04);
0227 
0228   for(int i=0;i<nscenarios;i++){
0229     efficvseta[i]->SetXTitle("#eta");
0230     efficvseta[i]->SetYTitle("Efficiency");
0231     efficvseta[i]->SetAxisRange(-0.005,1.,"Y");
0232     if(i==0)efficvseta[i]->Draw();
0233     else efficvseta[i]->Draw("same");
0234     leg1->AddEntry(efficvseta[i],((TObjString *)(samplelist->At(i)))->GetString(),"P");
0235   }
0236 
0237   leg1->Draw();
0238   
0239   c1->Update();
0240   c1->SaveAs("Efficiency_eta_SAMPLE.eps");
0241   c1->SaveAs("Efficiency_eta_SAMPLE.gif");
0242   c1->WaitPrimitive();
0243 
0244   delete c1;
0245   delete leg1;
0246   //&&&&&&&&&&&&&&&&&&&&&&&&&&&
0247   // effic vs Pt
0248   //&&&&&&&&&&&&&&&&&&&&&&&&&&&
0249   
0250   TCanvas *c1 = new TCanvas("c1", "c1",129,17,926,703);
0251   // c1->SetBorderSize(2);
0252   // c1->SetFrameFillColor(0);
0253   // c1->SetFillColor(0);
0254   c1->SetGrid(1,1);
0255   for(int i=0;i<nscenarios;i++){
0256     
0257     efficvsPt[i]->SetTitle("Efficiency vs Pt for SAMPLE events");
0258     efficvsPt[i]->SetMarkerStyle(20+i);
0259     efficvsPt[i]->SetMarkerColor(2+i);
0260     efficvsPt[i]->SetMarkerSize(0.9);
0261     efficvsPt[i]->SetLineColor(1);
0262     efficvsPt[i]->SetLineWidth(1);
0263   }  
0264 
0265   TLegend *leg1 = new TLegend(0.2,0.1,0.45,0.35);
0266   leg1->SetTextAlign(32);
0267   leg1->SetTextColor(1);
0268   leg1->SetTextSize(0.04);
0269 
0270   for(int i=0;i<nscenarios;i++){
0271     efficvsPt[i]->SetXTitle("Pt");
0272     efficvsPt[i]->SetYTitle("Efficiency");
0273     efficvsPt[i]->SetAxisRange(-0.005,1.,"Y");
0274     if(i==0)efficvsPt[i]->Draw();
0275     else efficvsPt[i]->Draw("same");
0276     leg1->AddEntry(efficvsPt[i],((TObjString *)(samplelist->At(i)))->GetString(),"P");
0277   }
0278 
0279   leg1->Draw();
0280   
0281   c1->Update();
0282   c1->SaveAs("Efficiency_Pt_SAMPLE.eps");
0283   c1->SaveAs("Efficiency_Pt_SAMPLE.gif");
0284   c1->WaitPrimitive();
0285 
0286   delete c1;
0287   delete leg1;
0288   //&&&&&&&&&&&&&&&&&&&&&&&&&&&
0289   // effic vs hits
0290   //&&&&&&&&&&&&&&&&&&&&&&&&&&&
0291   
0292   TCanvas *c1 = new TCanvas("c1", "c1",129,17,926,703);
0293   // c1->SetBorderSize(2);
0294   // c1->SetFrameFillColor(0);
0295   // c1->SetFillColor(0);
0296   c1->SetGrid(1,1);
0297   for(int i=0;i<nscenarios;i++){
0298     
0299     efficvshits[i]->SetTitle("Efficiency vs hits for SAMPLE events");
0300     efficvshits[i]->SetMarkerStyle(20+i);
0301     efficvshits[i]->SetMarkerColor(2+i);
0302     efficvshits[i]->SetMarkerSize(0.9);
0303     efficvshits[i]->SetLineColor(1);
0304     efficvshits[i]->SetLineWidth(1);
0305   }  
0306 
0307 
0308 // //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
0309 // /// EFFICIENCIES VS HITS STACKED
0310 // //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
0311   TLegend *leg1 = new TLegend(0.2,0.1,0.45,0.35);
0312   leg1->SetTextAlign(32);
0313   leg1->SetTextColor(1);
0314   leg1->SetTextSize(0.04);
0315 
0316   for(int i=0;i<nscenarios;i++){
0317     efficvshits[i]->SetXTitle("hits");
0318     efficvshits[i]->SetYTitle("Efficiency");
0319     efficvshits[i]->SetAxisRange(0.,1.,"Y");
0320     if(i==0)efficvshits[i]->Draw();
0321     else efficvshits[i]->Draw("same");
0322     leg1->AddEntry(efficvshits[i],((TObjString *)(samplelist->At(i)))->GetString(),"P");
0323   }
0324 
0325   leg1->Draw();
0326   
0327   c1->Update();
0328   c1->SaveAs("Efficiency_hits_SAMPLE.eps");
0329   c1->SaveAs("Efficiency_hits_SAMPLE.gif");
0330   c1->WaitPrimitive();
0331 
0332   delete c1;
0333   delete leg1;
0334 
0335   //&&&&&&&&&&&&&&&&&&&&&&&
0336   // dxy res vs eta
0337   //%%%%%%%%%%%%%%%%%%%%%%%
0338   TCanvas *c1 = new TCanvas("c1", "c1",129,17,926,703);
0339   // c1->SetBorderSize(2);
0340   // c1->SetFrameFillColor(0);
0341   // c1->SetFillColor(0);
0342   c1->SetGrid(1,1);
0343   for(int i=0;i<nscenarios;i++){
0344     
0345     sigmadxyvseta[i]->SetTitle("Dxy resolution vs #eta for SAMPLE events");
0346     sigmadxyvseta[i]->SetMarkerStyle(20+i);
0347     sigmadxyvseta[i]->SetMarkerColor(2+i);
0348     sigmadxyvseta[i]->SetMarkerSize(0.9);
0349     sigmadxyvseta[i]->SetLineColor(1);
0350     sigmadxyvseta[i]->SetLineWidth(1);
0351   }  
0352 
0353 
0354   TLegend *leg1 = new TLegend(0.2,0.1,0.45,0.35);
0355   leg1->SetTextAlign(32);
0356   leg1->SetTextColor(1);
0357   leg1->SetTextSize(0.04);
0358 
0359   for(int i=0;i<nscenarios;i++){
0360     sigmadxyvseta[i]->SetXTitle("#eta");
0361     sigmadxyvseta[i]->SetYTitle("dxy resolution");
0362     sigmadxyvseta[i]->SetAxisRange(0.0005,0.1,"Y");
0363     if(i==0)sigmadxyvseta[i]->Draw();
0364     else sigmadxyvseta[i]->Draw("same");
0365     leg1->AddEntry(sigmadxyvseta[i],((TObjString *)(samplelist->At(i)))->GetString(),"P");
0366   }
0367   c1->SetLogy();
0368   leg1->Draw();
0369   
0370   c1->Update();
0371   c1->SaveAs("Dxy_res_eta_SAMPLE.eps");
0372   c1->SaveAs("Dxy_res_eta_SAMPLE.gif");
0373   c1->WaitPrimitive();
0374 
0375   delete c1;
0376   delete leg1;
0377 
0378   //&&&&&&&&&&&&&&&&&&
0379   // dxy res vs pt
0380   //&&&&&&&&&&&&&&&&&&
0381   TCanvas *c1 = new TCanvas("c1", "c1",129,17,926,703);
0382   // c1->SetBorderSize(2);
0383   // c1->SetFrameFillColor(0);
0384   // c1->SetFillColor(0);
0385   c1->SetGrid(1,1);
0386   for(int i=0;i<nscenarios;i++){
0387     
0388     sigmadxyvspt[i]->SetTitle("Dxy resolution vs Pt for SAMPLE events");
0389     sigmadxyvspt[i]->SetMarkerStyle(20+i);
0390     sigmadxyvspt[i]->SetMarkerColor(2+i);
0391     sigmadxyvspt[i]->SetMarkerSize(0.9);
0392     sigmadxyvspt[i]->SetLineColor(1);
0393     sigmadxyvspt[i]->SetLineWidth(1);
0394   }  
0395 
0396 
0397   TLegend *leg1 = new TLegend(0.1,0.1,0.35,0.35);
0398   leg1->SetTextAlign(32);
0399   leg1->SetTextColor(1);
0400   leg1->SetTextSize(0.04);
0401 
0402   for(int i=0;i<nscenarios;i++){
0403     sigmadxyvspt[i]->SetXTitle("Pt");
0404     sigmadxyvspt[i]->SetYTitle("dxy resolution");
0405     sigmadxyvspt[i]->SetAxisRange(0.,30,"X");
0406     sigmadxyvspt[i]->SetAxisRange(0.0005,0.1,"Y");
0407     if(i==0)sigmadxyvspt[i]->Draw();
0408     else sigmadxyvspt[i]->Draw("same");
0409     leg1->AddEntry(sigmadxyvspt[i],((TObjString *)(samplelist->At(i)))->GetString(),"P");
0410   }
0411 
0412   leg1->Draw();
0413   c1->SetLogy();
0414   c1->Update();
0415   c1->SaveAs("Dxy_res_Pt_SAMPLE.eps");
0416   c1->SaveAs("Dxy_res_Pt_SAMPLE.gif");
0417   c1->WaitPrimitive();
0418 
0419   delete c1;
0420   delete leg1;
0421 
0422 // //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
0423 // pull dxy
0424 // //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
0425   TCanvas *c1 = new TCanvas("c1", "c1",129,17,926,703);
0426   // c1->SetBorderSize(2);
0427   // c1->SetFrameFillColor(0);
0428   // c1->SetFillColor(0);
0429   c1->SetGrid(1,1);
0430   for(int i=0;i<nscenarios;i++){
0431     
0432     pullDxy[i]->SetTitle("Pull dxy for SAMPLE events");
0433     pullDxy[i]->SetMarkerStyle(20+i);
0434     pullDxy[i]->SetMarkerColor(2+i);
0435     pullDxy[i]->SetMarkerSize(0.9);
0436     pullDxy[i]->SetLineColor(2+i);
0437     pullDxy[i]->SetLineWidth(1);
0438   }  
0439 
0440   TLegend *leg1 = new TLegend(0.1,0.6,0.35,0.85);
0441   leg1->SetTextAlign(32);
0442   leg1->SetTextColor(1);
0443   leg1->SetTextSize(0.04);
0444 
0445   for(int i=0;i<nscenarios;i++){
0446     pullDxy[i]->SetXTitle("Pulldxy");
0447     //    pullDxy[i]->SetYTitle("Pulldxy");
0448     //    pullDxy[i]->SetAxisRange(-0.005,0.1.,"Y");
0449     if(i==0)pullDxy[i]->Draw();
0450     else pullDxy[i]->Draw("same");
0451     leg1->AddEntry(pullDxy[i],((TObjString *)(samplelist->At(i)))->GetString(),"l");
0452   }
0453 
0454   leg1->Draw();
0455   c1->SetLogy();
0456   c1->Update();
0457   c1->SaveAs("Pulldxy_SAMPLE.eps");
0458   c1->SaveAs("Pulldxy_SAMPLE.gif");
0459   c1->WaitPrimitive();
0460 
0461   delete c1;
0462   delete leg1;
0463 
0464   //&&&&&&&&&&&&&&&&&&&&&&&
0465   // dz res vs eta
0466   //%%%%%%%%%%%%%%%%%%%%%%%
0467   TCanvas *c1 = new TCanvas("c1", "c1",129,17,926,703);
0468   // c1->SetBorderSize(2);
0469   // c1->SetFrameFillColor(0);
0470   // c1->SetFillColor(0);
0471   c1->SetGrid(1,1);
0472   for(int i=0;i<nscenarios;i++){
0473     
0474     sigmadzvseta[i]->SetTitle("Dz resolution vs #eta for SAMPLE events");
0475     sigmadzvseta[i]->SetMarkerStyle(20+i);
0476     sigmadzvseta[i]->SetMarkerColor(2+i);
0477     sigmadzvseta[i]->SetMarkerSize(0.9);
0478     sigmadzvseta[i]->SetLineColor(1);
0479     sigmadzvseta[i]->SetLineWidth(1);
0480   }  
0481 
0482 
0483   TLegend *leg1 = new TLegend(0.2,0.1,0.45,0.35);
0484   leg1->SetTextAlign(32);
0485   leg1->SetTextColor(1);
0486   leg1->SetTextSize(0.04);
0487 
0488   for(int i=0;i<nscenarios;i++){
0489     sigmadzvseta[i]->SetXTitle("#eta");
0490     sigmadzvseta[i]->SetYTitle("dz resolution");
0491     sigmadzvseta[i]->SetAxisRange(0.0005,0.5,"Y");
0492     if(i==0)sigmadzvseta[i]->Draw();
0493     else sigmadzvseta[i]->Draw("same");
0494     leg1->AddEntry(sigmadzvseta[i],((TObjString *)(samplelist->At(i)))->GetString(),"P");
0495   }
0496 
0497   leg1->Draw();
0498   c1->SetLogy();
0499   
0500   c1->Update();
0501   c1->SaveAs("Dz_res_eta_SAMPLE.eps");
0502   c1->SaveAs("Dz_res_eta_SAMPLE.gif");
0503   c1->WaitPrimitive();
0504 
0505   delete c1;
0506   delete leg1;
0507 
0508   //&&&&&&&&&&&&&&&&&&
0509   // dz res vs pt
0510   //&&&&&&&&&&&&&&&&&&
0511   TCanvas *c1 = new TCanvas("c1", "c1",129,17,926,703);
0512   // c1->SetBorderSize(2);
0513   // c1->SetFrameFillColor(0);
0514   // c1->SetFillColor(0);
0515   c1->SetGrid(1,1);
0516   for(int i=0;i<nscenarios;i++){
0517     
0518     sigmadzvspt[i]->SetTitle("Dz resolution vs Pt for SAMPLE events");
0519     sigmadzvspt[i]->SetMarkerStyle(20+i);
0520     sigmadzvspt[i]->SetMarkerColor(2+i);
0521     sigmadzvspt[i]->SetMarkerSize(0.9);
0522     sigmadzvspt[i]->SetLineColor(1);
0523     sigmadzvspt[i]->SetLineWidth(1);
0524   }  
0525 
0526 
0527   TLegend *leg1 = new TLegend(0.2,0.1,0.45,0.35);
0528   leg1->SetTextAlign(32);
0529   leg1->SetTextColor(1);
0530   leg1->SetTextSize(0.04);
0531 
0532   for(int i=0;i<nscenarios;i++){
0533     sigmadzvspt[i]->SetXTitle("Pt");
0534     sigmadzvspt[i]->SetYTitle("dz resolution");
0535     sigmadzvspt[i]->SetAxisRange(0,30.,"X");
0536     sigmadzvspt[i]->SetAxisRange(0.0005,0.5,"Y");
0537     if(i==0)sigmadzvspt[i]->Draw();
0538     else sigmadzvspt[i]->Draw("same");
0539     leg1->AddEntry(sigmadzvspt[i],((TObjString *)(samplelist->At(i)))->GetString(),"P");
0540   }
0541 
0542   leg1->Draw();
0543   c1->SetLogy();
0544   
0545   c1->Update();
0546   c1->SaveAs("Dz_res_Pt_SAMPLE.eps");
0547   c1->SaveAs("Dz_res_Pt_SAMPLE.gif");
0548   c1->WaitPrimitive();
0549 
0550   delete c1;
0551   delete leg1;
0552 
0553 // //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
0554 // pull dz
0555 // //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
0556   TCanvas *c1 = new TCanvas("c1", "c1",129,17,926,703);
0557   // c1->SetBorderSize(2);
0558   // c1->SetFrameFillColor(0);
0559   // c1->SetFillColor(0);
0560   c1->SetGrid(1,1);
0561   for(int i=0;i<nscenarios;i++){
0562     
0563     pullDz[i]->SetTitle("Pull dz for SAMPLE events");
0564     pullDz[i]->SetMarkerStyle(20+i);
0565     pullDz[i]->SetMarkerColor(2+i);
0566     pullDz[i]->SetMarkerSize(0.9);
0567     pullDz[i]->SetLineColor(2+i);
0568     pullDz[i]->SetLineWidth(1);
0569   }  
0570 
0571   TLegend *leg1 = new TLegend(0.1,0.6,0.35,0.85);
0572   leg1->SetTextAlign(32);
0573   leg1->SetTextColor(1);
0574   leg1->SetTextSize(0.04);
0575 
0576   for(int i=0;i<nscenarios;i++){
0577     pullDz[i]->SetXTitle("Pulldz");
0578     //    pullDz[i]->SetAxisRange(-0.005,1.,"Y");
0579     if(i==0)pullDz[i]->Draw();
0580     else pullDz[i]->Draw("same");
0581     leg1->AddEntry(pullDz[i],((TObjString *)(samplelist->At(i)))->GetString(),"l");
0582   }
0583 
0584   leg1->Draw();
0585   c1->SetLogy();
0586   
0587   c1->Update();
0588   c1->SaveAs("Pulldz_SAMPLE.eps");
0589   c1->SaveAs("Pulldz_SAMPLE.gif");
0590   c1->WaitPrimitive();
0591 
0592   delete c1;
0593   delete leg1;
0594 
0595   //&&&&&&&&&&&&&&&&&&&&&&&
0596   // pt res vs eta
0597   //%%%%%%%%%%%%%%%%%%%%%%%
0598   TCanvas *c1 = new TCanvas("c1", "c1",129,17,926,703);
0599   // c1->SetBorderSize(2);
0600   // c1->SetFrameFillColor(0);
0601   // c1->SetFillColor(0);
0602   c1->SetGrid(1,1);
0603   for(int i=0;i<nscenarios;i++){
0604     
0605     sigmaptvseta[i]->SetTitle("Pt resolution vs #eta for SAMPLE events");
0606     sigmaptvseta[i]->SetMarkerStyle(20+i);
0607     sigmaptvseta[i]->SetMarkerColor(2+i);
0608     sigmaptvseta[i]->SetMarkerSize(0.9);
0609     sigmaptvseta[i]->SetLineColor(1);
0610     sigmaptvseta[i]->SetLineWidth(1);
0611   }  
0612 
0613 
0614   TLegend *leg1 = new TLegend(0.2,0.1,0.45,0.35);
0615   leg1->SetTextAlign(32);
0616   leg1->SetTextColor(1);
0617   leg1->SetTextSize(0.04);
0618 
0619   for(int i=0;i<nscenarios;i++){
0620     sigmaptvseta[i]->SetXTitle("#eta");
0621     sigmaptvseta[i]->SetYTitle("pt resolution");
0622     sigmaptvseta[i]->SetAxisRange(0.0005,0.1,"Y");
0623     if(i==0)sigmaptvseta[i]->Draw();
0624     else sigmaptvseta[i]->Draw("same");
0625     leg1->AddEntry(sigmaptvseta[i],((TObjString *)(samplelist->At(i)))->GetString(),"P");
0626   }
0627 
0628   leg1->Draw();
0629   c1->SetLogy();
0630   
0631   c1->Update();
0632   c1->SaveAs("Pt_res_eta_SAMPLE.eps");
0633   c1->SaveAs("Pt_res_eta_SAMPLE.gif");
0634   c1->WaitPrimitive();
0635 
0636   delete c1;
0637   delete leg1;
0638 
0639   //&&&&&&&&&&&&&&&&&&
0640   // pt res vs pt
0641   //&&&&&&&&&&&&&&&&&&
0642   TCanvas *c1 = new TCanvas("c1", "c1",129,17,926,703);
0643   // c1->SetBorderSize(2);
0644   // c1->SetFrameFillColor(0);
0645   // c1->SetFillColor(0);
0646   c1->SetGrid(1,1);
0647   for(int i=0;i<nscenarios;i++){
0648     
0649     sigmaptvspt[i]->SetTitle("Pt resolution vs Pt for SAMPLE events");
0650     sigmaptvspt[i]->SetMarkerStyle(20+i);
0651     sigmaptvspt[i]->SetMarkerColor(2+i);
0652     sigmaptvspt[i]->SetMarkerSize(0.9);
0653     sigmaptvspt[i]->SetLineColor(1);
0654     sigmaptvspt[i]->SetLineWidth(1);
0655   }  
0656 
0657 
0658   TLegend *leg1 = new TLegend(0.2,0.1,0.45,0.35);
0659   leg1->SetTextAlign(32);
0660   leg1->SetTextColor(1);
0661   leg1->SetTextSize(0.04);
0662 
0663   for(int i=0;i<nscenarios;i++){
0664     sigmaptvspt[i]->SetXTitle("Pt");
0665     sigmaptvspt[i]->SetYTitle("pt resolution");
0666     sigmaptvspt[i]->SetAxisRange(0.,30.,"X");
0667     sigmaptvspt[i]->SetAxisRange(0.0005,0.1,"Y");
0668     if(i==0)sigmaptvspt[i]->Draw();
0669     else sigmaptvspt[i]->Draw("same");
0670     leg1->AddEntry(sigmaptvspt[i],((TObjString *)(samplelist->At(i)))->GetString(),"P");
0671   }
0672 
0673   leg1->Draw();
0674   c1->SetLogy();
0675   
0676   c1->Update();
0677   c1->SaveAs("Pt_res_Pt_SAMPLE.eps");
0678   c1->SaveAs("Pt_res_Pt_SAMPLE.gif");
0679   c1->WaitPrimitive();
0680 
0681   delete c1;
0682   delete leg1;
0683 
0684 // //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
0685 // pull pt
0686 // //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
0687   TCanvas *c1 = new TCanvas("c1", "c1",129,17,926,703);
0688   // c1->SetBorderSize(2);
0689   // c1->SetFrameFillColor(0);
0690   // c1->SetFillColor(0);
0691   c1->SetGrid(1,1);
0692   for(int i=0;i<nscenarios;i++){
0693     
0694     pullPt[i]->SetTitle("Pull pt for SAMPLE events");
0695     pullPt[i]->SetMarkerStyle(20+i);
0696     pullPt[i]->SetMarkerColor(2+i);
0697     pullPt[i]->SetMarkerSize(0.9);
0698     pullPt[i]->SetLineColor(2+i);
0699     pullPt[i]->SetLineWidth(1);
0700   }  
0701 
0702   TLegend *leg1 = new TLegend(0.1,0.6,0.35,0.85);
0703   leg1->SetTextAlign(32);
0704   leg1->SetTextColor(1);
0705   leg1->SetTextSize(0.04);
0706 
0707   for(int i=0;i<nscenarios;i++){
0708     pullPt[i]->SetXTitle("Pullpt");
0709     //    pullPt[i]->SetAxisRange(-0.005,1.,"Y");
0710     if(i==0)pullPt[i]->Draw();
0711     else pullPt[i]->Draw("same");
0712     leg1->AddEntry(pullPt[i],((TObjString *)(samplelist->At(i)))->GetString(),"l");
0713   }
0714 
0715   leg1->Draw();
0716   c1->SetLogy();
0717   
0718   c1->Update();
0719   c1->SaveAs("Pullpt_SAMPLE.eps");
0720   c1->SaveAs("Pullpt_SAMPLE.gif");
0721   c1->WaitPrimitive();
0722 
0723   delete c1;
0724   delete leg1;
0725   delete samplelist;
0726   gROOT->Reset();
0727   gROOT->Clear();
0728   
0729 }
0730