CMS 3D CMS Logo

L1TStage2CaloLayer2DEClient.cc
Go to the documentation of this file.
2 
4  const edm::ParameterSet& ps):
5  monitor_dir_(ps.getUntrackedParameter<std::string>("monitorDir","")),
6  input_dir_data_(ps.getUntrackedParameter<std::string>("inputDataDir","")),
7  input_dir_emul_(ps.getUntrackedParameter<std::string>("inputEmulDir","")),
8  CenJetRankComp_(nullptr),
9  CenJetEtaComp_(nullptr),
10  CenJetPhiComp_(nullptr),
11  ForJetRankComp_(nullptr),
12  ForJetEtaComp_(nullptr),
13  ForJetPhiComp_(nullptr),
14  IsoEGRankComp_(nullptr),
15  IsoEGEtaComp_(nullptr),
16  IsoEGPhiComp_(nullptr),
17  NonIsoEGRankComp_(nullptr),
18  NonIsoEGEtaComp_(nullptr),
19  NonIsoEGPhiComp_(nullptr),
20  IsoTauRankComp_(nullptr),
21  IsoTauEtaComp_(nullptr),
22  IsoTauPhiComp_(nullptr),
23  TauRankComp_(nullptr),
24  TauEtaComp_(nullptr),
25  TauPhiComp_(nullptr),
26  METComp_(nullptr),
27  METPhiComp_(nullptr),
28  METHFComp_(nullptr),
29  METHFPhiComp_(nullptr),
30  MHTComp_(nullptr),
31  MHTPhiComp_(nullptr),
32  MHTHFComp_(nullptr),
33  MHTHFPhiComp_(nullptr),
34  ETTComp_(nullptr),
35  HTTComp_(nullptr),
36  MinBiasHFP0Comp_(nullptr),
37  MinBiasHFM0Comp_(nullptr),
38  MinBiasHFP1Comp_(nullptr),
39  MinBiasHFM1Comp_(nullptr),
40  ETTEMComp_(nullptr),
41  TowerCountComp_(nullptr)
42 {}
43 
45 
47  DQMStore::IBooker &ibooker,
48  DQMStore::IGetter &igetter,
49  const edm::LuminosityBlock& lumiSeg,
50  const edm::EventSetup& c) {
51 
52  book(ibooker);
53  processHistograms(igetter);
54 }
55 
57  DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter) {
58 
59  book(ibooker);
60  processHistograms(igetter);
61 }
62 
64 
65  // problemSummary;
66 
68 
69  if (CenJetRankComp_ == nullptr) {
70  CenJetRankComp_ = ibooker.book1D(
71  "CenJetsRankDERatio","Data/Emul of Central Jet E_{T}; Jet iE_{T}; Counts",
72  2048, -0.5, 2047.5);
74  } else {
76  }
77  if (CenJetEtaComp_ == nullptr) {
78  CenJetEtaComp_ = ibooker.book1D(
79  "CenJetsEtaDERatio","Data/Emul of Central Jet #eta; Jet i#eta; Counts",
80  229, -114.5, 114.5);
82  } else {
84  }
85  if (CenJetPhiComp_ == nullptr) {
86  CenJetPhiComp_ = ibooker.book1D(
87  "CenJetsPhiDERatio","Data/Emul of Central Jet #phi; Jet i#phi; Counts",
88  144, -0.5, 143.5);
90  } else {
92  }
93  if (ForJetRankComp_ == nullptr) {
94  ForJetRankComp_ = ibooker.book1D(
95  "ForJetsRankDERatio","Data/Emul of Forward Jet E_{T}; Jet iE_{T}; Counts",
96  2048, -0.5, 2047.5);
98  } else {
100  }
101  if (ForJetEtaComp_ == nullptr) {
102  ForJetEtaComp_ = ibooker.book1D(
103  "ForJetsEtaDERatio","Data/Emul of Forward Jet #eta; Jet i#eta; Counts",
104  229, -114.5, 114.5);
106  } else {
108  }
109  if (ForJetPhiComp_ == nullptr) {
110  ForJetPhiComp_ = ibooker.book1D(
111  "ForJetsPhiDERatio","Data/Emul of Forward Jet #phi; Jet i#phi; Counts",
112  144, -0.5, 143.5);
114  } else {
116  }
117  if (IsoEGRankComp_ == nullptr) {
118  IsoEGRankComp_ = ibooker.book1D(
119  "IsoEGRankDERatio","Data/Emul of isolated eg E_{T}; EG iE_{T}; Counts",
120  512, -0.5, 511.5);
122  } else {
124  }
125  if (IsoEGEtaComp_ == nullptr) {
126  IsoEGEtaComp_ = ibooker.book1D(
127  "IsoEGEtaDERatio","Data/Emul of isolated eg #eta; EG i#eta; Counts",
128  229, -114.5, 114.5);
130  } else {
131  IsoEGEtaComp_->Reset();
132  }
133  if (IsoEGPhiComp_ == nullptr) {
134  IsoEGPhiComp_ = ibooker.book1D(
135  "IsoEGPhiDERatio","Data/Emul of isolated eg #phi; EG i#eta; Counts",
136  144, -0.5, 143.5);
138  } else {
139  IsoEGPhiComp_->Reset();
140  }
141  if (NonIsoEGRankComp_ == nullptr) {
142  NonIsoEGRankComp_ = ibooker.book1D(
143  "NonIsoEGRankDERatio",
144  "Data/Emul of non-isolated eg E_{T}; EG iE_{T}; Counts",
145  512, -0.5, 511.5);
147  } else {
149  }
150  if (NonIsoEGEtaComp_ == nullptr) {
151  NonIsoEGEtaComp_ = ibooker.book1D(
152  "NonIsoEGEtaDERatio","Data/Emul of non-isolated eg #eta; EG i#eta; Counts",
153  229, -114.5, 114.5);
155  } else {
157  }
158  if (NonIsoEGPhiComp_ == nullptr) {
159  NonIsoEGPhiComp_ = ibooker.book1D(
160  "NonIsoEGPhiDERatio","Data/Emul of non-isolated eg #phi; EG i#phi; Counts",
161  144, -0.5, 143.5);
163  } else {
165  }
166  if (TauRankComp_ == nullptr) {
167  TauRankComp_ = ibooker.book1D(
168  "TauRankDERatio","Data/Emul of relax tau E_{T}; Tau iE_{T}; Counts",
169  512, -0.5, 511.5);
171  } else {
172  TauRankComp_->Reset();
173  }
174  if (TauEtaComp_ == nullptr) {
175  TauEtaComp_ = ibooker.book1D(
176  "TauEtaDERatio","Data/Emul of relax tau #eta; Tau i#eta; Counts",
177  229, -114.5, 114.5);
179  } else {
180  TauEtaComp_->Reset();
181  }
182  if (TauPhiComp_ == nullptr) {
183  TauPhiComp_ = ibooker.book1D(
184  "TauPhiDERatio","Data/Emul of relax tau eg #phi; Tau i#phi; Counts",
185  144, -0.5, 143.5);
187  } else {
188  TauPhiComp_->Reset();
189  }
190  if (IsoTauRankComp_ == nullptr) {
191  IsoTauRankComp_ = ibooker.book1D(
192  "IsoTauRankDERatio","Data/Emul of iso tau E_{T}; ISO Tau iE_{T}; Counts",
193  512, -0.5, 511.5);
195  } else {
197  }
198  if (IsoTauEtaComp_ == nullptr) {
199  IsoTauEtaComp_ = ibooker.book1D(
200  "IsoTauEtaDERatio","Data/Emul of iso tau #eta; ISO Tau i#eta; Counts",
201  229, -114.5, 114.5);
203  } else {
205  }
206  if (IsoTauPhiComp_ == nullptr) {
207  IsoTauPhiComp_ = ibooker.book1D(
208  "IsoTauPhiDERatio","Data/Emul of iso tau #phi; ISO Tau i#phi; Counts",
209  144, -0.5, 143.5);
211  } else {
213  }
214  if (METComp_ == nullptr) {
215  METComp_ = ibooker.book1D(
216  "METRatio","Data/Emul of MET; iE_{T}; Events",
217  4096, -0.5, 4095.5);
219  } else {
220  METComp_->Reset();
221  }
222  if (METPhiComp_ == nullptr) {
223  METPhiComp_ = ibooker.book1D(
224  "METPhiRatio","Data/Emul of MET #phi; MET i#phi; Events",
225  1008, -0.5, 1007.5);
227  } else {
228  METPhiComp_->Reset();
229  }
230  if (METHFComp_ == nullptr) {
231  METHFComp_ = ibooker.book1D(
232  "METHFRatio","Data/Emul of METHF; METHF iE_{T}; Events",
233  4096, -0.5, 4095.5);
235  } else {
236  METHFComp_->Reset();
237  }
238  if (METHFPhiComp_ == nullptr) {
239  METHFPhiComp_ = ibooker.book1D(
240  "METHFPhiRatio","Data/Emul of METHF #phi; METHF i#phi; Events",
241  1008, -0.5, 1007.5);
243  } else {
244  METHFPhiComp_->Reset();
245  }
246  if (MHTComp_ == nullptr) {
247  MHTComp_ = ibooker.book1D(
248  "MHTRatio","Data/Emul of MHT; MHT iE_{T}; Events",
249  4096, -0.5, 4095.5);
251  } else {
252  MHTComp_->Reset();
253  }
254  if (MHTPhiComp_ == nullptr) {
255  MHTPhiComp_ = ibooker.book1D(
256  "MHTPhiRatio","Data/Emul of MHT #phi; MHTHF i#phi; Events",
257  1008, -0.5, 1007.5);
259  } else {
260  MHTPhiComp_->Reset();
261  }
262  if (MHTHFComp_ == nullptr) {
263  MHTHFComp_ = ibooker.book1D(
264  "MHTHFRatio","Data/Emul of MHTHF; MHTHF iE_{T}; Events",
265  4096, -0.5, 4095.5);
267  } else {
268  MHTHFComp_->Reset();
269  }
270  if (MHTHFPhiComp_ == nullptr) {
271  MHTHFPhiComp_ = ibooker.book1D(
272  "MHTHFPhiRatio","Data/Emul of MHTHF #phi; MHTHF i#phi; Events",
273  1008, -0.5, 1007.5);
275  } else {
276  MHTHFPhiComp_->Reset();
277  }
278  if (ETTComp_ == nullptr) {
279  ETTComp_ = ibooker.book1D(
280  "ETTRatio","Data/Emul of ET Total; ETT iE_{T}; Events",
281  4096, -0.5, 4095.5);
283  } else {
284  ETTComp_->Reset();
285  }
286  if (ETTEMComp_ == nullptr) {
287  ETTEMComp_ = ibooker.book1D(
288  "ETTEMRatio","Data/Emul of ET Total EM; ETTEM iE_{T}; Events",
289  4096, -0.5, 4095.5);
291  } else {
292  ETTEMComp_->Reset();
293  }
294  if (HTTComp_ == nullptr) {
295  HTTComp_ = ibooker.book1D(
296  "HTTRatio","Data/Emul of HT Total; HT iE_{T}; Events",
297  4096, -0.5, 4095.5);
299  } else {
300  HTTComp_->Reset();
301  }
302 
303  if (MinBiasHFP0Comp_ == nullptr) {
304  MinBiasHFP0Comp_ = ibooker.book1D(
305  "MinBiasHFP0Ratio", "Data/Emul MinBiasHFP0; N_{towers}; Events",
306  16, -0.5, 15.5);
308  } else {
310  }
311  if (MinBiasHFM0Comp_ == nullptr) {
312  MinBiasHFM0Comp_ = ibooker.book1D(
313  "MinBiasHFM0Ratio", "Data/Emul MinBiasHFM0; N_{towers}; Events",
314  16, -0.5, 15.5);
316  } else {
318  }
319  if (MinBiasHFP1Comp_ == nullptr) {
320  MinBiasHFP1Comp_ = ibooker.book1D(
321  "MinBiasHFP1Ratio", "Data/Emul MinBiasHFP1; N_{towers}; Events",
322  16, -0.5, 15.5);
324  } else {
326  }
327  if (MinBiasHFM1Comp_ == nullptr) {
328  MinBiasHFM1Comp_ = ibooker.book1D(
329  "MinBiasHFM1Ratio", "Data/Emul MinBiasHFM1; N_{towers}; Events",
330  16, -0.5, 15.5);
332  } else {
334  }
335 
336  if (TowerCountComp_ == nullptr) {
337  TowerCountComp_ = ibooker.book1D(
338  "TowCountRatio", "Data/Emul Tower Count; N_{towers}; Events",
339  5904, -0.5, 5903.5);
341  } else {
343  }
344 }
345 
347 
348 
349  MonitorElement* dataHist_;
350  MonitorElement* emulHist_;
351 
352  // central jets
353  dataHist_ = igetter.get(input_dir_data_+"/Central-Jets/"+"CenJetsRank");
354  emulHist_ = igetter.get(input_dir_emul_+"/Central-Jets/"+"CenJetsRank");
355 
356  if (dataHist_ && emulHist_){
357  TH1F *cjrNum = dataHist_->getTH1F();
358  TH1F *cjrDen = emulHist_->getTH1F();
359 
360  TH1F *CenJetRankRatio = CenJetRankComp_->getTH1F();
361 
362  CenJetRankRatio->Divide(cjrNum, cjrDen);
363  }
364 
365  dataHist_ = igetter.get(input_dir_data_+"/Central-Jets/"+"CenJetsEta");
366  emulHist_ = igetter.get(input_dir_emul_+"/Central-Jets/"+"CenJetsEta");
367 
368  if (dataHist_ && emulHist_){
369  TH1F *cjeNum = dataHist_->getTH1F();
370  TH1F *cjeDen = emulHist_->getTH1F();
371 
372  TH1F *CenJetEtaRatio = CenJetEtaComp_->getTH1F();
373 
374  CenJetEtaRatio->Divide(cjeNum, cjeDen);
375  }
376 
377  dataHist_ = igetter.get(input_dir_data_+"/Central-Jets/"+"CenJetsPhi");
378  emulHist_ = igetter.get(input_dir_emul_+"/Central-Jets/"+"CenJetsPhi");
379 
380  if (dataHist_ && emulHist_){
381  TH1F *cjpNum = dataHist_->getTH1F();
382  TH1F *cjpDen = emulHist_->getTH1F();
383 
384  TH1F *CenJetPhiRatio = CenJetPhiComp_->getTH1F();
385 
386  CenJetPhiRatio->Divide(cjpNum, cjpDen);
387 
388  }
389 
390  // forward jets
391  dataHist_ = igetter.get(input_dir_data_+"/Forward-Jets/"+"ForJetsRank");
392  emulHist_ = igetter.get(input_dir_emul_+"/Forward-Jets/"+"ForJetsRank");
393 
394  if (dataHist_ && emulHist_){
395 
396  TH1F *fjrNum = dataHist_->getTH1F();
397  TH1F *fjrDen = emulHist_->getTH1F();
398 
399  TH1F *ForJetRankRatio = ForJetRankComp_->getTH1F();
400 
401  ForJetRankRatio->Divide(fjrNum, fjrDen);
402  }
403 
404  dataHist_ = igetter.get(input_dir_data_+"/Forward-Jets/"+"ForJetsEta");
405  emulHist_ = igetter.get(input_dir_emul_+"/Forward-Jets/"+"ForJetsEta");
406 
407  if (dataHist_ && emulHist_){
408  TH1F *fjeNum = dataHist_->getTH1F();
409  TH1F *fjeDen = emulHist_->getTH1F();
410 
411  TH1F *ForJetEtaRatio = ForJetEtaComp_->getTH1F();
412 
413  ForJetEtaRatio->Divide(fjeNum, fjeDen);
414  }
415 
416  dataHist_ = igetter.get(input_dir_data_+"/Forward-Jets/"+"ForJetsPhi");
417  emulHist_ = igetter.get(input_dir_emul_+"/Forward-Jets/"+"ForJetsPhi");
418 
419  if (dataHist_ && emulHist_){
420  TH1F *fjpNum = dataHist_->getTH1F();
421  TH1F *fjpDen = emulHist_->getTH1F();
422 
423  TH1F *ForJetPhiRatio = ForJetPhiComp_->getTH1F();
424 
425  ForJetPhiRatio->Divide(fjpNum, fjpDen);
426  }
427 
428  // isolated eg
429 
430  dataHist_ = igetter.get(input_dir_data_+"/Isolated-EG/"+"IsoEGsRank");
431  emulHist_ = igetter.get(input_dir_emul_+"/Isolated-EG/"+"IsoEGsRank");
432 
433  if (dataHist_ && emulHist_){
434  TH1F *ierNum = dataHist_->getTH1F();
435  TH1F *ierDen = emulHist_->getTH1F();
436 
437  TH1F *IsoEGRankRatio = IsoEGRankComp_->getTH1F();
438 
439  IsoEGRankRatio->Divide(ierNum, ierDen);
440  }
441 
442  dataHist_ = igetter.get(input_dir_data_+"/Isolated-EG/"+"IsoEGsEta");
443  emulHist_ = igetter.get(input_dir_emul_+"/Isolated-EG/"+"IsoEGsEta");
444 
445  if (dataHist_ && emulHist_){
446  TH1F *ieeNum = dataHist_->getTH1F();
447  TH1F *ieeDen = emulHist_->getTH1F();
448 
449  TH1F *IsoEGEtaRatio = IsoEGEtaComp_->getTH1F();
450 
451  IsoEGEtaRatio->Divide(ieeNum, ieeDen);
452  }
453 
454  dataHist_ = igetter.get(input_dir_data_+"/Isolated-EG/"+"IsoEGsPhi");
455  emulHist_ = igetter.get(input_dir_emul_+"/Isolated-EG/"+"IsoEGsPhi");
456 
457  if (dataHist_ && emulHist_){
458  TH1F *iepNum = dataHist_->getTH1F();
459  TH1F *iepDen = emulHist_->getTH1F();
460 
461  TH1F *IsoEGPhiRatio = IsoEGPhiComp_->getTH1F();
462 
463  IsoEGPhiRatio->Divide(iepNum, iepDen);
464  }
465 
466  // non-isolated eg
467  dataHist_ = igetter.get(input_dir_data_+"/NonIsolated-EG/"+"NonIsoEGsRank");
468  emulHist_ = igetter.get(input_dir_emul_+"/NonIsolated-EG/"+"NonIsoEGsRank");
469 
470  if (dataHist_ && emulHist_){
471  TH1F *nerNum = dataHist_->getTH1F();
472  TH1F *nerDen = emulHist_->getTH1F();
473 
474  TH1F *NonIsoEGRankRatio = NonIsoEGRankComp_->getTH1F();
475 
476  NonIsoEGRankRatio->Divide(nerNum, nerDen);
477  }
478 
479  dataHist_ = igetter.get(input_dir_data_+"/NonIsolated-EG/"+"NonIsoEGsEta");
480  emulHist_ = igetter.get(input_dir_emul_+"/NonIsolated-EG/"+"NonIsoEGsEta");
481 
482  if (dataHist_ && emulHist_){
483  TH1F *neeNum = dataHist_->getTH1F();
484  TH1F *neeDen = emulHist_->getTH1F();
485 
486  TH1F *NonIsoEGEtaRatio = NonIsoEGEtaComp_->getTH1F();
487 
488  NonIsoEGEtaRatio->Divide(neeNum, neeDen);
489  }
490 
491  dataHist_ = igetter.get(input_dir_data_+"/NonIsolated-EG/"+"NonIsoEGsPhi");
492  emulHist_ = igetter.get(input_dir_emul_+"/NonIsolated-EG/"+"NonIsoEGsPhi");
493 
494  if (dataHist_ && emulHist_){
495  TH1F *nepNum = dataHist_->getTH1F();
496  TH1F *nepDen = emulHist_->getTH1F();
497 
498  TH1F *NonIsoEGPhiRatio = NonIsoEGPhiComp_->getTH1F();
499 
500  NonIsoEGPhiRatio->Divide(nepNum, nepDen);
501  }
502 
503  // rlx tau
504  dataHist_ = igetter.get(input_dir_data_+"/NonIsolated-Tau/"+"TausRank");
505  emulHist_ = igetter.get(input_dir_emul_+"/NonIsolated-Tau/"+"TausRank");
506 
507  if (dataHist_ && emulHist_){
508  TH1F *trNum = dataHist_->getTH1F();
509  TH1F *trDen = emulHist_->getTH1F();
510 
511  TH1F *TauRankRatio = TauRankComp_->getTH1F();
512 
513  TauRankRatio->Divide(trNum, trDen);
514  }
515 
516  dataHist_ = igetter.get(input_dir_data_+"/NonIsolated-Tau/"+"TausEta");
517  emulHist_ = igetter.get(input_dir_emul_+"/NonIsolated-Tau/"+"TausEta");
518 
519  if (dataHist_ && emulHist_){
520  TH1F *teNum = dataHist_->getTH1F();
521  TH1F *teDen = emulHist_->getTH1F();
522 
523  TH1F *TauEtaRatio = TauEtaComp_->getTH1F();
524 
525  TauEtaRatio->Divide(teNum, teDen);
526  }
527 
528  dataHist_ = igetter.get(input_dir_data_+"/NonIsolated-Tau/"+"TausPhi");
529  emulHist_ = igetter.get(input_dir_emul_+"/NonIsolated-Tau/"+"TausPhi");
530 
531  if (dataHist_ && emulHist_){
532  TH1F *tpNum = dataHist_->getTH1F();
533  TH1F *tpDen = emulHist_->getTH1F();
534 
535  TH1F *TauPhiRatio = TauPhiComp_->getTH1F();
536 
537  TauPhiRatio->Divide(tpNum, tpDen);
538  }
539 
540  // iso tau
541  dataHist_ = igetter.get(input_dir_data_+"/Isolated-Tau/"+"IsoTausRank");
542  emulHist_ = igetter.get(input_dir_emul_+"/Isolated-Tau/"+"IsoTausRank");
543 
544  if (dataHist_ && emulHist_){
545  TH1F *itrNum = dataHist_->getTH1F();
546  TH1F *itrDen = emulHist_->getTH1F();
547 
548  TH1F *IsoTauRankRatio = IsoTauRankComp_->getTH1F();
549 
550  IsoTauRankRatio->Divide(itrNum, itrDen);
551  }
552 
553  dataHist_ = igetter.get(input_dir_data_+"/Isolated-Tau/"+"IsoTausEta");
554  emulHist_ = igetter.get(input_dir_emul_+"/Isolated-Tau/"+"IsoTausEta");
555 
556  if (dataHist_ && emulHist_){
557  TH1F *iteNum = dataHist_->getTH1F();
558  TH1F *iteDen = emulHist_->getTH1F();
559 
560  TH1F *IsoTauEtaRatio = IsoTauEtaComp_->getTH1F();
561 
562  IsoTauEtaRatio->Divide(iteNum, iteDen);
563  }
564 
565  dataHist_ = igetter.get(input_dir_data_+"/Isolated-Tau/"+"IsoTausPhi");
566  emulHist_ = igetter.get(input_dir_emul_+"/Isolated-Tau/"+"IsoTausPhi");
567 
568  if (dataHist_ && emulHist_){
569  TH1F *itpNum = dataHist_->getTH1F();
570  TH1F *itpDen = emulHist_->getTH1F();
571 
572  TH1F *IsoTauPhiRatio = IsoTauPhiComp_->getTH1F();
573 
574  IsoTauPhiRatio->Divide(itpNum, itpDen);
575  }
576 
577  // MET
578  dataHist_ = igetter.get(input_dir_data_+"/Energy-Sums/"+"METRank");
579  emulHist_ = igetter.get(input_dir_emul_+"/Energy-Sums/"+"METRank");
580 
581  if (dataHist_ && emulHist_){
582  TH1F *metNum = dataHist_->getTH1F();
583  TH1F *metDen = emulHist_->getTH1F();
584 
585  TH1F *METRatio = METComp_->getTH1F();
586 
587  METRatio->Divide(metNum, metDen);
588  }
589 
590  // This causes CMSSW to segfault with a complaint that ROOT cannot divide two
591  // histograms with different number of bins. Checking the contents of the data
592  // and emulator histograms, using both GetNbinsX() and GetSize(), it can be
593  // seen that the reported number of bins is the same. This needs more
594  // investigation.
595 
596  // MET Phi
597  // dataHist_ = igetter.get(input_dir_data_+"/Energy-Sums/"+"METPhi");
598  // emulHist_ = igetter.get(input_dir_emul_+"/Energy-Sums/"+"METPhi");
599 
600  // if (dataHist_ && emulHist_){
601  // TH1F * metphiNum = dataHist_->getTH1F();
602  // TH1F * metphiDen = emulHist_->getTH1F();
603 
604  // TH1F * METPhiRatio = METPhiComp_->getTH1F();
605 
606  // std::cout << "data met " << metphiNum->GetNbinsX() << std::endl;
607  // std::cout << "emul met " << metphiDen->GetNbinsX() << std::endl;
608 
609  // METPhiRatio->Divide(metphiNum, metphiDen);
610  // }
611 
612  // METHF
613  dataHist_ = igetter.get(input_dir_data_+"/Energy-Sums/"+"METHFRank");
614  emulHist_ = igetter.get(input_dir_emul_+"/Energy-Sums/"+"METHFRank");
615 
616  if (dataHist_ && emulHist_){
617  TH1F *methfNum = dataHist_->getTH1F();
618  TH1F *methfDen = emulHist_->getTH1F();
619 
620  TH1F *METHFRatio = METHFComp_->getTH1F();
621 
622  METHFRatio->Divide(methfNum, methfDen);
623  }
624 
625  // // METHF Phi
626  // dataHist_ = igetter.get(input_dir_data_+"/Energy-Sums/"+"METHFPhi");
627  // emulHist_ = igetter.get(input_dir_emul_+"/Energy-Sums/"+"METHFPhi");
628 
629  // if (dataHist_ && emulHist_){
630  // TH1F *methfphiNum = dataHist_->getTH1F();
631  // TH1F *methfphiDen = emulHist_->getTH1F();
632 
633  // TH1F *METHFPhiRatio = METHFPhiComp_->getTH1F();
634 
635  // METHFPhiRatio->Divide(methfphiNum, methfphiDen);
636  // }
637 
638  // MHT
639  dataHist_ = igetter.get(input_dir_data_+"/Energy-Sums/"+"MHTRank");
640  emulHist_ = igetter.get(input_dir_emul_+"/Energy-Sums/"+"MHTRank");
641 
642 
643  if (dataHist_ && emulHist_){
644  TH1F *mhtNum = dataHist_->getTH1F();
645  TH1F *mhtDen = emulHist_->getTH1F();
646 
647  TH1F *MHTRatio = MHTComp_->getTH1F();
648 
649  MHTRatio->Divide(mhtNum, mhtDen);
650  }
651 
652  // // MHT Phi
653  // dataHist_ = igetter.get(input_dir_data_+"/Energy-Sums/"+"MHTPhi");
654  // emulHist_ = igetter.get(input_dir_emul_+"/Energy-Sums/"+"MHTPhi");
655 
656  // if (dataHist_ && emulHist_){
657  // TH1F * mhtphiNum = dataHist_->getTH1F();
658  // TH1F * mhtphiDen = emulHist_->getTH1F();
659 
660  // TH1F * MHTPhiRatio = MHTPhiComp_->getTH1F();
661 
662  // MHTPhiRatio->Divide(mhtphiNum, mhtphiDen);
663  // }
664 
665  // MHTHF
666  dataHist_ = igetter.get(input_dir_data_+"/Energy-Sums/"+"MHTHFRank");
667  emulHist_ = igetter.get(input_dir_emul_+"/Energy-Sums/"+"MHTHFRank");
668 
669  if (dataHist_ && emulHist_){
670  TH1F *mhthfNum = dataHist_->getTH1F();
671  TH1F *mhthfDen = emulHist_->getTH1F();
672 
673  TH1F *MHTHFRatio = MHTHFComp_->getTH1F();
674 
675  MHTHFRatio->Divide(mhthfNum, mhthfDen);
676  }
677 
678  // // MHTHF Phi
679  // dataHist_ = igetter.get(input_dir_data_+"/Energy-Sums/"+"MHTHFPhi");
680  // emulHist_ = igetter.get(input_dir_emul_+"/Energy-Sums/"+"MHTHFPhi");
681 
682  // if (dataHist_ && emulHist_){
683  // TH1F *mhthfphiNum = dataHist_->getTH1F();
684  // TH1F *mhthfphiDen = emulHist_->getTH1F();
685 
686  // TH1F *MHTHFPhiRatio = MHTHFPhiComp_->getTH1F();
687 
688  // std::cout << "dividing mhthf phi" << std::endl;
689  // MHTHFPhiRatio->Divide(mhthfphiNum, mhthfphiDen);
690  // }
691 
692  // ETT
693  dataHist_ = igetter.get(input_dir_data_+"/Energy-Sums/"+"ETTRank");
694  emulHist_ = igetter.get(input_dir_emul_+"/Energy-Sums/"+"ETTRank");
695 
696  if (dataHist_ && emulHist_){
697  TH1F *ettNum = dataHist_->getTH1F();
698  TH1F *ettDen = emulHist_->getTH1F();
699 
700  TH1F *ETTRatio = ETTComp_->getTH1F();
701 
702  ETTRatio->Divide(ettNum, ettDen);
703  }
704 
705  // ETTEM
706  dataHist_ = igetter.get(input_dir_data_+"/Energy-Sums/"+"ETTEMRank");
707  emulHist_ = igetter.get(input_dir_emul_+"/Energy-Sums/"+"ETTEMRank");
708 
709  if (dataHist_ && emulHist_){
710  TH1F *ettemNum = dataHist_->getTH1F();
711  TH1F *ettemDen = emulHist_->getTH1F();
712 
713  TH1F *ETTEMRatio = ETTEMComp_->getTH1F();
714 
715  ETTEMRatio->Divide(ettemNum, ettemDen);
716  }
717 
718  // HTT
719  dataHist_ = igetter.get(input_dir_data_+"/Energy-Sums/"+"HTTRank");
720  emulHist_ = igetter.get(input_dir_emul_+"/Energy-Sums/"+"HTTRank");
721 
722  if (dataHist_ && emulHist_){
723  TH1F *httNum = dataHist_->getTH1F();
724  TH1F *httDen = emulHist_->getTH1F();
725 
726  TH1F *HTTRatio = HTTComp_->getTH1F();
727 
728  HTTRatio->Divide(httNum, httDen);
729  }
730 
731  // MBHFP0
732  dataHist_ = igetter.get(input_dir_data_+"/Energy-Sums/"+"MinBiasHFP0");
733  emulHist_ = igetter.get(input_dir_emul_+"/Energy-Sums/"+"MinBiasHFP0");
734 
735  if (dataHist_ && emulHist_){
736  TH1F *mbhfp0Num = dataHist_->getTH1F();
737  TH1F *mbhfp0Den = emulHist_->getTH1F();
738 
739  TH1F *MBHFP0Ratio = MinBiasHFP0Comp_->getTH1F();
740 
741  MBHFP0Ratio->Divide(mbhfp0Num, mbhfp0Den);
742  }
743 
744  // MBHFM0
745  dataHist_ = igetter.get(input_dir_data_+"/Energy-Sums/"+"MinBiasHFM0");
746  emulHist_ = igetter.get(input_dir_emul_+"/Energy-Sums/"+"MinBiasHFM0");
747 
748  if (dataHist_ && emulHist_){
749  TH1F *mbhfm0Num = dataHist_->getTH1F();
750  TH1F *mbhfm0Den = emulHist_->getTH1F();
751 
752  TH1F *MBHFM0Ratio = MinBiasHFM0Comp_->getTH1F();
753 
754  MBHFM0Ratio->Divide(mbhfm0Num, mbhfm0Den);
755  }
756 
757  // MBHFP1
758  dataHist_ = igetter.get(input_dir_data_+"/Energy-Sums/"+"MinBiasHFP1");
759  emulHist_ = igetter.get(input_dir_emul_+"/Energy-Sums/"+"MinBiasHFP1");
760 
761  if (dataHist_ && emulHist_){
762  TH1F *mbhfp1Num = dataHist_->getTH1F();
763  TH1F *mbhfp1Den = emulHist_->getTH1F();
764 
765  TH1F *MBHFP1Ratio = MinBiasHFP1Comp_->getTH1F();
766 
767  MBHFP1Ratio->Divide(mbhfp1Num, mbhfp1Den);
768  }
769 
770  // MBHFM1
771  dataHist_ = igetter.get(input_dir_data_+"/Energy-Sums/"+"MinBiasHFM1");
772  emulHist_ = igetter.get(input_dir_emul_+"/Energy-Sums/"+"MinBiasHFM1");
773 
774  if (dataHist_ && emulHist_){
775  TH1F *mbhfm1Num = dataHist_->getTH1F();
776  TH1F *mbhfm1Den = emulHist_->getTH1F();
777 
778  TH1F *MBHFM1Ratio = MinBiasHFM1Comp_->getTH1F();
779 
780  MBHFM1Ratio->Divide(mbhfm1Num, mbhfm1Den);
781  }
782 
783  // TowerCount
784  dataHist_ = igetter.get(input_dir_data_+"/Energy-Sums/"+"TowCount");
785  emulHist_ = igetter.get(input_dir_emul_+"/Energy-Sums/"+"TowCount");
786 
787  if (dataHist_ && emulHist_){
788  TH1F *towCountNum = dataHist_->getTH1F();
789  TH1F *towCountDen = emulHist_->getTH1F();
790 
791  TH1F *TowCountRatio = TowerCountComp_->getTH1F();
792 
793  TowCountRatio->Divide(towCountNum, towCountDen);
794  }
795 }
TH1F * getTH1F() const
void dqmEndJob(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter) override
#define nullptr
void book(DQMStore::IBooker &ibooker)
void setEfficiencyFlag()
void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:268
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:106
void Reset()
reset ME (ie. contents, errors, etc)
MonitorElement * get(std::string const &path)
Definition: DQMStore.cc:303
L1TStage2CaloLayer2DEClient(const edm::ParameterSet &)
void processHistograms(DQMStore::IGetter &igetter)
void dqmEndLuminosityBlock(DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter, const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c) override