CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
HcalRecHitsValidation Class Reference

#include <HcalRecHitsValidation.h>

Inheritance diagram for HcalRecHitsValidation:
DQMEDAnalyzer edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >

Public Member Functions

void analyze (edm::Event const &ev, edm::EventSetup const &c) override
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
 HcalRecHitsValidation (edm::ParameterSet const &conf)
 
 ~HcalRecHitsValidation () override
 
- Public Member Functions inherited from DQMEDAnalyzer
void accumulate (edm::Event const &event, edm::EventSetup const &setup) final
 
void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
void beginStream (edm::StreamID id) final
 
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &)
 
 DQMEDAnalyzer ()
 
void endLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void endRun (edm::Run const &run, edm::EventSetup const &setup) final
 
virtual bool getCanSaveByLumi ()
 
- Public Member Functions inherited from edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >
 EDProducer ()=default
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndRuns () const final
 

Private Member Functions

double dPhiWsign (double phi1, double phi2)
 
double dR (double eta1, double phi1, double eta2, double phi2)
 
virtual void fillRecHitsTmp (int subdet_, edm::Event const &ev)
 
double phi12 (double phi1, double en1, double phi2, double en2)
 

Private Attributes

std::vector< uint32_t > cauxstwd
 
std::vector< double > cchi2
 
std::vector< int > cdepth
 
std::vector< double > cen
 
std::vector< double > ceta
 
std::vector< int > cieta
 
std::vector< int > ciphi
 
std::vector< double > cphi
 
std::vector< uint32_t > cstwd
 
std::vector< int > csub
 
std::vector< double > ctime
 
std::vector< double > cz
 
std::string ecalselector_
 
edm::ESHandle< CaloGeometrygeometry
 
std::string hcalselector_
 
int imc
 
int iz
 
std::string mc_
 
MonitorElementmeEnConeEtaProfile
 
MonitorElementmeEnConeEtaProfile_E
 
MonitorElementmeEnConeEtaProfile_EH
 
MonitorElementmeEnergyHcalVsEcalHB
 
MonitorElementmeEnergyHcalVsEcalHE
 
MonitorElementmeLog10Chi2profileHB
 
MonitorElementmeLog10Chi2profileHE
 
MonitorElementmeRecHitsEnergyHB
 
MonitorElementmeRecHitsEnergyHE
 
MonitorElementmeRecHitsEnergyHF
 
MonitorElementmeRecHitsEnergyHO
 
MonitorElementmeRecHitSimHitHB
 
MonitorElementmeRecHitSimHitHE
 
MonitorElementmeRecHitSimHitHF
 
MonitorElementmeRecHitSimHitHFL
 
MonitorElementmeRecHitSimHitHFS
 
MonitorElementmeRecHitSimHitHO
 
MonitorElementmeRecHitSimHitProfileHB
 
MonitorElementmeRecHitSimHitProfileHE
 
MonitorElementmeRecHitSimHitProfileHF
 
MonitorElementmeRecHitSimHitProfileHFL
 
MonitorElementmeRecHitSimHitProfileHFS
 
MonitorElementmeRecHitSimHitProfileHO
 
MonitorElementmeRecHitsM2Chi2HB
 
MonitorElementmeRecHitsM2Chi2HE
 
MonitorElementmeTEprofileHB
 
MonitorElementmeTEprofileHB_High
 
MonitorElementmeTEprofileHB_Low
 
MonitorElementmeTEprofileHE
 
MonitorElementmeTEprofileHE_Low
 
MonitorElementmeTEprofileHF
 
MonitorElementmeTEprofileHF_Low
 
MonitorElementmeTEprofileHO
 
MonitorElementmeTEprofileHO_High
 
int nevtot
 
std::string outputFile_
 
std::string sign_
 
int subdet_
 
bool testNumber_
 
edm::EDGetTokenT< EBRecHitCollectiontok_EB_
 
edm::EDGetTokenT< EERecHitCollectiontok_EE_
 
edm::EDGetTokenT< edm::HepMCProducttok_evt_
 
edm::EDGetTokenT< HBHERecHitCollectiontok_hbhe_
 
edm::EDGetTokenT< HFRecHitCollectiontok_hf_
 
edm::EDGetTokenT< edm::PCaloHitContainertok_hh_
 
edm::EDGetTokenT< HORecHitCollectiontok_ho_
 
std::string topFolderName_
 

Additional Inherited Members

- Public Types inherited from DQMEDAnalyzer
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- Public Types inherited from edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >
typedef CacheContexts< T... > CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T... > HasAbility
 
typedef CacheTypes::LuminosityBlockCache LuminosityBlockCache
 
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 
- Static Public Member Functions inherited from DQMEDAnalyzer
static void globalEndJob (DQMEDAnalyzerGlobalCache const *)
 
static void globalEndLuminosityBlockProduce (edm::LuminosityBlock &lumi, edm::EventSetup const &setup, LuminosityBlockContext const *context)
 
static void globalEndRunProduce (edm::Run &run, edm::EventSetup const &setup, RunContext const *context)
 
static std::unique_ptr< DQMEDAnalyzerGlobalCacheinitializeGlobalCache (edm::ParameterSet const &)
 
- Protected Member Functions inherited from DQMEDAnalyzer
uint64_t meId () const
 
- Protected Attributes inherited from DQMEDAnalyzer
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 
unsigned int streamId_
 

Detailed Description

Definition at line 55 of file HcalRecHitsValidation.h.

Constructor & Destructor Documentation

◆ HcalRecHitsValidation()

HcalRecHitsValidation::HcalRecHitsValidation ( edm::ParameterSet const &  conf)

Definition at line 8 of file HcalRecHitsValidation.cc.

9  : topFolderName_(conf.getParameter<std::string>("TopFolderName")) {
10  // DQM ROOT output
11  outputFile_ = conf.getUntrackedParameter<std::string>("outputFile", "myfile.root");
12 
13  if (!outputFile_.empty()) {
14  edm::LogInfo("OutputInfo") << " Hcal RecHit Task histograms will be saved to '" << outputFile_.c_str() << "'";
15  } else {
16  edm::LogInfo("OutputInfo") << " Hcal RecHit Task histograms will NOT be saved";
17  }
18 
19  nevtot = 0;
20 
21  hcalselector_ = conf.getUntrackedParameter<std::string>("hcalselector", "all");
22  ecalselector_ = conf.getUntrackedParameter<std::string>("ecalselector", "yes");
23  sign_ = conf.getUntrackedParameter<std::string>("sign", "*");
24  mc_ = conf.getUntrackedParameter<std::string>("mc", "yes");
25  testNumber_ = conf.getParameter<bool>("TestNumber");
26 
27  // Collections
28  tok_hbhe_ = consumes<HBHERecHitCollection>(conf.getUntrackedParameter<edm::InputTag>("HBHERecHitCollectionLabel"));
29  tok_hf_ = consumes<HFRecHitCollection>(conf.getUntrackedParameter<edm::InputTag>("HFRecHitCollectionLabel"));
30  tok_ho_ = consumes<HORecHitCollection>(conf.getUntrackedParameter<edm::InputTag>("HORecHitCollectionLabel"));
31 
32  // register for data access
33  tok_evt_ = consumes<edm::HepMCProduct>(edm::InputTag("generatorSmeared"));
34  edm::InputTag EBRecHitCollectionLabel = conf.getParameter<edm::InputTag>("EBRecHitCollectionLabel");
35  tok_EB_ = consumes<EBRecHitCollection>(EBRecHitCollectionLabel);
36  edm::InputTag EERecHitCollectionLabel = conf.getParameter<edm::InputTag>("EERecHitCollectionLabel");
37  tok_EE_ = consumes<EERecHitCollection>(EERecHitCollectionLabel);
38 
39  tok_hh_ = consumes<edm::PCaloHitContainer>(conf.getUntrackedParameter<edm::InputTag>("SimHitCollectionLabel"));
40 
41  subdet_ = 5;
42  if (hcalselector_ == "noise")
43  subdet_ = 0;
44  if (hcalselector_ == "HB")
45  subdet_ = 1;
46  if (hcalselector_ == "HE")
47  subdet_ = 2;
48  if (hcalselector_ == "HO")
49  subdet_ = 3;
50  if (hcalselector_ == "HF")
51  subdet_ = 4;
52  if (hcalselector_ == "all")
53  subdet_ = 5;
54  if (hcalselector_ == "ZS")
55  subdet_ = 6;
56 
57  iz = 1;
58  if (sign_ == "-")
59  iz = -1;
60  if (sign_ == "*")
61  iz = 0;
62 
63  imc = 1;
64  if (mc_ == "no")
65  imc = 0;
66 }

