AliPhysics  ec707b8 (ec707b8)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
QAplots.C
Go to the documentation of this file.
1 
24 
25 #if !defined(__CINT__) || defined(__MAKECINT__)
26 #include <TFile.h>
27 #include <TH1F.h>
28 #include <TH2F.h>
29 #include <TH3D.h>
30 #include <Riostream.h>
31 #include <TCanvas.h>
32 #include <TGraphErrors.h>
33 #include <TGrid.h>
34 #include <TFileMerger.h>
35 #include <TMultiGraph.h>
36 #include <TROOT.h>
37 #include <TString.h>
38 #include <TStyle.h>
39 #include <TLegend.h>
40 #include <TGridCollection.h>
41 #include <TROOT.h>
42 #include <TGridResult.h>
43 #include <TClonesArray.h>
44 #include <TObjString.h>
45 #include <stdio.h>
46 #include <fstream>
47 #include <iostream>
48 #include "AliEMCALGeometry.h"
49 #endif
50 using namespace std;
51 
52 void QAplots(TString fCalorimeter = "EMCAL", TString period = "LHC11h", TString pass = "pass1_HLT", TString trigger= "default")
53 {
54  FILE * pFile;
55  TString file = "";
56  if (trigger=="default") file = "/scratch/alicehp2/germain/QA/"+period+"/"+ pass + "/runlistMB.txt" ;
57  else file = "/scratch/alicehp2/germain/QA/"+period+"/"+ pass + "/runlistEMC.txt" ;
58 
59  pFile = fopen(file.Data(), "r"); //open the text file where include the run list and correct run index
60 
61  cout << " fcalo: " << fCalorimeter << "; period: " << period << "; pass: " << pass << " trigger "<<trigger<< endl;
62 
63  Int_t p;
64  Int_t q;
65  Int_t ncols;
66  Int_t nlines = 0 ;
67  Int_t RunId[500] ;
68 
69  Double_t x[500] ;
70  Double_t xrun[500] ;
71 
72  while (1){
73  ncols = fscanf(pFile,"%d %d ",&p,&q);
74  if (ncols< 0) break;
75  x[nlines]=p;
76  RunId[nlines]=q;
77  xrun[nlines]=1.*q;
78  nlines++;
79  }
80  fclose(pFile);
81 
82  const Int_t nRun = nlines ;
83  TString base ;
84  for(Int_t i = 0 ; i < nRun ; i++) {
85  base = "/scratch/alicehp2/germain/QA/";
86  base += period ;
87  base += "/";
88  base += pass ;
89  base += "/";
90  base += RunId[i] ;
91  TString infile ;
92  infile = base + ".root" ;
93  TFile *f = TFile::Open(infile);
94  DrawOccupancy(RunId[i],period,pass,trigger,f);
95  DrawRun(RunId[i],period,pass,trigger,f);
96  f->Close();
97  }
98 }
99 
100 void QAplots(Int_t run, TString period ="LHC11h", TString pass="pass1_HLT", TString trigger= "default")
101 {
102  TString base ;
103  base = "/scratch/alicehp2/germain/QA/";
104  base += period ;
105  base += "/";
106  base += pass ;
107  base += "/";
108  base += run ;
109  TString infile ;
110  infile = base + ".root" ;
111  TFile *f = TFile::Open(infile);
112  DrawOccupancy(run,period,pass,trigger,f);
113  DrawRun(run,period,pass,trigger,f);
114  f->Close();
115 }
116 
117 void DrawOccupancy(Int_t run , TString period ="LHC11h", TString pass="pass1_HLT",
118  TString trigger= "default", TFile *f =0x0)
119 {
120  TH2D *hEnergyMap = new TH2D("hEnergyMap","",96,-48,48,120,-0,120);
121  TH2D *hOccupancyMap = new TH2D("hOccupancyMap","",96,-48,48,120,-0,120);
122  TH2D *hEnergyMapReal = new TH2D("hEnergyMapReal","",96,-48,48,120,-0,120);
123  TH2D *hOccupancyMapReal = new TH2D("hOccupancyMapReal","",96,-48,48,120,-0,120);
124  hEnergyMapReal->SetXTitle("eta (bin)");
125  hEnergyMapReal->SetYTitle("phi (bin)");
126  hEnergyMapReal->SetZTitle("E(GeV)/event");
127  hEnergyMapReal->GetZaxis()->SetLabelSize(0.02);
128  hOccupancyMapReal->SetXTitle("eta (bin)");
129  hOccupancyMapReal->SetZTitle("entries/evt");
130  hOccupancyMapReal->GetZaxis()->SetLabelSize(0.02);
131  hOccupancyMapReal->SetXTitle("eta (bin)");
132  hEnergyMap->SetXTitle("eta (bin)");
133  hEnergyMap->SetYTitle("phi (bin)");
134  hOccupancyMap->SetXTitle("eta (bin)");
135  hOccupancyMap->SetYTitle("phi (bin)");
136 
137  gStyle->SetPalette(1);
138  gStyle->SetOptStat(0);
139 
140  AliEMCALGeometry *geom = new AliEMCALGeometry("EMCAL_COMPLETEv1","EMCAL");
141  Int_t nSupMod, nModule, nIphi, nIeta, nModulo, iRCU;
142  Int_t iphi, ieta,jj,kk;
143  Int_t icol, irow;
144  Int_t bineta, binphi;
145  Int_t realbineta, realbinphi;
146  TVector3 vg, gg;
147  Double_t eta, phi, glob[3];
148 
149 
150  //LHC11d
151  //Int_t mask[224] = {74, 147, 152, 189, 191, 198, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 324, 491, 759, 917, 949, 1376, 1386, 1429, 1487, 1490, 1519, 1967, 2014, 2015, 2112, 2114, 2115, 2116, 2118, 2119, 2120, 2123, 2124, 2125, 2158, 2159, 2326, 2332, 2333, 2350, 2351, 2436, 2448, 2506, 2518, 2534, 2540, 2590, 2640, 2793, 2805, 2815, 2828, 2830, 2869, 2878, 2880, 2881, 2891, 2926, 2985, 3022, 3024, 3070, 3135, 3169, 3263, 3503, 4366, 4560, 4623, 6093, 6331, 6481, 7089, 7113, 7190, 7246, 7425, 7495, 7874,8358, 8811, 9024, 9269, 9302, 9387, 9696, 9697, 9698, 9699, 9701, 9702, 9703, 9704, 9705, 9706, 9707, 9710, 9711, 9748, 9792, 9793, 9794, 9795, 9796, 9797, 9798, 9799, 9800, 9801, 9802, 9803, 9804, 9805, 9806, 9807, 9815, 9819, 9824, 9828, 9829, 9830, 9831, 9832, 9834, 9835, 9836, 9837, 9838, 9839, 9850, 9872, 9874, 9875, 9877, 9878, 9879, 9881, 9882, 9883, 9888, 9890, 9891, 9894, 9896, 9897, 9898, 9899, 9902, 9927, 9938, 9939, 9942, 9943, 9945, 9946, 9947, 9948, 9949, 9950, 9951, 10035, 10073, 10084, 10085, 10086, 10090, 10093, 10112, 10113, 10114, 10115, 10116, 10117, 10118, 10119, 10120, 10121, 10122, 10123, 10124, 10125, 10126, 10127, 10718, 10723, 10728, 10771, 10831, 11042, 11043, 11090, 11363, 22222222};
152 
153 
154  //LHC11e
155  //Int_t mask[174] = {74, 152, 167, 191, 759, 1059, 1175, 1204, 1288, 1376, 1382, 1386, 1519, 1967, 1968, 2026, 2047, 2112, 2114, 2115, 2116, 2118, 2119, 2120, 2123, 2124, 2125, 2210, 2339, 2350, 2391, 2506, 2540, 2793, 2828, 2869, 2891, 2985, 3135, 3503, 4377, 4817, 5600, 5601, 5602, 5603, 5612, 5613, 5614, 5615, 5648, 5649, 5650, 5651, 5660, 5661, 5662, 5663, 5836, 6104, 6331, 6481, 7089, 7371, 7375, 7425, 7572, 7874, 8358, 9269, 9302, 9389, 9696, 9697, 9698, 9699, 9700, 9701, 9702, 9703, 9705, 9706, 9707, 9708, 9709, 9710, 9711, 9750, 9758, 9792, 9793, 9794, 9795, 9798, 9800, 9801, 9803, 9804, 9815, 9819, 9824, 9825, 9828, 9829, 9830, 9831, 9832, 9833, 9834, 9835, 9836, 9838, 9872, 9874, 9875, 9878, 9882, 9883, 9889, 9890, 9891, 9892, 9893, 9894, 9896, 9897, 9898, 9899, 9900, 9901, 9902, 9903, 9927, 9936, 9937, 9938, 9939, 9940, 9941, 9942, 9943, 9945, 9947, 9948, 9949, 9950, 9951, 10086, 10112, 10113, 10114, 10115, 10116, 10118, 10119, 10120, 10121, 10122, 10123, 10124, 10125, 10126, 10127, 10134, 10135, 10138, 10143, 10718, 10723, 10771, 11042, 11091, 11363, 2222222};
156 
157  //LHC11f
158  // Int_t mask[134] = {74, 152, 167, 759, 1204, 1267, 1288, 1376, 1382, 1386, 1424, 1519, 1967, 2026, 2047, 2112, 2114, 2115, 2116, 2118, 2119, 2120, 2123, 2124, 2125, 2506, 2540, 2793, 2828, 2869, 2891, 2985, 3135, 3503, 3785, 4817, 6104, 6331, 6481, 7371, 7375, 7425, 7572, 7874, 8218, 8220, 8222, 9269, 9282, 9302, 9455, 9698, 9699, 9700, 9701, 9702, 9703, 9705, 9706, 9707, 9708, 9709, 9710, 9711, 9748, 9758, 9792, 9793, 9794, 9795, 9796, 9797, 9798, 9799, 9800, 9801, 9803, 9804, 9805,9815, 9828, 9829, 9830, 9831, 9832, 9833, 9834, 9835, 9836, 9838, 9850, 9875, 9891, 9898, 9900, 9927, 9936, 9937, 9938, 9939, 9940, 9941, 9942, 9943, 9944, 9945, 9947, 9948, 9949, 9950, 9951, 10112, 10113, 10114, 10115, 10116, 10118, 10119, 10120, 10121, 10122, 10123, 10124, 10125, 10126, 10127, 10138, 10143, 10363, 10718, 10723, 11091, 11363, 2222222};
159 
160  //NO MASK
161  Int_t mask[1] = {2222222};
162 
163  TH2F *hCellAmplitude;
164  TH1F *hNEvents;
165  Int_t Events;
166  Int_t n=0;
167  TString base = "/scratch/alicehp2/germain/QA/";
168  base += period ;
169  base += "/";
170  base += pass ;
171  base += "/";
172  base += run ;
173  base += "/";
174  base += trigger;
175  // TString infile ;
176  //infile = base + ".root" ;
177  //*f = TFile::Open(infile);
178  TString direct = "CaloQA_";
179  direct += trigger;
180  TDirectoryFile *dir = (TDirectoryFile *)f->Get(direct);
181  TList *outputList = (TList*)dir->Get(direct);
182 
183  hNEvents =(TH1F *)outputList->FindObject("hNEvents");
184  Events = hNEvents->GetEntries();
185  hCellAmplitude =(TH2F *)outputList->FindObject("EMCAL_hAmpId");
186  //hCellAmplitude->Draw();
187  //TH2 *hCellAmplitude = (TH2*) gFile->Get("hCellAmplitude");
188  Double_t numb =0 ;
189  Double_t Eth=0;
190  Eth = 5.;
191  if ( trigger=="EMC7") Eth=20.;
192 
193 
194  for(Int_t i = 0; i < 11520 ; i++)
195  {
196  Double_t Esum = 0;
197  Double_t Nsum = 0;
198  Double_t EsumH = 0;
199  Double_t NsumH = 0;
200  Double_t Ratio = 0;
201 
202  for (Int_t j = 1; j <= hCellAmplitude->GetNbinsX(); j++)
203  {
204  Double_t E = hCellAmplitude->GetXaxis()->GetBinCenter(j);
205  Double_t N = hCellAmplitude->GetBinContent(j, i+1);
206 
207  if (E < 0.07) continue;
208  // if (E > 0.07) continue;
209 
210  if (E <= Eth) {
211  Esum += E*N;
212  Nsum += N;
213  }
214  else {
215  EsumH += E*N;
216  NsumH += N;
217  }
218  }
219 
220  if(NsumH > 100) Ratio = Nsum/NsumH ;
221  // if(Nsum > 20000 && Nsum < 22000 ) cout<<" "<<i ;
222 
223  Int_t absId = i;
224  if(n!=0) {if(mask[n]<=mask[n-1]) cout<<"not sorted list !!"<<endl;}
225  if(i==mask[n]){n++ ; continue; }
226  // if(Esum/(Double_t) Events > 0.5) cout<<"BAD : "<<i<<endl;
227 
228  // hBadCellMap->Fill(1)
229 
230 
231  geom->GetCellIndex(absId, nSupMod, nModule, nIphi, nIeta);
232  geom->GetCellPhiEtaIndexInSModule(nSupMod,nModule,nIphi,nIeta, iphi,ieta);
233 
234  realbinphi = 120-(nSupMod/2)*24 -iphi -1;
235 
236 
237  if (nSupMod%2==0) realbineta= 48-ieta -1;
238  if (nSupMod%2==1) realbineta= -ieta -1;
239 
240  // to do as usual (Gustavo) SM0 high left SM9 low right
241 
242  binphi = 96 - (nSupMod/2)*24 +iphi;
243  if (nSupMod%2==1) bineta=ieta;
244  /*
245  Int_t compt; if(i==0) compt = 1;
246  if(ieta==0){ cout<<compt <<endl ; compt ++;}
247  */
248  if (nSupMod%2==0) bineta=ieta-48;
249 
250  hEnergyMapReal->Fill(realbineta,realbinphi,Esum/(Double_t)Events);
251  hOccupancyMapReal->Fill(realbineta,realbinphi,Nsum/(Double_t)Events);
252  // }
253  }
254 
255  cout<<"N events : "<<Events<<endl;
256 
257  TString Energy ; Energy = base + "MapEnergy.pdf";
258  TString Entries ; Entries = base + "MapEntries.pdf";
259  TCanvas *c1 = new TCanvas("c1","energymap",800,800);
260  c1->SetFillColor(0);
261  c1->SetGrid();
262  c1->cd();
263  c1->SetRightMargin(0.14);
264  TString title = "run ";
265  title += run ;
266  title += " Summed energy map";
267  if(trigger=="EMC7") title += " EMC ";
268  hEnergyMapReal->SetTitle(title);
269  if(trigger== "EMC7"){
270  hEnergyMapReal->SetMinimum(0.001); //FOR Esum EMC triggers
271  hEnergyMapReal->SetMaximum(0.05); //FOR Esum
272  }else{
273  hEnergyMapReal->SetMinimum(0.005); //FOR Esum MB
274  hEnergyMapReal->SetMaximum(0.02); //FOR Esum
275  }
276  hEnergyMapReal->Draw("colz");
277 
278  c1->cd();
279  c1->SaveAs(Energy);
280 
281  TCanvas *c2 = new TCanvas("c2","occupancy",800,800);
282  //c2->SetLogz();
283  c2->SetFillColor(0);
284  c2->SetGrid();
285  c2->cd();
286  c2->SetRightMargin(0.14);
287  TString title2 = "run ";
288  title2 += run ;
289  title2 += " Occupancy map";
290  if(trigger=="EMC7") title2 += " EMC ";
291 
292  hOccupancyMapReal->SetTitle(title2);
293  //SCALE USE FOR LHC11h modify fotr pp
294  if(trigger== "EMC7"){
295  hOccupancyMapReal->SetMinimum(0.01); //FOR Nsum
296  hOccupancyMapReal->SetMaximum(0.5);} //FOR Nsum}
297  else{
298  hOccupancyMapReal->SetMinimum(0.01); //FOR Nsum
299  hOccupancyMapReal->SetMaximum(0.1); //FOR Nsum
300  }
301  hOccupancyMapReal->Draw("colz");
302  c2->cd();
303  c2->SaveAs(Entries);
304  c2->SaveAs(Entries2);
305 }
306 
307 void DrawRun(const Int_t run = 167713, TString period ="LHC11h",
308  TString pass="pass1_HLT", TString trigger= "default", TFile *f =0x0)
309 {
310  gStyle->SetPalette(1);
311  TString base = "/scratch/alicehp2/germain/QA/";
312  base += period ;
313  base += "/";
314  base += pass ;
315  base += "/";
316  TString outfilename ;
317  TString outfilename2 ;
318  base += run ;
319  base += "/" ;
320  base += trigger ;
321  char legend [100] ;
322  char legend2 [100] ;
323  TString direct = "CaloQA_";
324  direct += trigger;
325 
326 
327  TDirectoryFile *dir = (TDirectoryFile *)f->Get(direct);
328  TList *outputList = (TList*)dir->Get(direct);
329 
330 
331  if (trigger =="EMC7"){ sprintf(legend,"Run %i EMC ",run);}
332  else sprintf(legend,"Run %i ",run);
333 
334 
335 
336  hClusterTimeEnergy =(TH2F *)outputList->FindObject("EMCAL_hClusterTimeEnergy");
337 
338  TString title3 =" Time Vs Energy";
339  title3 += legend ;
340  hClusterTimeEnergy->SetStats(kFALSE);
341  hClusterTimeEnergy->SetTitle(title3);
342 
343  hClusterVsTrack =(TH2F *)outputList->FindObject("EMCAL_hCaloTrackMNClusters");
344  hClusterVsTrack->SetStats(kFALSE);
345  TString title3 =" N cluster Vs N track";
346  title3 += legend ;
347  hClusterVsTrack->SetTitle(title3);
348 
349 
350  hClusterEVsTrack =(TH2F *)outputList->FindObject("EMCAL_hCaloTrackMEClusters");
351  hClusterEVsTrack->SetStats(kFALSE);
352  hClusterEVsTrack->SetTitle(legend);
353  TString title3 =" Sum E cluster Vs N track";
354  title3 += legend ;
355  hClusterEVsTrack->SetTitle(title3);
356 
357 
358  hClusterEVsV0S =(TH2F *)outputList->FindObject("EMCAL_hCaloV0SEClusters");
359  hClusterEVsV0S->SetStats(kFALSE);
360  TString title3 =" Sum E cluster Vs V0 signal";
361  title3 += legend ;
362  hClusterEVsV0S->SetTitle(title3);
363 
364 
365  hNCellsPerClusterMod0 =(TH2F *)outputList->FindObject("EMCAL_hNCellsPerCluster_Mod0");
366  hNCellsPerClusterMod0->SetStats(kFALSE);
367 
368  if(trigger=="EMC7"){sprintf(legend2,"Run %i EMC Mod 0",run);}
369  else {sprintf(legend2,"Run %i Mod 0",run);}
370 
371 
372  hNCellsPerClusterMod0->SetTitle(legend2);
373 
374  hNCellsPerClusterMod1 =(TH2F *)outputList->FindObject("EMCAL_hNCellsPerCluster_Mod1");
375  hNCellsPerClusterMod1->SetStats(kFALSE);
376  if(trigger=="EMC7"){sprintf(legend2,"Run %i EMC Mod 1",run);}
377  else {sprintf(legend2,"Run %i Mod 1",run);}
378 
379 
380  hNCellsPerClusterMod1->SetTitle(legend2);
381 
382  hNCellsPerClusterMod2 =(TH2F *)outputList->FindObject("EMCAL_hNCellsPerCluster_Mod2");
383  hNCellsPerClusterMod2->SetStats(kFALSE);
384  if(trigger=="EMC7"){sprintf(legend2,"Run %i EMC Mod 2",run);}
385  else {sprintf(legend2,"Run %i Mod 2",run);}
386 
387  hNCellsPerClusterMod2->SetTitle(legend2);
388 
389  hNCellsPerClusterMod3 =(TH2F *)outputList->FindObject("EMCAL_hNCellsPerCluster_Mod3");
390  hNCellsPerClusterMod3->SetStats(kFALSE);
391  if(trigger=="EMC7"){sprintf(legend2,"Run %i EMC Mod 3",run);}
392  else {sprintf(legend2,"Run %i Mod 3",run);}
393 
394  hNCellsPerClusterMod3->SetTitle(legend2);
395 
396 
397  hNCellsPerClusterMod4 =(TH2F *)outputList->FindObject("EMCAL_hNCellsPerCluster_Mod4");
398  hNCellsPerClusterMod4->SetStats(kFALSE);
399  if(trigger=="EMC7"){sprintf(legend2,"Run %i EMC Mod 4",run);}
400  else {sprintf(legend2,"Run %i Mod 4",run);}
401 
402  hNCellsPerClusterMod4->SetTitle(legend2);
403 
404  hNCellsPerClusterMod5 =(TH2F *)outputList->FindObject("EMCAL_hNCellsPerCluster_Mod5");
405  hNCellsPerClusterMod5->SetStats(kFALSE);
406  if(trigger=="EMC7"){sprintf(legend2,"Run %i EMC Mod 5",run);}
407  else {sprintf(legend2,"Run %i Mod 5",run);}
408  hNCellsPerClusterMod5->SetTitle(legend2);
409 
410  hNCellsPerClusterMod6 =(TH2F *)outputList->FindObject("EMCAL_hNCellsPerCluster_Mod6");
411  hNCellsPerClusterMod6->SetStats(kFALSE);
412  if(trigger=="EMC7"){sprintf(legend2,"Run %i EMC Mod 6",run);}
413  else {sprintf(legend2,"Run %i Mod 6",run);}
414  hNCellsPerClusterMod6->SetTitle(legend2);
415 
416  hNCellsPerClusterMod7 =(TH2F *)outputList->FindObject("EMCAL_hNCellsPerCluster_Mod7");
417  hNCellsPerClusterMod7->SetStats(kFALSE);
418  if(trigger=="EMC7"){sprintf(legend2,"Run %i EMC Mod 7",run);}
419  else {sprintf(legend2,"Run %i Mod 7",run);}
420  hNCellsPerClusterMod7->SetTitle(legend2);
421 
422  hNCellsPerClusterMod8 =(TH2F *)outputList->FindObject("EMCAL_hNCellsPerCluster_Mod8");
423  hNCellsPerClusterMod8->SetStats(kFALSE);
424  if(trigger=="EMC7"){sprintf(legend2,"Run %i EMC Mod 8",run);}
425  else {sprintf(legend2,"Run %i Mod 8",run);}
426  hNCellsPerClusterMod8->SetTitle(legend2);
427 
428  hNCellsPerClusterMod9 =(TH2F *)outputList->FindObject("EMCAL_hNCellsPerCluster_Mod9");
429  hNCellsPerClusterMod9->SetStats(kFALSE);
430  if(trigger=="EMC7"){sprintf(legend2,"Run %i EMC Mod 9",run);}
431  else {sprintf(legend2,"Run %i Mod 9",run);}
432  hNCellsPerClusterMod9->SetTitle(legend2);
433 
434  TCanvas * c31 = new TCanvas("Time Vs E ", "Time Vs E", 600, 600);
435  c31->SetLogz();
436  c31->SetFillColor(0);
437  c31->SetBorderSize(0);
438  c31->SetFrameBorderMode(0);
439  // c31->SetOptStat(0);
440  hClusterTimeEnergy->SetYTitle("EMCAL ToF(ns)");
441  hClusterTimeEnergy->GetYaxis()->SetTitleOffset(1.2);
442  hClusterTimeEnergy->GetYaxis()->SetLabelSize(0.03);
443 
444  hClusterTimeEnergy->GetZaxis()->SetLabelSize(0.02);
445  hClusterTimeEnergy->GetZaxis()->SetTitleSize(0.03);
446  hClusterTimeEnergy->GetZaxis()->SetTitleOffset(0.03);
447  hClusterTimeEnergy->SetAxisRange(0.,50.);
448  hClusterTimeEnergy->Draw("colz");
449  c31->cd();
450 
451  outfilename = base + "TimeRun.pdf" ;
452  outfilename2 = base + "TimeRun.gif" ;
453 
454  c31->SaveAs(outfilename);
455  c31->SaveAs(outfilename2);
456 
457 
458  TCanvas * c32 = new TCanvas(" Cluster Vs Track ","Cluster vs Track", 600, 600);
459  c32->SetLogz();
460  c32->SetFillColor(0);
461  c32->SetBorderSize(0);
462  c32->SetFrameBorderMode(0);
463  // c31->SetOptStat(0);
464 
465 
466  hClusterVsTrack->GetYaxis()->SetTitleOffset(1.2);
467  hClusterVsTrack->GetYaxis()->SetLabelSize(0.03);
468 
469  hClusterVsTrack->GetZaxis()->SetLabelSize(0.02);
470  hClusterVsTrack->GetZaxis()->SetTitleSize(0.03);
471  hClusterVsTrack->GetZaxis()->SetTitleOffset(0.03);
472  hClusterVsTrack->SetAxisRange(0.,1200.);
473  hClusterVsTrack->Draw("colz");
474  c32->cd();
475 
476  outfilename = base + "CaloTrackMult.pdf";
477 
478  outfilename2 = base + "CaloTrackMult.gif";
479 
480  c32->SaveAs(outfilename);
481 
482  c32->SaveAs(outfilename2);
483 
484 
485  TCanvas * c33 = new TCanvas(" Cluster E Vs Track ","Cluster E vs Track", 600, 600);
486  c33->SetLogz();
487  c33->SetFillColor(0);
488  c33->SetBorderSize(0);
489  c33->SetFrameBorderMode(0);
490  // c31->SetOptStat(0);
491 
492  hClusterEVsTrack->GetYaxis()->SetTitleOffset(1.2);
493  hClusterEVsTrack->GetYaxis()->SetLabelSize(0.03);
494 
495  hClusterEVsTrack->GetZaxis()->SetLabelSize(0.02);
496  hClusterEVsTrack->GetZaxis()->SetTitleSize(0.03);
497  hClusterEVsTrack->GetZaxis()->SetTitleOffset(0.03);
498  hClusterEVsTrack->SetAxisRange(0.,1200.);
499  hClusterEVsTrack->Draw("colz");
500  c33->cd();
501 
502  outfilename = base + "CaloETrackMult.pdf";
503  outfilename2 = base + "CaloETrackMult.gif";
504 
505  c33->SaveAs(outfilename);
506 
507  c33->SaveAs(outfilename2);
508 
509  TCanvas * c34 = new TCanvas(" Cluster E Vs V0 ","Cluster E vs V0", 600, 600);
510  c34->SetLogz();
511  c34->SetFillColor(0);
512  c34->SetBorderSize(0);
513  c34->SetFrameBorderMode(0);
514  // c31->SetOptStat(0);
515 
516 
517  hClusterEVsV0S->GetYaxis()->SetTitleOffset(1.2);
518  hClusterEVsV0S->GetYaxis()->SetLabelSize(0.03);
519 
520  hClusterEVsV0S->GetZaxis()->SetLabelSize(0.02);
521  hClusterEVsV0S->GetZaxis()->SetTitleSize(0.03);
522  hClusterEVsV0S->GetZaxis()->SetTitleOffset(0.03);
523  hClusterEVsV0S->GetYaxis()->SetRangeUser(0.,50.);
524  hClusterEVsV0S->Draw("colz");
525  c34->cd();
526 
527 
528  outfilename = base + "CaloEVsV0s.pdf";
529  outfilename2 = base + "CaloEVsV0s.gif";
530 
531  c34->SaveAs(outfilename);
532  c34->SaveAs(outfilename2);
533 
534 
535 
536 
537 
538  TCanvas * c35 = new TCanvas(" Cells per Cluster 0 ","Cells per Cluster 0", 1000, 1200);
539  c35->SetLogz();
540  c35->SetFillColor(0);
541  c35->SetBorderSize(0);
542  c35->SetFrameBorderMode(0);
543  // c31->SetOptStat(0);
544  c35->Divide(3,4);
545 
546  c35->cd(1);
547  gPad->SetLogz();
548  hNCellsPerClusterMod0->GetYaxis()->SetTitleOffset(1.2);
549  hNCellsPerClusterMod0->GetYaxis()->SetLabelSize(0.03);
550 
551  hNCellsPerClusterMod0->GetZaxis()->SetLabelSize(0.05);
552  hNCellsPerClusterMod0->GetZaxis()->SetTitleSize(0.4);
553  hNCellsPerClusterMod0->GetZaxis()->SetTitleOffset(0.03);
554  hNCellsPerClusterMod0->GetYaxis()->SetRangeUser(0.,30.);
555  hNCellsPerClusterMod0->GetXaxis()->SetRangeUser(0.,20.);
556  hNCellsPerClusterMod0->Draw("colz");
557  c35->cd(2);
558 
559  gPad->SetLogz();
560  hNCellsPerClusterMod1->GetYaxis()->SetTitleOffset(1.2);
561  hNCellsPerClusterMod1->GetYaxis()->SetLabelSize(0.03);
562 
563  hNCellsPerClusterMod1->GetZaxis()->SetLabelSize(0.05);
564  hNCellsPerClusterMod1->GetZaxis()->SetTitleSize(0.2);
565  hNCellsPerClusterMod1->GetZaxis()->SetTitleOffset(0.03);
566  hNCellsPerClusterMod1->GetYaxis()->SetRangeUser(0.,30.);
567  hNCellsPerClusterMod1->GetXaxis()->SetRangeUser(0.,20.);
568  hNCellsPerClusterMod1->Draw("colz");
569  c35->cd(3);
570  gPad->SetLogz();
571 
572 
573  hNCellsPerClusterMod2->GetYaxis()->SetTitleOffset(1.2);
574  hNCellsPerClusterMod2->GetYaxis()->SetLabelSize(0.03);
575 
576  hNCellsPerClusterMod2->GetZaxis()->SetLabelSize(0.05);
577  hNCellsPerClusterMod2->GetZaxis()->SetTitleSize(0.04);
578  hNCellsPerClusterMod2->GetZaxis()->SetTitleOffset(0.03);
579  hNCellsPerClusterMod2->GetYaxis()->SetRangeUser(0.,30.);
580  hNCellsPerClusterMod2->GetXaxis()->SetRangeUser(0.,20.);
581  hNCellsPerClusterMod2->Draw("colz");
582  c35->cd(4);
583 
584  gPad->SetLogz();
585  hNCellsPerClusterMod3->GetYaxis()->SetTitleOffset(1.2);
586  hNCellsPerClusterMod3->GetYaxis()->SetLabelSize(0.03);
587  hNCellsPerClusterMod3->GetZaxis()->SetLabelSize(0.05);
588  hNCellsPerClusterMod3->GetZaxis()->SetTitleSize(0.04);
589  hNCellsPerClusterMod3->GetZaxis()->SetTitleOffset(0.03);
590  hNCellsPerClusterMod3->GetYaxis()->SetRangeUser(0.,30.);
591  hNCellsPerClusterMod3->GetXaxis()->SetRangeUser(0.,20.);
592  hNCellsPerClusterMod3->Draw("colz");
593 
594  c35->cd(5);
595  gPad->SetLogz();
596 
597  hNCellsPerClusterMod4->GetYaxis()->SetTitleOffset(1.2);
598  hNCellsPerClusterMod4->GetYaxis()->SetLabelSize(0.03);
599  hNCellsPerClusterMod4->GetZaxis()->SetLabelSize(0.05);
600  hNCellsPerClusterMod4->GetZaxis()->SetTitleSize(0.04);
601  hNCellsPerClusterMod4->GetZaxis()->SetTitleOffset(0.03);
602  hNCellsPerClusterMod4->GetYaxis()->SetRangeUser(0.,30.);
603  hNCellsPerClusterMod4->GetXaxis()->SetRangeUser(0.,20.);
604  hNCellsPerClusterMod4->Draw("colz");
605 
606 
607 
608  c35->cd(6);
609  gPad->SetLogz();
610 
611  hNCellsPerClusterMod5->GetYaxis()->SetTitleOffset(1.2);
612  hNCellsPerClusterMod5->GetYaxis()->SetLabelSize(0.03);
613  hNCellsPerClusterMod5->GetZaxis()->SetLabelSize(0.05);
614  hNCellsPerClusterMod5->GetZaxis()->SetTitleSize(0.04);
615  hNCellsPerClusterMod5->GetZaxis()->SetTitleOffset(0.03);
616  hNCellsPerClusterMod5->GetYaxis()->SetRangeUser(0.,30.);
617  hNCellsPerClusterMod5->GetXaxis()->SetRangeUser(0.,20.);
618  hNCellsPerClusterMod5->Draw("colz");
619 
620 
621  c35->cd(7);
622  gPad->SetLogz();
623 
624  hNCellsPerClusterMod6->GetYaxis()->SetTitleOffset(1.2);
625  hNCellsPerClusterMod6->GetYaxis()->SetLabelSize(0.03);
626  hNCellsPerClusterMod6->GetZaxis()->SetLabelSize(0.05);
627  hNCellsPerClusterMod6->GetZaxis()->SetTitleSize(0.04);
628  hNCellsPerClusterMod6->GetZaxis()->SetTitleOffset(0.03);
629  hNCellsPerClusterMod6->GetYaxis()->SetRangeUser(0.,30.);
630  hNCellsPerClusterMod6->GetXaxis()->SetRangeUser(0.,20.);
631  hNCellsPerClusterMod6->Draw("colz");
632 
633  c35->cd(8);
634  gPad->SetLogz();
635 
636  hNCellsPerClusterMod7->GetYaxis()->SetTitleOffset(1.2);
637  hNCellsPerClusterMod7->GetYaxis()->SetLabelSize(0.03);
638  hNCellsPerClusterMod7->GetZaxis()->SetLabelSize(0.05);
639  hNCellsPerClusterMod7->GetZaxis()->SetTitleSize(0.04);
640  hNCellsPerClusterMod7->GetZaxis()->SetTitleOffset(0.03);
641  hNCellsPerClusterMod7->GetYaxis()->SetRangeUser(0.,30.);
642  hNCellsPerClusterMod7->GetXaxis()->SetRangeUser(0.,20.);
643  hNCellsPerClusterMod7->Draw("colz");
644 
645 
646  c35->cd(9);
647 
648  gPad->SetLogz();
649  hNCellsPerClusterMod8->GetYaxis()->SetTitleOffset(1.2);
650  hNCellsPerClusterMod8->GetYaxis()->SetLabelSize(0.03);
651  hNCellsPerClusterMod8->GetZaxis()->SetLabelSize(0.05);
652  hNCellsPerClusterMod8->GetZaxis()->SetTitleSize(0.04);
653  hNCellsPerClusterMod8->GetZaxis()->SetTitleOffset(0.03);
654  hNCellsPerClusterMod8->GetYaxis()->SetRangeUser(0.,30.);
655  hNCellsPerClusterMod8->GetXaxis()->SetRangeUser(0.,20.);
656  hNCellsPerClusterMod8->Draw("colz");
657 
658  c35->cd(10);
659  gPad->SetLogz();
660 
661  hNCellsPerClusterMod9->GetYaxis()->SetTitleOffset(1.2);
662  hNCellsPerClusterMod9->GetYaxis()->SetLabelSize(0.03);
663  hNCellsPerClusterMod9->GetZaxis()->SetLabelSize(0.05);
664  hNCellsPerClusterMod9->GetZaxis()->SetTitleSize(0.04);
665  hNCellsPerClusterMod9->GetZaxis()->SetTitleOffset(0.03);
666  hNCellsPerClusterMod9->GetYaxis()->SetRangeUser(0.,30.);
667  hNCellsPerClusterMod9->GetXaxis()->SetRangeUser(0.,20.);
668  hNCellsPerClusterMod9->Draw("colz");
669 
670  outfilename = base + "CellsperCluster.pdf";
671  outfilename2 = base + "CellsperCluster.gif";
672 
673 
674  c35->SaveAs(outfilename);
675  c35->SaveAs(outfilename2);
676 }
void QAplots(TString fCalorimeter="EMCAL", TString period="LHC11h", TString pass="pass1_HLT", TString trigger="default")
Definition: QAplots.C:52
const char * title
Definition: MakeQAPdf.C:26
void DrawOccupancy(Int_t run, TString period="LHC11h", TString pass="pass1_HLT", TString trigger="default", TFile *f=0x0)
Definition: QAplots.C:117
void DrawRun(const Int_t run=167713, TString period="LHC11h", TString pass="pass1_HLT", TString trigger="default", TFile *f=0x0)
Definition: QAplots.C:307
TFile * file