CMS 3D CMS Logo

HcalSimHitStudy.cc
Go to the documentation of this file.
4 
6 
8  g4Label = ps.getUntrackedParameter<std::string>("moduleLabel", "g4SimHits");
9  hcalHits = ps.getUntrackedParameter<std::string>("HitCollection", "HcalHits");
10  outFile_ = ps.getUntrackedParameter<std::string>("outputFile", "hcHit.root");
11  verbose_ = ps.getUntrackedParameter<bool>("Verbose", false);
12  testNumber_ = ps.getParameter<bool>("TestNumber");
13  hep17_ = ps.getParameter<bool>("hep17");
14  checkHit_ = true;
15 
16  tok_hits_ = consumes<edm::PCaloHitContainer>(edm::InputTag(g4Label, hcalHits));
17  tok_HRNDC_ = esConsumes<HcalDDDRecConstants, HcalRecNumberingRecord, edm::Transition::BeginRun>();
18 
19  edm::LogInfo("HcalSim") << "Module Label: " << g4Label << " Hits: " << hcalHits << " / " << checkHit_
20  << " Output: " << outFile_;
21 }
22 
24 
26  hcons_ = &es.getData(tok_HRNDC_);
34 
35  // Get Phi segmentation from geometry, use the max phi number so that all iphi
36  // values are included.
37 
38  int NphiMax = hcons_->getNPhi(0);
39 
40  NphiMax = (hcons_->getNPhi(1) > NphiMax ? hcons_->getNPhi(1) : NphiMax);
41  NphiMax = (hcons_->getNPhi(2) > NphiMax ? hcons_->getNPhi(2) : NphiMax);
42  NphiMax = (hcons_->getNPhi(3) > NphiMax ? hcons_->getNPhi(3) : NphiMax);
43 
44  // Center the iphi bins on the integers
45  iphi_min = 0.5;
46  iphi_max = NphiMax + 0.5;
48 
49  int iEtaHBMax = hcons_->getEtaRange(0).second;
50  int iEtaHEMax = std::max(hcons_->getEtaRange(1).second, 1);
51  int iEtaHFMax = hcons_->getEtaRange(2).second;
52  int iEtaHOMax = hcons_->getEtaRange(3).second;
53 
54  // Retain classic behavior, all plots have same ieta range.
55  // Comment out code to allow each subdetector to have its on range
56 
57  int iEtaMax = (iEtaHBMax > iEtaHEMax ? iEtaHBMax : iEtaHEMax);
58  iEtaMax = (iEtaMax > iEtaHFMax ? iEtaMax : iEtaHFMax);
59  iEtaMax = (iEtaMax > iEtaHOMax ? iEtaMax : iEtaHOMax);
60 
61  iEtaHBMax = iEtaMax;
62  iEtaHEMax = iEtaMax;
63  iEtaHFMax = iEtaMax;
64  iEtaHOMax = iEtaMax;
65 
66  // Give an empty bin around the subdet ieta range to make it clear that all
67  // ieta rings have been included
68  ieta_min_HB = -iEtaHBMax - 1.5;
69  ieta_max_HB = iEtaHBMax + 1.5;
71 
72  ieta_min_HE = -iEtaHEMax - 1.5;
73  ieta_max_HE = iEtaHEMax + 1.5;
75 
76  ieta_min_HF = -iEtaHFMax - 1.5;
77  ieta_max_HF = iEtaHFMax + 1.5;
79 
80  ieta_min_HO = -iEtaHOMax - 1.5;
81  ieta_max_HO = iEtaHOMax + 1.5;
83 
84  Char_t hname[100];
85  Char_t htitle[100];
86 
87  ib.setCurrentFolder("HcalHitsV/HcalSimHitsTask");
88 
89  // Histograms for Hits
90  if (checkHit_) {
91  meAllNHit_ = ib.book1D("Hit01", "Number of Hits in HCal", 20000, 0., 20000.);
92  meBadDetHit_ = ib.book1D("Hit02", "Hits with wrong Det", 100, 0., 100.);
93  meBadSubHit_ = ib.book1D("Hit03", "Hits with wrong Subdet", 100, 0., 100.);
94  meBadIdHit_ = ib.book1D("Hit04", "Hits with wrong ID", 100, 0., 100.);
95  meHBNHit_ = ib.book1D("Hit05", "Number of Hits in HB", 20000, 0., 20000.);
96  meHENHit_ = ib.book1D("Hit06", "Number of Hits in HE", 10000, 0., 10000.);
97  meHONHit_ = ib.book1D("Hit07", "Number of Hits in HO", 10000, 0., 10000.);
98  meHFNHit_ = ib.book1D("Hit08", "Number of Hits in HF", 10000, 0., 10000.);
99  meDetectHit_ = ib.book1D("Hit09", "Detector ID", 50, 0., 50.);
100  meSubdetHit_ = ib.book1D("Hit10", "Subdetectors in HCal", 50, 0., 50.);
101  meDepthHit_ = ib.book1D("Hit11", "Depths in HCal", 20, 0., 20.);
102  meEtaHit_ = ib.book1D("Hit12", "Eta in HCal", ieta_bins_HF, ieta_min_HF, ieta_max_HF);
103  meEtaPhiHit_ =
104  ib.book2D("Hit12b", "Eta-phi in HCal", ieta_bins_HF, ieta_min_HF, ieta_max_HF, iphi_bins, iphi_min, iphi_max);
105  for (int depth = 1; depth <= maxDepth_; depth++) {
106  sprintf(hname, "Hit12bd%d", depth);
107  sprintf(htitle, "Eta-phi in HCal d%d", depth);
108  meEtaPhiHitDepth_.push_back(
109  ib.book2D(hname, htitle, ieta_bins_HF, ieta_min_HF, ieta_max_HF, iphi_bins, iphi_min, iphi_max));
110  }
111  // KC: There are different phi segmentation schemes, this plot uses wider
112  // bins to represent the most sparse segmentation
113  mePhiHit_ = ib.book1D("Hit13", "Phi in HCal (HB,HO)", iphi_bins, iphi_min, iphi_max);
114  mePhiHitb_ = ib.book1D("Hit13b", "Phi in HCal (HE,HF)", iphi_bins, iphi_min, iphi_max);
115  meEnergyHit_ = ib.book1D("Hit14", "Energy in HCal", 2000, 0., 20.);
116  meTimeHit_ = ib.book1D("Hit15", "Time in HCal", 528, 0., 528.);
117  meTimeWHit_ = ib.book1D("Hit16", "Time in HCal (E wtd)", 528, 0., 528.);
118  meHBDepHit_ = ib.book1D("Hit17", "Depths in HB", 20, 0., 20.);
119  meHEDepHit_ = ib.book1D("Hit18", "Depths in HE", 20, 0., 20.);
120  meHODepHit_ = ib.book1D("Hit19", "Depths in HO", 20, 0., 20.);
121  meHFDepHit_ = ib.book1D("Hit20", "Depths in HF", 20, 0., 20.);
122  meHFDepHitw_ = ib.book1D("Hit20b", "Depths in HF (p.e. weighted)", 20, 0., 20.);
123  meHBEtaHit_ = ib.book1D("Hit21", "Eta in HB", ieta_bins_HB, ieta_min_HB, ieta_max_HB);
124  meHEEtaHit_ = ib.book1D("Hit22", "Eta in HE", ieta_bins_HE, ieta_min_HE, ieta_max_HE);
125  meHOEtaHit_ = ib.book1D("Hit23", "Eta in HO", ieta_bins_HO, ieta_min_HO, ieta_max_HO);
126  meHFEtaHit_ = ib.book1D("Hit24", "Eta in HF", ieta_bins_HF, ieta_min_HF, ieta_max_HF);
127  meHBPhiHit_ = ib.book1D("Hit25", "Phi in HB", iphi_bins, iphi_min, iphi_max);
128  meHEPhiHit_ = ib.book1D("Hit26", "Phi in HE", iphi_bins, iphi_min, iphi_max);
129  meHOPhiHit_ = ib.book1D("Hit27", "Phi in HO", iphi_bins, iphi_min, iphi_max);
130  meHFPhiHit_ = ib.book1D("Hit28", "Phi in HF", iphi_bins, iphi_min, iphi_max);
131  meHBEneHit_ = ib.book1D("Hit29", "Energy in HB", 2000, 0., 20.);
132  meHEEneHit_ = ib.book1D("Hit30", "Energy in HE", 500, 0., 5.);
133  meHEP17EneHit_ = ib.book1D("Hit30b", "Energy in HEP17", 500, 0., 5.);
134  meHOEneHit_ = ib.book1D("Hit31", "Energy in HO", 500, 0., 5.);
135  meHFEneHit_ = ib.book1D("Hit32", "Energy in HF", 1001, -0.5, 1000.5);
136 
137  // HxEneMap, HxEneSum, HxEneSum_vs_ieta plot the sum of the simhits energy
138  // within a single ieta-iphi tower.
139 
140  meHBEneMap_ =
141  ib.book2D("HBEneMap", "HBEneMap", ieta_bins_HB, ieta_min_HB, ieta_max_HB, iphi_bins, iphi_min, iphi_max);
142  meHEEneMap_ =
143  ib.book2D("HEEneMap", "HEEneMap", ieta_bins_HE, ieta_min_HE, ieta_max_HE, iphi_bins, iphi_min, iphi_max);
144  meHOEneMap_ =
145  ib.book2D("HOEneMap", "HOEneMap", ieta_bins_HO, ieta_min_HO, ieta_max_HO, iphi_bins, iphi_min, iphi_max);
146  meHFEneMap_ =
147  ib.book2D("HFEneMap", "HFEneMap", ieta_bins_HF, ieta_min_HF, ieta_max_HF, iphi_bins, iphi_min, iphi_max);
148 
149  meHBEneSum_ = ib.book1D("HBEneSum", "HBEneSum", 2000, 0., 20.);
150  meHEEneSum_ = ib.book1D("HEEneSum", "HEEneSum", 500, 0., 5.);
151  meHOEneSum_ = ib.book1D("HOEneSum", "HOEneSum", 500, 0., 5.);
152  meHFEneSum_ = ib.book1D("HFEneSum", "HFEneSum", 1001, -0.5, 1000.5);
153 
154  meHBEneSum_vs_ieta_ = ib.bookProfile(
155  "HBEneSum_vs_ieta", "HBEneSum_vs_ieta", ieta_bins_HB, ieta_min_HB, ieta_max_HB, 2011, -10.5, 2000.5, " ");
156  meHEEneSum_vs_ieta_ = ib.bookProfile(
157  "HEEneSum_vs_ieta", "HEEneSum_vs_ieta", ieta_bins_HE, ieta_min_HE, ieta_max_HE, 2011, -10.5, 2000.5, " ");
158  meHOEneSum_vs_ieta_ = ib.bookProfile(
159  "HOEneSum_vs_ieta", "HOEneSum_vs_ieta", ieta_bins_HO, ieta_min_HO, ieta_max_HO, 2011, -10.5, 2000.5, " ");
160  meHFEneSum_vs_ieta_ = ib.bookProfile(
161  "HFEneSum_vs_ieta", "HFEneSum_vs_ieta", ieta_bins_HF, ieta_min_HF, ieta_max_HF, 2011, -10.5, 2000.5, " ");
162 
163  meHBTimHit_ = ib.book1D("Hit33", "Time in HB", 528, 0., 528.);
164  meHETimHit_ = ib.book1D("Hit34", "Time in HE", 528, 0., 528.);
165  meHOTimHit_ = ib.book1D("Hit35", "Time in HO", 528, 0., 528.);
166  meHFTimHit_ = ib.book1D("Hit36", "Time in HF", 528, 0., 528.);
167  // These are the zoomed in energy ranges
168  meHBEneHit2_ = ib.book1D("Hit37", "Energy in HB 2", 100, 0., 0.0001);
169  meHEEneHit2_ = ib.book1D("Hit38", "Energy in HE 2", 100, 0., 0.0001);
170  meHEP17EneHit2_ = ib.book1D("Hit38b", "Energy in HEP17 2", 100, 0., 0.0001);
171  meHOEneHit2_ = ib.book1D("Hit39", "Energy in HO 2", 100, 0., 0.0001);
172  meHFEneHit2_ = ib.book1D("Hit40", "Energy in HF 2", 100, 0.5, 100.5);
173  meHBL10Ene_ = ib.book1D("Hit41", "Log10Energy in HB", 140, -10., 4.);
174  meHEL10Ene_ = ib.book1D("Hit42", "Log10Energy in HE", 140, -10., 4.);
175  meHFL10Ene_ = ib.book1D("Hit43", "Log10Energy in HF", 50, -1., 4.);
176  meHOL10Ene_ = ib.book1D("Hit44", "Log10Energy in HO", 140, -10., 4.);
177  meHBL10EneP_ = ib.bookProfile("Hit45", "Log10Energy in HB vs Hit contribution", 140, -10., 4., 100, 0., 1.);
178  meHEL10EneP_ = ib.bookProfile("Hit46", "Log10Energy in HE vs Hit contribution", 140, -10., 4., 100, 0., 1.);
179  meHFL10EneP_ = ib.bookProfile("Hit47", "Log10Energy in HF vs Hit contribution", 140, -10., 4., 100, 0., 1.);
180  meHOL10EneP_ = ib.bookProfile("Hit48", "Log10Energy in HO vs Hit contribution", 140, -10., 4., 100, 0., 1.);
181  }
182 }
183 
184 /*void HcalSimHitStudy::endJob() {
185  if (dbe_ && outFile_.size() > 0) dbe_->save(outFile_);
186 }*/
187 
189  edm::LogVerbatim("HcalSim") << "Run = " << e.id().run() << " Event = " << e.id().event();
190 
191  std::vector<PCaloHit> caloHits;
193 
194  bool getHits = false;
195  if (checkHit_) {
196  e.getByToken(tok_hits_, hitsHcal);
197  if (hitsHcal.isValid())
198  getHits = true;
199  }
200 
201  edm::LogVerbatim("HcalSim") << "HcalValidation: Input flags Hits " << getHits;
202 
203  if (getHits) {
204  caloHits.insert(caloHits.end(), hitsHcal->begin(), hitsHcal->end());
205  edm::LogVerbatim("HcalSim") << "HcalValidation: Hit buffer " << caloHits.size();
206  analyzeHits(caloHits);
207  }
208 }
209 
210 void HcalSimHitStudy::analyzeHits(std::vector<PCaloHit> &hits) {
211  int nHit = hits.size();
212  int nHB = 0, nHE = 0, nHO = 0, nHF = 0, nBad1 = 0, nBad2 = 0, nBad = 0;
213  std::vector<double> encontHB(140, 0.);
214  std::vector<double> encontHE(140, 0.);
215  std::vector<double> encontHF(140, 0.);
216  std::vector<double> encontHO(140, 0.);
217  double entotHB = 0, entotHE = 0, entotHF = 0, entotHO = 0;
218 
219  double HBEneMap[ieta_bins_HB][iphi_bins];
220  double HEEneMap[ieta_bins_HE][iphi_bins];
221  double HOEneMap[ieta_bins_HO][iphi_bins];
222  double HFEneMap[ieta_bins_HF][iphi_bins];
223 
224  // Works in ieta_min_Hx is < 0
225  int eta_offset_HB = -(int)ieta_min_HB;
226  int eta_offset_HE = -(int)ieta_min_HE;
227  int eta_offset_HO = -(int)ieta_min_HO;
228  int eta_offset_HF = -(int)ieta_min_HF;
229 
230  for (int i = 0; i < ieta_bins_HB; i++) {
231  for (int j = 0; j < iphi_bins; j++) {
232  HBEneMap[i][j] = 0.;
233  }
234  }
235 
236  for (int i = 0; i < ieta_bins_HE; i++) {
237  for (int j = 0; j < iphi_bins; j++) {
238  HEEneMap[i][j] = 0.;
239  }
240  }
241 
242  for (int i = 0; i < ieta_bins_HO; i++) {
243  for (int j = 0; j < iphi_bins; j++) {
244  HOEneMap[i][j] = 0.;
245  }
246  }
247 
248  for (int i = 0; i < ieta_bins_HF; i++) {
249  for (int j = 0; j < iphi_bins; j++) {
250  HFEneMap[i][j] = 0.;
251  }
252  }
253 
254  for (int i = 0; i < nHit; i++) {
255  double energy = hits[i].energy();
256  double log10en = log10(energy);
257  int log10i = int((log10en + 10.) * 10.);
258  double time = hits[i].time();
259  unsigned int id = hits[i].id();
260  int det, subdet, depth, eta, phi;
261  HcalDetId hid;
262  if (testNumber_)
264  else
265  hid = HcalDetId(id);
266  det = hid.det();
267  subdet = hid.subdet();
268  depth = hid.depth();
269  eta = hid.ieta();
270  phi = hid.iphi();
271 
272  edm::LogVerbatim("HcalSim") << "Hit[" << i << "] ID " << std::hex << id << std::dec << " Det " << det << " Sub "
273  << subdet << " depth " << depth << " Eta " << eta << " Phi " << phi << " E " << energy
274  << " time " << time;
275  if (det == 4) { // Check DetId.h
276  if (subdet == static_cast<int>(HcalBarrel))
277  nHB++;
278  else if (subdet == static_cast<int>(HcalEndcap))
279  nHE++;
280  else if (subdet == static_cast<int>(HcalOuter))
281  nHO++;
282  else if (subdet == static_cast<int>(HcalForward))
283  nHF++;
284  else {
285  nBad++;
286  nBad2++;
287  }
288  } else {
289  nBad++;
290  nBad1++;
291  }
292 
293  meDetectHit_->Fill(double(det));
294  if (det == 4) {
295  meSubdetHit_->Fill(double(subdet));
296  meDepthHit_->Fill(double(depth));
297  meEtaHit_->Fill(double(eta));
298  meEtaPhiHit_->Fill(double(eta), double(phi));
299  meEtaPhiHitDepth_[depth - 1]->Fill(double(eta), double(phi));
300 
301  // We will group the phi plots by HB,HO and HE,HF since these groups share
302  // similar segmentation schemes
303  if (subdet == static_cast<int>(HcalBarrel))
304  mePhiHit_->Fill(double(phi));
305  else if (subdet == static_cast<int>(HcalEndcap))
306  mePhiHitb_->Fill(double(phi));
307  else if (subdet == static_cast<int>(HcalOuter))
308  mePhiHit_->Fill(double(phi));
309  else if (subdet == static_cast<int>(HcalForward))
310  mePhiHitb_->Fill(double(phi));
311 
312  // KC: HF energy is in photoelectrons rather than eV, so it will not be
313  // included in total HCal energy
314  if (subdet != static_cast<int>(HcalForward)) {
316 
317  // Since the HF energy is a different scale it does not make sense to
318  // include it in the Energy Weighted Plot
319  meTimeWHit_->Fill(double(time), energy);
320  }
321  meTimeHit_->Fill(time);
322 
323  if (subdet == static_cast<int>(HcalBarrel)) {
324  meHBDepHit_->Fill(double(depth));
325  meHBEtaHit_->Fill(double(eta));
326  meHBPhiHit_->Fill(double(phi));
330  meHBL10Ene_->Fill(log10en);
331  if (log10i >= 0 && log10i < 140)
332  encontHB[log10i] += energy;
333  entotHB += energy;
334 
335  HBEneMap[eta + eta_offset_HB][phi - 1] += energy;
336 
337  } else if (subdet == static_cast<int>(HcalEndcap)) {
338  meHEDepHit_->Fill(double(depth));
339  meHEEtaHit_->Fill(double(eta));
340  meHEPhiHit_->Fill(double(phi));
341 
342  bool isHEP17 = (phi >= 63) && (phi <= 66) && (eta > 0);
343  if (hep17_) {
344  if (!isHEP17) {
347  } else {
350  }
351  } else {
354  }
355 
357  meHEL10Ene_->Fill(log10en);
358  if (log10i >= 0 && log10i < 140)
359  encontHE[log10i] += energy;
360  entotHE += energy;
361 
362  HEEneMap[eta + eta_offset_HE][phi - 1] += energy;
363 
364  } else if (subdet == static_cast<int>(HcalOuter)) {
365  meHODepHit_->Fill(double(depth));
366  meHOEtaHit_->Fill(double(eta));
367  meHOPhiHit_->Fill(double(phi));
371  meHOL10Ene_->Fill(log10en);
372  if (log10i >= 0 && log10i < 140)
373  encontHO[log10i] += energy;
374  entotHO += energy;
375 
376  HOEneMap[eta + eta_offset_HO][phi - 1] += energy;
377 
378  } else if (subdet == static_cast<int>(HcalForward)) {
379  meHFDepHit_->Fill(double(depth));
380  meHFDepHitw_->Fill(double(depth), energy);
381  meHFEtaHit_->Fill(double(eta));
382  meHFPhiHit_->Fill(double(phi));
386  meHFL10Ene_->Fill(log10en);
387  if (log10i >= 0 && log10i < 140)
388  encontHF[log10i] += energy;
389  entotHF += energy;
390 
391  HFEneMap[eta + eta_offset_HF][phi - 1] += energy;
392  }
393  }
394  }
395  if (entotHB != 0)
396  for (int i = 0; i < 140; i++)
397  meHBL10EneP_->Fill(-10. + (float(i) + 0.5) / 10., encontHB[i] / entotHB);
398  if (entotHE != 0)
399  for (int i = 0; i < 140; i++)
400  meHEL10EneP_->Fill(-10. + (float(i) + 0.5) / 10., encontHE[i] / entotHE);
401  if (entotHF != 0)
402  for (int i = 0; i < 140; i++)
403  meHFL10EneP_->Fill(-10. + (float(i) + 0.5) / 10., encontHF[i] / entotHF);
404  if (entotHO != 0)
405  for (int i = 0; i < 140; i++)
406  meHOL10EneP_->Fill(-10. + (float(i) + 0.5) / 10., encontHO[i] / entotHO);
407 
408  meAllNHit_->Fill(double(nHit));
409  meBadDetHit_->Fill(double(nBad1));
410  meBadSubHit_->Fill(double(nBad2));
411  meBadIdHit_->Fill(double(nBad));
412  meHBNHit_->Fill(double(nHB));
413  meHENHit_->Fill(double(nHE));
414  meHONHit_->Fill(double(nHO));
415  meHFNHit_->Fill(double(nHF));
416 
417  for (int i = 0; i < ieta_bins_HB; i++) {
418  for (int j = 0; j < iphi_bins; j++) {
419  if (HBEneMap[i][j] != 0) {
420  meHBEneSum_->Fill(HBEneMap[i][j]);
421  meHBEneSum_vs_ieta_->Fill((i - eta_offset_HB), HBEneMap[i][j]);
422  meHBEneMap_->Fill((i - eta_offset_HB), j + 1, HBEneMap[i][j]);
423  }
424  }
425  }
426 
427  for (int i = 0; i < ieta_bins_HE; i++) {
428  for (int j = 0; j < iphi_bins; j++) {
429  if (HEEneMap[i][j] != 0) {
430  meHEEneSum_->Fill(HEEneMap[i][j]);
431  meHEEneSum_vs_ieta_->Fill((i - eta_offset_HE), HEEneMap[i][j]);
432  meHEEneMap_->Fill((i - eta_offset_HE), j + 1, HEEneMap[i][j]);
433  }
434  }
435  }
436 
437  for (int i = 0; i < ieta_bins_HO; i++) {
438  for (int j = 0; j < iphi_bins; j++) {
439  if (HOEneMap[i][j] != 0) {
440  meHOEneSum_->Fill(HOEneMap[i][j]);
441  meHOEneSum_vs_ieta_->Fill((i - eta_offset_HO), HOEneMap[i][j]);
442  meHOEneMap_->Fill((i - eta_offset_HO), j + 1, HOEneMap[i][j]);
443  }
444  }
445  }
446 
447  for (int i = 0; i < ieta_bins_HF; i++) {
448  for (int j = 0; j < iphi_bins; j++) {
449  if (HFEneMap[i][j] != 0) {
450  meHFEneSum_->Fill(HFEneMap[i][j]);
451  meHFEneSum_vs_ieta_->Fill((i - eta_offset_HF), HFEneMap[i][j]);
452  meHFEneMap_->Fill((i - eta_offset_HF), j + 1, HFEneMap[i][j]);
453  }
454  }
455  }
456 
457  edm::LogVerbatim("HcalSim") << "HcalSimHitStudy::analyzeHits: HB " << nHB << " HE " << nHE << " HO " << nHO << " HF "
458  << nHF << " Bad " << nBad << " All " << nHit;
459 }
HcalSimHitStudy::meEtaPhiHit_
MonitorElement * meEtaPhiHit_
Definition: HcalSimHitStudy.h:67
mps_fire.i
i
Definition: mps_fire.py:428
HcalSimHitStudy::~HcalSimHitStudy
~HcalSimHitStudy() override
Definition: HcalSimHitStudy.cc:23
HcalSimHitStudy::analyze
void analyze(const edm::Event &e, const edm::EventSetup &c) override
Definition: HcalSimHitStudy.cc:188
hfClusterShapes_cfi.hits
hits
Definition: hfClusterShapes_cfi.py:5
HcalSimHitStudy::meHODepHit_
MonitorElement * meHODepHit_
Definition: HcalSimHitStudy.h:70
HcalDetId::iphi
constexpr int iphi() const
get the cell iphi
Definition: HcalDetId.h:157
HcalSimHitStudy::meHEEneSum_
MonitorElement * meHEEneSum_
Definition: HcalSimHitStudy.h:75
HcalSimHitStudy::meHOL10EneP_
MonitorElement * meHOL10EneP_
Definition: HcalSimHitStudy.h:80
HcalSimHitStudy::meHOEneSum_vs_ieta_
MonitorElement * meHOEneSum_vs_ieta_
Definition: HcalSimHitStudy.h:76
edm::Run
Definition: Run.h:45
HcalSimHitStudy::maxDepthHF_
int maxDepthHF_
Definition: HcalSimHitStudy.h:45
HcalSimHitStudy::meHOEneMap_
MonitorElement * meHOEneMap_
Definition: HcalSimHitStudy.h:74
HcalSimHitStudy::ieta_bins_HF
int ieta_bins_HF
Definition: HcalSimHitStudy.h:57
HcalSimHitStudy::meHENHit_
MonitorElement * meHENHit_
Definition: HcalSimHitStudy.h:66
DetId::det
constexpr Detector det() const
get the detector field from this detid
Definition: DetId.h:46
HcalSimHitStudy::meHFEneSum_vs_ieta_
MonitorElement * meHFEneSum_vs_ieta_
Definition: HcalSimHitStudy.h:76
HcalSimHitStudy::hcons_
const HcalDDDRecConstants * hcons_
Definition: HcalSimHitStudy.h:43
HcalSimHitStudy::outFile_
std::string outFile_
Definition: HcalSimHitStudy.h:60
HcalSimHitStudy::meHEL10Ene_
MonitorElement * meHEL10Ene_
Definition: HcalSimHitStudy.h:79
HcalSimHitStudy::ieta_min_HF
float ieta_min_HF
Definition: HcalSimHitStudy.h:58
protons_cff.time
time
Definition: protons_cff.py:35
HcalSimHitStudy::hep17_
bool hep17_
Definition: HcalSimHitStudy.h:61
HcalSimHitStudy::testNumber_
bool testNumber_
Definition: HcalSimHitStudy.h:61
HcalDetId::depth
constexpr int depth() const
get the tower depth
Definition: HcalDetId.h:164
HcalSimHitStudy::meHOEtaHit_
MonitorElement * meHOEtaHit_
Definition: HcalSimHitStudy.h:71
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
HcalDDDRecConstants::getNPhi
int getNPhi(const int &type) const
Definition: HcalDDDRecConstants.h:93
HcalSimHitStudy::meHEEneMap_
MonitorElement * meHEEneMap_
Definition: HcalSimHitStudy.h:74
HcalSimHitStudy::g4Label
std::string g4Label
Definition: HcalSimHitStudy.h:60
edm::LogInfo
Log< level::Info, false > LogInfo
Definition: MessageLogger.h:125
HcalBarrel
Definition: HcalAssistant.h:33
HcalSimHitStudy::meHBEneSum_vs_ieta_
MonitorElement * meHBEneSum_vs_ieta_
Definition: HcalSimHitStudy.h:76
HcalSimHitStudy::meHEL10EneP_
MonitorElement * meHEL10EneP_
Definition: HcalSimHitStudy.h:80
HcalSimHitStudy::meHOTimHit_
MonitorElement * meHOTimHit_
Definition: HcalSimHitStudy.h:77
edm::Handle
Definition: AssociativeIterator.h:50
HcalSimHitStudy::meHBL10EneP_
MonitorElement * meHBL10EneP_
Definition: HcalSimHitStudy.h:80
HcalSimHitStudy::meHFEneMap_
MonitorElement * meHFEneMap_
Definition: HcalSimHitStudy.h:74
HcalSimHitStudy::ieta_max_HE
float ieta_max_HE
Definition: HcalSimHitStudy.h:54
HcalSimHitStudy::meHOEneHit_
MonitorElement * meHOEneHit_
Definition: HcalSimHitStudy.h:73
HcalSimHitStudy::mePhiHit_
MonitorElement * mePhiHit_
Definition: HcalSimHitStudy.h:69
HcalSimHitStudy::meHFTimHit_
MonitorElement * meHFTimHit_
Definition: HcalSimHitStudy.h:77
HcalSimHitStudy::meHEEneHit2_
MonitorElement * meHEEneHit2_
Definition: HcalSimHitStudy.h:78
HcalSimHitStudy::meEtaPhiHitDepth_
std::vector< MonitorElement * > meEtaPhiHitDepth_
Definition: HcalSimHitStudy.h:68
HcalSimHitStudy::meHBEneMap_
MonitorElement * meHBEneMap_
Definition: HcalSimHitStudy.h:74
HcalSimHitStudy::bookHistograms
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: HcalSimHitStudy.cc:25
HcalSimHitStudy::hcalHits
std::string hcalHits
Definition: HcalSimHitStudy.h:60
PVValHelper::eta
Definition: PVValidationHelpers.h:70
HcalSimHitStudy::meHBEneHit2_
MonitorElement * meHBEneHit2_
Definition: HcalSimHitStudy.h:78
HcalSimHitStudy::meSubdetHit_
MonitorElement * meSubdetHit_
Definition: HcalSimHitStudy.h:67
HcalSimHitStudy::meHONHit_
MonitorElement * meHONHit_
Definition: HcalSimHitStudy.h:66
dqm::impl::MonitorElement::Fill
void Fill(long long x)
Definition: MonitorElement.h:290
HcalSimHitStudy::meHFDepHit_
MonitorElement * meHFDepHit_
Definition: HcalSimHitStudy.h:70
HcalSimHitStudy::meBadIdHit_
MonitorElement * meBadIdHit_
Definition: HcalSimHitStudy.h:65
HcalSimHitStudy::maxDepth_
int maxDepth_
Definition: HcalSimHitStudy.h:46
HcalSimHitStudy::maxDepthHE_
int maxDepthHE_
Definition: HcalSimHitStudy.h:44
HcalOuter
Definition: HcalAssistant.h:35
HCALHighEnergyHPDFilter_cfi.energy
energy
Definition: HCALHighEnergyHPDFilter_cfi.py:5
HcalSimHitStudy::meHEP17EneHit_
MonitorElement * meHEP17EneHit_
Definition: HcalSimHitStudy.h:81
HcalSimHitStudy::ieta_min_HE
float ieta_min_HE
Definition: HcalSimHitStudy.h:54
HcalSimHitStudy::ieta_bins_HE
int ieta_bins_HE
Definition: HcalSimHitStudy.h:53
HcalSimHitStudy::meHFL10Ene_
MonitorElement * meHFL10Ene_
Definition: HcalSimHitStudy.h:79
LEDCalibrationChannels.depth
depth
Definition: LEDCalibrationChannels.py:65
HcalSimHitStudy::ieta_max_HF
float ieta_max_HF
Definition: HcalSimHitStudy.h:58
HcalSimHitStudy::meHFPhiHit_
MonitorElement * meHFPhiHit_
Definition: HcalSimHitStudy.h:72
HcalSimHitStudy::checkHit_
bool checkHit_
Definition: HcalSimHitStudy.h:61
HcalSimHitStudy::meHFEneSum_
MonitorElement * meHFEneSum_
Definition: HcalSimHitStudy.h:75
HcalSimHitStudy::tok_hits_
edm::EDGetTokenT< edm::PCaloHitContainer > tok_hits_
Definition: HcalSimHitStudy.h:63
HcalSimHitStudy::meHBDepHit_
MonitorElement * meHBDepHit_
Definition: HcalSimHitStudy.h:70
HcalSimHitStudy::ieta_min_HO
float ieta_min_HO
Definition: HcalSimHitStudy.h:56
HcalDetId::ieta
constexpr int ieta() const
get the cell ieta
Definition: HcalDetId.h:155
HcalSimHitStudy::meHFEneHit2_
MonitorElement * meHFEneHit2_
Definition: HcalSimHitStudy.h:78
edm::ParameterSet
Definition: ParameterSet.h:47
HcalSimHitStudy::ieta_max_HB
float ieta_max_HB
Definition: HcalSimHitStudy.h:52
HcalSimHitStudy::maxDepthHB_
int maxDepthHB_
Definition: HcalSimHitStudy.h:44
HcalSimHitStudy::meTimeHit_
MonitorElement * meTimeHit_
Definition: HcalSimHitStudy.h:69
HcalSimHitStudy::verbose_
bool verbose_
Definition: HcalSimHitStudy.h:61
HcalSimHitStudy::meHOL10Ene_
MonitorElement * meHOL10Ene_
Definition: HcalSimHitStudy.h:79
SiStripPI::max
Definition: SiStripPayloadInspectorHelper.h:169
HcalSimHitStudy::meHBEneSum_
MonitorElement * meHBEneSum_
Definition: HcalSimHitStudy.h:75
HcalSimHitStudy::meHETimHit_
MonitorElement * meHETimHit_
Definition: HcalSimHitStudy.h:77
HcalDetId.h
HcalSimHitStudy::meHBPhiHit_
MonitorElement * meHBPhiHit_
Definition: HcalSimHitStudy.h:72
HcalSimHitStudy::meEnergyHit_
MonitorElement * meEnergyHit_
Definition: HcalSimHitStudy.h:69
HcalHitRelabeller.h
HcalSimHitStudy::iphi_max
float iphi_max
Definition: HcalSimHitStudy.h:50
HcalSimHitStudy::ieta_bins_HO
int ieta_bins_HO
Definition: HcalSimHitStudy.h:55
HcalSimHitStudy::analyzeHits
void analyzeHits(std::vector< PCaloHit > &)
Definition: HcalSimHitStudy.cc:210
HcalDetId::subdet
constexpr HcalSubdetector subdet() const
get the subdetector
Definition: HcalDetId.h:138
HcalDetId
Definition: HcalDetId.h:12
createfilelist.int
int
Definition: createfilelist.py:10
HcalSimHitStudy::meHEEneSum_vs_ieta_
MonitorElement * meHEEneSum_vs_ieta_
Definition: HcalSimHitStudy.h:76
HcalSimHitStudy::meHOEneHit2_
MonitorElement * meHOEneHit2_
Definition: HcalSimHitStudy.h:78
HcalSimHitStudy::meDetectHit_
MonitorElement * meDetectHit_
Definition: HcalSimHitStudy.h:67
cuy.ib
ib
Definition: cuy.py:661
HcalSimHitStudy::meTimeWHit_
MonitorElement * meTimeWHit_
Definition: HcalSimHitStudy.h:69
edm::EventSetup
Definition: EventSetup.h:58
HcalSimHitStudy::mePhiHitb_
MonitorElement * mePhiHitb_
Definition: HcalSimHitStudy.h:69
HcalSimHitStudy::meHBL10Ene_
MonitorElement * meHBL10Ene_
Definition: HcalSimHitStudy.h:79
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
HcalSimHitStudy::meBadSubHit_
MonitorElement * meBadSubHit_
Definition: HcalSimHitStudy.h:65
edm::EventSetup::getData
bool getData(T &iHolder) const
Definition: EventSetup.h:127
HcalForward
Definition: HcalAssistant.h:36
DDAxes::phi
HcalSimHitStudy::tok_HRNDC_
edm::ESGetToken< HcalDDDRecConstants, HcalRecNumberingRecord > tok_HRNDC_
Definition: HcalSimHitStudy.h:47
HcalHitRelabeller::relabel
DetId relabel(const uint32_t testId) const
Definition: HcalHitRelabeller.cc:49
HcalSimHitStudy::ieta_min_HB
float ieta_min_HB
Definition: HcalSimHitStudy.h:52
HcalSimHitStudy::ieta_max_HO
float ieta_max_HO
Definition: HcalSimHitStudy.h:56
HcalSimHitStudy::meHEDepHit_
MonitorElement * meHEDepHit_
Definition: HcalSimHitStudy.h:70
writedatasetfile.run
run
Definition: writedatasetfile.py:27
HcalSimHitStudy::meBadDetHit_
MonitorElement * meBadDetHit_
Definition: HcalSimHitStudy.h:65
HcalDDDRecConstants::getEtaRange
std::pair< int, int > getEtaRange(const int &i) const
Definition: HcalDDDRecConstants.h:74
HcalSimHitStudy::meDepthHit_
MonitorElement * meDepthHit_
Definition: HcalSimHitStudy.h:67
HcalSimHitStudy::meHEPhiHit_
MonitorElement * meHEPhiHit_
Definition: HcalSimHitStudy.h:72
HcalEndcap
Definition: HcalAssistant.h:34
hcalTTPDigis_cfi.iEtaMax
iEtaMax
Definition: hcalTTPDigis_cfi.py:16
edm::LogVerbatim
Log< level::Info, true > LogVerbatim
Definition: MessageLogger.h:128
HcalSimHitStudy::meHBNHit_
MonitorElement * meHBNHit_
Definition: HcalSimHitStudy.h:66
HcalSimHitStudy::meEtaHit_
MonitorElement * meEtaHit_
Definition: HcalSimHitStudy.h:67
HcalSimHitStudy::meHOPhiHit_
MonitorElement * meHOPhiHit_
Definition: HcalSimHitStudy.h:72
HcalSimHitStudy::meHOEneSum_
MonitorElement * meHOEneSum_
Definition: HcalSimHitStudy.h:75
HcalSimHitStudy::iphi_min
float iphi_min
Definition: HcalSimHitStudy.h:50
HcalSimHitStudy::meHFNHit_
MonitorElement * meHFNHit_
Definition: HcalSimHitStudy.h:66
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
HcalSimHitStudy::meHBEneHit_
MonitorElement * meHBEneHit_
Definition: HcalSimHitStudy.h:73
Exception.h
HcalSimHitStudy.h
HcalSimHitStudy::meHEP17EneHit2_
MonitorElement * meHEP17EneHit2_
Definition: HcalSimHitStudy.h:81
dqm::implementation::IBooker
Definition: DQMStore.h:43
HcalDDDRecConstants::getMaxDepth
int getMaxDepth(const int &type) const
Definition: HcalDDDRecConstants.h:88
HcalSimHitStudy::meAllNHit_
MonitorElement * meAllNHit_
Definition: HcalSimHitStudy.h:65
HcalSimHitStudy::meHFL10EneP_
MonitorElement * meHFL10EneP_
Definition: HcalSimHitStudy.h:80
HcalSimHitStudy::meHFDepHitw_
MonitorElement * meHFDepHitw_
Definition: HcalSimHitStudy.h:70
HcalSimHitStudy::meHFEtaHit_
MonitorElement * meHFEtaHit_
Definition: HcalSimHitStudy.h:71
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
HcalSimHitStudy::meHFEneHit_
MonitorElement * meHFEneHit_
Definition: HcalSimHitStudy.h:73
HcalSimHitStudy::meHEEtaHit_
MonitorElement * meHEEtaHit_
Definition: HcalSimHitStudy.h:71
edm::Event
Definition: Event.h:73
HcalSimHitStudy::ieta_bins_HB
int ieta_bins_HB
Definition: HcalSimHitStudy.h:51
TauDecayModes.dec
dec
Definition: TauDecayModes.py:142
HcalSimHitStudy::maxDepthHO_
int maxDepthHO_
Definition: HcalSimHitStudy.h:45
edm::InputTag
Definition: InputTag.h:15
HcalSimHitStudy::meHBTimHit_
MonitorElement * meHBTimHit_
Definition: HcalSimHitStudy.h:77
HcalSimHitStudy::meHEEneHit_
MonitorElement * meHEEneHit_
Definition: HcalSimHitStudy.h:73
HcalSimHitStudy::meHBEtaHit_
MonitorElement * meHBEtaHit_
Definition: HcalSimHitStudy.h:71
HcalSimHitStudy::HcalSimHitStudy
HcalSimHitStudy(const edm::ParameterSet &ps)
Definition: HcalSimHitStudy.cc:7
HcalSimHitStudy::iphi_bins
int iphi_bins
Definition: HcalSimHitStudy.h:49
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37