References PDWG_EXOHSCP_cff::EBRecHitCollectionLabel, ecalselector_, PDWG_EXOHSCP_cff::EERecHitCollectionLabel, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), hcalselector_, imc, iz, mc_, nevtot, outputFile_, sign_, AlCaHLTBitMon_QueryRunRegistry::string, subdet_, testNumber_, tok_EB_, tok_EE_, tok_evt_, tok_hbhe_, tok_hf_, tok_hh_, and tok_ho_.

◆ ~HcalRecHitsValidation()

HcalRecHitsValidation::~HcalRecHitsValidation ( )
override

Definition at line 68 of file HcalRecHitsValidation.cc.

68 {}

Member Function Documentation

◆ analyze()

void HcalRecHitsValidation::analyze ( edm::Event const &  ev,
edm::EventSetup const &  c 
)
overridevirtual

Reimplemented from DQMEDAnalyzer.

Definition at line 189 of file HcalRecHitsValidation.cc.

189  {
190  using namespace edm;
191 
193  c.get<HcalRecNumberingRecord>().get(pHRNDC);
194  const HcalDDDRecConstants *hcons = &(*pHRNDC);
195 
196  // cuts for each subdet_ector mimiking "Scheme B"
197  // double cutHB = 0.9, cutHE = 1.4, cutHO = 1.1, cutHFL = 1.2, cutHFS = 1.8;
198 
199  // energy in HCAL
200  double eHcal = 0.;
201  double eHcalCone = 0.;
202  double eHcalConeHB = 0.;
203  double eHcalConeHE = 0.;
204  double eHcalConeHO = 0.;
205  double eHcalConeHF = 0.;
206  double eHcalConeHFL = 0.;
207  double eHcalConeHFS = 0.;
208 
209  // Total numbet of RecHits in HCAL, in the cone, above 1 GeV theshold
210  int nrechits = 0;
211  int nrechitsCone = 0;
212  int nrechitsThresh = 0;
213 
214  // energy in ECAL
215  double eEcal = 0.;
216  double eEcalB = 0.;
217  double eEcalE = 0.;
218  double eEcalCone = 0.;
219  int numrechitsEcal = 0;
220 
221  // MC info
222  double phi_MC = -999999.; // phi of initial particle from HepMC
223  double eta_MC = -999999.; // eta of initial particle from HepMC
224 
225  // HCAL energy around MC eta-phi at all depths;
226  double partR = 0.3;
227 
228  if (imc != 0) {
230  ev.getByToken(tok_evt_, evtMC); // generator in late 310_preX
231  if (!evtMC.isValid()) {
232  edm::LogInfo("HcalRecHitsValidation") << "no HepMCProduct found";
233  } else {
234  // std::cout << "*** source HepMCProduct found"<< std::endl;
235  }
236 
237  // MC particle with highest pt is taken as a direction reference
238  double maxPt = -99999.;
239  int npart = 0;
240  const HepMC::GenEvent *myGenEvent = evtMC->GetEvent();
241  for (HepMC::GenEvent::particle_const_iterator p = myGenEvent->particles_begin(); p != myGenEvent->particles_end();
242  ++p) {
243  double phip = (*p)->momentum().phi();
244  double etap = (*p)->momentum().eta();
245  // phi_MC = phip;
246  // eta_MC = etap;
247  double pt = (*p)->momentum().perp();
248  if (pt > maxPt) {
249  npart++;
250  maxPt = pt;
251  phi_MC = phip;
252  eta_MC = etap;
253  }
254  }
255  // std::cout << "*** Max pT = " << maxPt << std::endl;
256  }
257 
258  // std::cout << "*** 2" << std::endl;
259 
261 
262  // Fill working vectors of HCAL RecHits quantities (all of these are drawn)
264 
265  // std::cout << "*** 3" << std::endl;
266 
267  //===========================================================================
268  // IN ALL other CASES : ieta-iphi maps
269  //===========================================================================
270 
271  // ECAL
272  if (ecalselector_ == "yes" && (subdet_ == 1 || subdet_ == 2 || subdet_ == 5)) {
274 
277 
278  if (ev.getByToken(tok_EB_, rhitEB)) {
279  RecHit = rhitEB.product()->begin();
280  RecHitEnd = rhitEB.product()->end();
281 
282  for (; RecHit != RecHitEnd; ++RecHit) {
283  EBDetId EBid = EBDetId(RecHit->id());
284 
285  auto cellGeometry = geometry->getSubdetectorGeometry(EBid)->getGeometry(EBid);
286  double eta = cellGeometry->getPosition().eta();
287  double phi = cellGeometry->getPosition().phi();
288  double en = RecHit->energy();
289  eEcal += en;
290  eEcalB += en;
291 
292  double r = dR(eta_MC, phi_MC, eta, phi);
293  if (r < partR) {
294  eEcalCone += en;
295  numrechitsEcal++;
296  }
297  }
298  }
299 
301 
302  if (ev.getByToken(tok_EE_, rhitEE)) {
303  RecHit = rhitEE.product()->begin();
304  RecHitEnd = rhitEE.product()->end();
305 
306  for (; RecHit != RecHitEnd; ++RecHit) {
307  EEDetId EEid = EEDetId(RecHit->id());
308 
309  auto cellGeometry = geometry->getSubdetectorGeometry(EEid)->getGeometry(EEid);
310  double eta = cellGeometry->getPosition().eta();
311  double phi = cellGeometry->getPosition().phi();
312  double en = RecHit->energy();
313  eEcal += en;
314  eEcalE += en;
315 
316  double r = dR(eta_MC, phi_MC, eta, phi);
317  if (r < partR) {
318  eEcalCone += en;
319  numrechitsEcal++;
320  }
321  }
322  }
323  } // end of ECAL selection
324 
325  // std::cout << "*** 4" << std::endl;
326 
327  //===========================================================================
328  // SUBSYSTEMS,
329  //===========================================================================
330 
331  if ((subdet_ != 6) && (subdet_ != 0)) {
332  // std::cout << "*** 6" << std::endl;
333 
334  double HcalCone = 0.;
335 
336  int ietaMax = 9999;
337  double etaMax = 9999.;
338 
339  // CYCLE over cells ====================================================
340 
341  for (unsigned int i = 0; i < cen.size(); i++) {
342  int sub = csub[i];
343  int depth = cdepth[i];
344  double eta = ceta[i];
345  double phi = cphi[i];
346  double en = cen[i];
347  double t = ctime[i];
348  int ieta = cieta[i];
349  double chi2 = cchi2[i];
350 
351  double chi2_log10 = 9.99; // initial value above histos limits , keep it if chi2 <= 0.
352  if (chi2 > 0.)
353  chi2_log10 = log10(chi2);
354 
355  nrechits++;
356  eHcal += en;
357  if (en > 1.)
358  nrechitsThresh++;
359 
360  double r = dR(eta_MC, phi_MC, eta, phi);
361  if (r < partR) {
362  if (sub == 1)
363  eHcalConeHB += en;
364  if (sub == 2)
365  eHcalConeHE += en;
366  if (sub == 3)
367  eHcalConeHO += en;
368  if (sub == 4) {
369  eHcalConeHF += en;
370  if (depth == 1)
371  eHcalConeHFL += en;
372  else
373  eHcalConeHFS += en;
374  }
375  eHcalCone += en;
376  nrechitsCone++;
377 
378  HcalCone += en;
379 
380  // alternative: ietamax -> closest to MC eta !!!
381  float eta_diff = fabs(eta_MC - eta);
382  if (eta_diff < etaMax) {
383  etaMax = eta_diff;
384  ietaMax = ieta;
385  }
386  }
387 
388  // The energy and overall timing histos are drawn while
389  // the ones split by depth are not
390  if (sub == 1 && (subdet_ == 1 || subdet_ == 5)) {
391  meRecHitsM2Chi2HB->Fill(chi2_log10);
392  meLog10Chi2profileHB->Fill(en, chi2_log10);
393 
394  meRecHitsEnergyHB->Fill(en);
395 
396  meTEprofileHB_Low->Fill(en, t);
397  meTEprofileHB->Fill(en, t);
398  meTEprofileHB_High->Fill(en, t);
399  }
400  if (sub == 2 && (subdet_ == 2 || subdet_ == 5)) {
401  meRecHitsM2Chi2HE->Fill(chi2_log10);
402  meLog10Chi2profileHE->Fill(en, chi2_log10);
403 
404  meRecHitsEnergyHE->Fill(en);
405 
406  meTEprofileHE_Low->Fill(en, t);
407  meTEprofileHE->Fill(en, t);
408  }
409  if (sub == 4 && (subdet_ == 4 || subdet_ == 5)) {
410  meRecHitsEnergyHF->Fill(en);
411 
412  meTEprofileHF_Low->Fill(en, t);
413  meTEprofileHF->Fill(en, t);
414  }
415  if (sub == 3 && (subdet_ == 3 || subdet_ == 5)) {
416  meRecHitsEnergyHO->Fill(en);
417 
418  meTEprofileHO->Fill(en, t);
419  meTEprofileHO_High->Fill(en, t);
420  }
421  }
422 
423  if (imc != 0) {
424  meEnConeEtaProfile->Fill(double(ietaMax), HcalCone); //
425  meEnConeEtaProfile_E->Fill(double(ietaMax), eEcalCone);
426  meEnConeEtaProfile_EH->Fill(double(ietaMax), HcalCone + eEcalCone);
427  }
428 
429  // std::cout << "*** 7" << std::endl;
430  }
431 
432  // SimHits vs. RecHits
433  const CaloGeometry *geo = geometry.product();
434  if (subdet_ > 0 && subdet_ < 6 && imc != 0) { // not noise
435 
437  if (ev.getByToken(tok_hh_, hcalHits)) {
438  const PCaloHitContainer *SimHitResult = hcalHits.product();
439 
440  double enSimHits = 0.;
441  double enSimHitsHB = 0.;
442  double enSimHitsHE = 0.;
443  double enSimHitsHO = 0.;
444  double enSimHitsHF = 0.;
445  double enSimHitsHFL = 0.;
446  double enSimHitsHFS = 0.;
447  // sum of SimHits in the cone
448 
449  for (std::vector<PCaloHit>::const_iterator SimHits = SimHitResult->begin(); SimHits != SimHitResult->end();
450  ++SimHits) {
451  int sub, depth;
452  HcalDetId cell;
453 
454  if (testNumber_)
455  cell = HcalHitRelabeller::relabel(SimHits->id(), hcons);
456  else
457  cell = HcalDetId(SimHits->id());
458 
459  sub = cell.subdet();
460  depth = cell.depth();
461 
462  if (sub != subdet_ && subdet_ != 5)
463  continue; // If we are not looking at all of the subdetectors and the
464  // simhit doesn't come from the specific subdetector of
465  // interest, then we won't do any thing with it
466 
467  const HcalGeometry *cellGeometry =
468  dynamic_cast<const HcalGeometry *>(geo->getSubdetectorGeometry(DetId::Hcal, cell.subdet()));
469  double etaS = cellGeometry->getPosition(cell).eta();
470  double phiS = cellGeometry->getPosition(cell).phi();
471  double en = SimHits->energy();
472 
473  double r = dR(eta_MC, phi_MC, etaS, phiS);
474 
475  if (r < partR) { // just energy in the small cone
476 
477  enSimHits += en;
478  if (sub == static_cast<int>(HcalBarrel))
479  enSimHitsHB += en;
480  if (sub == static_cast<int>(HcalEndcap))
481  enSimHitsHE += en;
482  if (sub == static_cast<int>(HcalOuter))
483  enSimHitsHO += en;
484  if (sub == static_cast<int>(HcalForward)) {
485  enSimHitsHF += en;
486  if (depth == 1)
487  enSimHitsHFL += en;
488  else
489  enSimHitsHFS += en;
490  }
491  }
492  }
493 
494  // Now some histos with SimHits
495 
496  if (subdet_ == 4 || subdet_ == 5) {
497  meRecHitSimHitHF->Fill(enSimHitsHF, eHcalConeHF);
498  meRecHitSimHitProfileHF->Fill(enSimHitsHF, eHcalConeHF);
499 
500  meRecHitSimHitHFL->Fill(enSimHitsHFL, eHcalConeHFL);
501  meRecHitSimHitProfileHFL->Fill(enSimHitsHFL, eHcalConeHFL);
502  meRecHitSimHitHFS->Fill(enSimHitsHFS, eHcalConeHFS);
503  meRecHitSimHitProfileHFS->Fill(enSimHitsHFS, eHcalConeHFS);
504  }
505  if (subdet_ == 1 || subdet_ == 5) {
506  meRecHitSimHitHB->Fill(enSimHitsHB, eHcalConeHB);
507  meRecHitSimHitProfileHB->Fill(enSimHitsHB, eHcalConeHB);
508  }
509  if (subdet_ == 2 || subdet_ == 5) {
510  meRecHitSimHitHE->Fill(enSimHitsHE, eHcalConeHE);
511  meRecHitSimHitProfileHE->Fill(enSimHitsHE, eHcalConeHE);
512  }
513  if (subdet_ == 3 || subdet_ == 5) {
514  meRecHitSimHitHO->Fill(enSimHitsHO, eHcalConeHO);
515  meRecHitSimHitProfileHO->Fill(enSimHitsHO, eHcalConeHO);
516  }
517  }
518  }
519 
520  nevtot++;
521 }

