CMS 3D CMS Logo

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

#include <HcalRecHitsAnalyzer.h>

Inheritance diagram for HcalRecHitsAnalyzer:
DQMEDAnalyzer edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > > edm::stream::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

virtual void analyze (edm::Event const &ev, edm::EventSetup const &c) override
 
virtual void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
virtual void dqmBeginRun (const edm::Run &run, const edm::EventSetup &c) override
 
 HcalRecHitsAnalyzer (edm::ParameterSet const &conf)
 
- Public Member Functions inherited from DQMEDAnalyzer
virtual void beginRun (edm::Run const &, edm::EventSetup const &) final
 
virtual void beginStream (edm::StreamID id) final
 
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &)
 
 DQMEDAnalyzer (void)
 
virtual void endLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, dqmDetails::NoCache *) const final
 
virtual void endRunSummary (edm::Run const &, edm::EventSetup const &, dqmDetails::NoCache *) const final
 
uint32_t streamId () const
 
- Public Member Functions inherited from edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > >
 EDAnalyzer ()=default
 
- Public Member Functions inherited from edm::stream::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
virtual ~EDAnalyzerBase ()
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFromEvent () const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
virtual ~EDConsumerBase () noexcept(false)
 

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)
 
int hcalSevLvl (const CaloRecHit *hit)
 
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 > cenM0
 
std::vector< double > cenM3
 
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_
 
std::vector< MonitorElement * > emap
 
std::vector< MonitorElement * > emean_vs_ieta_HB
 
std::vector< MonitorElement * > emean_vs_ieta_HBM0
 
std::vector< MonitorElement * > emean_vs_ieta_HBM3
 
std::vector< MonitorElement * > emean_vs_ieta_HE
 
std::vector< MonitorElement * > emean_vs_ieta_HEM0
 
std::vector< MonitorElement * > emean_vs_ieta_HEM3
 
std::vector< MonitorElement * > emean_vs_ieta_HF
 
MonitorElementemean_vs_ieta_HO
 
int etype_
 
std::string eventype_
 
bool famos_
 
edm::ESHandle< CaloGeometrygeometry
 
std::vector< int > hcalHBSevLvlVec
 
std::vector< int > hcalHESevLvlVec
 
std::vector< int > hcalHFSevLvlVec
 
std::vector< int > hcalHOSevLvlVec
 
std::string hcalselector_
 
const HcalDDDRecConstantshcons
 
int ieta_bins_
 
float ieta_max_
 
float ieta_min_
 
int imc
 
int iphi_bins_
 
float iphi_max_
 
float iphi_min_
 
int iz
 
MonitorElementmap_ecal
 
int maxDepthAll_
 
int maxDepthHB_
 
int maxDepthHE_
 
int maxDepthHF_
 
int maxDepthHO_
 
std::string mc_
 
MonitorElementmeDeltaEta
 
MonitorElementmeDeltaPhi
 
MonitorElementmeEcalHcalEnergyConeHB
 
MonitorElementmeEcalHcalEnergyConeHE
 
MonitorElementmeEcalHcalEnergyConeHF
 
MonitorElementmeEcalHcalEnergyConeHO
 
MonitorElementmeEcalHcalEnergyHB
 
MonitorElementmeEcalHcalEnergyHE
 
MonitorElementmeEnConeEtaProfile
 
MonitorElementmeEnConeEtaProfile_E
 
MonitorElementmeEnConeEtaProfile_EH
 
MonitorElementmeEnergyHcalVsEcalHB
 
MonitorElementmeEnergyHcalVsEcalHE
 
MonitorElementmeLog10Chi2profileHB
 
MonitorElementmeLog10Chi2profileHE
 
MonitorElementmeNumEcalRecHitsConeHB
 
MonitorElementmeNumEcalRecHitsConeHE
 
MonitorElementmeRecHitsEnergyHB
 
MonitorElementmeRecHitsEnergyHBM0
 
MonitorElementmeRecHitsEnergyHBM3
 
MonitorElementmeRecHitsEnergyHE
 
MonitorElementmeRecHitsEnergyHEM0
 
MonitorElementmeRecHitsEnergyHEM3
 
MonitorElementmeRecHitsEnergyHF
 
MonitorElementmeRecHitsEnergyHO
 
MonitorElementmeRecHitsEnergyM2vM0HB
 
MonitorElementmeRecHitsEnergyM2vM0HE
 
MonitorElementmeRecHitsEnergyM3vM0HB
 
MonitorElementmeRecHitsEnergyM3vM0HE
 
MonitorElementmeRecHitsEnergyM3vM2HB
 
MonitorElementmeRecHitsEnergyM3vM2HE
 
MonitorElementmeRecHitsM2Chi2HB
 
MonitorElementmeRecHitsM2Chi2HE
 
MonitorElementmeSumRecHitsEnergyConeHB
 
MonitorElementmeSumRecHitsEnergyConeHE
 
MonitorElementmeSumRecHitsEnergyConeHF
 
MonitorElementmeSumRecHitsEnergyConeHFL
 
MonitorElementmeSumRecHitsEnergyConeHFS
 
MonitorElementmeSumRecHitsEnergyConeHO
 
MonitorElementmeSumRecHitsEnergyHB
 
MonitorElementmeSumRecHitsEnergyHE
 
MonitorElementmeSumRecHitsEnergyHF
 
MonitorElementmeSumRecHitsEnergyHO
 
MonitorElementmeTE_HB
 
MonitorElementmeTE_HE
 
MonitorElementmeTE_HF
 
MonitorElementmeTE_High_HB
 
MonitorElementmeTE_High_HO
 
MonitorElementmeTE_HO
 
MonitorElementmeTE_Low_HB
 
MonitorElementmeTE_Low_HE
 
MonitorElementmeTE_Low_HF
 
MonitorElementmeTEprofileHB
 
MonitorElementmeTEprofileHB_High
 
MonitorElementmeTEprofileHB_Low
 
MonitorElementmeTEprofileHE
 
MonitorElementmeTEprofileHE_Low
 
MonitorElementmeTEprofileHF
 
MonitorElementmeTEprofileHF_Low
 
MonitorElementmeTEprofileHO
 
MonitorElementmeTEprofileHO_High
 
MonitorElementmeTimeHB
 
MonitorElementmeTimeHE
 
MonitorElementmeTimeHF
 
MonitorElementmeTimeHO
 
int nChannels_ [5]
 
int nevtot
 
std::vector< MonitorElement * > Nhb
 
std::vector< MonitorElement * > Nhe
 
std::vector< MonitorElement * > Nhf
 
std::vector< MonitorElement * > Nho
 
std::vector< MonitorElement * > occupancy_map_HB
 
std::vector< MonitorElement * > occupancy_map_HE
 
std::vector< MonitorElement * > occupancy_map_HF
 
MonitorElementoccupancy_map_HO
 
std::vector< MonitorElement * > occupancy_vs_ieta_HB
 
std::vector< MonitorElement * > occupancy_vs_ieta_HE
 
std::vector< MonitorElement * > occupancy_vs_ieta_HF
 
MonitorElementoccupancy_vs_ieta_HO
 
std::string outputFile_
 
MonitorElementRecHit_Aux_StatusWord_HB
 
MonitorElementRecHit_Aux_StatusWord_HE
 
MonitorElementRecHit_Aux_StatusWord_HF
 
MonitorElementRecHit_Aux_StatusWord_HO
 
MonitorElementRecHit_StatusWord_HB
 
MonitorElementRecHit_StatusWord_HE
 
MonitorElementRecHit_StatusWord_HF
 
MonitorElementRecHit_StatusWord_HF67
 
MonitorElementRecHit_StatusWord_HO
 
MonitorElementRecHit_StatusWordCorr_HB
 
MonitorElementRecHit_StatusWordCorr_HE
 
MonitorElementsevLvl_HB
 
MonitorElementsevLvl_HE
 
MonitorElementsevLvl_HF
 
MonitorElementsevLvl_HO
 
std::string sign_
 
int subdet_
 
const HcalChannelQualitytheHcalChStatus
 
const HcalSeverityLevelComputertheHcalSevLvlComputer
 
const HcalTopologytheHcalTopology
 
edm::EDGetTokenT< EBRecHitCollectiontok_EB_
 
edm::EDGetTokenT< EERecHitCollectiontok_EE_
 
edm::EDGetTokenT< HBHERecHitCollectiontok_hbhe_
 
edm::EDGetTokenT< HFRecHitCollectiontok_hf_
 
edm::EDGetTokenT< HORecHitCollectiontok_ho_
 

Additional Inherited Members

- Public Types inherited from edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > >
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
 
- Public Types inherited from edm::stream::EDAnalyzerBase
typedef EDAnalyzerAdaptorBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from DQMEDAnalyzer
static std::shared_ptr< dqmDetails::NoCacheglobalBeginLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, LuminosityBlockContext const *)
 
static std::shared_ptr< dqmDetails::NoCacheglobalBeginRunSummary (edm::Run const &, edm::EventSetup const &, RunContext const *)
 
static void globalEndLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, LuminosityBlockContext const *, dqmDetails::NoCache *)
 
static void globalEndRunSummary (edm::Run const &, edm::EventSetup const &, RunContext const *, dqmDetails::NoCache *)
 
- Static Public Member Functions inherited from edm::stream::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 

Detailed Description

Definition at line 58 of file HcalRecHitsAnalyzer.h.

Constructor & Destructor Documentation

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

Definition at line 6 of file HcalRecHitsAnalyzer.cc.

References ecalselector_, etype_, eventype_, edm::ParameterSet::getUntrackedParameter(), hcalselector_, imc, iz, nevtot, outputFile_, sign_, AlCaHLTBitMon_QueryRunRegistry::string, subdet_, tok_EB_, tok_EE_, tok_hbhe_, tok_hf_, and tok_ho_.

6  {
7 
8  // DQM ROOT output
9  outputFile_ = conf.getUntrackedParameter<std::string>("outputFile", "myfile.root");
10 
11  if ( outputFile_.size() != 0 ) {
12  edm::LogInfo("OutputInfo") << " Hcal RecHit Task histograms will be saved to '" << outputFile_.c_str() << "'";
13  } else {
14  edm::LogInfo("OutputInfo") << " Hcal RecHit Task histograms will NOT be saved";
15  }
16 
17  nevtot = 0;
18 
19  hcalselector_ = conf.getUntrackedParameter<std::string>("hcalselector", "all");
20  ecalselector_ = conf.getUntrackedParameter<std::string>("ecalselector", "yes");
21  eventype_ = conf.getUntrackedParameter<std::string>("eventype", "single");
22  sign_ = conf.getUntrackedParameter<std::string>("sign", "*");
23  //useAllHistos_ = conf.getUntrackedParameter<bool>("useAllHistos", false);
24 
25  //Collections
26  tok_hbhe_ = consumes<HBHERecHitCollection>(conf.getUntrackedParameter<edm::InputTag>("HBHERecHitCollectionLabel"));
27  tok_hf_ = consumes<HFRecHitCollection>(conf.getUntrackedParameter<edm::InputTag>("HFRecHitCollectionLabel"));
28  tok_ho_ = consumes<HORecHitCollection>(conf.getUntrackedParameter<edm::InputTag>("HORecHitCollectionLabel"));
29  tok_EB_ = consumes<EBRecHitCollection>(edm::InputTag("ecalRecHit","EcalRecHitsEB"));
30  tok_EE_ = consumes<EERecHitCollection>(edm::InputTag("ecalRecHit","EcalRecHitsEE"));
31 
32  subdet_ = 5;
33  if (hcalselector_ == "noise") subdet_ = 0;
34  if (hcalselector_ == "HB" ) subdet_ = 1;
35  if (hcalselector_ == "HE" ) subdet_ = 2;
36  if (hcalselector_ == "HO" ) subdet_ = 3;
37  if (hcalselector_ == "HF" ) subdet_ = 4;
38  if (hcalselector_ == "all" ) subdet_ = 5;
39  if (hcalselector_ == "ZS" ) subdet_ = 6;
40 
41  etype_ = 1;
42  if (eventype_ == "multi") etype_ = 2;
43 
44  iz = 1;
45  if(sign_ == "-") iz = -1;
46  if(sign_ == "*") iz = 0;
47 
48  imc = 0;
49 
50  }
edm::EDGetTokenT< EBRecHitCollection > tok_EB_
edm::EDGetTokenT< HORecHitCollection > tok_ho_
edm::EDGetTokenT< HBHERecHitCollection > tok_hbhe_
edm::EDGetTokenT< HFRecHitCollection > tok_hf_
edm::EDGetTokenT< EERecHitCollection > tok_EE_

