27 #if !defined(__CINT__) || defined(__MAKECINT__) 32 #include <Riostream.h> 34 #include <TGraphErrors.h> 36 #include <TFileMerger.h> 37 #include <TMultiGraph.h> 42 #include <TGridCollection.h> 44 #include <TGridResult.h> 45 #include <TClonesArray.h> 46 #include <TObjString.h> 50 #include "AliEMCALGeometry.h" 59 TString trigger=
"default", TFile *f =0x0);
62 TString pass=
"pass1_HLT",
TString trigger=
"default", TFile *f =0x0);
68 if (trigger==
"default") file =
"/scratch/alicehp2/germain/QA/"+period+
"/"+ pass +
"/runlistMB.txt" ;
69 else file =
"/scratch/alicehp2/germain/QA/"+period+
"/"+ pass +
"/runlistEMC.txt" ;
71 pFile = fopen(file.Data(),
"r");
73 cout <<
" fcalo: " << fCalorimeter <<
"; period: " << period <<
"; pass: " << pass <<
" trigger "<<trigger<< endl;
85 ncols = fscanf(pFile,
"%d %d ",&p,&q);
94 const Int_t nRun = nlines ;
96 for(
Int_t i = 0 ; i < nRun ; i++) {
97 base =
"/scratch/alicehp2/germain/QA/";
104 infile = base +
".root" ;
105 TFile *f = TFile::Open(infile);
107 DrawRun(RunId[i],period,pass,trigger,f);
115 base =
"/scratch/alicehp2/germain/QA/";
122 infile = base +
".root" ;
123 TFile *f = TFile::Open(infile);
125 DrawRun(run,period,pass,trigger,f);
132 TH2D *hEnergyMap =
new TH2D(
"hEnergyMap",
"",96,-48,48,120,-0,120);
133 TH2D *hOccupancyMap =
new TH2D(
"hOccupancyMap",
"",96,-48,48,120,-0,120);
134 TH2D *hEnergyMapReal =
new TH2D(
"hEnergyMapReal",
"",96,-48,48,120,-0,120);
135 TH2D *hOccupancyMapReal =
new TH2D(
"hOccupancyMapReal",
"",96,-48,48,120,-0,120);
136 hEnergyMapReal->SetXTitle(
"eta (bin)");
137 hEnergyMapReal->SetYTitle(
"phi (bin)");
138 hEnergyMapReal->SetZTitle(
"E(GeV)/event");
139 hEnergyMapReal->GetZaxis()->SetLabelSize(0.02);
140 hOccupancyMapReal->SetXTitle(
"eta (bin)");
141 hOccupancyMapReal->SetZTitle(
"entries/evt");
142 hOccupancyMapReal->GetZaxis()->SetLabelSize(0.02);
143 hOccupancyMapReal->SetXTitle(
"eta (bin)");
144 hEnergyMap->SetXTitle(
"eta (bin)");
145 hEnergyMap->SetYTitle(
"phi (bin)");
146 hOccupancyMap->SetXTitle(
"eta (bin)");
147 hOccupancyMap->SetYTitle(
"phi (bin)");
149 gStyle->SetPalette(1);
150 gStyle->SetOptStat(0);
152 AliEMCALGeometry *geom =
new AliEMCALGeometry(
"EMCAL_COMPLETEv1",
"EMCAL");
153 Int_t nSupMod, nModule, nIphi, nIeta, nModulo, iRCU;
154 Int_t iphi, ieta,jj,kk;
156 Int_t bineta, binphi;
157 Int_t realbineta = -1, realbinphi = -1;
173 Int_t mask[1] = {2222222};
175 TH2F *hCellAmplitude;
179 TString base =
"/scratch/alicehp2/germain/QA/";
192 TDirectoryFile *
dir = (TDirectoryFile *)f->Get(direct);
195 hNEvents =(TH1F *)outputList->FindObject(
"hNEvents");
196 Events = hNEvents->GetEntries();
197 hCellAmplitude =(
TH2F *)outputList->FindObject(
"EMCAL_hAmpId");
203 if ( trigger==
"EMC7") Eth=20.;
206 for(
Int_t i = 0; i < 11520 ; i++)
214 for (
Int_t j = 1; j <= hCellAmplitude->GetNbinsX(); j++)
216 Double_t E = hCellAmplitude->GetXaxis()->GetBinCenter(j);
217 Double_t N = hCellAmplitude->GetBinContent(j, i+1);
219 if (E < 0.07)
continue;
232 if(NsumH > 100) Ratio = Nsum/NsumH ;
236 if(n!=0) {
if(mask[n]<=mask[n-1]) cout<<
"not sorted list !!"<<endl;}
237 if(i==mask[n]){n++ ;
continue; }
243 geom->GetCellIndex(absId, nSupMod, nModule, nIphi, nIeta);
244 geom->GetCellPhiEtaIndexInSModule(nSupMod,nModule,nIphi,nIeta, iphi,ieta);
246 realbinphi = 120-(nSupMod/2)*24 -iphi -1;
249 if (nSupMod%2==0) realbineta= 48-ieta -1;
250 if (nSupMod%2==1) realbineta= -ieta -1;
254 binphi = 96 - (nSupMod/2)*24 +iphi;
255 if (nSupMod%2==1) bineta=ieta;
260 if (nSupMod%2==0) bineta=ieta-48;
262 hEnergyMapReal->Fill(realbineta,realbinphi,Esum/(
Double_t)Events);
263 hOccupancyMapReal->Fill(realbineta,realbinphi,Nsum/(
Double_t)Events);
267 cout<<
"N events : "<<Events<<endl;
269 TString Energy ; Energy = base +
"MapEnergy.pdf";
270 TString Entries ; Entries = base +
"MapEntries.pdf";
271 TCanvas *c1 =
new TCanvas(
"c1",
"energymap",800,800);
275 c1->SetRightMargin(0.14);
278 title +=
" Summed energy map";
279 if(trigger==
"EMC7") title +=
" EMC ";
280 hEnergyMapReal->SetTitle(title);
281 if(trigger==
"EMC7"){
282 hEnergyMapReal->SetMinimum(0.001);
283 hEnergyMapReal->SetMaximum(0.05);
285 hEnergyMapReal->SetMinimum(0.005);
286 hEnergyMapReal->SetMaximum(0.02);
288 hEnergyMapReal->Draw(
"colz");
293 TCanvas *c2 =
new TCanvas(
"c2",
"occupancy",800,800);
298 c2->SetRightMargin(0.14);
301 title2 +=
" Occupancy map";
302 if(trigger==
"EMC7") title2 +=
" EMC ";
304 hOccupancyMapReal->SetTitle(title2);
306 if(trigger==
"EMC7"){
307 hOccupancyMapReal->SetMinimum(0.01);
308 hOccupancyMapReal->SetMaximum(0.5);}
310 hOccupancyMapReal->SetMinimum(0.01);
311 hOccupancyMapReal->SetMaximum(0.1);
313 hOccupancyMapReal->Draw(
"colz");
321 gStyle->SetPalette(1);
322 TString base =
"/scratch/alicehp2/germain/QA/";
338 TDirectoryFile *
dir = (TDirectoryFile *)f->Get(direct);
342 if (trigger ==
"EMC7"){ sprintf(legend,
"Run %i EMC ",run);}
343 else sprintf(legend,
"Run %i ",run);
347 TH2F * hClusterTimeEnergy =(
TH2F *)outputList->FindObject(
"EMCAL_hClusterTimeEnergy");
349 TString title3 =
" Time Vs Energy";
351 hClusterTimeEnergy->SetStats(kFALSE);
352 hClusterTimeEnergy->SetTitle(title3);
354 TH2F * hClusterVsTrack =(
TH2F *)outputList->FindObject(
"EMCAL_hCaloTrackMNClusters");
355 hClusterVsTrack->SetStats(kFALSE);
356 title3 =
" N cluster Vs N track";
358 hClusterVsTrack->SetTitle(title3);
361 TH2F * hClusterEVsTrack =(
TH2F *)outputList->FindObject(
"EMCAL_hCaloTrackMEClusters");
362 hClusterEVsTrack->SetStats(kFALSE);
363 hClusterEVsTrack->SetTitle(legend);
364 title3 =
" Sum E cluster Vs N track";
366 hClusterEVsTrack->SetTitle(title3);
369 TH2F * hClusterEVsV0S =(
TH2F *)outputList->FindObject(
"EMCAL_hCaloV0SEClusters");
370 hClusterEVsV0S->SetStats(kFALSE);
371 title3 =
" Sum E cluster Vs V0 signal";
373 hClusterEVsV0S->SetTitle(title3);
376 TH2F * hNCellsPerClusterMod0 =(
TH2F *)outputList->FindObject(
"EMCAL_hNCellsPerCluster_Mod0");
377 hNCellsPerClusterMod0->SetStats(kFALSE);
379 if(trigger==
"EMC7"){sprintf(legend2,
"Run %i EMC Mod 0",run);}
380 else {sprintf(legend2,
"Run %i Mod 0",run);}
383 hNCellsPerClusterMod0->SetTitle(legend2);
385 TH2F * hNCellsPerClusterMod1 =(
TH2F *)outputList->FindObject(
"EMCAL_hNCellsPerCluster_Mod1");
386 hNCellsPerClusterMod1->SetStats(kFALSE);
387 if(trigger==
"EMC7"){sprintf(legend2,
"Run %i EMC Mod 1",run);}
388 else {sprintf(legend2,
"Run %i Mod 1",run);}
391 hNCellsPerClusterMod1->SetTitle(legend2);
393 TH2F * hNCellsPerClusterMod2 =(
TH2F *)outputList->FindObject(
"EMCAL_hNCellsPerCluster_Mod2");
394 hNCellsPerClusterMod2->SetStats(kFALSE);
395 if(trigger==
"EMC7"){sprintf(legend2,
"Run %i EMC Mod 2",run);}
396 else {sprintf(legend2,
"Run %i Mod 2",run);}
398 hNCellsPerClusterMod2->SetTitle(legend2);
400 TH2F * hNCellsPerClusterMod3 =(
TH2F *)outputList->FindObject(
"EMCAL_hNCellsPerCluster_Mod3");
401 hNCellsPerClusterMod3->SetStats(kFALSE);
402 if(trigger==
"EMC7"){sprintf(legend2,
"Run %i EMC Mod 3",run);}
403 else {sprintf(legend2,
"Run %i Mod 3",run);}
405 hNCellsPerClusterMod3->SetTitle(legend2);
408 TH2F * hNCellsPerClusterMod4 =(
TH2F *)outputList->FindObject(
"EMCAL_hNCellsPerCluster_Mod4");
409 hNCellsPerClusterMod4->SetStats(kFALSE);
410 if(trigger==
"EMC7"){sprintf(legend2,
"Run %i EMC Mod 4",run);}
411 else {sprintf(legend2,
"Run %i Mod 4",run);}
413 hNCellsPerClusterMod4->SetTitle(legend2);
415 TH2F * hNCellsPerClusterMod5 =(
TH2F *)outputList->FindObject(
"EMCAL_hNCellsPerCluster_Mod5");
416 hNCellsPerClusterMod5->SetStats(kFALSE);
417 if(trigger==
"EMC7"){sprintf(legend2,
"Run %i EMC Mod 5",run);}
418 else {sprintf(legend2,
"Run %i Mod 5",run);}
419 hNCellsPerClusterMod5->SetTitle(legend2);
421 TH2F * hNCellsPerClusterMod6 =(
TH2F *)outputList->FindObject(
"EMCAL_hNCellsPerCluster_Mod6");
422 hNCellsPerClusterMod6->SetStats(kFALSE);
423 if(trigger==
"EMC7"){sprintf(legend2,
"Run %i EMC Mod 6",run);}
424 else {sprintf(legend2,
"Run %i Mod 6",run);}
425 hNCellsPerClusterMod6->SetTitle(legend2);
427 TH2F * hNCellsPerClusterMod7 =(
TH2F *)outputList->FindObject(
"EMCAL_hNCellsPerCluster_Mod7");
428 hNCellsPerClusterMod7->SetStats(kFALSE);
429 if(trigger==
"EMC7"){sprintf(legend2,
"Run %i EMC Mod 7",run);}
430 else {sprintf(legend2,
"Run %i Mod 7",run);}
431 hNCellsPerClusterMod7->SetTitle(legend2);
433 TH2F * hNCellsPerClusterMod8 =(
TH2F *)outputList->FindObject(
"EMCAL_hNCellsPerCluster_Mod8");
434 hNCellsPerClusterMod8->SetStats(kFALSE);
435 if(trigger==
"EMC7"){sprintf(legend2,
"Run %i EMC Mod 8",run);}
436 else {sprintf(legend2,
"Run %i Mod 8",run);}
437 hNCellsPerClusterMod8->SetTitle(legend2);
439 TH2F * hNCellsPerClusterMod9 =(
TH2F *)outputList->FindObject(
"EMCAL_hNCellsPerCluster_Mod9");
440 hNCellsPerClusterMod9->SetStats(kFALSE);
441 if(trigger==
"EMC7"){sprintf(legend2,
"Run %i EMC Mod 9",run);}
442 else {sprintf(legend2,
"Run %i Mod 9",run);}
443 hNCellsPerClusterMod9->SetTitle(legend2);
445 TCanvas * c31 =
new TCanvas(
"Time Vs E ",
"Time Vs E", 600, 600);
447 c31->SetFillColor(0);
448 c31->SetBorderSize(0);
449 c31->SetFrameBorderMode(0);
451 hClusterTimeEnergy->SetYTitle(
"EMCAL ToF(ns)");
452 hClusterTimeEnergy->GetYaxis()->SetTitleOffset(1.2);
453 hClusterTimeEnergy->GetYaxis()->SetLabelSize(0.03);
455 hClusterTimeEnergy->GetZaxis()->SetLabelSize(0.02);
456 hClusterTimeEnergy->GetZaxis()->SetTitleSize(0.03);
457 hClusterTimeEnergy->GetZaxis()->SetTitleOffset(0.03);
458 hClusterTimeEnergy->SetAxisRange(0.,50.);
459 hClusterTimeEnergy->Draw(
"colz");
462 outfilename = base +
"TimeRun.pdf" ;
463 outfilename2 = base +
"TimeRun.gif" ;
465 c31->SaveAs(outfilename);
466 c31->SaveAs(outfilename2);
469 TCanvas * c32 =
new TCanvas(
" Cluster Vs Track ",
"Cluster vs Track", 600, 600);
471 c32->SetFillColor(0);
472 c32->SetBorderSize(0);
473 c32->SetFrameBorderMode(0);
477 hClusterVsTrack->GetYaxis()->SetTitleOffset(1.2);
478 hClusterVsTrack->GetYaxis()->SetLabelSize(0.03);
480 hClusterVsTrack->GetZaxis()->SetLabelSize(0.02);
481 hClusterVsTrack->GetZaxis()->SetTitleSize(0.03);
482 hClusterVsTrack->GetZaxis()->SetTitleOffset(0.03);
483 hClusterVsTrack->SetAxisRange(0.,1200.);
484 hClusterVsTrack->Draw(
"colz");
487 outfilename = base +
"CaloTrackMult.pdf";
489 outfilename2 = base +
"CaloTrackMult.gif";
491 c32->SaveAs(outfilename);
493 c32->SaveAs(outfilename2);
496 TCanvas * c33 =
new TCanvas(
" Cluster E Vs Track ",
"Cluster E vs Track", 600, 600);
498 c33->SetFillColor(0);
499 c33->SetBorderSize(0);
500 c33->SetFrameBorderMode(0);
503 hClusterEVsTrack->GetYaxis()->SetTitleOffset(1.2);
504 hClusterEVsTrack->GetYaxis()->SetLabelSize(0.03);
506 hClusterEVsTrack->GetZaxis()->SetLabelSize(0.02);
507 hClusterEVsTrack->GetZaxis()->SetTitleSize(0.03);
508 hClusterEVsTrack->GetZaxis()->SetTitleOffset(0.03);
509 hClusterEVsTrack->SetAxisRange(0.,1200.);
510 hClusterEVsTrack->Draw(
"colz");
513 outfilename = base +
"CaloETrackMult.pdf";
514 outfilename2 = base +
"CaloETrackMult.gif";
516 c33->SaveAs(outfilename);
518 c33->SaveAs(outfilename2);
520 TCanvas * c34 =
new TCanvas(
" Cluster E Vs V0 ",
"Cluster E vs V0", 600, 600);
522 c34->SetFillColor(0);
523 c34->SetBorderSize(0);
524 c34->SetFrameBorderMode(0);
528 hClusterEVsV0S->GetYaxis()->SetTitleOffset(1.2);
529 hClusterEVsV0S->GetYaxis()->SetLabelSize(0.03);
531 hClusterEVsV0S->GetZaxis()->SetLabelSize(0.02);
532 hClusterEVsV0S->GetZaxis()->SetTitleSize(0.03);
533 hClusterEVsV0S->GetZaxis()->SetTitleOffset(0.03);
534 hClusterEVsV0S->GetYaxis()->SetRangeUser(0.,50.);
535 hClusterEVsV0S->Draw(
"colz");
539 outfilename = base +
"CaloEVsV0s.pdf";
540 outfilename2 = base +
"CaloEVsV0s.gif";
542 c34->SaveAs(outfilename);
543 c34->SaveAs(outfilename2);
549 TCanvas * c35 =
new TCanvas(
" Cells per Cluster 0 ",
"Cells per Cluster 0", 1000, 1200);
551 c35->SetFillColor(0);
552 c35->SetBorderSize(0);
553 c35->SetFrameBorderMode(0);
559 hNCellsPerClusterMod0->GetYaxis()->SetTitleOffset(1.2);
560 hNCellsPerClusterMod0->GetYaxis()->SetLabelSize(0.03);
562 hNCellsPerClusterMod0->GetZaxis()->SetLabelSize(0.05);
563 hNCellsPerClusterMod0->GetZaxis()->SetTitleSize(0.4);
564 hNCellsPerClusterMod0->GetZaxis()->SetTitleOffset(0.03);
565 hNCellsPerClusterMod0->GetYaxis()->SetRangeUser(0.,30.);
566 hNCellsPerClusterMod0->GetXaxis()->SetRangeUser(0.,20.);
567 hNCellsPerClusterMod0->Draw(
"colz");
571 hNCellsPerClusterMod1->GetYaxis()->SetTitleOffset(1.2);
572 hNCellsPerClusterMod1->GetYaxis()->SetLabelSize(0.03);
574 hNCellsPerClusterMod1->GetZaxis()->SetLabelSize(0.05);
575 hNCellsPerClusterMod1->GetZaxis()->SetTitleSize(0.2);
576 hNCellsPerClusterMod1->GetZaxis()->SetTitleOffset(0.03);
577 hNCellsPerClusterMod1->GetYaxis()->SetRangeUser(0.,30.);
578 hNCellsPerClusterMod1->GetXaxis()->SetRangeUser(0.,20.);
579 hNCellsPerClusterMod1->Draw(
"colz");
584 hNCellsPerClusterMod2->GetYaxis()->SetTitleOffset(1.2);
585 hNCellsPerClusterMod2->GetYaxis()->SetLabelSize(0.03);
587 hNCellsPerClusterMod2->GetZaxis()->SetLabelSize(0.05);
588 hNCellsPerClusterMod2->GetZaxis()->SetTitleSize(0.04);
589 hNCellsPerClusterMod2->GetZaxis()->SetTitleOffset(0.03);
590 hNCellsPerClusterMod2->GetYaxis()->SetRangeUser(0.,30.);
591 hNCellsPerClusterMod2->GetXaxis()->SetRangeUser(0.,20.);
592 hNCellsPerClusterMod2->Draw(
"colz");
596 hNCellsPerClusterMod3->GetYaxis()->SetTitleOffset(1.2);
597 hNCellsPerClusterMod3->GetYaxis()->SetLabelSize(0.03);
598 hNCellsPerClusterMod3->GetZaxis()->SetLabelSize(0.05);
599 hNCellsPerClusterMod3->GetZaxis()->SetTitleSize(0.04);
600 hNCellsPerClusterMod3->GetZaxis()->SetTitleOffset(0.03);
601 hNCellsPerClusterMod3->GetYaxis()->SetRangeUser(0.,30.);
602 hNCellsPerClusterMod3->GetXaxis()->SetRangeUser(0.,20.);
603 hNCellsPerClusterMod3->Draw(
"colz");
608 hNCellsPerClusterMod4->GetYaxis()->SetTitleOffset(1.2);
609 hNCellsPerClusterMod4->GetYaxis()->SetLabelSize(0.03);
610 hNCellsPerClusterMod4->GetZaxis()->SetLabelSize(0.05);
611 hNCellsPerClusterMod4->GetZaxis()->SetTitleSize(0.04);
612 hNCellsPerClusterMod4->GetZaxis()->SetTitleOffset(0.03);
613 hNCellsPerClusterMod4->GetYaxis()->SetRangeUser(0.,30.);
614 hNCellsPerClusterMod4->GetXaxis()->SetRangeUser(0.,20.);
615 hNCellsPerClusterMod4->Draw(
"colz");
622 hNCellsPerClusterMod5->GetYaxis()->SetTitleOffset(1.2);
623 hNCellsPerClusterMod5->GetYaxis()->SetLabelSize(0.03);
624 hNCellsPerClusterMod5->GetZaxis()->SetLabelSize(0.05);
625 hNCellsPerClusterMod5->GetZaxis()->SetTitleSize(0.04);
626 hNCellsPerClusterMod5->GetZaxis()->SetTitleOffset(0.03);
627 hNCellsPerClusterMod5->GetYaxis()->SetRangeUser(0.,30.);
628 hNCellsPerClusterMod5->GetXaxis()->SetRangeUser(0.,20.);
629 hNCellsPerClusterMod5->Draw(
"colz");
635 hNCellsPerClusterMod6->GetYaxis()->SetTitleOffset(1.2);
636 hNCellsPerClusterMod6->GetYaxis()->SetLabelSize(0.03);
637 hNCellsPerClusterMod6->GetZaxis()->SetLabelSize(0.05);
638 hNCellsPerClusterMod6->GetZaxis()->SetTitleSize(0.04);
639 hNCellsPerClusterMod6->GetZaxis()->SetTitleOffset(0.03);
640 hNCellsPerClusterMod6->GetYaxis()->SetRangeUser(0.,30.);
641 hNCellsPerClusterMod6->GetXaxis()->SetRangeUser(0.,20.);
642 hNCellsPerClusterMod6->Draw(
"colz");
647 hNCellsPerClusterMod7->GetYaxis()->SetTitleOffset(1.2);
648 hNCellsPerClusterMod7->GetYaxis()->SetLabelSize(0.03);
649 hNCellsPerClusterMod7->GetZaxis()->SetLabelSize(0.05);
650 hNCellsPerClusterMod7->GetZaxis()->SetTitleSize(0.04);
651 hNCellsPerClusterMod7->GetZaxis()->SetTitleOffset(0.03);
652 hNCellsPerClusterMod7->GetYaxis()->SetRangeUser(0.,30.);
653 hNCellsPerClusterMod7->GetXaxis()->SetRangeUser(0.,20.);
654 hNCellsPerClusterMod7->Draw(
"colz");
660 hNCellsPerClusterMod8->GetYaxis()->SetTitleOffset(1.2);
661 hNCellsPerClusterMod8->GetYaxis()->SetLabelSize(0.03);
662 hNCellsPerClusterMod8->GetZaxis()->SetLabelSize(0.05);
663 hNCellsPerClusterMod8->GetZaxis()->SetTitleSize(0.04);
664 hNCellsPerClusterMod8->GetZaxis()->SetTitleOffset(0.03);
665 hNCellsPerClusterMod8->GetYaxis()->SetRangeUser(0.,30.);
666 hNCellsPerClusterMod8->GetXaxis()->SetRangeUser(0.,20.);
667 hNCellsPerClusterMod8->Draw(
"colz");
672 hNCellsPerClusterMod9->GetYaxis()->SetTitleOffset(1.2);
673 hNCellsPerClusterMod9->GetYaxis()->SetLabelSize(0.03);
674 hNCellsPerClusterMod9->GetZaxis()->SetLabelSize(0.05);
675 hNCellsPerClusterMod9->GetZaxis()->SetTitleSize(0.04);
676 hNCellsPerClusterMod9->GetZaxis()->SetTitleOffset(0.03);
677 hNCellsPerClusterMod9->GetYaxis()->SetRangeUser(0.,30.);
678 hNCellsPerClusterMod9->GetXaxis()->SetRangeUser(0.,20.);
679 hNCellsPerClusterMod9->Draw(
"colz");
681 outfilename = base +
"CellsperCluster.pdf";
682 outfilename2 = base +
"CellsperCluster.gif";
685 c35->SaveAs(outfilename);
686 c35->SaveAs(outfilename2);
void QAplots(TString fCalorimeter="EMCAL", TString period="LHC11h", TString pass="pass1_HLT", TString trigger="default")
void DrawOccupancy(Int_t run, TString period="LHC11h", TString pass="pass1_HLT", TString trigger="default", TFile *f=0x0)
void DrawRun(const Int_t run=167713, TString period="LHC11h", TString pass="pass1_HLT", TString trigger="default", TFile *f=0x0)
TH1 * Ratio(const TH1 *h1, const TH1 *h2)
TFile * file
TList with histograms for a given trigger.