References edm::SortedCollection< T, SORT >::begin(), HltBtagPostValidation_cff::c, cchi2, cdepth, cen, ceta, hltPixelTracks_cff::chi2, cieta, cphi, csub, ctime, LEDCalibrationChannels::depth, dR(), ecalselector_, edm::SortedCollection< T, SORT >::end(), PVValHelper::eta, PV3DBase< T, PVType, FrameType >::eta(), ALCARECOTkAlBeamHalo_cff::etaMax, ev, dqm::impl::MonitorElement::Fill(), fillRecHitsTmp(), get, edm::HepMCProduct::GetEvent(), HcalGeometry::getPosition(), CaloGeometry::getSubdetectorGeometry(), DetId::Hcal, HcalBarrel, HcalEndcap, HcalForward, HcalOuter, mps_fire::i, LEDCalibrationChannels::ieta, imc, edm::HandleBase::isValid(), MuonErrorMatrixAnalyzer_cfi::maxPt, meEnConeEtaProfile, meEnConeEtaProfile_E, meEnConeEtaProfile_EH, meLog10Chi2profileHB, meLog10Chi2profileHE, meRecHitsEnergyHB, meRecHitsEnergyHE, meRecHitsEnergyHF, meRecHitsEnergyHO, meRecHitSimHitHB, meRecHitSimHitHE, meRecHitSimHitHF, meRecHitSimHitHFL, meRecHitSimHitHFS, meRecHitSimHitHO, meRecHitSimHitProfileHB, meRecHitSimHitProfileHE, meRecHitSimHitProfileHF, meRecHitSimHitProfileHFL, meRecHitSimHitProfileHFS, meRecHitSimHitProfileHO, meRecHitsM2Chi2HB, meRecHitsM2Chi2HE, meTEprofileHB, meTEprofileHB_High, meTEprofileHB_Low, meTEprofileHE, meTEprofileHE_Low, meTEprofileHF, meTEprofileHF_Low, meTEprofileHO, meTEprofileHO_High, nevtot, npart, AlCaHLTBitMon_ParallelJobs::p, phi, PV3DBase< T, PVType, FrameType >::phi(), edm::Handle< T >::product(), DiDispStaMuonMonitor_cfi::pt, alignCSCRings::r, HcalHitRelabeller::relabel(), HcalDetId::subdet(), subdet_, OrderedSet::t, testNumber_, tok_EB_, tok_EE_, tok_evt_, and tok_hh_.

◆ bookHistograms()

void HcalRecHitsValidation::bookHistograms ( DQMStore::IBooker ib,
edm::Run const &  run,
edm::EventSetup const &  es 
)
overridevirtual

Implements DQMEDAnalyzer.

Definition at line 70 of file HcalRecHitsValidation.cc.