Member Function Documentation

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

Implements edm::stream::EDAnalyzerBase.

Definition at line 449 of file HcalRecHitsAnalyzer.cc.

References edm::SortedCollection< T, SORT >::begin(), cauxstwd, cchi2, cdepth, cen, cenM0, cenM3, ceta, HiEvtPlane_cfi::chi2, cieta, ciphi, cphi, cstwd, csub, ctime, particleFlowClusterECALTimeSelected_cfi::depth, dR(), ecalselector_, emap, emean_vs_ieta_HB, emean_vs_ieta_HBM0, emean_vs_ieta_HBM3, emean_vs_ieta_HE, emean_vs_ieta_HEM0, emean_vs_ieta_HEM3, emean_vs_ieta_HF, emean_vs_ieta_HO, edm::SortedCollection< T, SORT >::end(), stringResolutionProvider_cfi::eta, MonitorElement::Fill(), HcalObjRepresent::Fill(), fillRecHitsTmp(), edm::EventSetup::get(), edm::Event::getByToken(), hcalHBSevLvlVec, hcalHESevLvlVec, hcalHFSevLvlVec, hcalHOSevLvlVec, i, imc, maxDepthAll_, maxDepthHB_, maxDepthHE_, maxDepthHF_, maxDepthHO_, meEnConeEtaProfile, meEnConeEtaProfile_E, meEnConeEtaProfile_EH, meLog10Chi2profileHB, meLog10Chi2profileHE, meRecHitsEnergyHB, meRecHitsEnergyHBM0, meRecHitsEnergyHBM3, meRecHitsEnergyHE, meRecHitsEnergyHEM0, meRecHitsEnergyHEM3, meRecHitsEnergyHF, meRecHitsEnergyHO, meRecHitsEnergyM2vM0HB, meRecHitsEnergyM2vM0HE, meRecHitsEnergyM3vM0HB, meRecHitsEnergyM3vM0HE, meRecHitsEnergyM3vM2HB, meRecHitsEnergyM3vM2HE, meRecHitsM2Chi2HB, meRecHitsM2Chi2HE, meTE_HB, meTE_HE, meTE_HF, meTE_High_HB, meTE_High_HO, meTE_HO, meTE_Low_HB, meTE_Low_HE, meTE_Low_HF, meTEprofileHB, meTEprofileHB_High, meTEprofileHB_Low, meTEprofileHE, meTEprofileHE_Low, meTEprofileHF, meTEprofileHF_Low, meTEprofileHO, meTEprofileHO_High, meTimeHB, meTimeHE, meTimeHF, meTimeHO, nevtot, Nhb, Nhe, Nhf, Nho, occupancy_map_HB, occupancy_map_HE, occupancy_map_HF, occupancy_map_HO, phi, phi12(), edm::Handle< T >::product(), edm::ESHandle< T >::product(), RecHit_Aux_StatusWord_HB, RecHit_Aux_StatusWord_HE, RecHit_Aux_StatusWord_HF, RecHit_Aux_StatusWord_HO, RecHit_StatusWord_HB, RecHit_StatusWord_HE, RecHit_StatusWord_HF, RecHit_StatusWord_HO, RecHit_StatusWordCorr_HB, RecHit_StatusWordCorr_HE, sevLvl_HB, sevLvl_HE, sevLvl_HF, sevLvl_HO, subdet_, lumiQTWidget::t, theHcalChStatus, theHcalSevLvlComputer, theHcalTopology, tok_EB_, and tok_EE_.

