CMS 3D CMS Logo

AnalyzerMinbias.cc
Go to the documentation of this file.
1 // system include files
2 #include <memory>
3 #include <string>
4 #include <iostream>
5 #include <fstream>
6 #include <sstream>
7 #include <vector>
8 #include <map>
9 
10 // user include files
15 
39 
41 
51 
56 
57 #include "TFile.h"
58 #include "TH1.h"
59 #include "TH2.h"
60 #include "TTree.h"
61 
62 //#define EDM_ML_DEBUG
63 
64 namespace HcalMinbias {}
65 
66 // constructors and destructor
68 public:
69  explicit AnalyzerMinbias(const edm::ParameterSet&);
70  ~AnalyzerMinbias() override;
71 
72  void analyze(const edm::Event&, const edm::EventSetup&) override;
73  void beginJob() override;
74  void endJob() override;
75 
76 private:
77  void analyzeHcal(const HcalRespCorrs* myRecalib,
78  const HBHERecHitCollection& HithbheNS,
79  const HBHERecHitCollection& HithbheMB,
80  const HFRecHitCollection& HithfNS,
81  const HFRecHitCollection& HithfMB,
82  int algoBit,
83  bool fill);
84 
85  struct myInfo {
89  myInfo() {
90  theMB0 = theMB1 = theMB2 = theMB3 = theMB4 = 0;
91  theNS0 = theNS1 = theNS2 = theNS3 = theNS4 = 0;
92  theDif0 = theDif1 = theDif2 = runcheck = 0;
93  }
94  };
95 
96  // ----------member data ---------------------------
98  std::ofstream* myout_hcal;
99  TFile* hOutputFile;
100  TTree* myTree;
101  TH1D *h_Noise[4], *h_Signal[4];
103  double rnnum;
104 
105  // Root tree members
106  double rnnumber;
108  float phi, eta;
112 
113  std::map<std::pair<int, HcalDetId>, myInfo> myMap_;
120 };
121 
123  // get name of output file with histogramms
124  fOutputFileName = iConfig.getUntrackedParameter<std::string>("HistOutFile");
125 
126  // get token names of modules, producing object collections
127  tok_hbherecoMB_ = consumes<HBHERecHitCollection>(iConfig.getParameter<edm::InputTag>("hbheInputMB"));
128  tok_horecoMB_ = consumes<HORecHitCollection>(iConfig.getParameter<edm::InputTag>("hoInputMB"));
129  tok_hfrecoMB_ = consumes<HFRecHitCollection>(iConfig.getParameter<edm::InputTag>("hfInputMB"));
130 
131  tok_hbherecoNoise_ = consumes<HBHERecHitCollection>(iConfig.getParameter<edm::InputTag>("hbheInputNoise"));
132  tok_horecoNoise_ = consumes<HORecHitCollection>(iConfig.getParameter<edm::InputTag>("hoInputNoise"));
133  tok_hfrecoNoise_ = consumes<HFRecHitCollection>(iConfig.getParameter<edm::InputTag>("hfInputNoise"));
134 
135  theRecalib_ = iConfig.getParameter<bool>("Recalib");
136  ignoreL1_ = iConfig.getUntrackedParameter<bool>("IgnoreL1", true);
137  runNZS_ = iConfig.getUntrackedParameter<bool>("RunNZS", true);
138 
139  tok_hbheNormal_ = consumes<HBHERecHitCollection>(edm::InputTag("hbhereco"));
140  tok_hltL1GtMap_ = consumes<L1GlobalTriggerObjectMapRecord>(edm::InputTag("hltL1GtObjectMap"));
141 
142  tok_respCorr_ = esConsumes<HcalRespCorrs, HcalRespCorrsRcd>();
143 }
144 
146 
148  std::string det[4] = {"HB", "HE", "HO", "HF"};
149  char name[80], title[80];
150  for (int subd = 0; subd < 4; ++subd) {
151  sprintf(name, "Noise_%s", det[subd].c_str());
152  sprintf(title, "Energy Distribution for Noise in %s", det[subd].c_str());
153  h_Noise[subd] = new TH1D(name, title, 100, -10., 10.);
154  sprintf(name, "Signal_%s", det[subd].c_str());
155  sprintf(title, "Energy Distribution for Signal in %s", det[subd].c_str());
156  h_Signal[subd] = new TH1D(name, title, 100, -10., 10.);
157  }
158 
159  hOutputFile = new TFile(fOutputFileName.c_str(), "RECREATE");
160  myTree = new TTree("RecJet", "RecJet Tree");
161  myTree->Branch("mydet", &mydet, "mydet/I");
162  myTree->Branch("mysubd", &mysubd, "mysubd/I");
163  myTree->Branch("cells", &cells, "cells");
164  myTree->Branch("depth", &depth, "depth/I");
165  myTree->Branch("ieta", &ieta, "ieta/I");
166  myTree->Branch("iphi", &iphi, "iphi/I");
167  myTree->Branch("eta", &eta, "eta/F");
168  myTree->Branch("phi", &phi, "phi/F");
169  myTree->Branch("mom0_MB", &mom0_MB, "mom0_MB/F");
170  myTree->Branch("mom1_MB", &mom1_MB, "mom1_MB/F");
171  myTree->Branch("mom2_MB", &mom2_MB, "mom2_MB/F");
172  myTree->Branch("mom3_MB", &mom3_MB, "mom3_MB/F");
173  myTree->Branch("mom4_MB", &mom4_MB, "mom4_MB/F");
174  myTree->Branch("mom0_Noise", &mom0_Noise, "mom0_Noise/F");
175  myTree->Branch("mom1_Noise", &mom1_Noise, "mom1_Noise/F");
176  myTree->Branch("mom2_Noise", &mom2_Noise, "mom2_Noise/F");
177  myTree->Branch("mom3_Noise", &mom3_Noise, "mom3_Noise/F");
178  myTree->Branch("mom4_Noise", &mom4_Noise, "mom4_Noise/F");
179  myTree->Branch("mom0_Diff", &mom0_Diff, "mom0_Diff/F");
180  myTree->Branch("mom1_Diff", &mom1_Diff, "mom1_Diff/F");
181  myTree->Branch("mom2_Diff", &mom2_Diff, "mom2_Diff/F");
182  myTree->Branch("occup", &occup, "occup/F");
183  myTree->Branch("trigbit", &trigbit, "trigbit/I");
184  myTree->Branch("rnnumber", &rnnumber, "rnnumber/D");
185 
186  myMap_.clear();
187 }
188 
189 // EndJob
190 //
192  int ii = 0;
193  for (std::map<std::pair<int, HcalDetId>, myInfo>::const_iterator itr = myMap_.begin(); itr != myMap_.end(); ++itr) {
194 #ifdef EDM_ML_DEBUG
195  edm::LogVerbatim("AnalyzerMB") << "Fired trigger bit number " << itr->first.first;
196 #endif
197  myInfo info = itr->second;
198  if (info.theMB0 > 0) {
199  mom0_MB = info.theMB0;
200  mom1_MB = info.theMB1;
201  mom2_MB = info.theMB2;
202  mom3_MB = info.theMB3;
203  mom4_MB = info.theMB4;
204  mom0_Noise = info.theNS0;
205  mom1_Noise = info.theNS1;
206  mom2_Noise = info.theNS2;
207  mom3_Noise = info.theNS3;
208  mom4_Noise = info.theNS4;
209  mom0_Diff = info.theDif0;
210  mom1_Diff = info.theDif1;
211  mom2_Diff = info.theDif2;
212  rnnumber = info.runcheck;
213  trigbit = itr->first.first;
214  mysubd = itr->first.second.subdet();
215  depth = itr->first.second.depth();
216  ieta = itr->first.second.ieta();
217  iphi = itr->first.second.iphi();
218 #ifdef EDM_ML_DEBUG
219  edm::LogVerbatim("AnalyzerMB") << " Result= " << trigbit << " " << mysubd << " " << ieta << " " << iphi
220  << " mom0 " << mom0_MB << " mom1 " << mom1_MB << " mom2 " << mom2_MB << " mom3 "
221  << mom3_MB << " mom4 " << mom4_MB << " mom0_Noise " << mom0_Noise << " mom1_Noise "
222  << mom1_Noise << " mom2_Noise " << mom2_Noise << " mom3_Noise " << mom3_Noise
223  << " mom4_Noise " << mom4_Noise << " mom0_Diff " << mom0_Diff << " mom1_Diff "
224  << mom1_Diff << " mom2_Diff " << mom2_Diff;
225 #endif
226  myTree->Fill();
227  ii++;
228  }
229  }
230  cells = ii;
231 #ifdef EDM_ML_DEBUG
232  edm::LogVerbatim("AnalyzerMB") << "cells " << cells;
233 #endif
234  hOutputFile->Write();
235  hOutputFile->cd();
236  myTree->Write();
237  for (int i = 0; i < 4; i++) {
238  h_Noise[i]->Write();
239  h_Signal[i]->Write();
240  }
241  hOutputFile->Close();
242 }
243 
244 //
245 // member functions
246 //
247 
248 // ------------ method called to produce the data ------------
249 
251  rnnum = (float)iEvent.run();
252  const HcalRespCorrs* myRecalib = nullptr;
253  if (theRecalib_) {
254  myRecalib = &iSetup.getData(tok_respCorr_);
255  } // theRecalib
256 
258  iEvent.getByToken(tok_hbheNormal_, hbheNormal);
259  if (!hbheNormal.isValid()) {
260  edm::LogVerbatim("AnalyzerMB") << " hbheNormal failed";
261  } else {
262  edm::LogVerbatim("AnalyzerMB") << " The size of the normal collection " << hbheNormal->size();
263  }
264 
266  iEvent.getByToken(tok_hbherecoNoise_, hbheNS);
267  if (!hbheNS.isValid()) {
268  edm::LogWarning("AnalyzerMB") << "HcalCalibAlgos: Error! can't get hbheNoise product!";
269  return;
270  }
271  const HBHERecHitCollection HithbheNS = *(hbheNS.product());
272  edm::LogVerbatim("AnalyzerMB") << "HBHE NS size of collection " << HithbheNS.size();
273  if (runNZS_ && HithbheNS.size() != 5184) {
274  edm::LogWarning("AnalyzerMB") << "HBHE NS problem " << rnnum << " size " << HithbheNS.size();
275  return;
276  }
277 
279  iEvent.getByToken(tok_hbherecoMB_, hbheMB);
280  if (!hbheMB.isValid()) {
281  edm::LogWarning("AnalyzerMB") << "HcalCalibAlgos: Error! can't get hbhe product!";
282  return;
283  }
284  const HBHERecHitCollection HithbheMB = *(hbheMB.product());
285  edm::LogVerbatim("AnalyzerMB") << "HBHE MB size of collection " << HithbheMB.size();
286  if (runNZS_ && HithbheMB.size() != 5184) {
287  edm::LogWarning("AnalyzerMB") << "HBHE problem " << rnnum << " size " << HithbheMB.size();
288  return;
289  }
290 
292  iEvent.getByToken(tok_hfrecoNoise_, hfNS);
293  if (!hfNS.isValid()) {
294  edm::LogWarning("AnalyzerMB") << "HcalCalibAlgos: Error! can't get hfNoise product!";
295  return;
296  }
297  const HFRecHitCollection HithfNS = *(hfNS.product());
298  edm::LogVerbatim("AnalyzerMB") << "HF NS size of collection " << HithfNS.size();
299  if (runNZS_ && HithfNS.size() != 1728) {
300  edm::LogWarning("AnalyzerMB") << "HF NS problem " << rnnum << " size " << HithfNS.size();
301  return;
302  }
303 
305  iEvent.getByToken(tok_hfrecoMB_, hfMB);
306  if (!hfMB.isValid()) {
307  edm::LogWarning("AnalyzerMB") << "HcalCalibAlgos: Error! can't get hf product!";
308  return;
309  }
310  const HFRecHitCollection HithfMB = *(hfMB.product());
311  edm::LogVerbatim("AnalyzerMB") << "HF MB size of collection " << HithfMB.size();
312  if (runNZS_ && HithfMB.size() != 1728) {
313  edm::LogWarning("AnalyzerMB") << "HF problem " << rnnum << " size " << HithfMB.size();
314  return;
315  }
316 
317  if (ignoreL1_) {
318  analyzeHcal(myRecalib, HithbheNS, HithbheMB, HithfNS, HithfMB, 1, true);
319  } else {
321  iEvent.getByToken(tok_hltL1GtMap_, gtObjectMapRecord);
322  if (gtObjectMapRecord.isValid()) {
323  const std::vector<L1GlobalTriggerObjectMap>& objMapVec = gtObjectMapRecord->gtObjectMap();
324  int ii(0);
325  bool ok(false), fill(true);
326  for (std::vector<L1GlobalTriggerObjectMap>::const_iterator itMap = objMapVec.begin(); itMap != objMapVec.end();
327  ++itMap, ++ii) {
328  bool resultGt = (*itMap).algoGtlResult();
329  if (resultGt == 1) {
330  ok = true;
331  int algoBit = (*itMap).algoBitNumber();
332  analyzeHcal(myRecalib, HithbheNS, HithbheMB, HithfNS, HithfMB, algoBit, fill);
333  fill = false;
334  std::string algoNameStr = (*itMap).algoName();
335 #ifdef EDM_ML_DEBUG
336  edm::LogVerbatim("AnalyzerMB") << "Trigger[" << ii << "] " << algoNameStr << " bit " << algoBit << " entered";
337 #endif
338  }
339  }
340  if (!ok)
341  edm::LogVerbatim("AnalyzerMB") << "No passed L1 Triggers";
342  }
343  }
344 }
345 
347  const HBHERecHitCollection& HithbheNS,
348  const HBHERecHitCollection& HithbheMB,
349  const HFRecHitCollection& HithfNS,
350  const HFRecHitCollection& HithfMB,
351  int algoBit,
352  bool fill) {
353  // Noise part for HB HE
354  std::map<std::pair<int, HcalDetId>, myInfo> tmpMap;
355  tmpMap.clear();
356 
357  for (HBHERecHitCollection::const_iterator hbheItr = HithbheNS.begin(); hbheItr != HithbheNS.end(); hbheItr++) {
358  // Recalibration of energy
359  float icalconst = 1.;
360  DetId mydetid = hbheItr->id().rawId();
361  if (theRecalib_)
362  icalconst = myRecalib->getValues(mydetid)->getValue();
363 
364  HBHERecHit aHit(hbheItr->id(), hbheItr->energy() * icalconst, hbheItr->time());
365  double energyhit = aHit.energy();
366 
367  DetId id = (*hbheItr).detid();
368  HcalDetId hid = HcalDetId(id);
369  std::map<std::pair<int, HcalDetId>, myInfo>::iterator itr1 = myMap_.find(std::pair<int, HcalDetId>(algoBit, hid));
370  if (itr1 == myMap_.end()) {
371  myInfo info;
372  myMap_[std::pair<int, HcalDetId>(algoBit, hid)] = info;
373  itr1 = myMap_.find(std::pair<int, HcalDetId>(algoBit, hid));
374  }
375  itr1->second.theNS0++;
376  itr1->second.theNS1 += energyhit;
377  itr1->second.theNS2 += (energyhit * energyhit);
378  itr1->second.theNS3 += (energyhit * energyhit * energyhit);
379  itr1->second.theNS4 += (energyhit * energyhit * energyhit * energyhit);
380  itr1->second.runcheck = rnnum;
381  if (fill)
382  h_Noise[hid.subdet() - 1]->Fill(energyhit);
383 
384  std::map<std::pair<int, HcalDetId>, myInfo>::iterator itr2 = tmpMap.find(std::pair<int, HcalDetId>(algoBit, hid));
385  if (itr2 == tmpMap.end()) {
386  myInfo info;
387  tmpMap[std::pair<int, HcalDetId>(algoBit, hid)] = info;
388  itr2 = tmpMap.find(std::pair<int, HcalDetId>(algoBit, hid));
389  }
390  itr2->second.theNS0++;
391  itr2->second.theNS1 += energyhit;
392  itr2->second.theNS2 += (energyhit * energyhit);
393  itr2->second.theNS3 += (energyhit * energyhit * energyhit);
394  itr2->second.theNS4 += (energyhit * energyhit * energyhit * energyhit);
395  itr2->second.runcheck = rnnum;
396 
397  } // HBHE_NS
398 
399  // Signal part for HB HE
400 
401  for (HBHERecHitCollection::const_iterator hbheItr = HithbheMB.begin(); hbheItr != HithbheMB.end(); hbheItr++) {
402  // Recalibration of energy
403  float icalconst = 1.;
404  DetId mydetid = hbheItr->id().rawId();
405  if (theRecalib_)
406  icalconst = myRecalib->getValues(mydetid)->getValue();
407 
408  HBHERecHit aHit(hbheItr->id(), hbheItr->energy() * icalconst, hbheItr->time());
409  double energyhit = aHit.energy();
410 
411  DetId id = (*hbheItr).detid();
412  HcalDetId hid = HcalDetId(id);
413 
414  std::map<std::pair<int, HcalDetId>, myInfo>::iterator itr1 = myMap_.find(std::pair<int, HcalDetId>(algoBit, hid));
415  std::map<std::pair<int, HcalDetId>, myInfo>::iterator itr2 = tmpMap.find(std::pair<int, HcalDetId>(algoBit, hid));
416 
417  if (itr1 == myMap_.end()) {
418  myInfo info;
419  myMap_[std::pair<int, HcalDetId>(algoBit, hid)] = info;
420  itr1 = myMap_.find(std::pair<int, HcalDetId>(algoBit, hid));
421  }
422  itr1->second.theMB0++;
423  itr1->second.theDif0 = 0;
424  itr1->second.theMB1 += energyhit;
425  itr1->second.theMB2 += (energyhit * energyhit);
426  itr1->second.theMB3 += (energyhit * energyhit * energyhit);
427  itr1->second.theMB4 += (energyhit * energyhit * energyhit * energyhit);
428  itr1->second.runcheck = rnnum;
429  float mydiff = 0.0;
430  if (itr2 != tmpMap.end()) {
431  mydiff = energyhit - (itr2->second.theNS1);
432  itr1->second.theDif0++;
433  itr1->second.theDif1 += mydiff;
434  itr1->second.theDif2 += (mydiff * mydiff);
435  if (fill)
436  h_Signal[hid.subdet() - 1]->Fill(mydiff);
437  }
438  } // HBHE_MB
439 
440  // HF
441 
442  for (HFRecHitCollection::const_iterator hbheItr = HithfNS.begin(); hbheItr != HithfNS.end(); hbheItr++) {
443  // Recalibration of energy
444  float icalconst = 1.;
445  DetId mydetid = hbheItr->id().rawId();
446  if (theRecalib_)
447  icalconst = myRecalib->getValues(mydetid)->getValue();
448 
449  HFRecHit aHit(hbheItr->id(), hbheItr->energy() * icalconst, hbheItr->time());
450  double energyhit = aHit.energy();
451  // Remove PMT hits
452  if (fabs(energyhit) > 40.)
453  continue;
454  DetId id = (*hbheItr).detid();
455  HcalDetId hid = HcalDetId(id);
456 
457  std::map<std::pair<int, HcalDetId>, myInfo>::iterator itr1 = myMap_.find(std::pair<int, HcalDetId>(algoBit, hid));
458 
459  if (itr1 == myMap_.end()) {
460  myInfo info;
461  myMap_[std::pair<int, HcalDetId>(algoBit, hid)] = info;
462  itr1 = myMap_.find(std::pair<int, HcalDetId>(algoBit, hid));
463  }
464  itr1->second.theNS0++;
465  itr1->second.theNS1 += energyhit;
466  itr1->second.theNS2 += (energyhit * energyhit);
467  itr1->second.theNS3 += (energyhit * energyhit * energyhit);
468  itr1->second.theNS4 += (energyhit * energyhit * energyhit * energyhit);
469  itr1->second.runcheck = rnnum;
470  if (fill)
471  h_Noise[hid.subdet() - 1]->Fill(energyhit);
472 
473  std::map<std::pair<int, HcalDetId>, myInfo>::iterator itr2 = tmpMap.find(std::pair<int, HcalDetId>(algoBit, hid));
474  if (itr2 == tmpMap.end()) {
475  myInfo info;
476  tmpMap[std::pair<int, HcalDetId>(algoBit, hid)] = info;
477  itr2 = tmpMap.find(std::pair<int, HcalDetId>(algoBit, hid));
478  }
479  itr2->second.theNS0++;
480  itr2->second.theNS1 += energyhit;
481  itr2->second.theNS2 += (energyhit * energyhit);
482  itr2->second.theNS3 += (energyhit * energyhit * energyhit);
483  itr2->second.theNS4 += (energyhit * energyhit * energyhit * energyhit);
484  itr2->second.runcheck = rnnum;
485 
486  } // HF_NS
487 
488  // Signal part for HF
489 
490  for (HFRecHitCollection::const_iterator hbheItr = HithfMB.begin(); hbheItr != HithfMB.end(); hbheItr++) {
491  // Recalibration of energy
492  float icalconst = 1.;
493  DetId mydetid = hbheItr->id().rawId();
494  if (theRecalib_)
495  icalconst = myRecalib->getValues(mydetid)->getValue();
496  HFRecHit aHit(hbheItr->id(), hbheItr->energy() * icalconst, hbheItr->time());
497 
498  double energyhit = aHit.energy();
499  // Remove PMT hits
500  if (fabs(energyhit) > 40.)
501  continue;
502 
503  DetId id = (*hbheItr).detid();
504  HcalDetId hid = HcalDetId(id);
505 
506  std::map<std::pair<int, HcalDetId>, myInfo>::iterator itr1 = myMap_.find(std::pair<int, HcalDetId>(algoBit, hid));
507  std::map<std::pair<int, HcalDetId>, myInfo>::iterator itr2 = tmpMap.find(std::pair<int, HcalDetId>(algoBit, hid));
508 
509  if (itr1 == myMap_.end()) {
510  myInfo info;
511  myMap_[std::pair<int, HcalDetId>(algoBit, hid)] = info;
512  itr1 = myMap_.find(std::pair<int, HcalDetId>(algoBit, hid));
513  }
514  itr1->second.theMB0++;
515  itr1->second.theDif0 = 0;
516  itr1->second.theMB1 += energyhit;
517  itr1->second.theMB2 += (energyhit * energyhit);
518  itr1->second.theMB3 += (energyhit * energyhit * energyhit);
519  itr1->second.theMB4 += (energyhit * energyhit * energyhit * energyhit);
520  itr1->second.runcheck = rnnum;
521  float mydiff = 0.0;
522  if (itr2 != tmpMap.end()) {
523  mydiff = energyhit - (itr2->second.theNS1);
524  itr1->second.theDif0++;
525  itr1->second.theDif1 += mydiff;
526  itr1->second.theDif2 += (mydiff * mydiff);
527  if (fill)
528  h_Signal[hid.subdet() - 1]->Fill(mydiff);
529  }
530  }
531 }
532 
533 //define this as a plug-in
L1GtTriggerMenu.h
CaloJetCollection.h
AnalyzerMinbias::mom2_Noise
float mom2_Noise
Definition: AnalyzerMinbias.cc:110
CaloJet.h
HcalRespCorrsRcd.h
runGCPTkAlMap.title
string title
Definition: runGCPTkAlMap.py:94
HcalRespCorrs
Definition: HcalRespCorrs.h:17
mps_fire.i
i
Definition: mps_fire.py:428
AnalyzerMinbias::mom4_Noise
float mom4_Noise
Definition: AnalyzerMinbias.cc:110
AnalyzerMinbias::eta
float eta
Definition: AnalyzerMinbias.cc:108
edm::SortedCollection::const_iterator
std::vector< T >::const_iterator const_iterator
Definition: SortedCollection.h:80
MessageLogger.h
dqmMemoryStats.float
float
Definition: dqmMemoryStats.py:127
AnalyzerMinbias::myInfo::theNS2
double theNS2
Definition: AnalyzerMinbias.cc:87
CaloRecHit::energy
constexpr float energy() const
Definition: CaloRecHit.h:29
edm::Handle::product
T const * product() const
Definition: Handle.h:70
AnalyzerMinbias::myInfo::theNS4
double theNS4
Definition: AnalyzerMinbias.cc:87
AnalyzerMinbias::myInfo::theDif2
double theDif2
Definition: AnalyzerMinbias.cc:88
ESHandle.h
TriggerResults.h
HcalCalibrationEventTypes.h
AnalyzerMinbias::mom0_Noise
float mom0_Noise
Definition: AnalyzerMinbias.cc:110
edm::EDGetTokenT
Definition: EDGetToken.h:33
AnalyzerMinbias::mom3_Diff
float mom3_Diff
Definition: AnalyzerMinbias.cc:111
L1GtTriggerMenuRcd.h
HBHERecHit
Definition: HBHERecHit.h:13
AnalyzerMinbias::tok_hbherecoMB_
edm::EDGetTokenT< HBHERecHitCollection > tok_hbherecoMB_
Definition: AnalyzerMinbias.cc:114
AnalyzerMinbias::myInfo::theNS0
double theNS0
Definition: AnalyzerMinbias.cc:87
AnalyzerMinbias::tok_hbheNormal_
edm::EDGetTokenT< HBHERecHitCollection > tok_hbheNormal_
Definition: AnalyzerMinbias.cc:117
AnalyzerMinbias
Definition: AnalyzerMinbias.cc:67
AnalyzerMinbias::theRecalib_
bool theRecalib_
Definition: AnalyzerMinbias.cc:102
edm::SortedCollection
Definition: SortedCollection.h:49
edm::SortedCollection::size
size_type size() const
Definition: SortedCollection.h:215
info
static const TGPicture * info(bool iBackgroundIsBlack)
Definition: FWCollectionSummaryWidget.cc:153
Jet.h
AnalyzerMinbias::analyzeHcal
void analyzeHcal(const HcalRespCorrs *myRecalib, const HBHERecHitCollection &HithbheNS, const HBHERecHitCollection &HithbheMB, const HFRecHitCollection &HithfNS, const HFRecHitCollection &HithfMB, int algoBit, bool fill)
Definition: AnalyzerMinbias.cc:346
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
EDAnalyzer.h
convertSQLiteXML.ok
bool ok
Definition: convertSQLiteXML.py:98
edm::Handle
Definition: AssociativeIterator.h:50
AnalyzerMinbias::tok_hbherecoNoise_
edm::EDGetTokenT< HBHERecHitCollection > tok_hbherecoNoise_
Definition: AnalyzerMinbias.cc:114
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
AnalyzerMinbias::analyze
void analyze(const edm::Event &, const edm::EventSetup &) override
Definition: AnalyzerMinbias.cc:250
HcalCondObjectContainer::getValues
const Item * getValues(DetId fId, bool throwOnFail=true) const
Definition: HcalCondObjectContainer.h:159
EcalRecHitCollections.h
AnalyzerMinbias::tok_hfrecoMB_
edm::EDGetTokenT< HFRecHitCollection > tok_hfrecoMB_
Definition: AnalyzerMinbias.cc:115
edm::EDAnalyzer
Definition: EDAnalyzer.h:28
AnalyzerMinbias::mom3_MB
float mom3_MB
Definition: AnalyzerMinbias.cc:109
AnalyzerMinbias::trigbit
int trigbit
Definition: AnalyzerMinbias.cc:107
DetId
Definition: DetId.h:17
MakerMacros.h
AnalyzerMinbias::rnnum
double rnnum
Definition: AnalyzerMinbias.cc:103
HFRecHit
Definition: HFRecHit.h:11
DEFINE_FWK_MODULE
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:16
L1GlobalTriggerRecord.h
AnalyzerMinbias::myInfo::runcheck
double runcheck
Definition: AnalyzerMinbias.cc:88
edm::SortedCollection::begin
const_iterator begin() const
Definition: SortedCollection.h:262
AnalyzerMinbias::myInfo::theMB2
double theMB2
Definition: AnalyzerMinbias.cc:86
AnalyzerMinbias::AnalyzerMinbias
AnalyzerMinbias(const edm::ParameterSet &)
Definition: AnalyzerMinbias.cc:122
AnalyzerMinbias::tok_horecoNoise_
edm::EDGetTokenT< HORecHitCollection > tok_horecoNoise_
Definition: AnalyzerMinbias.cc:116
Provenance.h
Run.h
AnalyzerMinbias::h_Noise
TH1D * h_Noise[4]
Definition: AnalyzerMinbias.cc:101
AnalyzerMinbias::~AnalyzerMinbias
~AnalyzerMinbias() override
Definition: AnalyzerMinbias.cc:145
AnalyzerMinbias::h_Signal
TH1D * h_Signal[4]
Definition: AnalyzerMinbias.cc:101
AnalyzerMinbias::ieta
int ieta
Definition: AnalyzerMinbias.cc:107
AnalyzerMinbias::mom0_Diff
float mom0_Diff
Definition: AnalyzerMinbias.cc:111
AnalyzerMinbias::myInfo::theMB3
double theMB3
Definition: AnalyzerMinbias.cc:86
AnalyzerMinbias::mydet
int mydet
Definition: AnalyzerMinbias.cc:107
AnalyzerMinbias::mom4_Diff
float mom4_Diff
Definition: AnalyzerMinbias.cc:111
AnalyzerMinbias::tok_respCorr_
edm::ESGetToken< HcalRespCorrs, HcalRespCorrsRcd > tok_respCorr_
Definition: AnalyzerMinbias.cc:119
CaloGeometryRecord.h
AnalyzerMinbias::myInfo::theDif0
double theDif0
Definition: AnalyzerMinbias.cc:88
AnalyzerMinbias::tok_horecoMB_
edm::EDGetTokenT< HORecHitCollection > tok_horecoMB_
Definition: AnalyzerMinbias.cc:116
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
ntuplemaker.fill
fill
Definition: ntuplemaker.py:304
AnalyzerMinbias::occup
float occup
Definition: AnalyzerMinbias.cc:109
HcalRespCorr::getValue
float getValue() const
Definition: HcalRespCorr.h:19
AnalyzerMinbias::mysubd
int mysubd
Definition: AnalyzerMinbias.cc:107
CaloSubdetectorGeometry.h
edm::ParameterSet
Definition: ParameterSet.h:47
AnalyzerMinbias::runNZS_
bool runNZS_
Definition: AnalyzerMinbias.cc:102
AnalyzerMinbias::myInfo::theMB1
double theMB1
Definition: AnalyzerMinbias.cc:86
Event.h
AnalyzerMinbias::hOutputFile
TFile * hOutputFile
Definition: AnalyzerMinbias.cc:99
AnalyzerMinbias::myInfo::theMB0
double theMB0
Definition: AnalyzerMinbias.cc:86
AnalyzerMinbias::iphi
int iphi
Definition: AnalyzerMinbias.cc:107
AnalyzerMinbias::myMap_
std::map< std::pair< int, HcalDetId >, myInfo > myMap_
Definition: AnalyzerMinbias.cc:113
edm::SortedCollection::end
const_iterator end() const
Definition: SortedCollection.h:267
HcalDetId.h
AnalyzerMinbias::mom2_MB
float mom2_MB
Definition: AnalyzerMinbias.cc:109
AnalyzerMinbias::endJob
void endJob() override
Definition: AnalyzerMinbias.cc:191
HcalDetId::subdet
constexpr HcalSubdetector subdet() const
get the subdetector
Definition: HcalDetId.h:138
AnalyzerMinbias::tok_hltL1GtMap_
edm::EDGetTokenT< L1GlobalTriggerObjectMapRecord > tok_hltL1GtMap_
Definition: AnalyzerMinbias.cc:118
HcalDetId
Definition: HcalDetId.h:12
TriggerNames.h
AnalyzerMinbias::beginJob
void beginJob() override
Definition: AnalyzerMinbias.cc:147
iEvent
int iEvent
Definition: GenABIO.cc:224
AnalyzerMinbias::myInfo::myInfo
myInfo()
Definition: AnalyzerMinbias.cc:89
AnalyzerMinbias::phi
float phi
Definition: AnalyzerMinbias.cc:108
IdealGeometryRecord.h
CaloTowerDetId.h
edm::EventSetup
Definition: EventSetup.h:57
HcalSubdetector.h
HcalRespCorrs.h
AnalyzerMinbias::fOutputFileName
std::string fOutputFileName
Definition: AnalyzerMinbias.cc:97
AnalyzerMinbias::mom1_Diff
float mom1_Diff
Definition: AnalyzerMinbias.cc:111
itr
std::vector< std::pair< float, float > >::iterator itr
Definition: HGCDigitizer.cc:29
AnalyzerMinbias::myInfo::theMB4
double theMB4
Definition: AnalyzerMinbias.cc:86
AnalyzerMinbias::cells
int cells
Definition: AnalyzerMinbias.cc:107
edm::ESGetToken< HcalRespCorrs, HcalRespCorrsRcd >
L1GtfeWord.h
edm::EventSetup::getData
bool getData(T &iHolder) const
Definition: EventSetup.h:120
CaloTowerCollection.h
AnalyzerMinbias::myInfo::theNS3
double theNS3
Definition: AnalyzerMinbias.cc:87
CaloCellGeometry.h
HcalMinbias
Definition: AnalyzerMinbias.cc:64
DetId::rawId
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
Ref.h
AnalyzerMinbias::mom1_MB
float mom1_MB
Definition: AnalyzerMinbias.cc:109
DetId.h
Frameworkfwd.h
edm::LogVerbatim
Log< level::Info, true > LogVerbatim
Definition: MessageLogger.h:128
AnalyzerMinbias::mom2_Diff
float mom2_Diff
Definition: AnalyzerMinbias.cc:111
AnalyzerMinbias::myTree
TTree * myTree
Definition: AnalyzerMinbias.cc:100
AnalyzerMinbias::mom1_Noise
float mom1_Noise
Definition: AnalyzerMinbias.cc:110
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
EventSetup.h
L1GlobalTriggerObjectMapRecord::gtObjectMap
const std::vector< L1GlobalTriggerObjectMap > & gtObjectMap() const
get / set the vector of object maps
Definition: L1GlobalTriggerObjectMapRecord.h:64
AnalyzerMinbias::myInfo::theNS1
double theNS1
Definition: AnalyzerMinbias.cc:87
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
HcalRecHitCollections.h
AnalyzerMinbias::depth
int depth
Definition: AnalyzerMinbias.cc:107
AnalyzerMinbias::rnnumber
double rnnumber
Definition: AnalyzerMinbias.cc:106
AnalyzerMinbias::hcalfile_
std::string hcalfile_
Definition: AnalyzerMinbias.cc:97
AnalyzerMinbias::myInfo::theDif1
double theDif1
Definition: AnalyzerMinbias.cc:88
HcalDCCHeader.h
Candidate.h
AnalyzerMinbias::mom3_Noise
float mom3_Noise
Definition: AnalyzerMinbias.cc:110
genParticles_cff.map
map
Definition: genParticles_cff.py:11
L1GlobalTriggerObjectMapRecord.h
AnalyzerMinbias::mom4_MB
float mom4_MB
Definition: AnalyzerMinbias.cc:109
ParameterSet.h
AnalyzerMinbias::myout_hcal
std::ofstream * myout_hcal
Definition: AnalyzerMinbias.cc:98
AnalyzerMinbias::ignoreL1_
bool ignoreL1_
Definition: AnalyzerMinbias.cc:102
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
edm::Event
Definition: Event.h:73
L1GlobalTriggerObjectMap.h
AnalyzerMinbias::myInfo
Definition: AnalyzerMinbias.cc:85
AnalyzerMinbias::mom0_MB
float mom0_MB
Definition: AnalyzerMinbias.cc:109
GlobalPoint.h
cuy.ii
ii
Definition: cuy.py:590
edm::InputTag
Definition: InputTag.h:15
L1GlobalTriggerReadoutRecord.h
AnalyzerMinbias::tok_hfrecoNoise_
edm::EDGetTokenT< HFRecHitCollection > tok_hfrecoNoise_
Definition: AnalyzerMinbias.cc:115