70  {
71  Char_t histo[200];
72 
73  ib.setCurrentFolder(topFolderName_);
74 
75  //======================= Now various cases one by one ===================
76 
77  // Histograms drawn for single pion scan
78  if (subdet_ != 0 && imc != 0) { // just not for noise
79  sprintf(histo, "HcalRecHitTask_En_rechits_cone_profile_vs_ieta_all_depths");
80  meEnConeEtaProfile = ib.bookProfile(histo, histo, 83, -41.5, 41.5, -100., 2000., " ");
81 
82  sprintf(histo, "HcalRecHitTask_En_rechits_cone_profile_vs_ieta_all_depths_E");
83  meEnConeEtaProfile_E = ib.bookProfile(histo, histo, 83, -41.5, 41.5, -100., 2000., " ");
84 
85  sprintf(histo, "HcalRecHitTask_En_rechits_cone_profile_vs_ieta_all_depths_EH");
86  meEnConeEtaProfile_EH = ib.bookProfile(histo, histo, 83, -41.5, 41.5, -100., 2000., " ");
87  }
88 
89  // ************** HB **********************************
90  if (subdet_ == 1 || subdet_ == 5) {
91  sprintf(histo, "HcalRecHitTask_M2Log10Chi2_of_rechits_HB"); // Chi2
92  meRecHitsM2Chi2HB = ib.book1D(histo, histo, 120, -2., 10.);
93 
94  sprintf(histo, "HcalRecHitTask_Log10Chi2_vs_energy_profile_HB");
95  meLog10Chi2profileHB = ib.bookProfile(histo, histo, 300, -5., 295., -2., 9.9, " ");
96 
97  sprintf(histo, "HcalRecHitTask_energy_of_rechits_HB");
98  meRecHitsEnergyHB = ib.book1D(histo, histo, 2010, -10., 2000.);
99 
100  sprintf(histo, "HcalRecHitTask_timing_vs_energy_profile_HB");
101  meTEprofileHB = ib.bookProfile(histo, histo, 150, -5., 295., -48., 92., " ");
102 
103  sprintf(histo, "HcalRecHitTask_timing_vs_energy_profile_Low_HB");
104  meTEprofileHB_Low = ib.bookProfile(histo, histo, 150, -5., 295., -48., 92., " ");
105 
106  sprintf(histo, "HcalRecHitTask_timing_vs_energy_profile_High_HB");
107  meTEprofileHB_High = ib.bookProfile(histo, histo, 150, -5., 295., 48., 92., " ");
108 
109  if (imc != 0) {
110  sprintf(histo, "HcalRecHitTask_energy_rechits_vs_simhits_HB");
111  meRecHitSimHitHB = ib.book2D(histo, histo, 120, 0., 1.2, 300, 0., 150.);
112  sprintf(histo, "HcalRecHitTask_energy_rechits_vs_simhits_profile_HB");
113  meRecHitSimHitProfileHB = ib.bookProfile(histo, histo, 120, 0., 1.2, 0., 500., " ");
114  }
115  }
116 
117  // ********************** HE ************************************
118  if (subdet_ == 2 || subdet_ == 5) {
119  sprintf(histo, "HcalRecHitTask_M2Log10Chi2_of_rechits_HE"); // Chi2
120  meRecHitsM2Chi2HE = ib.book1D(histo, histo, 120, -2., 10.);
121 
122  sprintf(histo, "HcalRecHitTask_Log10Chi2_vs_energy_profile_HE");
123  meLog10Chi2profileHE = ib.bookProfile(histo, histo, 1000, -5., 995., -2., 9.9, " ");
124 
125  sprintf(histo, "HcalRecHitTask_energy_of_rechits_HE");
126  meRecHitsEnergyHE = ib.book1D(histo, histo, 2010, -10., 2000.);
127 
128  sprintf(histo, "HcalRecHitTask_timing_vs_energy_profile_Low_HE");
129  meTEprofileHE_Low = ib.bookProfile(histo, histo, 80, -5., 75., -48., 92., " ");
130 
131  sprintf(histo, "HcalRecHitTask_timing_vs_energy_profile_HE");
132  meTEprofileHE = ib.bookProfile(histo, histo, 200, -5., 2995., -48., 92., " ");
133 
134  if (imc != 0) {
135  sprintf(histo, "HcalRecHitTask_energy_rechits_vs_simhits_HE");
136  meRecHitSimHitHE = ib.book2D(histo, histo, 120, 0., 0.6, 300, 0., 150.);
137  sprintf(histo, "HcalRecHitTask_energy_rechits_vs_simhits_profile_HE");
138  meRecHitSimHitProfileHE = ib.bookProfile(histo, histo, 120, 0., 0.6, 0., 500., " ");
139  }
140  }
141 
142  // ************** HO ****************************************
143  if (subdet_ == 3 || subdet_ == 5) {
144  sprintf(histo, "HcalRecHitTask_energy_of_rechits_HO");
145  meRecHitsEnergyHO = ib.book1D(histo, histo, 2010, -10., 2000.);
146 
147  sprintf(histo, "HcalRecHitTask_timing_vs_energy_profile_HO");
148  meTEprofileHO = ib.bookProfile(histo, histo, 60, -5., 55., -48., 92., " ");
149 
150  sprintf(histo, "HcalRecHitTask_timing_vs_energy_profile_High_HO");
151  meTEprofileHO_High = ib.bookProfile(histo, histo, 100, -5., 995., -48., 92., " ");
152 
153  if (imc != 0) {
154  sprintf(histo, "HcalRecHitTask_energy_rechits_vs_simhits_HO");
155  meRecHitSimHitHO = ib.book2D(histo, histo, 150, 0., 1.5, 350, 0., 350.);
156  sprintf(histo, "HcalRecHitTask_energy_rechits_vs_simhits_profile_HO");
157  meRecHitSimHitProfileHO = ib.bookProfile(histo, histo, 150, 0., 1.5, 0., 500., " ");
158  }
159  }
160 
161  // ********************** HF ************************************
162  if (subdet_ == 4 || subdet_ == 5) {
163  sprintf(histo, "HcalRecHitTask_energy_of_rechits_HF");
164  meRecHitsEnergyHF = ib.book1D(histo, histo, 2010, -10., 2000.);
165 
166  sprintf(histo, "HcalRecHitTask_timing_vs_energy_profile_Low_HF");
167  meTEprofileHF_Low = ib.bookProfile(histo, histo, 100, -5., 195., -48., 92., " ");
168 
169  sprintf(histo, "HcalRecHitTask_timing_vs_energy_profile_HF");
170  meTEprofileHF = ib.bookProfile(histo, histo, 200, -5., 995., -48., 92., " ");
171 
172  if (imc != 0) {
173  sprintf(histo, "HcalRecHitTask_energy_rechits_vs_simhits_HF");
174  meRecHitSimHitHF = ib.book2D(histo, histo, 50, 0., 50., 150, 0., 150.);
175  sprintf(histo, "HcalRecHitTask_energy_rechits_vs_simhits_HFL");
176  meRecHitSimHitHFL = ib.book2D(histo, histo, 50, 0., 50., 150, 0., 150.);
177  sprintf(histo, "HcalRecHitTask_energy_rechits_vs_simhits_HFS");
178  meRecHitSimHitHFS = ib.book2D(histo, histo, 50, 0., 50., 150, 0., 150.);
179  sprintf(histo, "HcalRecHitTask_energy_rechits_vs_simhits_profile_HF");
180  meRecHitSimHitProfileHF = ib.bookProfile(histo, histo, 50, 0., 50., 0., 500., " ");
181  sprintf(histo, "HcalRecHitTask_energy_rechits_vs_simhits_profile_HFL");
182  meRecHitSimHitProfileHFL = ib.bookProfile(histo, histo, 50, 0., 50., 0., 500., " ");
183  sprintf(histo, "HcalRecHitTask_energy_rechits_vs_simhits_profile_HFS");
184  meRecHitSimHitProfileHFS = ib.bookProfile(histo, histo, 50, 0., 50., 0., 500., " ");
185  }
186  }
187 }