449  {
450 
451  using namespace edm;
452 
453  // cuts for each subdet_ector mimiking "Scheme B"
454  // double cutHB = 0.9, cutHE = 1.4, cutHO = 1.1, cutHFL = 1.2, cutHFS = 1.8;
455 
456  // energy in HCAL
457  double eHcal = 0.;
458  // Total numbet of RecHits in HCAL, in the cone, above 1 GeV theshold
459  int nrechits = 0;
460  int nrechitsThresh = 0;
461 
462  // energy in ECAL
463  double eEcal = 0.;
464  double eEcalB = 0.;
465  double eEcalE = 0.;
466  double eEcalCone = 0.;
467 
468  // HCAL energy around MC eta-phi at all depths;
469  double partR = 0.3;
470 
471  // Single particle samples: actual eta-phi position of cluster around
472  // hottest cell
473  double etaHot = 99999.;
474  double phiHot = 99999.;
475 
476  // previously was: c.get<IdealGeometryRecord>().get (geometry);
477  c.get<CaloGeometryRecord>().get (geometry);
478 
479  // HCAL Topology **************************************************
481  c.get<HcalRecNumberingRecord>().get(topo);
482  theHcalTopology = topo.product();
483 
484  // HCAL channel status map ****************************************
486  c.get<HcalChannelQualityRcd>().get( "withTopo", hcalChStatus );
487  theHcalChStatus = hcalChStatus.product();
488 
489  // Assignment of severity levels **********************************
490  edm::ESHandle<HcalSeverityLevelComputer> hcalSevLvlComputerHndl;
491  c.get<HcalSeverityLevelComputerRcd>().get(hcalSevLvlComputerHndl);
492  theHcalSevLvlComputer = hcalSevLvlComputerHndl.product();
493 
494  // Fill working vectors of HCAL RecHits quantities (all of these are drawn)
496 
497  // HB
498  if( subdet_ ==5 || subdet_ == 1 ){
499  for(unsigned int iv=0; iv<hcalHBSevLvlVec.size(); iv++){
501  }
502  }
503  // HE
504  if( subdet_ ==5 || subdet_ == 2 ){
505  for(unsigned int iv=0; iv<hcalHESevLvlVec.size(); iv++){
507  }
508  }
509  // HO
510  if( subdet_ ==5 || subdet_ == 3 ){
511  for(unsigned int iv=0; iv<hcalHOSevLvlVec.size(); iv++){
513  }
514  }
515  // HF
516  if( subdet_ ==5 || subdet_ == 4 ){
517  for(unsigned int iv=0; iv<hcalHFSevLvlVec.size(); iv++){
519  }
520  }
521 
522  //===========================================================================
523  // IN ALL other CASES : ieta-iphi maps
524  //===========================================================================
525 
526  // ECAL
527  if(ecalselector_ == "yes" && (subdet_ == 1 || subdet_ == 2 || subdet_ == 5)) {
529 
530 
531  ev.getByToken(tok_EB_, rhitEB);
532 
533  EcalRecHitCollection::const_iterator RecHit = rhitEB.product()->begin();
534  EcalRecHitCollection::const_iterator RecHitEnd = rhitEB.product()->end();
535 
536  for (; RecHit != RecHitEnd ; ++RecHit) {
537 
538  double en = RecHit->energy();
539  eEcal += en;
540  eEcalB += en;
541 
542 
543  }
544 
545 
547 
548  ev.getByToken(tok_EE_, rhitEE);
549 
550  RecHit = rhitEE.product()->begin();
551  RecHitEnd = rhitEE.product()->end();
552 
553  for (; RecHit != RecHitEnd ; ++RecHit) {
554 
555  double en = RecHit->energy();
556  eEcal += en;
557  eEcalE += en;
558 
559 
560  }
561  } // end of ECAL selection
562 
563  // Counting, including ZS items
564  // Filling HCAL maps ----------------------------------------------------
565  // double maxE = -99999.;
566 
567  // element 0: any depth. element 1,2,..: depth 1,2
568  std::vector<int> nhb_v(maxDepthHB_+1,0);
569  std::vector<int> nhe_v(maxDepthHE_+1,0);
570  std::vector<int> nho_v(maxDepthHO_+1,0);
571  std::vector<int> nhf_v(maxDepthHF_+1,0);
572 
573  for (unsigned int i = 0; i < cen.size(); i++) {
574 
575  int sub = csub[i];
576  int depth = cdepth[i];
577  int ieta = cieta[i];
578  int iphi = ciphi[i];
579  double en = cen[i];
580  double enM0 = cenM0[i];
581  double enM3 = cenM3[i];
582  // double eta = ceta[i];
583  // double phi = cphi[i];
584  uint32_t stwd = cstwd[i];
585  uint32_t auxstwd = cauxstwd[i];
586  // double z = cz[i];
587 
588  //Make sure that an invalid depth won't cause an error. We should probably report the problem as well.
589  if( depth < 1 ) continue;
590  if( sub == 1 && depth > maxDepthHB_ ) continue;
591  if( sub == 2 && depth > maxDepthHE_ ) continue;
592  if( sub == 3 && depth > maxDepthHO_ ) continue;
593  if( sub == 4 && depth > maxDepthHF_ ) continue;
594 
595  if( sub ==1 ){ nhb_v[depth]++; nhb_v[0]++;} // element 0: any depth, element 1,2,..: depth 1,2,...
596  if( sub ==2 ){ nhe_v[depth]++; nhe_v[0]++;} //
597  if( sub ==3 ){ nho_v[depth]++; nho_v[0]++;} //
598  if( sub ==4 ){ nhf_v[depth]++; nhf_v[0]++;} //
599 
600  if( subdet_ == 6) { // ZS specific
601  }
602 
603  if( subdet_ != 6) {
604  int ieta2 = ieta;
605  int depth2 = depth;
606  if(sub == 4){
607  if (ieta2 < 0) ieta2--;
608  else ieta2++;
609  }
610  if(sub == 3) depth2 = maxDepthAll_ - maxDepthHO_ + depth; //This will use the last depths for HO
611  emap[depth2-1]->Fill(double(ieta2),double(iphi),en);
612 
613  // to distinguish HE and HF
614  if( depth == 1 || depth == 2 ) {
615  int ieta1 = ieta;
616  if(sub == 4) {
617  if (ieta1 < 0) ieta1--;
618  else ieta1++;
619  }
620  }
621 
622  if ( sub == 1){
623  emean_vs_ieta_HB[depth-1]->Fill(double(ieta), en);
624  emean_vs_ieta_HBM0[depth-1]->Fill(double(ieta), enM0);
625  emean_vs_ieta_HBM3[depth-1]->Fill(double(ieta), enM3);
626  occupancy_map_HB[depth-1]->Fill(double(ieta),double(iphi));
627  }
628  if ( sub == 2){
629  emean_vs_ieta_HE[depth-1]->Fill(double(ieta), en);
630  emean_vs_ieta_HEM0[depth-1]->Fill(double(ieta), enM0);
631  emean_vs_ieta_HEM3[depth-1]->Fill(double(ieta), enM3);
632  occupancy_map_HE[depth-1]->Fill(double(ieta),double(iphi));
633  }
634  if ( sub == 3){
635  emean_vs_ieta_HO->Fill(double(ieta), en);
636  occupancy_map_HO->Fill(double(ieta),double(iphi));
637  }
638  if ( sub == 4){
639  emean_vs_ieta_HF[depth-1]->Fill(double(ieta), en);
640  occupancy_map_HF[depth-1]->Fill(double(ieta),double(iphi));
641  }
642  }
643 
644 
645 
646  //32-bit status word
647  uint32_t statadd;
648  unsigned int isw67 = 0;
649 
650  //Statusword correlation
651  unsigned int sw27 = 27;
652  unsigned int sw13 = 13;
653 
654  uint32_t statadd27 = 0x1<<sw27;
655  uint32_t statadd13 = 0x1<<sw13;
656 
657  float status27 = 0;
658  float status13 = 0;
659 
660  if(stwd & statadd27) status27 = 1;
661  if(stwd & statadd13) status13 = 1;
662 
663  if (sub == 1){
664  RecHit_StatusWordCorr_HB->Fill(status13, status27);
665  } else if (sub == 2){
666  RecHit_StatusWordCorr_HE->Fill(status13, status27);
667  }
668 
669 
670  for (unsigned int isw = 0; isw < 32; isw++){
671  statadd = 0x1<<(isw);
672  if (stwd & statadd){
673  if (sub == 1) RecHit_StatusWord_HB->Fill(isw);
674  else if (sub == 2) RecHit_StatusWord_HE->Fill(isw);
675  else if (sub == 3) RecHit_StatusWord_HO->Fill(isw);
676  else if (sub == 4){
678  if (isw == 6) isw67 += 1;
679  if (isw == 7) isw67 += 2;
680  }
681  }
682  }
683 
684  for (unsigned int isw =0; isw < 32; isw++){
685  statadd = 0x1<<(isw);
686  if( auxstwd & statadd ){
687  if (sub == 1) RecHit_Aux_StatusWord_HB->Fill(isw);
688  else if (sub == 2) RecHit_Aux_StatusWord_HE->Fill(isw);
689  else if (sub == 3) RecHit_Aux_StatusWord_HO->Fill(isw);
690  else if (sub == 4) RecHit_Aux_StatusWord_HF->Fill(isw);
691  }
692 
693  }
694 
695  }
696 
697  for(int depth = 0; depth <= maxDepthHB_; depth++) Nhb[depth]->Fill(double(nhb_v[depth]));
698  for(int depth = 0; depth <= maxDepthHE_; depth++) Nhe[depth]->Fill(double(nhe_v[depth]));
699  for(int depth = 0; depth <= maxDepthHO_; depth++) Nho[depth]->Fill(double(nho_v[depth]));
700  for(int depth = 0; depth <= maxDepthHF_; depth++) Nhf[depth]->Fill(double(nhf_v[depth]));
701 
702  //===========================================================================
703  // SUBSYSTEMS,
704  //===========================================================================
705 
706  if ((subdet_ != 6) && (subdet_ != 0)) {
707 
708  double clusEta = 999.;
709  double clusPhi = 999.;
710  double clusEn = 0.;
711 
712  double HcalCone = 0.;
713 
714  int ietaMax = 9999;
715  // double enMax1 = -9999.;
716  // double enMax2 = -9999.;
717  // double enMax3 = -9999.;
718  // double enMax4 = -9999.;
719  // double enMax = -9999.;
720  // double etaMax = 9999.;
721 
722  // CYCLE over cells ====================================================
723 
724  for (unsigned int i = 0; i < cen.size(); i++) {
725  int sub = csub[i];
726  double eta = ceta[i];
727  double phi = cphi[i];
728  double en = cen[i];
729  double enM0 = cenM0[i];
730  double enM3 = cenM3[i];
731  double chi2 = cchi2[i];
732  double t = ctime[i];
733 // int ieta = cieta[i];
734 
735  double rhot = dR(etaHot, phiHot, eta, phi);
736  if(rhot < partR && en > 1.) {
737  clusEta = (clusEta * clusEn + eta * en)/(clusEn + en);
738  clusPhi = phi12(clusPhi, clusEn, phi, en);
739  clusEn += en;
740  }
741 
742  nrechits++;
743  eHcal += en;
744 
745  if(en > 1. ) nrechitsThresh++;
746 
747  //The energy and overall timing histos are drawn while
748  //the ones split by depth are not
749  if(sub == 1 && (subdet_ == 1 || subdet_ == 5)) {
750  meTimeHB->Fill(t);
751  meRecHitsEnergyHB->Fill(en);
752  meRecHitsEnergyHBM0->Fill(enM0);
753  meRecHitsEnergyHBM3->Fill(enM3);
754 
755  meRecHitsEnergyM2vM0HB->Fill(enM0,en);
756  meRecHitsEnergyM3vM0HB->Fill(enM0,enM3);
757  meRecHitsEnergyM3vM2HB->Fill(en,enM3);
758 
759  meRecHitsM2Chi2HB->Fill(log10(chi2));
760  meLog10Chi2profileHB->Fill(en,log10(chi2));
761 
762  meTE_Low_HB->Fill( en, t);
763  meTE_HB->Fill( en, t);
764  meTE_High_HB->Fill( en, t);
765  meTEprofileHB_Low->Fill(en, t);
766  meTEprofileHB->Fill(en, t);
767  meTEprofileHB_High->Fill(en, t);
768  }
769  if(sub == 2 && (subdet_ == 2 || subdet_ == 5)) {
770  meTimeHE->Fill(t);
771  meRecHitsEnergyHE->Fill(en);
772  meRecHitsEnergyHEM0->Fill(enM0);
773  meRecHitsEnergyHEM3->Fill(enM3);
774 
775  meRecHitsEnergyM2vM0HE->Fill(enM0,en);
776  meRecHitsEnergyM3vM0HE->Fill(enM0,enM3);
777  meRecHitsEnergyM3vM2HE->Fill(en,enM3);
778 
779  meRecHitsM2Chi2HE->Fill(log10(chi2));
780  meLog10Chi2profileHE->Fill(en,log10(chi2));
781 
782  meTE_Low_HE->Fill( en, t);
783  meTE_HE->Fill( en, t);
784  meTEprofileHE_Low->Fill(en, t);
785  meTEprofileHE->Fill(en, t);
786  }
787  if(sub == 4 && (subdet_ == 4 || subdet_ == 5)) {
788  meTimeHF->Fill(t);
789  meRecHitsEnergyHF->Fill(en);
790 
791  meTE_Low_HF->Fill(en, t);
792  meTE_HF->Fill(en, t);
793  meTEprofileHF_Low->Fill(en, t);
794  meTEprofileHF->Fill(en, t);
795 
796  }
797  if(sub == 3 && (subdet_ == 3 || subdet_ == 5)) {
798  meTimeHO->Fill(t);
799  meRecHitsEnergyHO->Fill(en);
800 
801  meTE_HO->Fill( en, t);
802  meTE_High_HO->Fill( en, t);
803  meTEprofileHO->Fill(en, t);
804  meTEprofileHO_High->Fill(en, t);
805  }
806  }
807 
808  if(imc != 0) {
809  //Cone by depth are not drawn, the others are used for pion scan
810  meEnConeEtaProfile ->Fill(double(ietaMax), HcalCone); //
811  meEnConeEtaProfile_E ->Fill(double(ietaMax), eEcalCone);
812  meEnConeEtaProfile_EH ->Fill(double(ietaMax), HcalCone+eEcalCone);
813  }
814 
815  // Single particle samples ONLY ! ======================================
816  // Fill up some histos for "integrated" subsustems.
817  // These are not drawn
818  }
819 
820  nevtot++;
821 }
MonitorElement * sevLvl_HF
MonitorElement * meTEprofileHB_High
MonitorElement * RecHit_StatusWord_HE
int i
Definition: DBlmapReader.cc:9
std::vector< int > csub
MonitorElement * meRecHitsM2Chi2HB
MonitorElement * meTimeHF
std::vector< double > cphi
std::vector< int > hcalHOSevLvlVec
double dR(double eta1, double phi1, double eta2, double phi2)
MonitorElement * RecHit_StatusWord_HF
MonitorElement * meRecHitsEnergyM3vM2HE
MonitorElement * sevLvl_HE
MonitorElement * RecHit_Aux_StatusWord_HO
MonitorElement * meTE_Low_HE
std::vector< MonitorElement * > Nhb
MonitorElement * meRecHitsEnergyHEM3
std::vector< int > cdepth
const HcalTopology * theHcalTopology
std::vector< EcalRecHit >::const_iterator const_iterator
std::vector< int > hcalHBSevLvlVec
std::vector< MonitorElement * > emap
bool ev
MonitorElement * occupancy_map_HO
std::vector< MonitorElement * > emean_vs_ieta_HBM3
std::vector< double > ceta
edm::EDGetTokenT< EBRecHitCollection > tok_EB_
MonitorElement * meEnConeEtaProfile_EH
std::vector< MonitorElement * > emean_vs_ieta_HBM0
std::vector< MonitorElement * > emean_vs_ieta_HF
std::vector< int > hcalHESevLvlVec
double phi12(double phi1, double en1, double phi2, double en2)
MonitorElement * meRecHitsEnergyM3vM0HE
MonitorElement * meTE_Low_HB
MonitorElement * meTEprofileHF_Low
const HcalSeverityLevelComputer * theHcalSevLvlComputer
MonitorElement * meTE_HB
MonitorElement * meRecHitsEnergyM2vM0HB
void Fill(long long x)
MonitorElement * sevLvl_HO
virtual void fillRecHitsTmp(int subdet_, edm::Event const &ev)
std::vector< MonitorElement * > Nhe
std::vector< MonitorElement * > emean_vs_ieta_HEM0
MonitorElement * meRecHitsEnergyM2vM0HE
MonitorElement * meTE_HO
const HcalChannelQuality * theHcalChStatus
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
MonitorElement * meEnConeEtaProfile_E
MonitorElement * meTEprofileHO
MonitorElement * meTEprofileHB
std::vector< double > cchi2
MonitorElement * meLog10Chi2profileHE
MonitorElement * meRecHitsEnergyHBM0
MonitorElement * meTE_High_HO
MonitorElement * meRecHitsEnergyHO
MonitorElement * meRecHitsM2Chi2HE
MonitorElement * meTE_HF
std::vector< uint32_t > cauxstwd
MonitorElement * meRecHitsEnergyHEM0
MonitorElement * meTEprofileHE_Low
MonitorElement * RecHit_StatusWord_HO
MonitorElement * meRecHitsEnergyHB
std::vector< int > ciphi
MonitorElement * emean_vs_ieta_HO
MonitorElement * sevLvl_HB
const_iterator end() const
MonitorElement * meTimeHE
std::vector< int > cieta
MonitorElement * meTimeHO
MonitorElement * meRecHitsEnergyHF
std::vector< MonitorElement * > emean_vs_ieta_HB
std::vector< double > cenM3
MonitorElement * meEnConeEtaProfile
MonitorElement * meTEprofileHE
std::vector< uint32_t > cstwd
std::vector< MonitorElement * > Nho
std::vector< MonitorElement * > occupancy_map_HE
T const * product() const
Definition: Handle.h:81
MonitorElement * RecHit_Aux_StatusWord_HB
MonitorElement * meRecHitsEnergyM3vM2HB
MonitorElement * meLog10Chi2profileHB
MonitorElement * meTE_High_HB
std::vector< int > hcalHFSevLvlVec
MonitorElement * RecHit_StatusWord_HB
HLT enums.
MonitorElement * meTEprofileHO_High
std::vector< MonitorElement * > emean_vs_ieta_HEM3
MonitorElement * meTEprofileHB_Low
edm::EDGetTokenT< EERecHitCollection > tok_EE_
std::vector< double > ctime
std::vector< double > cen
MonitorElement * meRecHitsEnergyM3vM0HB
MonitorElement * meRecHitsEnergyHBM3
std::vector< double > cenM0
MonitorElement * RecHit_StatusWordCorr_HE
std::vector< MonitorElement * > occupancy_map_HF
MonitorElement * meTimeHB
std::vector< MonitorElement * > occupancy_map_HB
MonitorElement * meTEprofileHF
MonitorElement * RecHit_Aux_StatusWord_HF
MonitorElement * RecHit_Aux_StatusWord_HE
T const * product() const
Definition: ESHandle.h:86
MonitorElement * RecHit_StatusWordCorr_HB
std::vector< MonitorElement * > Nhf
const_iterator begin() const
MonitorElement * meTE_HE
std::vector< MonitorElement * > emean_vs_ieta_HE
MonitorElement * meRecHitsEnergyHE
MonitorElement * meTE_Low_HF
void HcalRecHitsAnalyzer::bookHistograms ( DQMStore::IBooker ibooker,
edm::Run const &  ,
edm::EventSetup const &   
)
overridevirtual