References timingPdfMaker::histo, cuy::ib, imc, meEnConeEtaProfile, meEnConeEtaProfile_E, meEnConeEtaProfile_EH, meLog10Chi2profileHB, meLog10Chi2profileHE, meRecHitsEnergyHB, meRecHitsEnergyHE, meRecHitsEnergyHF, meRecHitsEnergyHO, meRecHitSimHitHB, meRecHitSimHitHE, meRecHitSimHitHF, meRecHitSimHitHFL, meRecHitSimHitHFS, meRecHitSimHitHO, meRecHitSimHitProfileHB, meRecHitSimHitProfileHE, meRecHitSimHitProfileHF, meRecHitSimHitProfileHFL, meRecHitSimHitProfileHFS, meRecHitSimHitProfileHO, meRecHitsM2Chi2HB, meRecHitsM2Chi2HE, meTEprofileHB, meTEprofileHB_High, meTEprofileHB_Low, meTEprofileHE, meTEprofileHE_Low, meTEprofileHF, meTEprofileHF_Low, meTEprofileHO, meTEprofileHO_High, subdet_, and topFolderName_.

◆ dPhiWsign()

double HcalRecHitsValidation::dPhiWsign ( double  phi1,
double  phi2 
)
private

Definition at line 678 of file HcalRecHitsValidation.cc.

678  {
679  // clockwise phi2 w.r.t phi1 means "+" phi distance
680  // anti-clockwise phi2 w.r.t phi1 means "-" phi distance
681 
682  double PI = 3.1415926535898;
683  double a1 = phi1;
684  double a2 = phi2;
685  double tmp = a2 - a1;
686  if (a1 * a2 < 0.) {
687  if (a1 > 0.5 * PI)
688  tmp += 2. * PI;
689  if (a2 > 0.5 * PI)
690  tmp -= 2. * PI;
691  }
692  return tmp;
693 }

References testProducerWithPsetDescEmpty_cfi::a2, PI, and createJobs::tmp.

◆ dR()

double HcalRecHitsValidation::dR ( double  eta1,
double  phi1,
double  eta2,
double  phi2 
)
private

Definition at line 645 of file HcalRecHitsValidation.cc.

645  {
646  double PI = 3.1415926535898;
647  double deltaphi = phi1 - phi2;
648  if (phi2 > phi1) {
649  deltaphi = phi2 - phi1;
650  }
651  if (deltaphi > PI) {
652  deltaphi = 2. * PI - deltaphi;
653  }
654  double deltaeta = eta2 - eta1;
655  double tmp = sqrt(deltaeta * deltaeta + deltaphi * deltaphi);
656  return tmp;
657 }

References HLT_2018_cff::eta1, HLT_2018_cff::eta2, mathSSE::sqrt(), and createJobs::tmp.

Referenced by analyze().

◆ fillRecHitsTmp()

void HcalRecHitsValidation::fillRecHitsTmp ( int  subdet_,
edm::Event const &  ev 
)
privatevirtual

Definition at line 524 of file HcalRecHitsValidation.cc.

524  {
525  using namespace edm;
526 
527  // initialize data vectors
528  csub.clear();
529  cen.clear();
530  ceta.clear();
531  cphi.clear();
532  ctime.clear();
533  cieta.clear();
534  ciphi.clear();
535  cdepth.clear();
536  cz.clear();
537  cchi2.clear();
538 
539  if (subdet_ == 1 || subdet_ == 2 || subdet_ == 5 || subdet_ == 6 || subdet_ == 0) {
540  // HBHE
542  if (ev.getByToken(tok_hbhe_, hbhecoll)) {
543  const CaloGeometry *geo = geometry.product();
544 
545  for (HBHERecHitCollection::const_iterator j = hbhecoll->begin(); j != hbhecoll->end(); j++) {
546  HcalDetId cell(j->id());
547  const HcalGeometry *cellGeometry =
548  dynamic_cast<const HcalGeometry *>(geo->getSubdetectorGeometry(DetId::Hcal, cell.subdet()));
549  double eta = cellGeometry->getPosition(cell).eta();
550  double phi = cellGeometry->getPosition(cell).phi();
551  double zc = cellGeometry->getPosition(cell).z();
552  int sub = cell.subdet();
553  int depth = cell.depth();
554  int inteta = cell.ieta();
555  int intphi = cell.iphi() - 1;
556  double en = j->energy();
557  double t = j->time();
558  double chi2 = j->chi2();
559 
560  if ((iz > 0 && eta > 0.) || (iz < 0 && eta < 0.) || iz == 0) {
561  csub.push_back(sub);
562  cen.push_back(en);
563  ceta.push_back(eta);
564  cphi.push_back(phi);
565  ctime.push_back(t);
566  cieta.push_back(inteta);
567  ciphi.push_back(intphi);
568  cdepth.push_back(depth);
569  cz.push_back(zc);
570  cchi2.push_back(chi2);
571  }
572  }
573  }
574  }
575 
576  if (subdet_ == 4 || subdet_ == 5 || subdet_ == 6 || subdet_ == 0) {
577  // HF
579  if (ev.getByToken(tok_hf_, hfcoll)) {
580  for (HFRecHitCollection::const_iterator j = hfcoll->begin(); j != hfcoll->end(); j++) {
581  HcalDetId cell(j->id());
582  auto cellGeometry = geometry->getSubdetectorGeometry(cell)->getGeometry(cell);
583 
584  double eta = cellGeometry->getPosition().eta();
585  double phi = cellGeometry->getPosition().phi();
586  double zc = cellGeometry->getPosition().z();
587  int sub = cell.subdet();
588  int depth = cell.depth();
589  int inteta = cell.ieta();
590  int intphi = cell.iphi() - 1;
591  double en = j->energy();
592  double t = j->time();
593 
594  if ((iz > 0 && eta > 0.) || (iz < 0 && eta < 0.) || iz == 0) {
595  csub.push_back(sub);
596  cen.push_back(en);
597  ceta.push_back(eta);
598  cphi.push_back(phi);
599  ctime.push_back(t);
600  cieta.push_back(inteta);
601  ciphi.push_back(intphi);
602  cdepth.push_back(depth);
603  cz.push_back(zc);
604  cchi2.push_back(0.);
605  }
606  }
607  }
608  }
609 
610  // HO
611  if (subdet_ == 3 || subdet_ == 5 || subdet_ == 6 || subdet_ == 0) {
613  if (ev.getByToken(tok_ho_, hocoll)) {
614  for (HORecHitCollection::const_iterator j = hocoll->begin(); j != hocoll->end(); j++) {
615  HcalDetId cell(j->id());
616  auto cellGeometry = geometry->getSubdetectorGeometry(cell)->getGeometry(cell);
617 
618  double eta = cellGeometry->getPosition().eta();
619  double phi = cellGeometry->getPosition().phi();
620  double zc = cellGeometry->getPosition().z();
621  int sub = cell.subdet();
622  int depth = cell.depth();
623  int inteta = cell.ieta();
624  int intphi = cell.iphi() - 1;
625  double t = j->time();
626  double en = j->energy();
627 
628  if ((iz > 0 && eta > 0.) || (iz < 0 && eta < 0.) || iz == 0) {
629  csub.push_back(sub);
630  cen.push_back(en);
631  ceta.push_back(eta);
632  cphi.push_back(phi);
633  ctime.push_back(t);
634  cieta.push_back(inteta);
635  ciphi.push_back(intphi);
636  cdepth.push_back(depth);
637  cz.push_back(zc);
638  cchi2.push_back(0.);
639  }
640  }
641  }
642  }
643 }

References edm::SortedCollection< T, SORT >::begin(), cchi2, cdepth, cen, ceta, hltPixelTracks_cff::chi2, cieta, ciphi, cphi, csub, ctime, cz, LEDCalibrationChannels::depth, edm::SortedCollection< T, SORT >::end(), PVValHelper::eta, ev, CaloGeometry::getSubdetectorGeometry(), DetId::Hcal, iz, dqmiolumiharvest::j, phi, subdet_, OrderedSet::t, tok_hbhe_, tok_hf_, and tok_ho_.

Referenced by analyze().

◆ phi12()

double HcalRecHitsValidation::phi12 ( double  phi1,
double  en1,
double  phi2,
double  en2 
)
private

Definition at line 659 of file HcalRecHitsValidation.cc.

659  {
660  // weighted mean value of phi1 and phi2
661 
662  double tmp;
663  double PI = 3.1415926535898;
664  double a1 = phi1;
665  double a2 = phi2;
666 
667  if (a1 > 0.5 * PI && a2 < 0.)
668  a2 += 2 * PI;
669  if (a2 > 0.5 * PI && a1 < 0.)
670  a1 += 2 * PI;
671  tmp = (a1 * en1 + a2 * en2) / (en1 + en2);
672  if (tmp > PI)
673  tmp -= 2. * PI;
674 
675  return tmp;
676 }