Implements DQMEDAnalyzer.

Definition at line 113 of file HcalRecHitsAnalyzer.cc.

References DQMStore::IBooker::book1D(), DQMStore::IBooker::book2D(), DQMStore::IBooker::bookProfile(), particleFlowClusterECALTimeSelected_cfi::depth, emap, emean_vs_ieta_HB, emean_vs_ieta_HBM0, emean_vs_ieta_HBM3, emean_vs_ieta_HE, emean_vs_ieta_HEM0, emean_vs_ieta_HEM3, emean_vs_ieta_HF, emean_vs_ieta_HO, trackerHits::histo, ieta_bins_, ieta_max_, ieta_min_, imc, createfilelist::int, iphi_bins_, iphi_max_, iphi_min_, maxDepthAll_, maxDepthHB_, maxDepthHE_, maxDepthHF_, maxDepthHO_, meEnConeEtaProfile, meEnConeEtaProfile_E, meEnConeEtaProfile_EH, meLog10Chi2profileHB, meLog10Chi2profileHE, meRecHitsEnergyHB, meRecHitsEnergyHBM0, meRecHitsEnergyHBM3, meRecHitsEnergyHE, meRecHitsEnergyHEM0, meRecHitsEnergyHEM3, meRecHitsEnergyHF, meRecHitsEnergyHO, meRecHitsEnergyM2vM0HB, meRecHitsEnergyM2vM0HE, meRecHitsEnergyM3vM0HB, meRecHitsEnergyM3vM0HE, meRecHitsEnergyM3vM2HB, meRecHitsEnergyM3vM2HE, meRecHitsM2Chi2HB, meRecHitsM2Chi2HE, meTE_HB, meTE_HE, meTE_HF, meTE_High_HB, meTE_High_HO, meTE_HO, meTE_Low_HB, meTE_Low_HE, meTE_Low_HF, meTEprofileHB, meTEprofileHB_High, meTEprofileHB_Low, meTEprofileHE, meTEprofileHE_Low, meTEprofileHF, meTEprofileHF_Low, meTEprofileHO, meTEprofileHO_High, meTimeHB, meTimeHE, meTimeHF, meTimeHO, nChannels_, Nhb, Nhe, Nhf, Nho, occupancy_map_HB, occupancy_map_HE, occupancy_map_HF, occupancy_map_HO, occupancy_vs_ieta_HB, occupancy_vs_ieta_HE, occupancy_vs_ieta_HF, occupancy_vs_ieta_HO, RecHit_Aux_StatusWord_HB, RecHit_Aux_StatusWord_HE, RecHit_Aux_StatusWord_HF, RecHit_Aux_StatusWord_HO, RecHit_StatusWord_HB, RecHit_StatusWord_HE, RecHit_StatusWord_HF, RecHit_StatusWord_HO, RecHit_StatusWordCorr_HB, RecHit_StatusWordCorr_HE, DQMStore::IBooker::setCurrentFolder(), sevLvl_HB, sevLvl_HE, sevLvl_HF, sevLvl_HO, and subdet_.

115 {
116 
117  Char_t histo[200];
118 
119  ibooker.setCurrentFolder("HcalRecHitsD/HcalRecHitTask");
120 
121  // General counters (drawn)
122 
123  //Produce both a total per subdetector, and number of rechits per subdetector depth
124  // The bins are 1 unit wide, and the range is determined by the number of channels per subdetector
125 
126  for(int depth = 0; depth <= maxDepthHB_; depth++){
127  if(depth == 0){ sprintf (histo, "N_HB" );}
128  else{ sprintf (histo, "N_HB_depth%d",depth );}
129  int NBins = (int) (nChannels_[1] * 1.1);
130  Nhb.push_back( ibooker.book1D(histo, histo, NBins, 0., (float)NBins) );
131  }
132  for(int depth = 0; depth <= maxDepthHE_; depth++){
133  if(depth == 0){ sprintf (histo, "N_HE" );}
134  else{ sprintf (histo, "N_HE_depth%d",depth );}
135  int NBins = (int) (nChannels_[2] * 1.1);
136  Nhe.push_back( ibooker.book1D(histo, histo, NBins,0., (float)NBins) );
137  }
138  for(int depth = 0; depth <= maxDepthHO_; depth++){
139  if(depth == 0){ sprintf (histo, "N_HO" );}
140  else{ sprintf (histo, "N_HO_depth%d",depth );}
141  int NBins = (int) (nChannels_[3] * 1.1);
142  Nho.push_back( ibooker.book1D(histo, histo, NBins,0., (float)NBins) );
143  }
144  for(int depth = 0; depth <= maxDepthHF_; depth++){
145  if(depth == 0){ sprintf (histo, "N_HF" );}
146  else{ sprintf (histo, "N_HF_depth%d",depth );}
147  int NBins = (int) (nChannels_[4] * 1.1);
148  Nhf.push_back( ibooker.book1D(histo, histo, NBins,0., (float)NBins) );
149  }
150 
151  // ZS
152  if(subdet_ == 6) {
153 
154  }
155 
156  // ALL others, except ZS
157  else {
158  for(int depth = 1; depth <= maxDepthAll_; depth++){
159  sprintf (histo, "emap_depth%d",depth );
160  emap.push_back( ibooker.book2D(histo, histo, 84, -42., 42., 72, 0., 72.) );
161  }
162 
163  //The mean energy histos are drawn, but not the RMS or emean seq
164 
165  for (int depth = 1; depth <= maxDepthHB_; depth++) {
166  sprintf (histo, "emean_vs_ieta_HB%d",depth );
167  emean_vs_ieta_HB.push_back( ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, -10., 2000., " ") );
168 
169  sprintf (histo, "emean_vs_ieta_M0_HB%d",depth );
170  emean_vs_ieta_HBM0.push_back( ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, -10., 2000., " ") );
171 
172  sprintf (histo, "emean_vs_ieta_M3_HB%d",depth );
173  emean_vs_ieta_HBM3.push_back( ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, -10., 2000., " ") );
174  }
175  for (int depth = 1; depth <= maxDepthHE_; depth++) {
176  sprintf (histo, "emean_vs_ieta_HE%d",depth );
177  emean_vs_ieta_HE.push_back( ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, -10., 2000., " ") );
178 
179  sprintf (histo, "emean_vs_ieta_M0_HE%d",depth );
180  emean_vs_ieta_HEM0.push_back( ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, -10., 2000., " ") );
181 
182  sprintf (histo, "emean_vs_ieta_M3_HE%d",depth );
183  emean_vs_ieta_HEM3.push_back( ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, -10., 2000., " ") );
184  }
185  for (int depth = 1; depth <= maxDepthHF_; depth++) {
186  sprintf (histo, "emean_vs_ieta_HF%d",depth );
187  emean_vs_ieta_HF.push_back( ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, -10., 2000., " ") );
188  }
189  sprintf (histo, "emean_vs_ieta_HO" );
190  emean_vs_ieta_HO = ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, -10., 2000., " " );
191 
192  //The only occupancy histos drawn are occupancy vs. ieta
193  //but the maps are needed because this is where the latter are filled from
194 
195  for (int depth = 1; depth <= maxDepthHB_; depth++) {
196  sprintf (histo, "occupancy_map_HB%d",depth );
197  occupancy_map_HB.push_back( ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_) );
198  }
199 
200  for (int depth = 1; depth <= maxDepthHE_; depth++) {
201  sprintf (histo, "occupancy_map_HE%d",depth );
202  occupancy_map_HE.push_back( ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_) );
203  }
204 
205  sprintf (histo, "occupancy_map_HO" );
207 
208  for (int depth = 1; depth <= maxDepthHF_; depth++) {
209  sprintf (histo, "occupancy_map_HF%d",depth );
210  occupancy_map_HF.push_back( ibooker.book2D(histo, histo, ieta_bins_, ieta_min_, ieta_max_, iphi_bins_, iphi_min_, iphi_max_) );
211  }
212 
213  //These are drawn
214 
215  for (int depth = 1; depth <= maxDepthHB_; depth++) {
216  sprintf (histo, "occupancy_vs_ieta_HB%d",depth );
217  occupancy_vs_ieta_HB.push_back( ibooker.book1D(histo, histo, ieta_bins_, ieta_min_, ieta_max_) );
218  }
219 
220  for (int depth = 1; depth <= maxDepthHE_; depth++) {
221  sprintf (histo, "occupancy_vs_ieta_HE%d",depth );
222  occupancy_vs_ieta_HE.push_back( ibooker.book1D(histo, histo, ieta_bins_, ieta_min_, ieta_max_) );
223  }
224 
225  sprintf (histo, "occupancy_vs_ieta_HO" );
226  occupancy_vs_ieta_HO = ibooker.book1D(histo, histo, ieta_bins_, ieta_min_, ieta_max_);
227 
228  for (int depth = 1; depth <= maxDepthHF_; depth++) {
229  sprintf (histo, "occupancy_vs_ieta_HF%d",depth );
230  occupancy_vs_ieta_HF.push_back( ibooker.book1D(histo, histo, ieta_bins_, ieta_min_, ieta_max_) );
231  }
232 
233 
234  //All status word histos except HF67 are drawn
235  sprintf (histo, "HcalRecHitTask_RecHit_StatusWord_HB" ) ;
236  RecHit_StatusWord_HB = ibooker.book1D(histo, histo, 32 , -0.5, 31.5);
237 
238  sprintf (histo, "HcalRecHitTask_RecHit_StatusWord_HE" ) ;
239  RecHit_StatusWord_HE = ibooker.book1D(histo, histo, 32 , -0.5, 31.5);
240 
241  sprintf (histo, "HcalRecHitTask_RecHit_StatusWord_HF" ) ;
242  RecHit_StatusWord_HF = ibooker.book1D(histo, histo, 32 , -0.5, 31.5);
243 
244  sprintf (histo, "HcalRecHitTask_RecHit_StatusWord_HO" ) ;
245  RecHit_StatusWord_HO = ibooker.book1D(histo, histo, 32 , -0.5, 31.5);
246 
247  //Aux status word histos
248  sprintf (histo, "HcalRecHitTask_RecHit_Aux_StatusWord_HB" ) ;
249  RecHit_Aux_StatusWord_HB = ibooker.book1D(histo, histo, 32 , -0.5, 31.5);
250 
251  sprintf (histo, "HcalRecHitTask_RecHit_Aux_StatusWord_HE" ) ;
252  RecHit_Aux_StatusWord_HE = ibooker.book1D(histo, histo, 32 , -0.5, 31.5);
253 
254  sprintf (histo, "HcalRecHitTask_RecHit_Aux_StatusWord_HF" ) ;
255  RecHit_Aux_StatusWord_HF = ibooker.book1D(histo, histo, 32 , -0.5, 31.5);
256 
257  sprintf (histo, "HcalRecHitTask_RecHit_Aux_StatusWord_HO" ) ;
258  RecHit_Aux_StatusWord_HO = ibooker.book1D(histo, histo, 32 , -0.5, 31.5);
259 
260  } // end-of (subdet_ =! 6)
261 
262  //Status word correlations
263  sprintf (histo, "HcalRecHitTask_RecHit_StatusWordCorr_HB");
264  RecHit_StatusWordCorr_HB = ibooker.book2D(histo, histo, 2, -0.5, 1.5, 2, -0.5, 1.5);
265 
266  sprintf (histo, "HcalRecHitTask_RecHit_StatusWordCorr_HE");
267  RecHit_StatusWordCorr_HE = ibooker.book2D(histo, histo, 2, -0.5, 1.5, 2, -0.5, 1.5);
268 
269 
270  //======================= Now various cases one by one ===================
271 
272  //Histograms drawn for single pion scan
273  if(subdet_ != 0 && imc != 0) { // just not for noise
274  sprintf (histo, "HcalRecHitTask_En_rechits_cone_profile_vs_ieta_all_depths");
275  meEnConeEtaProfile = ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, -100., 2000., " ");
276 
277  sprintf (histo, "HcalRecHitTask_En_rechits_cone_profile_vs_ieta_all_depths_E");
278  meEnConeEtaProfile_E = ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, -100., 2000., " ");
279 
280  sprintf (histo, "HcalRecHitTask_En_rechits_cone_profile_vs_ieta_all_depths_EH");
281  meEnConeEtaProfile_EH = ibooker.bookProfile(histo, histo, ieta_bins_, ieta_min_, ieta_max_, -100., 2000., " ");
282  }
283 
284  // ************** HB **********************************
285  if (subdet_ == 1 || subdet_ == 5 ){
286 
287  //Only severity level, energy of rechits and overall HB timing histos are drawn
288 
289  sprintf(histo, "HcalRecHitTask_severityLevel_HB");
290  sevLvl_HB = ibooker.book1D(histo, histo, 25, -0.5, 24.5);
291 
292  sprintf (histo, "HcalRecHitTask_energy_of_rechits_HB" ) ;
293  meRecHitsEnergyHB = ibooker.book1D(histo, histo, 2010 , -10. , 2000.);
294 
295  sprintf (histo, "HcalRecHitTask_energy_of_rechits_M0_HB" ) ;
296  meRecHitsEnergyHBM0 = ibooker.book1D(histo, histo, 2010 , -10. , 2000.);
297 
298  sprintf (histo, "HcalRecHitTask_energy_of_rechits_M3_HB" ) ;
299  meRecHitsEnergyHBM3 = ibooker.book1D(histo, histo, 2010 , -10. , 2000.);
300 
301  sprintf (histo, "HcalRecHitTask_energy_of_rechits_M2vM0_HB" ) ;
302  meRecHitsEnergyM2vM0HB = ibooker.book2D(histo, histo, 42 , -10. , 200., 42, -10., 200.);
303 
304  sprintf (histo, "HcalRecHitTask_energy_of_rechits_M3vM0_HB" ) ;
305  meRecHitsEnergyM3vM0HB = ibooker.book2D(histo, histo, 42 , -10. , 200., 42, -10., 200.);
306 
307  sprintf (histo, "HcalRecHitTask_energy_of_rechits_M3vM2_HB" ) ;
308  meRecHitsEnergyM3vM2HB = ibooker.book2D(histo, histo, 42 , -10. , 200., 42, -10., 200.);
309 
310  sprintf (histo, "HcalRecHitTask_M2Log10Chi2_of_rechits_HB" ) ;
311  meRecHitsM2Chi2HB = ibooker.book1D(histo, histo, 120 , -2. , 10.);
312 
313  sprintf (histo, "HcalRecHitTask_timing_HB" ) ;
314  meTimeHB = ibooker.book1D(histo, histo, 70, -48., 92.);
315 
316  //High, medium and low histograms to reduce RAM usage
317  sprintf (histo, "HcalRecHitTask_timing_vs_energy_Low_HB" ) ;
318  meTE_Low_HB = ibooker.book2D(histo, histo, 50, -5., 45., 70, -48., 92.);
319 
320  sprintf (histo, "HcalRecHitTask_timing_vs_energy_HB" ) ;
321  meTE_HB = ibooker.book2D(histo, histo, 150, -5., 295., 70, -48., 92.);
322 
323  sprintf (histo, "HcalRecHitTask_timing_vs_energy_High_HB" ) ;
324  meTE_High_HB = ibooker.book2D(histo, histo, 150, -5., 2995., 70, -48., 92.);
325 
326  sprintf (histo, "HcalRecHitTask_timing_vs_energy_profile_Low_HB" ) ;
327  meTEprofileHB_Low = ibooker.bookProfile(histo, histo, 50, -5., 45., -48., 92., " ");
328 
329  sprintf (histo, "HcalRecHitTask_timing_vs_energy_profile_HB" ) ;
330  meTEprofileHB = ibooker.bookProfile(histo, histo, 150, -5., 295., -48., 92., " ");
331 
332  sprintf (histo, "HcalRecHitTask_Log10Chi2_vs_energy_profile_HB" ) ;
333  meLog10Chi2profileHB = ibooker.bookProfile(histo, histo, 150, -5., 295., -2., 10., " ");
334 
335  sprintf (histo, "HcalRecHitTask_timing_vs_energy_profile_High_HB" ) ;
336  meTEprofileHB_High = ibooker.bookProfile(histo, histo, 150, -5., 2995., -48., 92., " ");
337 
338  }
339 
340  // ********************** HE ************************************
341  if ( subdet_ == 2 || subdet_ == 5 ){
342 
343 
344  //Only severity level, energy of rechits and overall HB timing histos are drawn
345  sprintf(histo, "HcalRecHitTask_severityLevel_HE");
346  sevLvl_HE = ibooker.book1D(histo, histo, 25, -0.5, 24.5);
347 
348  sprintf (histo, "HcalRecHitTask_energy_of_rechits_HE" ) ;
349  meRecHitsEnergyHE = ibooker.book1D(histo, histo, 2010, -10., 2000.);
350 
351  sprintf (histo, "HcalRecHitTask_energy_of_rechits_M0_HE" ) ;
352  meRecHitsEnergyHEM0 = ibooker.book1D(histo, histo, 2010, -10., 2000.);
353 
354  sprintf (histo, "HcalRecHitTask_energy_of_rechits_M3_HE" ) ;
355  meRecHitsEnergyHEM3 = ibooker.book1D(histo, histo, 2010, -10., 2000.);
356 
357  sprintf (histo, "HcalRecHitTask_energy_of_rechits_M2vM0_HE" ) ;
358  meRecHitsEnergyM2vM0HE = ibooker.book2D(histo, histo, 42 , -10. , 200., 42, -10., 200.);
359 
360  sprintf (histo, "HcalRecHitTask_energy_of_rechits_M3vM0_HE" ) ;
361  meRecHitsEnergyM3vM0HE = ibooker.book2D(histo, histo, 42 , -10. , 200., 42, -10., 200.);
362 
363  sprintf (histo, "HcalRecHitTask_energy_of_rechits_M2vM0_HE" ) ;
364  meRecHitsEnergyM3vM2HE = ibooker.book2D(histo, histo, 42 , -10. , 200., 42, -10., 200.);
365 
366  sprintf (histo, "HcalRecHitTask_M2Log10Chi2_of_rechits_HE" ) ;
367  meRecHitsM2Chi2HE = ibooker.book1D(histo, histo, 120 , -2. , 10.);
368 
369  sprintf (histo, "HcalRecHitTask_timing_HE" ) ;
370  meTimeHE = ibooker.book1D(histo, histo, 70, -48., 92.);
371 
372  sprintf (histo, "HcalRecHitTask_timing_vs_energy_Low_HE" ) ;
373  meTE_Low_HE = ibooker.book2D(histo, histo, 80, -5., 75., 70, -48., 92.);
374 
375  sprintf (histo, "HcalRecHitTask_timing_vs_energy_HE" ) ;
376  meTE_HE = ibooker.book2D(histo, histo, 200, -5., 395., 70, -48., 92.);
377 
378  sprintf (histo, "HcalRecHitTask_timing_vs_energy_profile_Low_HE" ) ;
379  meTEprofileHE_Low = ibooker.bookProfile(histo, histo, 80, -5., 75., -48., 92., " ");
380 
381  sprintf (histo, "HcalRecHitTask_timing_vs_energy_profile_HE" ) ;
382  meTEprofileHE = ibooker.bookProfile(histo, histo, 200, -5., 395., -48., 92., " ");
383 
384  sprintf (histo, "HcalRecHitTask_Log10Chi2_vs_energy_profile_HE" ) ;
385  meLog10Chi2profileHE = ibooker.bookProfile(histo, histo, 200, -5., 395., -2., 10., " ");
386 
387 
388  }
389 
390  // ************** HO ****************************************
391  if ( subdet_ == 3 || subdet_ == 5 ){
392 
393  //Only severity level, energy of rechits and overall HB timing histos are drawn
394 
395  sprintf(histo, "HcalRecHitTask_severityLevel_HO");
396  sevLvl_HO = ibooker.book1D(histo, histo, 25, -0.5, 24.5);
397 
398  sprintf (histo, "HcalRecHitTask_energy_of_rechits_HO" ) ;
399  meRecHitsEnergyHO = ibooker.book1D(histo, histo, 2010 , -10. , 2000.);
400 
401  sprintf (histo, "HcalRecHitTask_timing_HO" ) ;
402  meTimeHO = ibooker.book1D(histo, histo, 70, -48., 92.);
403 
404  sprintf (histo, "HcalRecHitTask_timing_vs_energy_HO" ) ;
405  meTE_HO= ibooker.book2D(histo, histo, 60, -5., 55., 70, -48., 92.);
406 
407  sprintf (histo, "HcalRecHitTask_timing_vs_energy_High_HO" ) ;
408  meTE_High_HO= ibooker.book2D(histo, histo, 100, -5., 995., 70, -48., 92.);
409 
410  sprintf (histo, "HcalRecHitTask_timing_vs_energy_profile_HO" ) ;
411  meTEprofileHO = ibooker.bookProfile(histo, histo, 60, -5., 55., -48., 92., " ");
412 
413  sprintf (histo, "HcalRecHitTask_timing_vs_energy_profile_High_HO" ) ;
414  meTEprofileHO_High = ibooker.bookProfile(histo, histo, 100, -5., 995., -48., 92., " ");
415 
416  }
417 
418  // ********************** HF ************************************
419  if ( subdet_ == 4 || subdet_ == 5 ){
420 
421  //Only severity level, energy of rechits and overall HB timing histos are drawn
422 
423  sprintf(histo, "HcalRecHitTask_severityLevel_HF");
424  sevLvl_HF = ibooker.book1D(histo, histo, 25, -0.5, 24.5);
425 
426  sprintf (histo, "HcalRecHitTask_energy_of_rechits_HF" ) ;
427  meRecHitsEnergyHF = ibooker.book1D(histo, histo, 2010 , -10. , 2000.);
428 
429  sprintf (histo, "HcalRecHitTask_timing_HF" ) ;
430  meTimeHF = ibooker.book1D(histo, histo, 70, -48., 92.);
431 
432  sprintf (histo, "HcalRecHitTask_timing_vs_energy_Low_HF" ) ;
433  meTE_Low_HF = ibooker.book2D(histo, histo, 100, -5., 195., 70, -48., 92.);
434 
435  sprintf (histo, "HcalRecHitTask_timing_vs_energy_HF" ) ;
436  meTE_HF = ibooker.book2D(histo, histo, 200, -5., 995., 70, -48., 92.);
437 
438  sprintf (histo, "HcalRecHitTask_timing_vs_energy_profile_Low_HF" ) ;
439  meTEprofileHF_Low = ibooker.bookProfile(histo, histo, 100, -5., 195., -48., 92., " ");
440 
441  sprintf (histo, "HcalRecHitTask_timing_vs_energy_profile_HF" ) ;
442  meTEprofileHF = ibooker.bookProfile(histo, histo, 200, -5., 995., -48., 92., " ");
443 
444  }
445 
446 }
MonitorElement * sevLvl_HF
MonitorElement * meTEprofileHB_High
MonitorElement * RecHit_StatusWord_HE
MonitorElement * meRecHitsM2Chi2HB
MonitorElement * meTimeHF
MonitorElement * RecHit_StatusWord_HF
MonitorElement * meRecHitsEnergyM3vM2HE
MonitorElement * sevLvl_HE
MonitorElement * RecHit_Aux_StatusWord_HO
MonitorElement * bookProfile(Args &&...args)
Definition: DQMStore.h:157
MonitorElement * meTE_Low_HE
std::vector< MonitorElement * > Nhb
MonitorElement * meRecHitsEnergyHEM3
std::vector< MonitorElement * > emap
MonitorElement * occupancy_map_HO
std::vector< MonitorElement * > emean_vs_ieta_HBM3
MonitorElement * meEnConeEtaProfile_EH
std::vector< MonitorElement * > emean_vs_ieta_HBM0
std::vector< MonitorElement * > emean_vs_ieta_HF
MonitorElement * meRecHitsEnergyM3vM0HE
MonitorElement * meTE_Low_HB
MonitorElement * meTEprofileHF_Low
MonitorElement * meTE_HB
MonitorElement * meRecHitsEnergyM2vM0HB
MonitorElement * sevLvl_HO
std::vector< MonitorElement * > Nhe
std::vector< MonitorElement * > emean_vs_ieta_HEM0
MonitorElement * meRecHitsEnergyM2vM0HE
MonitorElement * meTE_HO
std::vector< MonitorElement * > occupancy_vs_ieta_HF
MonitorElement * meEnConeEtaProfile_E
MonitorElement * meTEprofileHO
MonitorElement * meTEprofileHB
MonitorElement * meLog10Chi2profileHE
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:115
MonitorElement * meRecHitsEnergyHBM0
MonitorElement * meTE_High_HO
MonitorElement * meRecHitsEnergyHO
MonitorElement * meRecHitsM2Chi2HE
MonitorElement * meTE_HF
MonitorElement * meRecHitsEnergyHEM0
MonitorElement * occupancy_vs_ieta_HO
MonitorElement * meTEprofileHE_Low
MonitorElement * RecHit_StatusWord_HO
MonitorElement * meRecHitsEnergyHB
MonitorElement * emean_vs_ieta_HO
MonitorElement * sevLvl_HB
std::vector< MonitorElement * > occupancy_vs_ieta_HB
MonitorElement * meTimeHE
MonitorElement * meTimeHO
MonitorElement * meRecHitsEnergyHF
std::vector< MonitorElement * > emean_vs_ieta_HB
MonitorElement * meEnConeEtaProfile
MonitorElement * meTEprofileHE
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:277
std::vector< MonitorElement * > Nho
std::vector< MonitorElement * > occupancy_map_HE
MonitorElement * book2D(Args &&...args)
Definition: DQMStore.h:133
MonitorElement * RecHit_Aux_StatusWord_HB
MonitorElement * meRecHitsEnergyM3vM2HB
MonitorElement * meLog10Chi2profileHB
MonitorElement * meTE_High_HB
MonitorElement * RecHit_StatusWord_HB
MonitorElement * meTEprofileHO_High
std::vector< MonitorElement * > emean_vs_ieta_HEM3
MonitorElement * meTEprofileHB_Low
MonitorElement * meRecHitsEnergyM3vM0HB
MonitorElement * meRecHitsEnergyHBM3
MonitorElement * RecHit_StatusWordCorr_HE
std::vector< MonitorElement * > occupancy_map_HF
MonitorElement * meTimeHB
std::vector< MonitorElement * > occupancy_map_HB
MonitorElement * meTEprofileHF
MonitorElement * RecHit_Aux_StatusWord_HF
MonitorElement * RecHit_Aux_StatusWord_HE
MonitorElement * RecHit_StatusWordCorr_HB
std::vector< MonitorElement * > Nhf
std::vector< MonitorElement * > occupancy_vs_ieta_HE
MonitorElement * meTE_HE
std::vector< MonitorElement * > emean_vs_ieta_HE
MonitorElement * meRecHitsEnergyHE
MonitorElement * meTE_Low_HF
double HcalRecHitsAnalyzer::dPhiWsign ( double  phi1,
double  phi2 
)
private