References testProducerWithPsetDescEmpty_cfi::a2, PI, and createJobs::tmp.

Member Data Documentation

◆ cauxstwd

std::vector<uint32_t> HcalRecHitsValidation::cauxstwd
private

Definition at line 161 of file HcalRecHitsValidation.h.

◆ cchi2

std::vector<double> HcalRecHitsValidation::cchi2
private

Definition at line 162 of file HcalRecHitsValidation.h.

Referenced by analyze(), and fillRecHitsTmp().

◆ cdepth

std::vector<int> HcalRecHitsValidation::cdepth
private

Definition at line 154 of file HcalRecHitsValidation.h.

Referenced by analyze(), and fillRecHitsTmp().

◆ cen

std::vector<double> HcalRecHitsValidation::cen
private

Definition at line 155 of file HcalRecHitsValidation.h.

Referenced by analyze(), and fillRecHitsTmp().

◆ ceta

std::vector<double> HcalRecHitsValidation::ceta
private

Definition at line 156 of file HcalRecHitsValidation.h.

Referenced by analyze(), and fillRecHitsTmp().

◆ cieta

std::vector<int> HcalRecHitsValidation::cieta
private

Definition at line 152 of file HcalRecHitsValidation.h.

Referenced by analyze(), and fillRecHitsTmp().

◆ ciphi

std::vector<int> HcalRecHitsValidation::ciphi
private

Definition at line 153 of file HcalRecHitsValidation.h.

Referenced by fillRecHitsTmp().

◆ cphi

std::vector<double> HcalRecHitsValidation::cphi
private

Definition at line 157 of file HcalRecHitsValidation.h.

Referenced by analyze(), and fillRecHitsTmp().

◆ cstwd

std::vector<uint32_t> HcalRecHitsValidation::cstwd
private

Definition at line 160 of file HcalRecHitsValidation.h.

◆ csub

std::vector<int> HcalRecHitsValidation::csub
private

Definition at line 151 of file HcalRecHitsValidation.h.

Referenced by analyze(), and fillRecHitsTmp().

◆ ctime

std::vector<double> HcalRecHitsValidation::ctime
private

Definition at line 158 of file HcalRecHitsValidation.h.

Referenced by analyze(), and fillRecHitsTmp().

◆ cz

std::vector<double> HcalRecHitsValidation::cz
private

Definition at line 159 of file HcalRecHitsValidation.h.

Referenced by fillRecHitsTmp().

◆ ecalselector_

std::string HcalRecHitsValidation::ecalselector_
private

Definition at line 73 of file HcalRecHitsValidation.h.

Referenced by analyze(), and HcalRecHitsValidation().

◆ geometry

edm::ESHandle<CaloGeometry> HcalRecHitsValidation::geometry
private

Definition at line 148 of file HcalRecHitsValidation.h.

◆ hcalselector_

std::string HcalRecHitsValidation::hcalselector_
private

Definition at line 72 of file HcalRecHitsValidation.h.

Referenced by HcalRecHitsValidation().

◆ imc

int HcalRecHitsValidation::imc
private

Definition at line 92 of file HcalRecHitsValidation.h.

Referenced by analyze(), bookHistograms(), and HcalRecHitsValidation().

◆ iz

int HcalRecHitsValidation::iz
private

Definition at line 91 of file HcalRecHitsValidation.h.

Referenced by fillRecHitsTmp(), and HcalRecHitsValidation().

◆ mc_

std::string HcalRecHitsValidation::mc_
private

Definition at line 75 of file HcalRecHitsValidation.h.

Referenced by HcalRecHitsValidation().

◆ meEnConeEtaProfile

MonitorElement* HcalRecHitsValidation::meEnConeEtaProfile
private

Definition at line 99 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meEnConeEtaProfile_E

MonitorElement* HcalRecHitsValidation::meEnConeEtaProfile_E
private

Definition at line 100 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meEnConeEtaProfile_EH

MonitorElement* HcalRecHitsValidation::meEnConeEtaProfile_EH
private

Definition at line 101 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meEnergyHcalVsEcalHB

MonitorElement* HcalRecHitsValidation::meEnergyHcalVsEcalHB
private

Definition at line 138 of file HcalRecHitsValidation.h.

◆ meEnergyHcalVsEcalHE

MonitorElement* HcalRecHitsValidation::meEnergyHcalVsEcalHE
private

Definition at line 139 of file HcalRecHitsValidation.h.

◆ meLog10Chi2profileHB

MonitorElement* HcalRecHitsValidation::meLog10Chi2profileHB
private

Definition at line 145 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meLog10Chi2profileHE

MonitorElement* HcalRecHitsValidation::meLog10Chi2profileHE
private

Definition at line 146 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitsEnergyHB

MonitorElement* HcalRecHitsValidation::meRecHitsEnergyHB
private

Definition at line 104 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitsEnergyHE

MonitorElement* HcalRecHitsValidation::meRecHitsEnergyHE
private

Definition at line 105 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitsEnergyHF

MonitorElement* HcalRecHitsValidation::meRecHitsEnergyHF
private

Definition at line 107 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitsEnergyHO

MonitorElement* HcalRecHitsValidation::meRecHitsEnergyHO
private

Definition at line 106 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitSimHitHB

MonitorElement* HcalRecHitsValidation::meRecHitSimHitHB
private

Definition at line 123 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitSimHitHE

MonitorElement* HcalRecHitsValidation::meRecHitSimHitHE
private

Definition at line 124 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitSimHitHF

MonitorElement* HcalRecHitsValidation::meRecHitSimHitHF
private

Definition at line 126 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitSimHitHFL

MonitorElement* HcalRecHitsValidation::meRecHitSimHitHFL
private

Definition at line 127 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitSimHitHFS

MonitorElement* HcalRecHitsValidation::meRecHitSimHitHFS
private

Definition at line 128 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitSimHitHO

MonitorElement* HcalRecHitsValidation::meRecHitSimHitHO
private

Definition at line 125 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitSimHitProfileHB

MonitorElement* HcalRecHitsValidation::meRecHitSimHitProfileHB
private

Definition at line 130 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitSimHitProfileHE

MonitorElement* HcalRecHitsValidation::meRecHitSimHitProfileHE
private

Definition at line 131 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitSimHitProfileHF

MonitorElement* HcalRecHitsValidation::meRecHitSimHitProfileHF
private

Definition at line 133 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitSimHitProfileHFL

MonitorElement* HcalRecHitsValidation::meRecHitSimHitProfileHFL
private

Definition at line 134 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitSimHitProfileHFS

MonitorElement* HcalRecHitsValidation::meRecHitSimHitProfileHFS
private

Definition at line 135 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitSimHitProfileHO

MonitorElement* HcalRecHitsValidation::meRecHitSimHitProfileHO
private

Definition at line 132 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitsM2Chi2HB

MonitorElement* HcalRecHitsValidation::meRecHitsM2Chi2HB
private

Definition at line 142 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meRecHitsM2Chi2HE

MonitorElement* HcalRecHitsValidation::meRecHitsM2Chi2HE
private

Definition at line 143 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meTEprofileHB

MonitorElement* HcalRecHitsValidation::meTEprofileHB
private

Definition at line 110 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meTEprofileHB_High

MonitorElement* HcalRecHitsValidation::meTEprofileHB_High
private

Definition at line 111 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meTEprofileHB_Low

MonitorElement* HcalRecHitsValidation::meTEprofileHB_Low
private

Definition at line 109 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meTEprofileHE

MonitorElement* HcalRecHitsValidation::meTEprofileHE
private

Definition at line 114 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meTEprofileHE_Low

MonitorElement* HcalRecHitsValidation::meTEprofileHE_Low
private

Definition at line 113 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meTEprofileHF

MonitorElement* HcalRecHitsValidation::meTEprofileHF
private

Definition at line 120 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meTEprofileHF_Low

MonitorElement* HcalRecHitsValidation::meTEprofileHF_Low
private

Definition at line 119 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meTEprofileHO

MonitorElement* HcalRecHitsValidation::meTEprofileHO
private

Definition at line 116 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ meTEprofileHO_High

MonitorElement* HcalRecHitsValidation::meTEprofileHO_High
private

Definition at line 117 of file HcalRecHitsValidation.h.

Referenced by analyze(), and bookHistograms().

◆ nevtot

int HcalRecHitsValidation::nevtot
private