Definition at line 1029 of file HcalRecHitsAnalyzer.cc.

References PI, and tmp.

1029  {
1030  // clockwise phi2 w.r.t phi1 means "+" phi distance
1031  // anti-clockwise phi2 w.r.t phi1 means "-" phi distance
1032 
1033  double PI = 3.1415926535898;
1034  double a1 = phi1; double a2 = phi2;
1035  double tmp = a2 - a1;
1036  if( a1*a2 < 0.) {
1037  if(a1 > 0.5 * PI) tmp += 2.*PI;
1038  if(a2 > 0.5 * PI) tmp -= 2.*PI;
1039  }
1040  return tmp;
1041 
1042 }
#define PI
Definition: QcdUeDQM.h:36
std::vector< std::vector< double > > tmp
Definition: MVATrainer.cc:100
void HcalRecHitsAnalyzer::dqmBeginRun ( const edm::Run run,
const edm::EventSetup c 
)
overridevirtual

Definition at line 52 of file HcalRecHitsAnalyzer.cc.

References geometry, edm::EventSetup::get(), HcalDDDRecConstants::getEtaRange(), HcalGeometry::getHxSize(), HcalDDDRecConstants::getMaxDepth(), HcalDDDRecConstants::getNPhi(), CaloGeometry::getSubdetectorGeometry(), DetId::Hcal, HcalBarrel, HcalEndcap, HcalForward, HcalOuter, hcons, ieta_bins_, ieta_max_, ieta_min_, hcalTTPDigis_cfi::iEtaMax, createfilelist::int, iphi_bins_, iphi_max_, iphi_min_, maxDepthAll_, maxDepthHB_, maxDepthHE_, maxDepthHF_, maxDepthHO_, nChannels_, and edm::ESHandle< T >::product().

52  {
53 
55  es.get<HcalRecNumberingRecord>().get( pHRNDC );
56  hcons = &(*pHRNDC);
61 
63 
64  es.get<CaloGeometryRecord > ().get(geometry);
65 
66  const CaloGeometry* geo = geometry.product();
71 
72  nChannels_[1] = gHB->getHxSize(1);
73  nChannels_[2] = gHE->getHxSize(2);
74  nChannels_[3] = gHO->getHxSize(3);
75  nChannels_[4] = gHF->getHxSize(4);
76 
77  nChannels_[0] = nChannels_[1] + nChannels_[2] + nChannels_[3] + nChannels_[4];
78 
79  //std::cout << "Channels HB:" << nChannels_[1] << " HE:" << nChannels_[2] << " HO:" << nChannels_[3] << " HF:" << nChannels_[4] << std::endl;
80 
81  //We hardcode the HF depths because in the dual readout configuration, rechits are not defined for depths 3&4
82  maxDepthHF_ = (maxDepthHF_ > 2 ? 2 : maxDepthHF_); //We retain the dynamic possibility that HF might have 0 or 1 depths
83 
86 
87  //Get Phi segmentation from geometry, use the max phi number so that all iphi values are included.
88 
89  int NphiMax = hcons->getNPhi(0);
90 
91  NphiMax = (hcons->getNPhi(1) > NphiMax ? hcons->getNPhi(1) : NphiMax);
92  NphiMax = (hcons->getNPhi(2) > NphiMax ? hcons->getNPhi(2) : NphiMax);
93  NphiMax = (hcons->getNPhi(3) > NphiMax ? hcons->getNPhi(3) : NphiMax);
94 
95  //Center the iphi bins on the integers
96  iphi_min_ = 0.5;
97  iphi_max_ = NphiMax + 0.5;
99 
100  //Retain classic behavior, all plots have same ieta range.
101 
102  int iEtaMax = (hcons->getEtaRange(0).second > hcons->getEtaRange(1).second ? hcons->getEtaRange(0).second : hcons->getEtaRange(1).second);
103  iEtaMax = (iEtaMax > hcons->getEtaRange(2).second ? iEtaMax : hcons->getEtaRange(2).second);
104  iEtaMax = (iEtaMax > hcons->getEtaRange(3).second ? iEtaMax : hcons->getEtaRange(3).second);
105 
106  //Give an empty bin around the subdet ieta range to make it clear that all ieta rings have been included
107  ieta_min_ = -iEtaMax - 1.5;
108  ieta_max_ = iEtaMax + 1.5;
110 
111  }
int getNPhi(const int type) const
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
Definition: CaloGeometry.cc:45
unsigned int getHxSize(const int type) const
int getMaxDepth(const int type) const
std::pair< int, int > getEtaRange(const int i) const
const HcalDDDRecConstants * hcons
T const * product() const
Definition: ESHandle.h:86
edm::ESHandle< CaloGeometry > geometry
double HcalRecHitsAnalyzer::dR ( double  eta1,
double  phi1,
double  eta2,
double  phi2 
)
private

Definition at line 1003 of file HcalRecHitsAnalyzer.cc.

References PI, mathSSE::sqrt(), and tmp.

Referenced by analyze().

1003  {
1004  double PI = 3.1415926535898;
1005  double deltaphi= phi1 - phi2;
1006  if( phi2 > phi1 ) { deltaphi= phi2 - phi1;}
1007  if(deltaphi > PI) { deltaphi = 2.*PI - deltaphi;}
1008  double deltaeta = eta2 - eta1;
1009  double tmp = sqrt(deltaeta* deltaeta + deltaphi*deltaphi);
1010  return tmp;
1011 }
T sqrt(T t)
Definition: SSEVec.h:18
#define PI
Definition: QcdUeDQM.h:36
std::vector< std::vector< double > > tmp
Definition: MVATrainer.cc:100
void HcalRecHitsAnalyzer::fillRecHitsTmp ( int  subdet_,
edm::Event const &  ev 
)
privatevirtual

Definition at line 825 of file HcalRecHitsAnalyzer.cc.

References edm::SortedCollection< T, SORT >::begin(), cauxstwd, cchi2, cdepth, cen, cenM0, cenM3, ceta, HiEvtPlane_cfi::chi2, cieta, ciphi, cphi, cstwd, csub, ctime, cz, particleFlowClusterECALTimeSelected_cfi::depth, edm::SortedCollection< T, SORT >::end(), stringResolutionProvider_cfi::eta, edm::Event::getByToken(), HcalBarrel, HcalEndcap, HcalForward, hcalHBSevLvlVec, hcalHESevLvlVec, hcalHFSevLvlVec, hcalHOSevLvlVec, HcalOuter, hcalSevLvl(), iz, j, phi, interestingDetIdCollectionProducer_cfi::severityLevel, lumiQTWidget::t, tok_hbhe_, tok_hf_, and tok_ho_.

Referenced by analyze().

825  {
826 
827  using namespace edm;
828 
829 
830  // initialize data vectors
831  csub.clear();
832  cen.clear();
833  cenM0.clear();
834  cenM3.clear();
835  cchi2.clear();
836  ceta.clear();
837  cphi.clear();
838  ctime.clear();
839  cieta.clear();
840  ciphi.clear();
841  cdepth.clear();
842  cz.clear();
843  cstwd.clear();
844  cauxstwd.clear();
845  hcalHBSevLvlVec.clear();
846  hcalHESevLvlVec.clear();
847  hcalHFSevLvlVec.clear();
848  hcalHOSevLvlVec.clear();
849 
850  if( subdet_ == 1 || subdet_ == 2 || subdet_ == 5 || subdet_ == 6 || subdet_ == 0) {
851 
852  //HBHE
854  ev.getByToken(tok_hbhe_, hbhecoll);
855 
856  for (HBHERecHitCollection::const_iterator j=hbhecoll->begin(); j != hbhecoll->end(); j++) {
857  HcalDetId cell(j->id());
858  const HcalGeometry* cellGeometry =
859  (HcalGeometry*)(geometry->getSubdetectorGeometry(cell));
860  double eta = cellGeometry->getPosition(cell).eta () ;
861  double phi = cellGeometry->getPosition(cell).phi () ;
862  double zc = cellGeometry->getPosition(cell).z ();
863  int sub = cell.subdet();
864  int depth = cell.depth();
865  int inteta = cell.ieta();
866  int intphi = cell.iphi();
867  double en = j->energy();
868  double enM0 = j->eraw();
869  double enM3 = j->eaux();
870  double chi2 = j->chi2();
871  double t = j->time();
872  int stwd = j->flags();
873  int auxstwd = j->aux();
874 
875  int severityLevel = hcalSevLvl( (CaloRecHit*) &*j );
876  if( cell.subdet()==HcalBarrel ){
877  hcalHBSevLvlVec.push_back(severityLevel);
878  }else if (cell.subdet()==HcalEndcap ){
879  hcalHESevLvlVec.push_back(severityLevel);
880  }
881 
882  if((iz > 0 && eta > 0.) || (iz < 0 && eta <0.) || iz == 0) {
883 
884  csub.push_back(sub);
885  cen.push_back(en);
886  cenM0.push_back(enM0);
887  cenM3.push_back(enM3);
888  cchi2.push_back(chi2);
889  ceta.push_back(eta);
890  cphi.push_back(phi);
891  ctime.push_back(t);
892  cieta.push_back(inteta);
893  ciphi.push_back(intphi);
894  cdepth.push_back(depth);
895  cz.push_back(zc);
896  cstwd.push_back(stwd);
897  cauxstwd.push_back(auxstwd);
898  }
899  }
900 
901  }
902 
903  if( subdet_ == 4 || subdet_ == 5 || subdet_ == 6 || subdet_ == 0) {
904 
905  //HF
907  ev.getByToken(tok_hf_, hfcoll);
908 
909  for (HFRecHitCollection::const_iterator j = hfcoll->begin(); j != hfcoll->end(); j++) {
910  HcalDetId cell(j->id());
911  const CaloCellGeometry* cellGeometry =
912  geometry->getSubdetectorGeometry (cell)->getGeometry (cell) ;
913  double eta = cellGeometry->getPosition().eta () ;
914  double phi = cellGeometry->getPosition().phi () ;
915  double zc = cellGeometry->getPosition().z ();
916  int sub = cell.subdet();
917  int depth = cell.depth();
918  int inteta = cell.ieta();
919  int intphi = cell.iphi();
920  double en = j->energy();
921  double enM0 = 0.;
922  double enM3 = 0.;
923  double chi2 = 0.;
924  double t = j->time();
925  int stwd = j->flags();
926  int auxstwd = j->aux();
927 
928  int severityLevel = hcalSevLvl( (CaloRecHit*) &*j );
929  if( cell.subdet()==HcalForward ){
930  hcalHFSevLvlVec.push_back(severityLevel);
931  }
932 
933  if((iz > 0 && eta > 0.) || (iz < 0 && eta <0.) || iz == 0) {
934 
935  csub.push_back(sub);
936  cen.push_back(en);
937  cenM0.push_back(enM0);
938  cenM3.push_back(enM3);
939  cchi2.push_back(chi2);
940  ceta.push_back(eta);
941  cphi.push_back(phi);
942  ctime.push_back(t);
943  cieta.push_back(inteta);
944  ciphi.push_back(intphi);
945  cdepth.push_back(depth);
946  cz.push_back(zc);
947  cstwd.push_back(stwd);
948  cauxstwd.push_back(auxstwd);
949  }
950  }
951  }
952 
953  //HO
954  if( subdet_ == 3 || subdet_ == 5 || subdet_ == 6 || subdet_ == 0) {
955 
957  ev.getByToken(tok_ho_, hocoll);
958 
959  for (HORecHitCollection::const_iterator j = hocoll->begin(); j != hocoll->end(); j++) {
960  HcalDetId cell(j->id());
961  const CaloCellGeometry* cellGeometry =
962  geometry->getSubdetectorGeometry (cell)->getGeometry (cell) ;
963  double eta = cellGeometry->getPosition().eta () ;
964  double phi = cellGeometry->getPosition().phi () ;
965  double zc = cellGeometry->getPosition().z ();
966  int sub = cell.subdet();
967  int depth = cell.depth();
968  int inteta = cell.ieta();
969  int intphi = cell.iphi();
970  double t = j->time();
971  double en = j->energy();
972  double enM0 = 0.;
973  double enM3 = 0.;
974  double chi2 = 0.;
975  int stwd = j->flags();
976  int auxstwd = j->aux();
977 
978  int severityLevel = hcalSevLvl( (CaloRecHit*) &*j );
979  if( cell.subdet()==HcalOuter ){
980  hcalHOSevLvlVec.push_back(severityLevel);
981  }
982 
983  if((iz > 0 && eta > 0.) || (iz < 0 && eta <0.) || iz == 0) {
984  csub.push_back(sub);
985  cen.push_back(en);
986  cenM0.push_back(enM0);
987  cenM3.push_back(enM3);
988  cchi2.push_back(chi2);
989  ceta.push_back(eta);
990  cphi.push_back(phi);
991  ctime.push_back(t);
992  cieta.push_back(inteta);
993  ciphi.push_back(intphi);
994  cdepth.push_back(depth);
995  cz.push_back(zc);
996  cstwd.push_back(stwd);
997  cauxstwd.push_back(auxstwd);
998  }
999  }
1000  }
1001 }
std::vector< int > csub
std::vector< double > cphi
std::vector< int > hcalHOSevLvlVec
std::vector< int > cdepth
int hcalSevLvl(const CaloRecHit *hit)
std::vector< HBHERecHit >::const_iterator const_iterator
std::vector< int > hcalHBSevLvlVec
bool ev
std::vector< double > ceta
std::vector< int > hcalHESevLvlVec
edm::EDGetTokenT< HORecHitCollection > tok_ho_
std::vector< double > cchi2
int j
Definition: DBlmapReader.cc:9
std::vector< uint32_t > cauxstwd
std::vector< int > ciphi
std::vector< double > cz
edm::EDGetTokenT< HBHERecHitCollection > tok_hbhe_
const_iterator end() const
std::vector< int > cieta
std::vector< double > cenM3
std::vector< uint32_t > cstwd
edm::EDGetTokenT< HFRecHitCollection > tok_hf_
std::vector< int > hcalHFSevLvlVec
HLT enums.
std::vector< double > ctime
std::vector< double > cen
std::vector< double > cenM0
const_iterator begin() const
int HcalRecHitsAnalyzer::hcalSevLvl ( const CaloRecHit hit)
private

Definition at line 1044 of file HcalRecHitsAnalyzer.cc.

References DEFINE_FWK_MODULE, CaloRecHit::detid(), CaloRecHit::flags(), HcalSeverityLevelComputer::getSeverityLevel(), HcalChannelStatus::getValue(), HcalCondObjectContainer< Item >::getValues(), HcalEndcap, HcalTopology::idFront(), interestingDetIdCollectionProducer_cfi::severityLevel, theHcalChStatus, theHcalSevLvlComputer, theHcalTopology, and HcalTopology::withSpecialRBXHBHE().

Referenced by fillRecHitsTmp().

1044  {
1045 
1046  HcalDetId id = hit->detid();
1047  if (theHcalTopology->withSpecialRBXHBHE() && id.subdet() == HcalEndcap) {
1048  id = theHcalTopology->idFront(id);
1049  }
1050 
1051  const uint32_t recHitFlag = hit->flags();
1052  const uint32_t dbStatusFlag = theHcalChStatus->getValues(id)->getValue();
1053 
1054  int severityLevel = theHcalSevLvlComputer->getSeverityLevel(id, recHitFlag, dbStatusFlag);
1055 
1056  return severityLevel;
1057 
1058 }
const DetId & detid() const
Definition: CaloRecHit.h:21
const HcalTopology * theHcalTopology
const Item * getValues(DetId fId, bool throwOnFail=true) const
const HcalSeverityLevelComputer * theHcalSevLvlComputer
const HcalChannelQuality * theHcalChStatus
uint32_t flags() const
Definition: CaloRecHit.h:22
int getSeverityLevel(const DetId &myid, const uint32_t &myflag, const uint32_t &mystatus) const
HcalDetId idFront(const HcalDetId &id) const
Definition: HcalTopology.h:170
uint32_t getValue() const
bool withSpecialRBXHBHE() const
Definition: HcalTopology.h:162
double HcalRecHitsAnalyzer::phi12 ( double  phi1,
double  en1,
double  phi2,
double  en2 
)
private

Definition at line 1013 of file HcalRecHitsAnalyzer.cc.

References PI, and tmp.

Referenced by analyze().

1013  {
1014  // weighted mean value of phi1 and phi2
1015 
1016  double tmp;
1017  double PI = 3.1415926535898;
1018  double a1 = phi1; double a2 = phi2;
1019 
1020  if( a1 > 0.5*PI && a2 < 0.) a2 += 2*PI;
1021  if( a2 > 0.5*PI && a1 < 0.) a1 += 2*PI;
1022  tmp = (a1 * en1 + a2 * en2)/(en1 + en2);
1023  if(tmp > PI) tmp -= 2.*PI;
1024 
1025  return tmp;
1026 
1027 }
#define PI
Definition: QcdUeDQM.h:36
std::vector< std::vector< double > > tmp
Definition: MVATrainer.cc:100

Member Data Documentation

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

Definition at line 280 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

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

Definition at line 274 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

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

Definition at line 270 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

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

Definition at line 271 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

std::vector<double> HcalRecHitsAnalyzer::cenM0
private

Definition at line 272 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

std::vector<double> HcalRecHitsAnalyzer::cenM3
private

Definition at line 273 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

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

Definition at line 275 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

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

Definition at line 268 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

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

Definition at line 269 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

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

Definition at line 276 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

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

Definition at line 279 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

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

Definition at line 267 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

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

Definition at line 277 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

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

Definition at line 278 of file HcalRecHitsAnalyzer.h.

Referenced by fillRecHitsTmp().

std::string HcalRecHitsAnalyzer::ecalselector_
private

Definition at line 75 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and HcalRecHitsAnalyzer().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::emap
private

Definition at line 136 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::emean_vs_ieta_HB
private

Definition at line 138 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::emean_vs_ieta_HBM0
private

Definition at line 139 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::emean_vs_ieta_HBM3
private

Definition at line 140 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::emean_vs_ieta_HE
private

Definition at line 141 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::emean_vs_ieta_HEM0
private

Definition at line 142 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::emean_vs_ieta_HEM3
private

Definition at line 143 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::emean_vs_ieta_HF
private

Definition at line 144 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::emean_vs_ieta_HO
private

Definition at line 145 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

int HcalRecHitsAnalyzer::etype_
private