Definition at line 165 of file HcalRecHitsValidation.h.

Referenced by analyze(), and HcalRecHitsValidation().

◆ outputFile_

std::string HcalRecHitsValidation::outputFile_
private

Definition at line 71 of file HcalRecHitsValidation.h.

Referenced by HcalRecHitsValidation().

◆ sign_

std::string HcalRecHitsValidation::sign_
private

Definition at line 74 of file HcalRecHitsValidation.h.

Referenced by HcalRecHitsValidation().

◆ subdet_

int HcalRecHitsValidation::subdet_
private

◆ testNumber_

bool HcalRecHitsValidation::testNumber_
private

Definition at line 76 of file HcalRecHitsValidation.h.

Referenced by analyze(), and HcalRecHitsValidation().

◆ tok_EB_

edm::EDGetTokenT<EBRecHitCollection> HcalRecHitsValidation::tok_EB_
private

Definition at line 80 of file HcalRecHitsValidation.h.

Referenced by analyze(), and HcalRecHitsValidation().

◆ tok_EE_

edm::EDGetTokenT<EERecHitCollection> HcalRecHitsValidation::tok_EE_
private

Definition at line 81 of file HcalRecHitsValidation.h.

Referenced by analyze(), and HcalRecHitsValidation().

◆ tok_evt_

edm::EDGetTokenT<edm::HepMCProduct> HcalRecHitsValidation::tok_evt_
private

Definition at line 79 of file HcalRecHitsValidation.h.

Referenced by analyze(), and HcalRecHitsValidation().

◆ tok_hbhe_

edm::EDGetTokenT<HBHERecHitCollection> HcalRecHitsValidation::tok_hbhe_
private

Definition at line 83 of file HcalRecHitsValidation.h.

Referenced by fillRecHitsTmp(), and HcalRecHitsValidation().

◆ tok_hf_

edm::EDGetTokenT<HFRecHitCollection> HcalRecHitsValidation::tok_hf_
private

Definition at line 84 of file HcalRecHitsValidation.h.

Referenced by fillRecHitsTmp(), and HcalRecHitsValidation().

◆ tok_hh_

edm::EDGetTokenT<edm::PCaloHitContainer> HcalRecHitsValidation::tok_hh_
private

Definition at line 82 of file HcalRecHitsValidation.h.

Referenced by analyze(), and HcalRecHitsValidation().

◆ tok_ho_

edm::EDGetTokenT<HORecHitCollection> HcalRecHitsValidation::tok_ho_
private

Definition at line 85 of file HcalRecHitsValidation.h.

Referenced by fillRecHitsTmp(), and HcalRecHitsValidation().

◆ topFolderName_

std::string HcalRecHitsValidation::topFolderName_
private

Definition at line 69 of file HcalRecHitsValidation.h.

Referenced by bookHistograms().

PI
Definition: PayloadInspector.h:19
HcalRecHitsValidation::fillRecHitsTmp
virtual void fillRecHitsTmp(int subdet_, edm::Event const &ev)
Definition: HcalRecHitsValidation.cc:524
HcalRecHitsValidation::meRecHitSimHitHE
MonitorElement * meRecHitSimHitHE
Definition: HcalRecHitsValidation.h:124
mps_fire.i
i
Definition: mps_fire.py:355
edm::SortedCollection< EcalRecHit >::const_iterator
std::vector< EcalRecHit >::const_iterator const_iterator
Definition: SortedCollection.h:80
HcalRecHitsValidation::imc
int imc
Definition: HcalRecHitsValidation.h:92
edm::Handle::product
T const * product() const
Definition: Handle.h:70
HcalRecHitsValidation::meTEprofileHE_Low
MonitorElement * meTEprofileHE_Low
Definition: HcalRecHitsValidation.h:113
HcalRecHitsValidation::meRecHitsM2Chi2HB
MonitorElement * meRecHitsM2Chi2HB
Definition: HcalRecHitsValidation.h:142
PI
#define PI
Definition: QcdUeDQM.h:37
DiDispStaMuonMonitor_cfi.pt
pt
Definition: DiDispStaMuonMonitor_cfi.py:39
CaloGeometryRecord
Definition: CaloGeometryRecord.h:30
EBDetId
Definition: EBDetId.h:17
edm
HLT enums.
Definition: AlignableModifier.h:19
HcalRecHitsValidation::tok_hh_
edm::EDGetTokenT< edm::PCaloHitContainer > tok_hh_
Definition: HcalRecHitsValidation.h:82
AlCaHLTBitMon_ParallelJobs.p
p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
geometry
Definition: geometry.py:1
HLT_2018_cff.eta1
eta1
Definition: HLT_2018_cff.py:8220
DetId::Hcal
Definition: DetId.h:28
edm::LogInfo
Definition: MessageLogger.h:254
HcalRecHitsValidation::tok_evt_
edm::EDGetTokenT< edm::HepMCProduct > tok_evt_
Definition: HcalRecHitsValidation.h:79
HcalRecHitsValidation::meTEprofileHF
MonitorElement * meTEprofileHF
Definition: HcalRecHitsValidation.h:120
CaloGeometry::getSubdetectorGeometry
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
Definition: CaloGeometry.cc:34
timingPdfMaker.histo
histo
Definition: timingPdfMaker.py:279
HcalRecHitsValidation::cdepth
std::vector< int > cdepth
Definition: HcalRecHitsValidation.h:154
HcalRecHitsValidation::meRecHitsEnergyHB
MonitorElement * meRecHitsEnergyHB
Definition: HcalRecHitsValidation.h:104
HcalRecHitsValidation::ceta
std::vector< double > ceta
Definition: HcalRecHitsValidation.h:156
HcalRecHitsValidation::meTEprofileHB_Low
MonitorElement * meTEprofileHB_Low
Definition: HcalRecHitsValidation.h:109
HcalBarrel
Definition: HcalAssistant.h:33
hltPixelTracks_cff.chi2
chi2
Definition: hltPixelTracks_cff.py:25
createJobs.tmp
tmp
align.sh
Definition: createJobs.py:716
HcalRecHitsValidation::meTEprofileHB_High
MonitorElement * meTEprofileHB_High
Definition: HcalRecHitsValidation.h:111
edm::Handle< edm::HepMCProduct >
HcalRecHitsValidation::ctime
std::vector< double > ctime
Definition: HcalRecHitsValidation.h:158
HcalRecHitsValidation::cen
std::vector< double > cen
Definition: HcalRecHitsValidation.h:155
HcalRecHitsValidation::cchi2
std::vector< double > cchi2
Definition: HcalRecHitsValidation.h:162
HcalRecHitsValidation::meRecHitsEnergyHO
MonitorElement * meRecHitsEnergyHO
Definition: HcalRecHitsValidation.h:106
npart
double npart
Definition: HydjetWrapper.h:46
HepMC::GenEvent
Definition: hepmc_rootio.cc:9
HcalRecHitsValidation::cz
std::vector< double > cz
Definition: HcalRecHitsValidation.h:159
testProducerWithPsetDescEmpty_cfi.a2
a2
Definition: testProducerWithPsetDescEmpty_cfi.py:35
HcalRecHitsValidation::iz
int iz
Definition: HcalRecHitsValidation.h:91
HcalRecHitsValidation::meRecHitSimHitProfileHF
MonitorElement * meRecHitSimHitProfileHF
Definition: HcalRecHitsValidation.h:133
HcalRecHitsValidation::cphi
std::vector< double > cphi
Definition: HcalRecHitsValidation.h:157
HcalRecHitsValidation::tok_hf_
edm::EDGetTokenT< HFRecHitCollection > tok_hf_
Definition: HcalRecHitsValidation.h:84
MuonErrorMatrixAnalyzer_cfi.maxPt
maxPt
Definition: MuonErrorMatrixAnalyzer_cfi.py:19
CaloGeometry
Definition: CaloGeometry.h:21
HcalRecHitsValidation::meRecHitSimHitProfileHFL
MonitorElement * meRecHitSimHitProfileHFL
Definition: HcalRecHitsValidation.h:134
edm::SortedCollection::begin
const_iterator begin() const
Definition: SortedCollection.h:262
PVValHelper::eta
Definition: PVValidationHelpers.h:69
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
dqm::impl::MonitorElement::Fill
void Fill(long long x)
Definition: MonitorElement.h:290
HcalRecHitsValidation::meLog10Chi2profileHE
MonitorElement * meLog10Chi2profileHE
Definition: HcalRecHitsValidation.h:146
HcalRecHitsValidation::meEnConeEtaProfile_EH
MonitorElement * meEnConeEtaProfile_EH
Definition: HcalRecHitsValidation.h:101
HcalRecHitsValidation::meRecHitSimHitHFS
MonitorElement * meRecHitSimHitHFS
Definition: HcalRecHitsValidation.h:128
edm::ESHandle
Definition: DTSurvey.h:22
HcalRecHitsValidation::sign_
std::string sign_
Definition: HcalRecHitsValidation.h:74
HcalRecHitsValidation::meRecHitSimHitProfileHO
MonitorElement * meRecHitSimHitProfileHO
Definition: HcalRecHitsValidation.h:132
HcalOuter
Definition: HcalAssistant.h:35
HcalRecHitsValidation::topFolderName_
std::string topFolderName_
Definition: HcalRecHitsValidation.h:69
OrderedSet.t
t
Definition: OrderedSet.py:90
HcalRecHitsValidation::subdet_
int subdet_
Definition: HcalRecHitsValidation.h:88
HcalRecHitsValidation::meRecHitSimHitProfileHB
MonitorElement * meRecHitSimHitProfileHB
Definition: HcalRecHitsValidation.h:130
HcalRecHitsValidation::csub
std::vector< int > csub
Definition: HcalRecHitsValidation.h:151
LEDCalibrationChannels.depth
depth
Definition: LEDCalibrationChannels.py:65
HcalRecNumberingRecord
Definition: HcalRecNumberingRecord.h:23
HLT_2018_cff.eta2
eta2
Definition: HLT_2018_cff.py:8221
EEDetId
Definition: EEDetId.h:14
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
HcalRecHitsValidation::meTEprofileHF_Low
MonitorElement * meTEprofileHF_Low
Definition: HcalRecHitsValidation.h:119
HcalRecHitsValidation::outputFile_
std::string outputFile_
Definition: HcalRecHitsValidation.h:71
HcalRecHitsValidation::meTEprofileHO_High
MonitorElement * meTEprofileHO_High
Definition: HcalRecHitsValidation.h:117
LEDCalibrationChannels.ieta
ieta
Definition: LEDCalibrationChannels.py:63
HcalRecHitsValidation::meRecHitsEnergyHF
MonitorElement * meRecHitsEnergyHF
Definition: HcalRecHitsValidation.h:107
HcalRecHitsValidation::meLog10Chi2profileHB
MonitorElement * meLog10Chi2profileHB
Definition: HcalRecHitsValidation.h:145
HcalRecHitsValidation::meRecHitsM2Chi2HE
MonitorElement * meRecHitsM2Chi2HE
Definition: HcalRecHitsValidation.h:143
HcalGeometry::getPosition
GlobalPoint getPosition(const DetId &id) const
Definition: HcalGeometry.cc:178
PDWG_EXOHSCP_cff.EERecHitCollectionLabel
EERecHitCollectionLabel
Definition: PDWG_EXOHSCP_cff.py:119
HcalRecHitsValidation::testNumber_
bool testNumber_
Definition: HcalRecHitsValidation.h:76
HcalRecHitsValidation::meRecHitSimHitHFL
MonitorElement * meRecHitSimHitHFL
Definition: HcalRecHitsValidation.h:127
HcalRecHitsValidation::meTEprofileHE
MonitorElement * meTEprofileHE
Definition: HcalRecHitsValidation.h:114
edm::SortedCollection::end
const_iterator end() const
Definition: SortedCollection.h:267
PV3DBase::eta
T eta() const
Definition: PV3DBase.h:73
HcalRecHitsValidation::hcalselector_
std::string hcalselector_
Definition: HcalRecHitsValidation.h:72
HcalDetId::subdet
constexpr HcalSubdetector subdet() const
get the subdetector
Definition: HcalDetId.h:138
HcalRecHitsValidation::meTEprofileHB
MonitorElement * meTEprofileHB
Definition: HcalRecHitsValidation.h:110
HcalDetId
Definition: HcalDetId.h:12
HcalRecHitsValidation::tok_hbhe_
edm::EDGetTokenT< HBHERecHitCollection > tok_hbhe_
Definition: HcalRecHitsValidation.h:83
HcalRecHitsValidation::ciphi
std::vector< int > ciphi
Definition: HcalRecHitsValidation.h:153
HcalRecHitsValidation::meRecHitsEnergyHE
MonitorElement * meRecHitsEnergyHE
Definition: HcalRecHitsValidation.h:105
HcalRecHitsValidation::meRecHitSimHitProfileHE
MonitorElement * meRecHitSimHitProfileHE
Definition: HcalRecHitsValidation.h:131
cuy.ib
ib
Definition: cuy.py:662
edm::HepMCProduct::GetEvent
const HepMC::GenEvent * GetEvent() const
Definition: HepMCProduct.h:34
HltBtagPostValidation_cff.c
c
Definition: HltBtagPostValidation_cff.py:31
get
#define get
HcalRecHitsValidation::meRecHitSimHitHF
MonitorElement * meRecHitSimHitHF
Definition: HcalRecHitsValidation.h:126
HcalRecHitsValidation::cieta
std::vector< int > cieta
Definition: HcalRecHitsValidation.h:152
HcalRecHitsValidation::meEnConeEtaProfile
MonitorElement * meEnConeEtaProfile
Definition: HcalRecHitsValidation.h:99
alignCSCRings.r
r
Definition: alignCSCRings.py:93
HcalForward
Definition: HcalAssistant.h:36
DDAxes::phi
HcalHitRelabeller::relabel
DetId relabel(const uint32_t testId) const
Definition: HcalHitRelabeller.cc:49
HcalRecHitsValidation::nevtot
int nevtot
Definition: HcalRecHitsValidation.h:165
HcalRecHitsValidation::meTEprofileHO
MonitorElement * meTEprofileHO
Definition: HcalRecHitsValidation.h:116
HcalRecHitsValidation::tok_EE_
edm::EDGetTokenT< EERecHitCollection > tok_EE_
Definition: HcalRecHitsValidation.h:81
HcalEndcap
Definition: HcalAssistant.h:34
HcalRecHitsValidation::dR
double dR(double eta1, double phi1, double eta2, double phi2)
Definition: HcalRecHitsValidation.cc:645
HcalRecHitsValidation::mc_
std::string mc_
Definition: HcalRecHitsValidation.h:75
ev
bool ev
Definition: Hydjet2Hadronizer.cc:95
ALCARECOTkAlBeamHalo_cff.etaMax
etaMax
Definition: ALCARECOTkAlBeamHalo_cff.py:33
edm::PCaloHitContainer
std::vector< PCaloHit > PCaloHitContainer
Definition: PCaloHitContainer.h:8
HcalRecHitsValidation::ecalselector_
std::string ecalselector_
Definition: HcalRecHitsValidation.h:73
HcalRecHitsValidation::meEnConeEtaProfile_E
MonitorElement * meEnConeEtaProfile_E
Definition: HcalRecHitsValidation.h:100
HcalRecHitsValidation::meRecHitSimHitHO
MonitorElement * meRecHitSimHitHO
Definition: HcalRecHitsValidation.h:125
PDWG_EXOHSCP_cff.EBRecHitCollectionLabel
EBRecHitCollectionLabel
Definition: PDWG_EXOHSCP_cff.py:120
HcalDDDRecConstants
Definition: HcalDDDRecConstants.h:23
HcalRecHitsValidation::meRecHitSimHitHB
MonitorElement * meRecHitSimHitHB
Definition: HcalRecHitsValidation.h:123
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
HcalRecHitsValidation::meRecHitSimHitProfileHFS
MonitorElement * meRecHitSimHitProfileHFS
Definition: HcalRecHitsValidation.h:135
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
HcalGeometry
Definition: HcalGeometry.h:17
edm::InputTag
Definition: InputTag.h:15
PV3DBase::phi
Geom::Phi< T > phi() const
Definition: PV3DBase.h:66
HcalRecHitsValidation::tok_ho_
edm::EDGetTokenT< HORecHitCollection > tok_ho_
Definition: HcalRecHitsValidation.h:85
HcalRecHitsValidation::tok_EB_
edm::EDGetTokenT< EBRecHitCollection > tok_EB_
Definition: HcalRecHitsValidation.h:80