Definition at line 104 of file HcalRecHitsAnalyzer.h.

Referenced by HcalRecHitsAnalyzer().

std::string HcalRecHitsAnalyzer::eventype_
private

Definition at line 76 of file HcalRecHitsAnalyzer.h.

Referenced by HcalRecHitsAnalyzer().

bool HcalRecHitsAnalyzer::famos_
private

Definition at line 79 of file HcalRecHitsAnalyzer.h.

edm::ESHandle<CaloGeometry> HcalRecHitsAnalyzer::geometry
private
std::vector<int> HcalRecHitsAnalyzer::hcalHBSevLvlVec
private

Definition at line 116 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

std::vector<int> HcalRecHitsAnalyzer::hcalHESevLvlVec
private

Definition at line 116 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

std::vector<int> HcalRecHitsAnalyzer::hcalHFSevLvlVec
private

Definition at line 116 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

std::vector<int> HcalRecHitsAnalyzer::hcalHOSevLvlVec
private

Definition at line 116 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and fillRecHitsTmp().

std::string HcalRecHitsAnalyzer::hcalselector_
private

Definition at line 74 of file HcalRecHitsAnalyzer.h.

Referenced by HcalRecHitsAnalyzer().

const HcalDDDRecConstants* HcalRecHitsAnalyzer::hcons
private

Definition at line 81 of file HcalRecHitsAnalyzer.h.

Referenced by dqmBeginRun().

int HcalRecHitsAnalyzer::ieta_bins_
private

Definition at line 90 of file HcalRecHitsAnalyzer.h.

Referenced by bookHistograms(), and dqmBeginRun().

float HcalRecHitsAnalyzer::ieta_max_
private

Definition at line 91 of file HcalRecHitsAnalyzer.h.

Referenced by bookHistograms(), and dqmBeginRun().

float HcalRecHitsAnalyzer::ieta_min_
private

Definition at line 91 of file HcalRecHitsAnalyzer.h.

Referenced by bookHistograms(), and dqmBeginRun().

int HcalRecHitsAnalyzer::imc
private

Definition at line 106 of file HcalRecHitsAnalyzer.h.

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

int HcalRecHitsAnalyzer::iphi_bins_
private

Definition at line 87 of file HcalRecHitsAnalyzer.h.

Referenced by bookHistograms(), and dqmBeginRun().

float HcalRecHitsAnalyzer::iphi_max_
private

Definition at line 88 of file HcalRecHitsAnalyzer.h.

Referenced by bookHistograms(), and dqmBeginRun().

float HcalRecHitsAnalyzer::iphi_min_
private

Definition at line 88 of file HcalRecHitsAnalyzer.h.

Referenced by bookHistograms(), and dqmBeginRun().

int HcalRecHitsAnalyzer::iz
private

Definition at line 105 of file HcalRecHitsAnalyzer.h.

Referenced by fillRecHitsTmp(), and HcalRecHitsAnalyzer().

MonitorElement* HcalRecHitsAnalyzer::map_ecal
private

Definition at line 134 of file HcalRecHitsAnalyzer.h.

int HcalRecHitsAnalyzer::maxDepthAll_
private

Definition at line 82 of file HcalRecHitsAnalyzer.h.

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

int HcalRecHitsAnalyzer::maxDepthHB_
private

Definition at line 82 of file HcalRecHitsAnalyzer.h.

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

int HcalRecHitsAnalyzer::maxDepthHE_
private

Definition at line 82 of file HcalRecHitsAnalyzer.h.

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

int HcalRecHitsAnalyzer::maxDepthHF_
private

Definition at line 82 of file HcalRecHitsAnalyzer.h.

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

int HcalRecHitsAnalyzer::maxDepthHO_
private

Definition at line 82 of file HcalRecHitsAnalyzer.h.

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

std::string HcalRecHitsAnalyzer::mc_
private

Definition at line 78 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meDeltaEta
private

Definition at line 163 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meDeltaPhi
private

Definition at line 162 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meEcalHcalEnergyConeHB
private

Definition at line 234 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meEcalHcalEnergyConeHE
private

Definition at line 235 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meEcalHcalEnergyConeHF
private

Definition at line 237 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meEcalHcalEnergyConeHO
private

Definition at line 236 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meEcalHcalEnergyHB
private

Definition at line 231 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meEcalHcalEnergyHE
private

Definition at line 232 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meEnConeEtaProfile
private

Definition at line 158 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meEnConeEtaProfile_E
private

Definition at line 159 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meEnConeEtaProfile_EH
private

Definition at line 160 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meEnergyHcalVsEcalHB
private

Definition at line 240 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meEnergyHcalVsEcalHE
private

Definition at line 241 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meLog10Chi2profileHB
private

Definition at line 197 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meLog10Chi2profileHE
private

Definition at line 204 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meNumEcalRecHitsConeHB
private

Definition at line 244 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meNumEcalRecHitsConeHE
private

Definition at line 245 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meRecHitsEnergyHB
private

Definition at line 172 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meRecHitsEnergyHBM0
private

Definition at line 173 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meRecHitsEnergyHBM3
private

Definition at line 174 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meRecHitsEnergyHE
private

Definition at line 180 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meRecHitsEnergyHEM0
private

Definition at line 181 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meRecHitsEnergyHEM3
private

Definition at line 182 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meRecHitsEnergyHF
private

Definition at line 190 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meRecHitsEnergyHO
private

Definition at line 188 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meRecHitsEnergyM2vM0HB
private

Definition at line 175 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meRecHitsEnergyM2vM0HE
private

Definition at line 183 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meRecHitsEnergyM3vM0HB
private

Definition at line 176 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meRecHitsEnergyM3vM0HE
private

Definition at line 184 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meRecHitsEnergyM3vM2HB
private

Definition at line 177 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meRecHitsEnergyM3vM2HE
private

Definition at line 185 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meRecHitsM2Chi2HB
private

Definition at line 178 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meRecHitsM2Chi2HE
private

Definition at line 186 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meSumRecHitsEnergyConeHB
private

Definition at line 223 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meSumRecHitsEnergyConeHE
private

Definition at line 224 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meSumRecHitsEnergyConeHF
private

Definition at line 226 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meSumRecHitsEnergyConeHFL
private

Definition at line 227 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meSumRecHitsEnergyConeHFS
private

Definition at line 228 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meSumRecHitsEnergyConeHO
private

Definition at line 225 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meSumRecHitsEnergyHB
private

Definition at line 217 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meSumRecHitsEnergyHE
private

Definition at line 218 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meSumRecHitsEnergyHF
private

Definition at line 220 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meSumRecHitsEnergyHO
private

Definition at line 219 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::meTE_HB
private

Definition at line 193 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTE_HE
private

Definition at line 201 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTE_HF
private

Definition at line 212 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTE_High_HB
private

Definition at line 194 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTE_High_HO
private

Definition at line 207 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTE_HO
private

Definition at line 206 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTE_Low_HB
private

Definition at line 192 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTE_Low_HE
private

Definition at line 200 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTE_Low_HF
private

Definition at line 211 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTEprofileHB
private

Definition at line 196 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTEprofileHB_High
private

Definition at line 198 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTEprofileHB_Low
private

Definition at line 195 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTEprofileHE
private

Definition at line 203 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTEprofileHE_Low
private

Definition at line 202 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTEprofileHF
private

Definition at line 214 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTEprofileHF_Low
private

Definition at line 213 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTEprofileHO
private

Definition at line 208 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTEprofileHO_High
private

Definition at line 209 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTimeHB
private

Definition at line 166 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTimeHE
private

Definition at line 167 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTimeHF
private

Definition at line 169 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::meTimeHO
private

Definition at line 168 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

int HcalRecHitsAnalyzer::nChannels_[5]
private

Definition at line 85 of file HcalRecHitsAnalyzer.h.

Referenced by bookHistograms(), and dqmBeginRun().

int HcalRecHitsAnalyzer::nevtot
private

Definition at line 283 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and HcalRecHitsAnalyzer().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::Nhb
private

Definition at line 124 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::Nhe
private

Definition at line 125 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::Nhf
private

Definition at line 127 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::Nho
private

Definition at line 126 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::occupancy_map_HB
private

Definition at line 147 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::occupancy_map_HE
private

Definition at line 148 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::occupancy_map_HF
private

Definition at line 149 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::occupancy_map_HO
private

Definition at line 150 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::occupancy_vs_ieta_HB
private

Definition at line 152 of file HcalRecHitsAnalyzer.h.

Referenced by bookHistograms().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::occupancy_vs_ieta_HE
private

Definition at line 153 of file HcalRecHitsAnalyzer.h.

Referenced by bookHistograms().

std::vector<MonitorElement*> HcalRecHitsAnalyzer::occupancy_vs_ieta_HF
private

Definition at line 154 of file HcalRecHitsAnalyzer.h.

Referenced by bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::occupancy_vs_ieta_HO
private

Definition at line 155 of file HcalRecHitsAnalyzer.h.

Referenced by bookHistograms().

std::string HcalRecHitsAnalyzer::outputFile_
private

Definition at line 73 of file HcalRecHitsAnalyzer.h.

Referenced by HcalRecHitsAnalyzer().

MonitorElement* HcalRecHitsAnalyzer::RecHit_Aux_StatusWord_HB
private

Definition at line 261 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::RecHit_Aux_StatusWord_HE
private

Definition at line 262 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::RecHit_Aux_StatusWord_HF
private

Definition at line 263 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::RecHit_Aux_StatusWord_HO
private

Definition at line 264 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::RecHit_StatusWord_HB
private

Definition at line 250 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::RecHit_StatusWord_HE
private

Definition at line 251 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::RecHit_StatusWord_HF
private

Definition at line 252 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::RecHit_StatusWord_HF67
private

Definition at line 253 of file HcalRecHitsAnalyzer.h.

MonitorElement* HcalRecHitsAnalyzer::RecHit_StatusWord_HO
private

Definition at line 254 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::RecHit_StatusWordCorr_HB
private

Definition at line 257 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::RecHit_StatusWordCorr_HE
private

Definition at line 258 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::sevLvl_HB
private

Definition at line 118 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::sevLvl_HE
private

Definition at line 119 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::sevLvl_HF
private

Definition at line 120 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* HcalRecHitsAnalyzer::sevLvl_HO
private

Definition at line 121 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and bookHistograms().

std::string HcalRecHitsAnalyzer::sign_
private

Definition at line 77 of file HcalRecHitsAnalyzer.h.

Referenced by HcalRecHitsAnalyzer().

int HcalRecHitsAnalyzer::subdet_
private

Definition at line 101 of file HcalRecHitsAnalyzer.h.

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

const HcalChannelQuality* HcalRecHitsAnalyzer::theHcalChStatus
private

Definition at line 111 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and hcalSevLvl().

const HcalSeverityLevelComputer* HcalRecHitsAnalyzer::theHcalSevLvlComputer
private

Definition at line 113 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and hcalSevLvl().

const HcalTopology* HcalRecHitsAnalyzer::theHcalTopology
private

Definition at line 109 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and hcalSevLvl().

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

Definition at line 97 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and HcalRecHitsAnalyzer().

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

Definition at line 98 of file HcalRecHitsAnalyzer.h.

Referenced by analyze(), and HcalRecHitsAnalyzer().

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

Definition at line 94 of file HcalRecHitsAnalyzer.h.

Referenced by fillRecHitsTmp(), and HcalRecHitsAnalyzer().

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

Definition at line 96 of file HcalRecHitsAnalyzer.h.

Referenced by fillRecHitsTmp(), and HcalRecHitsAnalyzer().

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

Definition at line 95 of file HcalRecHitsAnalyzer.h.

Referenced by fillRecHitsTmp(), and HcalRecHitsAnalyzer().