CMS 3D CMS Logo

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

#include <CaloTowersValidation.h>

Inheritance diagram for CaloTowersValidation:
DQMEDAnalyzer edm::one::EDProducer< edm::Accumulator, edm::EndLuminosityBlockProducer, edm::EndRunProducer, edm::one::WatchLuminosityBlocks, edm::one::WatchRuns > edm::one::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

void analyze (edm::Event const &e, edm::EventSetup const &c) override
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
 CaloTowersValidation (edm::ParameterSet const &conf)
 
 ~CaloTowersValidation () override
 
- Public Member Functions inherited from DQMEDAnalyzer
void accumulate (edm::Event const &ev, edm::EventSetup const &es) final
 
void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) override
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &)
 
 DQMEDAnalyzer ()
 
 DQMEDAnalyzer (DQMEDAnalyzer const &)=delete
 
 DQMEDAnalyzer (DQMEDAnalyzer &&)=delete
 
void endLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) override
 
void endLuminosityBlockProduce (edm::LuminosityBlock &lumi, edm::EventSetup const &setup) final
 
void endRun (edm::Run const &run, edm::EventSetup const &setup) override
 
void endRunProduce (edm::Run &run, edm::EventSetup const &setup) override
 
 ~DQMEDAnalyzer () override=default
 
- Public Member Functions inherited from edm::one::EDProducer< edm::Accumulator, edm::EndLuminosityBlockProducer, edm::EndRunProducer, edm::one::WatchLuminosityBlocks, edm::one::WatchRuns >
 EDProducer ()=default
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool hasAbilityToProduceInLumis () const final
 
bool hasAbilityToProduceInRuns () const final
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
- Public Member Functions inherited from edm::one::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDProducerBase () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
 ~ProducerBase () noexcept(false) override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 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 & itemsToGetFrom (BranchType iType) 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
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Types

typedef math::RhoEtaPhiVector Vector
 

Private Member Functions

double dR (double eta1, double phi1, double eta2, double phi2)
 

Private Attributes

MonitorElementemean_vs_ieta_E
 
MonitorElementemean_vs_ieta_E1
 
MonitorElementemean_vs_ieta_EH
 
MonitorElementemean_vs_ieta_EH1
 
MonitorElementemean_vs_ieta_H
 
MonitorElementemean_vs_ieta_H1
 
MonitorElementemEnergyTiming_HB
 
MonitorElementemEnergyTiming_HE
 
MonitorElementemEnergyTiming_HF
 
MonitorElementemEnergyTiming_High_HB
 
MonitorElementemEnergyTiming_Low_HB
 
MonitorElementemEnergyTiming_Low_HE
 
MonitorElementemEnergyTiming_profile_HB
 
MonitorElementemEnergyTiming_profile_HE
 
MonitorElementemEnergyTiming_profile_HF
 
MonitorElementemEnergyTiming_profile_High_HB
 
MonitorElementemEnergyTiming_profile_Low_HB
 
MonitorElementemEnergyTiming_profile_Low_HE
 
MonitorElementemTiming_HB
 
MonitorElementemTiming_HE
 
MonitorElementemTiming_HF
 
double etaMax [3]
 
double etaMin [3]
 
MonitorElementhadEnergyTiming_HB
 
MonitorElementhadEnergyTiming_HE
 
MonitorElementhadEnergyTiming_HF
 
MonitorElementhadEnergyTiming_High_HB
 
MonitorElementhadEnergyTiming_Low_HB
 
MonitorElementhadEnergyTiming_Low_HE
 
MonitorElementhadEnergyTiming_Low_HF
 
MonitorElementhadEnergyTiming_profile_HB
 
MonitorElementhadEnergyTiming_profile_HE
 
MonitorElementhadEnergyTiming_profile_HF
 
MonitorElementhadEnergyTiming_profile_High_HB
 
MonitorElementhadEnergyTiming_profile_Low_HB
 
MonitorElementhadEnergyTiming_profile_Low_HE
 
MonitorElementhadEnergyTiming_profile_Low_HF
 
MonitorElementhadTiming_HB
 
MonitorElementhadTiming_HE
 
MonitorElementhadTiming_HF
 
std::string hcalselector_
 
int imc
 
int isub
 
MonitorElementmapEnergy_E
 
MonitorElementmapEnergy_EH
 
MonitorElementmapEnergy_H
 
MonitorElementmapEnergy_HB
 
MonitorElementmapEnergy_HE
 
MonitorElementmapEnergy_HF
 
MonitorElementmapEnergy_N
 
MonitorElementmapEnergyEcal_HB
 
MonitorElementmapEnergyEcal_HE
 
MonitorElementmapEnergyEcal_HF
 
MonitorElementmapEnergyHcal_HB
 
MonitorElementmapEnergyHcal_HE
 
MonitorElementmapEnergyHcal_HF
 
std::string mc_
 
MonitorElementmeEnergyEcal_HB
 
MonitorElementmeEnergyEcal_HE
 
MonitorElementmeEnergyEcal_HF
 
MonitorElementmeEnergyEcalTower_HB
 
MonitorElementmeEnergyEcalTower_HE
 
MonitorElementmeEnergyEcalTower_HF
 
MonitorElementmeEnergyHcal_HB
 
MonitorElementmeEnergyHcal_HE
 
MonitorElementmeEnergyHcal_HF
 
MonitorElementmeEnergyHcalTower_HB
 
MonitorElementmeEnergyHcalTower_HE
 
MonitorElementmeEnergyHcalTower_HF
 
MonitorElementmeEnergyHcalvsEcal_HB
 
MonitorElementmeEnergyHcalvsEcal_HE
 
MonitorElementmeEnergyHcalvsEcal_HF
 
MonitorElementmeEnergyHO_HB
 
MonitorElementmeEnergyHO_HE
 
MonitorElementmeEnergyHO_HF
 
MonitorElementmeNumFiredTowers_HB
 
MonitorElementmeNumFiredTowers_HE
 
MonitorElementmeNumFiredTowers_HF
 
MonitorElementMET_HB
 
MonitorElementMET_HE
 
MonitorElementMET_HF
 
MonitorElementmeTotEnergy_HB
 
MonitorElementmeTotEnergy_HE
 
MonitorElementmeTotEnergy_HF
 
int nevent
 
MonitorElementNtowers_vs_ieta
 
MonitorElementnumBadCellsEcal_EB
 
MonitorElementnumBadCellsEcal_EE
 
MonitorElementnumBadCellsHcal_HB
 
MonitorElementnumBadCellsHcal_HE
 
MonitorElementnumBadCellsHcal_HF
 
MonitorElementnumPrbCellsEcal_EB
 
MonitorElementnumPrbCellsEcal_EE
 
MonitorElementnumPrbCellsHcal_HB
 
MonitorElementnumPrbCellsHcal_HE
 
MonitorElementnumPrbCellsHcal_HF
 
MonitorElementnumRcvCellsEcal_EB
 
MonitorElementnumRcvCellsEcal_EE
 
MonitorElementnumRcvCellsHcal_HB
 
MonitorElementnumRcvCellsHcal_HE
 
MonitorElementnumRcvCellsHcal_HF
 
MonitorElementoccupancy_map
 
MonitorElementoccupancy_vs_ieta
 
std::string outputFile_
 
MonitorElementphiMET_HB
 
MonitorElementphiMET_HE
 
MonitorElementphiMET_HF
 
MonitorElementSET_HB
 
MonitorElementSET_HE
 
MonitorElementSET_HF
 
edm::EDGetTokenT< CaloTowerCollectiontok_calo_
 
edm::EDGetTokenT< edm::HepMCProducttok_evt_
 
bool useAllHistos_
 

Additional Inherited Members

- Public Types inherited from edm::one::EDProducerBase
typedef EDProducerBase ModuleType
 
- Public Types inherited from edm::ProducerBase
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex >>
 
typedef ProductRegistryHelper::TypeLabelList TypeLabelList
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::one::EDProducerBase
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)
 
- Protected Attributes inherited from DQMEDAnalyzer
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 

Detailed Description

Definition at line 33 of file CaloTowersValidation.h.

Member Typedef Documentation

Definition at line 48 of file CaloTowersValidation.h.

Constructor & Destructor Documentation

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

Definition at line 6 of file CaloTowersValidation.cc.

References etaMax, etaMin, edm::ParameterSet::getUntrackedParameter(), hcalselector_, imc, isub, mc_, nevent, outputFile_, AlCaHLTBitMon_QueryRunRegistry::string, tok_calo_, tok_evt_, and useAllHistos_.

7 {
8 
9  tok_calo_ = consumes<CaloTowerCollection>(conf.getUntrackedParameter<edm::InputTag>("CaloTowerCollectionLabel"));
10  tok_evt_ = consumes<edm::HepMCProduct>(edm::InputTag("generatorSmeared"));
11 
12  // DQM ROOT output
13  outputFile_ = conf.getUntrackedParameter<std::string>("outputFile", "myfile.root");
14 
15  hcalselector_ = conf.getUntrackedParameter<std::string>("hcalselector", "all");
16 
17  mc_ = conf.getUntrackedParameter<std::string>("mc", "yes");
18  useAllHistos_ = conf.getUntrackedParameter<bool>("useAllHistos", false);
19 
20  etaMin[0] = 0.;
21  etaMax[0] = 1.4;
22  etaMin[1] = 1.4;
23  etaMax[1] = 2.9;
24  etaMin[2] = 2.9;
25  etaMax[2] = 5.2;
26 
27  isub = 0;
28  if(hcalselector_ == "HB") isub = 1;
29  if(hcalselector_ == "HE") isub = 2;
30  if(hcalselector_ == "HF") isub = 3;
31 
32  imc = 1;
33  if(mc_ == "no") imc = 0;
34 
35  if ( !outputFile_.empty() ) {
36  edm::LogInfo("OutputInfo") << " Hcal RecHit Task histograms will be saved to '" << outputFile_.c_str() << "'";
37  } else {
38  edm::LogInfo("OutputInfo") << " Hcal RecHit Task histograms will NOT be saved";
39  }
40 
41  nevent = 0;
42  // const char * sub = hcalselector_.c_str();
43 
44 }
edm::EDGetTokenT< CaloTowerCollection > tok_calo_
edm::EDGetTokenT< edm::HepMCProduct > tok_evt_
CaloTowersValidation::~CaloTowersValidation ( )
override

Definition at line 47 of file CaloTowersValidation.cc.

47  {
48 
49 }

Member Function Documentation

void CaloTowersValidation::analyze ( edm::Event const &  e,
edm::EventSetup const &  c 
)
overridevirtual

Reimplemented from DQMEDAnalyzer.

Definition at line 405 of file CaloTowersValidation.cc.

References edm::SortedCollection< T, SORT >::begin(), gather_cfg::cout, DetId::det(), dR(), DetId::Ecal, EcalBarrel, EcalEndcap, emean_vs_ieta_E, emean_vs_ieta_E1, emean_vs_ieta_EH, emean_vs_ieta_EH1, emean_vs_ieta_H, emean_vs_ieta_H1, emEnergyTiming_HB, emEnergyTiming_HE, emEnergyTiming_HF, emEnergyTiming_High_HB, emEnergyTiming_Low_HB, emEnergyTiming_Low_HE, emEnergyTiming_profile_HB, emEnergyTiming_profile_HE, emEnergyTiming_profile_HF, emEnergyTiming_profile_High_HB, emEnergyTiming_profile_Low_HB, emEnergyTiming_profile_Low_HE, emTiming_HB, emTiming_HE, emTiming_HF, edm::SortedCollection< T, SORT >::end(), etaMax, etaMin, MonitorElement::Fill(), HcalObjRepresent::Fill(), edm::HepMCProduct::GetEvent(), hadEnergyTiming_HB, hadEnergyTiming_HE, hadEnergyTiming_HF, hadEnergyTiming_High_HB, hadEnergyTiming_Low_HB, hadEnergyTiming_Low_HE, hadEnergyTiming_Low_HF, hadEnergyTiming_profile_HB, hadEnergyTiming_profile_HE, hadEnergyTiming_profile_HF, hadEnergyTiming_profile_High_HB, hadEnergyTiming_profile_Low_HB, hadEnergyTiming_profile_Low_HE, hadEnergyTiming_profile_Low_HF, hadTiming_HB, hadTiming_HE, hadTiming_HF, DetId::Hcal, HcalBarrel, HcalEndcap, HcalForward, CaloTowerDetId::ieta(), imc, isub, edm::HandleBase::isValid(), mapEnergy_E, mapEnergy_EH, mapEnergy_H, mapEnergy_HB, mapEnergy_HE, mapEnergy_HF, mapEnergy_N, mapEnergyEcal_HB, mapEnergyEcal_HE, mapEnergyEcal_HF, mapEnergyHcal_HB, mapEnergyHcal_HE, mapEnergyHcal_HF, MuonErrorMatrixAnalyzer_cfi::maxPt, meEnergyEcal_HB, meEnergyEcal_HE, meEnergyEcal_HF, meEnergyEcalTower_HB, meEnergyEcalTower_HE, meEnergyEcalTower_HF, meEnergyHcal_HB, meEnergyHcal_HE, meEnergyHcal_HF, meEnergyHcalTower_HB, meEnergyHcalTower_HE, meEnergyHcalTower_HF, meEnergyHcalvsEcal_HB, meEnergyHcalvsEcal_HE, meEnergyHcalvsEcal_HF, meEnergyHO_HB, meEnergyHO_HE, meEnergyHO_HF, meNumFiredTowers_HB, meNumFiredTowers_HE, meNumFiredTowers_HF, RazorAnalyzer::met, MET_HB, MET_HE, MET_HF, meTotEnergy_HB, meTotEnergy_HE, meTotEnergy_HF, nevent, npart, Ntowers_vs_ieta, numBadCellsEcal_EB, numBadCellsEcal_EE, numBadCellsHcal_HB, numBadCellsHcal_HE, numBadCellsHcal_HF, numPrbCellsEcal_EB, numPrbCellsEcal_EE, numPrbCellsHcal_HB, numPrbCellsHcal_HE, numPrbCellsHcal_HF, numRcvCellsEcal_EB, numRcvCellsEcal_EE, numRcvCellsHcal_HB, numRcvCellsHcal_HE, numRcvCellsHcal_HF, occupancy_map, AlCaHLTBitMon_ParallelJobs::p, phiMET_HB, phiMET_HE, phiMET_HF, EnergyCorrector::pt, alignCSCRings::r, Gflash::Rmin, SET_HB, SET_HE, SET_HF, mathSSE::sqrt(), HcalDetId::subdet(), DetId::subdetId(), tok_calo_, tok_evt_, and useAllHistos_.

405  {
406 
407  nevent++;
408 
409  // bool MC = false; // UNUSED
410  double phi_MC = 9999.;
411  double eta_MC = 9999.;
412 
413  if (imc != 0){
415  event.getByToken(tok_evt_,evtMC); // generator in late 310_preX
416  if (!evtMC.isValid()) {
417  std::cout << "no HepMCProduct found" << std::endl;
418  } else {
419  // MC=true; // UNUSED
420  // std::cout << "*** source HepMCProduct found"<< std::endl;
421  }
422 
423  // MC particle with highest pt is taken as a direction reference
424  double maxPt = -99999.;
425  int npart = 0;
426  const HepMC::GenEvent * myGenEvent = evtMC->GetEvent();
427  for ( HepMC::GenEvent::particle_const_iterator p = myGenEvent->particles_begin();
428  p != myGenEvent->particles_end(); ++p ) {
429  double phip = (*p)->momentum().phi();
430  double etap = (*p)->momentum().eta();
431  // phi_MC = phip;
432  // eta_MC = etap;
433  double pt = (*p)->momentum().perp();
434  if(pt > maxPt) { npart++; maxPt = pt; phi_MC = phip; eta_MC = etap; }
435  }
436  // std::cout << "*** Max pT = " << maxPt << std::endl;
437  }
438 
440  event.getByToken(tok_calo_,towers);
442 
443  double met;
444  double phimet;
445 
446  // ieta scan
447  double partR = 0.3;
448  double Rmin = 9999.;
449  double Econe = 0.;
450  double Hcone = 0.;
451  double Ee1 = 0.;
452  double Eh1 = 0.;
453  double ieta_MC = 9999;
454  double iphi_MC = 9999;
455  // double etaM = 9999.;
456 
457 
458  // HB
459  double sumEnergyHcal_HB = 0.;
460  double sumEnergyEcal_HB = 0.;
461  double sumEnergyHO_HB = 0.;
462  Int_t numFiredTowers_HB = 0;
463  double metx_HB = 0.;
464  double mety_HB = 0.;
465  double metz_HB = 0.;
466  double sEt_HB = 0.;
467  // HE
468  double sumEnergyHcal_HE = 0.;
469  double sumEnergyEcal_HE = 0.;
470  double sumEnergyHO_HE = 0.;
471  Int_t numFiredTowers_HE = 0;
472  double metx_HE = 0.;
473  double mety_HE = 0.;
474  double metz_HE = 0.;
475  double sEt_HE = 0.;
476  // HF
477  double sumEnergyHcal_HF = 0.;
478  double sumEnergyEcal_HF = 0.;
479  double sumEnergyHO_HF = 0.;
480  Int_t numFiredTowers_HF = 0;
481  double metx_HF = 0.;
482  double mety_HF = 0.;
483  double metz_HF = 0.;
484  double sEt_HF = 0.;
485 
486  for ( cal = towers->begin(); cal != towers->end(); ++cal ) {
487 
488  double eE = cal->emEnergy();
489  double eH = cal->hadEnergy();
490  double eHO = cal->outerEnergy();
491  double etaT = cal->eta();
492  double phiT = cal->phi();
493  double en = cal->energy();
494  double etT = cal->et();
495  double had_tm = cal->hcalTime();
496  double em_tm = cal->ecalTime();
497 
498  int numBadEcalCells = cal->numBadEcalCells();
499  int numRcvEcalCells = cal->numRecoveredEcalCells();
500  int numPrbEcalCells = cal->numProblematicEcalCells();
501 
502  int numBadHcalCells = cal->numBadHcalCells();
503  int numRcvHcalCells = cal->numRecoveredHcalCells();
504  int numPrbHcalCells = cal->numProblematicHcalCells();
505 
506  math::RhoEtaPhiVector mom(cal->et(), cal->eta(), cal->phi());
507  // Vector mom = cal->momentum();
508 
509  // cell properties
510  CaloTowerDetId idT = cal->id();
511  int ieta = idT.ieta();
512  int iphi = idT.iphi();
513 
514  // ecal: 0 EcalBarrel 1 EcalEndcap
515  // hcal: 0 hcalBarrel 1 HcalEndcap 2 HcalForward
516  std::vector<int> inEcals(2), inHcals(3);
517  unsigned int constitSize = cal->constituentsSize();
518  for(unsigned int ic=0; ic<constitSize; ic++){
519  DetId detId = cal->constituent(ic);
520  if(detId.det() == DetId::Ecal){
521  if( detId.subdetId()==EcalBarrel ) inEcals[0] =1;
522  else if( detId.subdetId()==EcalEndcap ) inEcals[1] =1;
523  }
524  if(detId.det() == DetId::Hcal){
525  if( HcalDetId(detId).subdet()==HcalBarrel ) inHcals[0] =1;
526  else if( HcalDetId(detId).subdet()==HcalEndcap ) inHcals[1] =1;
527  else if( HcalDetId(detId).subdet()==HcalForward ) inHcals[2] =1;
528  }
529  }
530  //All cell histos are used
531  if( inEcals[0] ) {
532  numBadCellsEcal_EB->Fill(numBadEcalCells);
533  numRcvCellsEcal_EB->Fill(numRcvEcalCells);
534  numPrbCellsEcal_EB->Fill(numPrbEcalCells);
535  }
536  if( inEcals[1] ) {
537  numBadCellsEcal_EE->Fill(numBadEcalCells);
538  numRcvCellsEcal_EE->Fill(numRcvEcalCells);
539  numPrbCellsEcal_EE->Fill(numPrbEcalCells);
540  }
541 
542  if (imc != 0){
543  double r = dR(eta_MC, phi_MC, etaT, phiT);
544 
545  if( r < partR ){
546  Econe += eE;
547  Hcone += eH;
548 
549  // closest to MC
550  if(r < Rmin) {
551  if( fabs(eta_MC) < 3.0 && (ieta > 29 || ieta < -29)) {;}
552  else {
553  Rmin = r;
554  ieta_MC = ieta;
555  iphi_MC = iphi;
556  Ee1 = eE;
557  Eh1 = eH;
558  }
559  }
560  }
561  }
562 
563  //Ntowers is used in EndJob, occupancy_map is used for occupancy vs ieta
564  Ntowers_vs_ieta -> Fill(double(ieta),1.);
565  occupancy_map -> Fill(double(ieta),double(iphi));
566 
567 
568  if((isub == 0 || isub == 1)
569  && (fabs(etaT) < etaMax[0] && fabs(etaT) >= etaMin[0] )) {
570 
571  //All cell histos are used
572  numBadCellsHcal_HB->Fill(numBadHcalCells);
573  numRcvCellsHcal_HB->Fill(numRcvHcalCells);
574  numPrbCellsHcal_HB->Fill(numPrbHcalCells);
575 
576  //Map energy histos are not used
577  if (useAllHistos_){
578  mapEnergy_HB -> Fill(double(ieta), double(iphi), en);
579  mapEnergyHcal_HB -> Fill(double(ieta), double(iphi), eH);
580  mapEnergyEcal_HB -> Fill(double(ieta), double(iphi), eE);
581  }
582  // std::cout << " e_ecal = " << eE << std::endl;
583 
584  // simple sums
585  sumEnergyHcal_HB += eH;
586  sumEnergyEcal_HB += eE;
587  sumEnergyHO_HB += eHO;
588 
589  numFiredTowers_HB++;
590 
591  //Not used
592  if (useAllHistos_){
595  }
596 
597  // MET, SET & phimet
598  // double etT = cal->et();
599  metx_HB += mom.x();
600  mety_HB += mom.y(); //etT * sin(phiT);
601  sEt_HB += etT;
602 
603  //Timing (all histos are used)
604  emTiming_HB->Fill(em_tm);
605  hadTiming_HB->Fill(had_tm);
606 
607  emEnergyTiming_Low_HB->Fill(eE, em_tm);
608  emEnergyTiming_HB->Fill(eE, em_tm);
609  emEnergyTiming_High_HB->Fill(eE, em_tm);
611  emEnergyTiming_profile_HB->Fill(eE, em_tm);
613 
614  hadEnergyTiming_Low_HB->Fill(eH, had_tm);
615  hadEnergyTiming_HB->Fill(eH, had_tm);
616  hadEnergyTiming_High_HB->Fill(eH, had_tm);
617  hadEnergyTiming_profile_Low_HB->Fill(eH, had_tm);
618  hadEnergyTiming_profile_HB->Fill(eH, had_tm);
620  }
621 
622  if((isub == 0 || isub == 2)
623  && (fabs(etaT) < etaMax[1] && fabs(etaT) >= etaMin[1] )) {
624 
625  //All cell histos are used
626  numBadCellsHcal_HE->Fill(numBadHcalCells);
627  numRcvCellsHcal_HE->Fill(numRcvHcalCells);
628  numPrbCellsHcal_HE->Fill(numPrbHcalCells);
629 
630  //Map energy histos are not used
631  if (useAllHistos_){
632  mapEnergy_HE -> Fill(double(ieta), double(iphi), en);
633  mapEnergyHcal_HE -> Fill(double(ieta), double(iphi), eH);
634  mapEnergyEcal_HE -> Fill(double(ieta), double(iphi), eE);
635  }
636  // std::cout << " e_ecal = " << eE << std::endl;
637 
638  // simple sums
639  sumEnergyHcal_HE += eH;
640  sumEnergyEcal_HE += eE;
641  sumEnergyHO_HE += eHO;
642 
643  numFiredTowers_HE++;
644 
645  //Not used
646  if (useAllHistos_){
649  }
650  // MET, SET & phimet
651  // double etT = cal->et();
652  metx_HE += mom.x();
653  mety_HE += mom.y(); //etT * sin(phiT);
654  sEt_HE += etT;
655 
656  //Timing (all histos are used)
657  emTiming_HE->Fill(em_tm);
658  hadTiming_HE->Fill(had_tm);
659 
660  emEnergyTiming_Low_HE->Fill(eE, em_tm);
661  emEnergyTiming_HE->Fill(eE, em_tm);
663  emEnergyTiming_profile_HE->Fill(eE, em_tm);
664 
665  hadEnergyTiming_Low_HE->Fill(eH, had_tm);
666  hadEnergyTiming_HE->Fill(eH, had_tm);
667  hadEnergyTiming_profile_Low_HE->Fill(eH, had_tm);
668  hadEnergyTiming_profile_HE->Fill(eH, had_tm);
669  }
670 
671  if((isub == 0 || isub == 3)
672  && (fabs(etaT) < etaMax[2] && fabs(etaT) >= etaMin[2] )) {
673 
674  //All cell histos are used
675  numBadCellsHcal_HF->Fill(numBadHcalCells);
676  numRcvCellsHcal_HF->Fill(numRcvHcalCells);
677  numPrbCellsHcal_HF->Fill(numPrbHcalCells);
678 
679  //Map energy histos are not used
680  if (useAllHistos_){
681  mapEnergy_HF -> Fill(double(ieta), double(iphi), en);
682  mapEnergyHcal_HF -> Fill(double(ieta), double(iphi), eH);
683  mapEnergyEcal_HF -> Fill(double(ieta), double(iphi), eE);
684  }
685  // std::cout << " e_ecal = " << eE << std::endl;
686 
687  // simple sums
688  sumEnergyHcal_HF += eH;
689  sumEnergyEcal_HF += eE;
690  sumEnergyHO_HF += eHO;
691 
692  numFiredTowers_HF++;
693 
694  //Not used
695  if (useAllHistos_){
698  }
699  // MET, SET & phimet
700  // double etT = cal->et();
701  metx_HF += mom.x();
702  mety_HF += mom.y(); //etT * sin(phiT);
703  sEt_HF += etT;
704 
705  //Timing (all histos are used)
706  emTiming_HF->Fill(em_tm);
707  hadTiming_HF->Fill(had_tm);
708  emEnergyTiming_HF->Fill(eE, em_tm);
709  emEnergyTiming_profile_HF->Fill(eE, em_tm);
710 
711  hadEnergyTiming_Low_HF->Fill(eH, had_tm);
712  hadEnergyTiming_HF->Fill(eH, had_tm);
713  hadEnergyTiming_profile_Low_HF->Fill(eH, had_tm);
714  hadEnergyTiming_profile_HF->Fill(eH, had_tm);
715  }
716 
717 
718 
719  } // end of Towers cycle
720 
721  //These are the six single pion histos
722  emean_vs_ieta_E -> Fill(double(ieta_MC), Econe);
723  emean_vs_ieta_H -> Fill(double(ieta_MC), Hcone);
724  emean_vs_ieta_EH -> Fill(double(ieta_MC), Econe+Hcone);
725  emean_vs_ieta_E1 -> Fill(double(ieta_MC), Ee1);
726  emean_vs_ieta_H1 -> Fill(double(ieta_MC), Eh1);
727  emean_vs_ieta_EH1 -> Fill(double(ieta_MC), Ee1+Eh1);
728 
729  //Map histos are not used except the last one in EndJob
730  if (useAllHistos_){
731  mapEnergy_E -> Fill(double(ieta_MC), double(iphi_MC), Ee1);
732  mapEnergy_H -> Fill(double(ieta_MC), double(iphi_MC), Eh1);
733  mapEnergy_EH -> Fill(double(ieta_MC), double(iphi_MC), Ee1+Eh1);
734  }
735  mapEnergy_N -> Fill(double(ieta_MC), double(iphi_MC), 1.);
736 
737 
738  if(isub == 0 || isub == 1) {
739  met = sqrt(metx_HB*metx_HB + mety_HB*mety_HB);
740  Vector metv(metx_HB,mety_HB,metz_HB);
741  phimet = metv.phi();
742 
743  //Five oldest drawn histos first; the rest are not used
744  meEnergyHcal_HB-> Fill(sumEnergyHcal_HB);
745  meEnergyEcal_HB-> Fill(sumEnergyEcal_HB);
746  meNumFiredTowers_HB-> Fill(numFiredTowers_HB);
747  MET_HB -> Fill (met);
748  SET_HB -> Fill (sEt_HB);
749 
750  if (useAllHistos_){
751  meEnergyHcalvsEcal_HB->Fill(sumEnergyEcal_HB, sumEnergyHcal_HB);
752  meEnergyHO_HB-> Fill(sumEnergyHO_HB);
753  meTotEnergy_HB-> Fill(sumEnergyHcal_HB+sumEnergyEcal_HB
754  +sumEnergyHO_HB);
755  phiMET_HB -> Fill (phimet);
756  }
757  }
758 
759 
760  if(isub == 0 || isub == 2) {
761  met = sqrt(metx_HE*metx_HE + mety_HE*mety_HE);
762  Vector metv(metx_HE,mety_HE,metz_HE);
763  phimet = metv.phi();
764 
765  //Five oldest drawn histos first; the rest are not used
766  meEnergyHcal_HE-> Fill(sumEnergyHcal_HE);
767  meEnergyEcal_HE-> Fill(sumEnergyEcal_HE);
768  meNumFiredTowers_HE-> Fill(numFiredTowers_HE);
769  MET_HE -> Fill (met);
770  SET_HE -> Fill (sEt_HE);
771 
772  if (useAllHistos_){
773  meEnergyHcalvsEcal_HE->Fill(sumEnergyEcal_HE, sumEnergyHcal_HE);
774  meEnergyHO_HE-> Fill(sumEnergyHO_HE);
775  meTotEnergy_HE-> Fill(sumEnergyHcal_HE+sumEnergyEcal_HE
776  +sumEnergyHO_HE);
777  phiMET_HE -> Fill (phimet);
778  }
779  }
780 
781  if(isub == 0 || isub == 3) {
782  met = sqrt(metx_HF*metx_HF + mety_HF*mety_HF);
783  Vector metv(metx_HF,mety_HF,metz_HF);
784  phimet = metv.phi();
785 
786  //Five oldest drawn histos first; the rest are not used
787  meEnergyHcal_HF-> Fill(sumEnergyHcal_HF);
788  meEnergyEcal_HF-> Fill(sumEnergyEcal_HF);
789  meNumFiredTowers_HF-> Fill(numFiredTowers_HF);
790  MET_HF -> Fill (met);
791  SET_HF -> Fill (sEt_HF);
792 
793  if (useAllHistos_){
794  meEnergyHcalvsEcal_HF->Fill(sumEnergyEcal_HF, sumEnergyHcal_HF);
795  meEnergyHO_HF-> Fill(sumEnergyHO_HF);
796  meTotEnergy_HF-> Fill(sumEnergyHcal_HF+sumEnergyEcal_HF
797  +sumEnergyHO_HF);
798  phiMET_HF -> Fill (phimet);
799  }
800  }
801 
802 }
MonitorElement * emean_vs_ieta_E1
double dR(double eta1, double phi1, double eta2, double phi2)
MonitorElement * emean_vs_ieta_H1
MonitorElement * mapEnergyEcal_HE
MonitorElement * phiMET_HF
MonitorElement * hadEnergyTiming_profile_Low_HE
HcalSubdetector subdet() const
get the subdetector
Definition: HcalDetId.h:142
MonitorElement * emEnergyTiming_HE
MonitorElement * meEnergyHcalTower_HB
edm::EDGetTokenT< CaloTowerCollection > tok_calo_
MonitorElement * mapEnergy_HE
MonitorElement * meTotEnergy_HF
MonitorElement * hadTiming_HE
ROOT::Math::Plane3D::Vector Vector
Definition: EcalHitMaker.cc:29
MonitorElement * hadEnergyTiming_profile_HF
MonitorElement * mapEnergyEcal_HB
MonitorElement * hadEnergyTiming_profile_HB
MonitorElement * mapEnergy_HF
MonitorElement * meEnergyHcalvsEcal_HE
std::vector< CaloTower >::const_iterator const_iterator
MonitorElement * meEnergyEcal_HB
MonitorElement * meTotEnergy_HB
MonitorElement * numPrbCellsHcal_HE
MonitorElement * hadEnergyTiming_profile_High_HB
double npart
Definition: HydjetWrapper.h:49
MonitorElement * meNumFiredTowers_HF
MonitorElement * phiMET_HE
MonitorElement * mapEnergyHcal_HB
MonitorElement * hadEnergyTiming_profile_HE
MonitorElement * meNumFiredTowers_HE
MonitorElement * hadTiming_HB
RhoEtaPhiVectorD RhoEtaPhiVector
spatial vector with cylindrical internal representation using pseudorapidity
Definition: Vector3D.h:32
MonitorElement * emTiming_HB
MonitorElement * hadEnergyTiming_Low_HE
MonitorElement * numBadCellsHcal_HB
MonitorElement * numBadCellsEcal_EE
void Fill(long long x)
MonitorElement * hadEnergyTiming_profile_Low_HF
MonitorElement * numRcvCellsEcal_EB
MonitorElement * meEnergyHcalTower_HF
MonitorElement * meEnergyEcalTower_HB
MonitorElement * numPrbCellsEcal_EB
MonitorElement * numBadCellsEcal_EB
MonitorElement * emean_vs_ieta_EH
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
T sqrt(T t)
Definition: SSEVec.h:18
MonitorElement * emEnergyTiming_High_HB
MonitorElement * mapEnergyHcal_HE
MonitorElement * phiMET_HB
MonitorElement * hadEnergyTiming_profile_Low_HB
MonitorElement * emTiming_HF
MonitorElement * emEnergyTiming_Low_HE
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector&#39;s numbering enum) ...
Definition: DetId.h:41
MonitorElement * mapEnergy_E
MonitorElement * numBadCellsHcal_HF
MonitorElement * numPrbCellsHcal_HB
MonitorElement * meEnergyEcalTower_HE
MonitorElement * meEnergyHcal_HF
MonitorElement * numPrbCellsHcal_HF
MonitorElement * meEnergyEcalTower_HF
MonitorElement * meEnergyHcalvsEcal_HF
MonitorElement * hadEnergyTiming_High_HB
MonitorElement * emEnergyTiming_HF
bool isValid() const
Definition: HandleBase.h:74
MonitorElement * mapEnergy_H
MonitorElement * emTiming_HE
MonitorElement * emEnergyTiming_profile_Low_HB
MonitorElement * hadEnergyTiming_HF
MonitorElement * numRcvCellsEcal_EE
MonitorElement * meEnergyHO_HE
const_iterator end() const
MonitorElement * numBadCellsHcal_HE
MonitorElement * hadTiming_HF
Definition: DetId.h:18
MonitorElement * numRcvCellsHcal_HE
MonitorElement * meEnergyHcal_HE
MonitorElement * meEnergyEcal_HF
const HepMC::GenEvent * GetEvent() const
Definition: HepMCProduct.h:38
MonitorElement * meEnergyHcalTower_HE
met
===> hadronic RAZOR
edm::EDGetTokenT< edm::HepMCProduct > tok_evt_
MonitorElement * hadEnergyTiming_HB
MonitorElement * numRcvCellsHcal_HB
MonitorElement * emEnergyTiming_HB
MonitorElement * emEnergyTiming_profile_HF
MonitorElement * numRcvCellsHcal_HF
MonitorElement * numPrbCellsEcal_EE
MonitorElement * hadEnergyTiming_Low_HB
MonitorElement * meEnergyHO_HF
MonitorElement * meEnergyHcal_HB
MonitorElement * emEnergyTiming_Low_HB
MonitorElement * meNumFiredTowers_HB
MonitorElement * Ntowers_vs_ieta
MonitorElement * emean_vs_ieta_EH1
MonitorElement * meEnergyEcal_HE
MonitorElement * occupancy_map
MonitorElement * hadEnergyTiming_Low_HF
MonitorElement * meTotEnergy_HE
MonitorElement * mapEnergyHcal_HF
MonitorElement * emEnergyTiming_profile_Low_HE
MonitorElement * hadEnergyTiming_HE
MonitorElement * emean_vs_ieta_E
int ieta() const
get the tower ieta
MonitorElement * emean_vs_ieta_H
MonitorElement * meEnergyHcalvsEcal_HB
MonitorElement * emEnergyTiming_profile_HE
MonitorElement * meEnergyHO_HB
MonitorElement * mapEnergy_EH
MonitorElement * emEnergyTiming_profile_HB
MonitorElement * emEnergyTiming_profile_High_HB
const double Rmin[kNumberCalorimeter]
MonitorElement * mapEnergy_N
MonitorElement * mapEnergyEcal_HF
const_iterator begin() const
constexpr Detector det() const
get the detector field from this detid
Definition: DetId.h:39
MonitorElement * mapEnergy_HB
void CaloTowersValidation::bookHistograms ( DQMStore::IBooker ibooker,
edm::Run const &  irun,
edm::EventSetup const &  isetup 
)
overridevirtual

Implements DQMEDAnalyzer.

Definition at line 52 of file CaloTowersValidation.cc.

References DQMStore::IBooker::book1D(), DQMStore::IBooker::book2D(), DQMStore::IBooker::bookProfile(), emean_vs_ieta_E, emean_vs_ieta_E1, emean_vs_ieta_EH, emean_vs_ieta_EH1, emean_vs_ieta_H, emean_vs_ieta_H1, emEnergyTiming_HB, emEnergyTiming_HE, emEnergyTiming_HF, emEnergyTiming_High_HB, emEnergyTiming_Low_HB, emEnergyTiming_Low_HE, emEnergyTiming_profile_HB, emEnergyTiming_profile_HE, emEnergyTiming_profile_HF, emEnergyTiming_profile_High_HB, emEnergyTiming_profile_Low_HB, emEnergyTiming_profile_Low_HE, emTiming_HB, emTiming_HE, emTiming_HF, hadEnergyTiming_HB, hadEnergyTiming_HE, hadEnergyTiming_HF, hadEnergyTiming_High_HB, hadEnergyTiming_Low_HB, hadEnergyTiming_Low_HE, hadEnergyTiming_Low_HF, hadEnergyTiming_profile_HB, hadEnergyTiming_profile_HE, hadEnergyTiming_profile_HF, hadEnergyTiming_profile_High_HB, hadEnergyTiming_profile_Low_HB, hadEnergyTiming_profile_Low_HE, hadEnergyTiming_profile_Low_HF, hadTiming_HB, hadTiming_HE, hadTiming_HF, trackerHits::histo, isub, mapEnergy_E, mapEnergy_EH, mapEnergy_H, mapEnergy_HB, mapEnergy_HE, mapEnergy_HF, mapEnergy_N, mapEnergyEcal_HB, mapEnergyEcal_HE, mapEnergyEcal_HF, mapEnergyHcal_HB, mapEnergyHcal_HE, mapEnergyHcal_HF, meEnergyEcal_HB, meEnergyEcal_HE, meEnergyEcal_HF, meEnergyEcalTower_HB, meEnergyEcalTower_HE, meEnergyEcalTower_HF, meEnergyHcal_HB, meEnergyHcal_HE, meEnergyHcal_HF, meEnergyHcalTower_HB, meEnergyHcalTower_HE, meEnergyHcalTower_HF, meEnergyHcalvsEcal_HB, meEnergyHcalvsEcal_HE, meEnergyHcalvsEcal_HF, meEnergyHO_HB, meEnergyHO_HE, meEnergyHO_HF, meNumFiredTowers_HB, meNumFiredTowers_HE, meNumFiredTowers_HF, MET_HB, MET_HE, MET_HF, meTotEnergy_HB, meTotEnergy_HE, meTotEnergy_HF, Ntowers_vs_ieta, numBadCellsEcal_EB, numBadCellsEcal_EE, numBadCellsHcal_HB, numBadCellsHcal_HE, numBadCellsHcal_HF, numPrbCellsEcal_EB, numPrbCellsEcal_EE, numPrbCellsHcal_HB, numPrbCellsHcal_HE, numPrbCellsHcal_HF, numRcvCellsEcal_EB, numRcvCellsEcal_EE, numRcvCellsHcal_HB, numRcvCellsHcal_HE, numRcvCellsHcal_HF, occupancy_map, occupancy_vs_ieta, phiMET_HB, phiMET_HE, phiMET_HF, SET_HB, SET_HE, SET_HF, DQMStore::IBooker::setCurrentFolder(), and useAllHistos_.

53 {
54  Char_t histo[100];
55 
56  ibooker.setCurrentFolder("CaloTowersV/CaloTowersTask");
57 
58  //These two histos are not drawn by our macros, but they are used
59  //in the EndJob for norms and such so I am leaving them alone for now
60  //-------------------------------------------------------------------------------------------
61  sprintf (histo, "Ntowers_per_event_vs_ieta" );
62  Ntowers_vs_ieta = ibooker.book1D(histo, histo, 83, -41.5, 41.5);
63 
64  sprintf (histo, "CaloTowersTask_map_Nentries" );
65  mapEnergy_N = ibooker.book2D(histo, histo, 83, -41.5, 41.5, 72, 0., 72.);
66  //-------------------------------------------------------------------------------------------
67 
68  //These the single pion scan histos
69  //-------------------------------------------------------------------------------------------
70  sprintf (histo, "emean_vs_ieta_E" );
71  emean_vs_ieta_E = ibooker.bookProfile(histo, histo, 83, -41.5, 41.5, -100., 2000., " ");
72  sprintf (histo, "emean_vs_ieta_H" );
73  emean_vs_ieta_H = ibooker.bookProfile(histo, histo, 83, -41.5, 41.5, -100., 2000., " ");
74  sprintf (histo, "emean_vs_ieta_EH" );
75  emean_vs_ieta_EH = ibooker.bookProfile(histo, histo, 83, -41.5, 41.5, -100., 2000., " ");
76  //These are drawn
77  sprintf (histo, "emean_vs_ieta_E1" );
78  emean_vs_ieta_E1 = ibooker.bookProfile(histo, histo, 83, -41.5, 41.5, -100., 2000., " ");
79  sprintf (histo, "emean_vs_ieta_H1" );
80  emean_vs_ieta_H1 = ibooker.bookProfile(histo, histo, 83, -41.5, 41.5, -100., 2000., " ");
81  sprintf (histo, "emean_vs_ieta_EH1" );
82  emean_vs_ieta_EH1 = ibooker.bookProfile(histo, histo, 83, -41.5, 41.5, -100., 2000., " ");
83  //-------------------------------------------------------------------------------------------
84 
85  //Map energy histos are not drawn
86  if (useAllHistos_){
87  sprintf (histo, "CaloTowersTask_map_energy_E" );
88  mapEnergy_E = ibooker.book2D(histo, histo, 83, -41.5, 41.5, 72, 0., 72.);
89  sprintf (histo, "CaloTowersTask_map_energy_H");
90  mapEnergy_H = ibooker.book2D(histo, histo, 83, -41.5, 41.5, 72, 0., 72.);
91  sprintf (histo, "CaloTowersTask_map_energy_EH" );
92  mapEnergy_EH = ibooker.book2D(histo, histo, 83, -41.5, 41.5, 72, 0., 72.);
93  }
94 
95  //All ECAL cell histos are used
96  // XXX: ECAL 0-25 [0-26, 26 bins] HCAL 0-4 [0-5, 5 bins]
97  sprintf (histo, "number_of_bad_cells_Ecal_EB");
98  numBadCellsEcal_EB = ibooker.book1D(histo, histo, 26, 0, 26);
99  sprintf (histo, "number_of_bad_cells_Ecal_EE");
100  numBadCellsEcal_EE = ibooker.book1D(histo, histo, 26, 0, 26);
101  sprintf (histo, "number_of_recovered_cells_Ecal_EB");
102  numRcvCellsEcal_EB = ibooker.book1D(histo, histo, 26, 0, 26);
103  sprintf (histo, "number_of_recovered_cells_Ecal_EE");
104  numRcvCellsEcal_EE = ibooker.book1D(histo, histo, 26, 0, 26);
105  sprintf (histo, "number_of_problematic_cells_Ecal_EB");
106  numPrbCellsEcal_EB = ibooker.book1D(histo, histo, 26, 0, 26);
107  sprintf (histo, "number_of_problematic_cells_Ecal_EE");
108  numPrbCellsEcal_EE = ibooker.book1D(histo, histo, 26, 0, 26);
109 
110  //Occupancy vs. ieta is drawn, occupancy map is needed to draw it
111  sprintf (histo, "CaloTowersTask_map_occupancy" );
112  occupancy_map = ibooker.book2D(histo, histo, 83, -41.5, 41.5, 72, 0., 72.);
113 
114  sprintf (histo, "CaloTowersTask_occupancy_vs_ieta" );
115  occupancy_vs_ieta = ibooker.book1D(histo, histo, 83, -41.5, 41.5);
116 
117  if( isub == 1 || isub == 0) {
118  //All cell histos are used
119  sprintf (histo, "number_of_bad_cells_Hcal_HB");
120  numBadCellsHcal_HB = ibooker.book1D(histo, histo, 5, 0, 5);
121  sprintf (histo, "number_of_recovered_cells_Hcal_HB");
122  numRcvCellsHcal_HB = ibooker.book1D(histo, histo, 5, 0, 5);
123  sprintf (histo, "number_of_problematic_cells_Hcal_HB");
124  numPrbCellsHcal_HB = ibooker.book1D(histo, histo, 5, 0, 5);
125 
126  //These are the five oldest CaloTower histos used: NTowers, E in HCAL/ECAL, MET and SET
127  //-------------------------------------------------------------------------------------------
128  sprintf (histo, "CaloTowersTask_energy_HCAL_HB" ) ;
129  meEnergyHcal_HB = ibooker.book1D(histo, histo, 4100, -200, 8000);
130 
131  sprintf (histo, "CaloTowersTask_energy_ECAL_HB" ) ;
132  meEnergyEcal_HB = ibooker.book1D(histo, histo, 3100, -200, 6000);
133 
134  sprintf (histo, "CaloTowersTask_number_of_fired_towers_HB" ) ;
135  meNumFiredTowers_HB = ibooker.book1D(histo, histo, 1000, 0, 2000);
136 
137  sprintf (histo, "CaloTowersTask_MET_HB" ) ;
138  MET_HB = ibooker.book1D(histo, histo, 3000, 0. , 3000. ) ;
139 
140  sprintf (histo, "CaloTowersTask_SET_HB" ) ;
141  SET_HB = ibooker.book1D(histo, histo, 8000, 0. , 8000. ) ;
142  //-------------------------------------------------------------------------------------------
143 
144  //Timing histos and profiles -- all six are necessary
145  //-------------------------------------------------------------------------------------------
146  sprintf (histo, "CaloTowersTask_EM_Timing_HB" ) ;
147  emTiming_HB = ibooker.book1D(histo, histo, 110, -120., 100. ) ;
148 
149  sprintf (histo, "CaloTowersTask_HAD_Timing_HB" ) ;
150  hadTiming_HB = ibooker.book1D(histo, histo, 70, -48., 92. ) ;
151 
152  //Energy-Timing histos are divided into low, medium and high to reduce memory usage
153  //EM
154  sprintf (histo, "CaloTowersTask_EM_Energy_Timing_Low_HB" ) ;
155  emEnergyTiming_Low_HB = ibooker.book2D(histo, histo, 40, 0. , 40., 110, -120., 100. ) ;
156 
157  sprintf (histo, "CaloTowersTask_EM_Energy_Timing_HB" ) ;
158  emEnergyTiming_HB = ibooker.book2D(histo, histo, 200, 0. , 400., 110, -120., 100. ) ;
159 
160  sprintf (histo, "CaloTowersTask_EM_Energy_Timing_High_HB" ) ;
161  emEnergyTiming_High_HB = ibooker.book2D(histo, histo, 200, 0. , 3000., 110, -120., 100. ) ;
162 
163  sprintf (histo, "CaloTowersTask_EM_Energy_Timing_profile_Low_HB" ) ;
164  emEnergyTiming_profile_Low_HB = ibooker.bookProfile(histo, histo, 40, 0. , 40., 110, -120., 100. ) ;
165 
166  sprintf (histo, "CaloTowersTask_EM_Energy_Timing_profile_HB" ) ;
167  emEnergyTiming_profile_HB = ibooker.bookProfile(histo, histo, 200, 0. , 400., 110, -120., 100. ) ;
168 
169  sprintf (histo, "CaloTowersTask_EM_Energy_Timing_profile_High_HB" ) ;
170  emEnergyTiming_profile_High_HB = ibooker.bookProfile(histo, histo, 200, 0. , 3000., 110, -120., 100. ) ;
171 
172  //HAD
173  sprintf (histo, "CaloTowersTask_HAD_Energy_Timing_Low_HB" ) ;
174  hadEnergyTiming_Low_HB = ibooker.book2D(histo, histo, 40, 0. , 40., 70, -48., 92. ) ;
175 
176  sprintf (histo, "CaloTowersTask_HAD_Energy_Timing_HB" ) ;
177  hadEnergyTiming_HB = ibooker.book2D(histo, histo, 100, 0. , 200., 70, -48., 92. ) ;
178 
179  sprintf (histo, "CaloTowersTask_HAD_Energy_Timing_High_HB" ) ;
180  hadEnergyTiming_High_HB = ibooker.book2D(histo, histo, 300, 0. , 3000., 70, -48., 92. ) ;
181 
182  sprintf (histo, "CaloTowersTask_HAD_Energy_Timing_profile_Low_HB" ) ;
183  hadEnergyTiming_profile_Low_HB = ibooker.bookProfile(histo, histo, 40, 0. , 40., 70, -48., 92. ) ;
184 
185  sprintf (histo, "CaloTowersTask_HAD_Energy_Timing_profile_HB" ) ;
186  hadEnergyTiming_profile_HB = ibooker.bookProfile(histo, histo, 100, 0. , 200., 70, -48., 92. ) ;
187 
188  sprintf (histo, "CaloTowersTask_HAD_Energy_Timing_profile_High_HB" ) ;
189  hadEnergyTiming_profile_High_HB = ibooker.bookProfile(histo, histo, 300, 0. , 3000., 70, -48., 92. ) ;
190  //-------------------------------------------------------------------------------------------
191 
192  //Everything else is not drawn
193  if (useAllHistos_){
194  sprintf (histo, "CaloTowersTask_sum_of_energy_HCAL_vs_ECAL_HB") ;
195  meEnergyHcalvsEcal_HB = ibooker.book2D(histo, histo, 500, 0., 500., 500, 0., 500.);
196 
197  sprintf (histo, "CaloTowersTask_energy_OUTER_HB" ) ;
198  meEnergyHO_HB = ibooker.book1D(histo, histo, 1640, -200, 8000);
199 
200  sprintf (histo, "CaloTowersTask_energy_of_ECAL_component_of_tower_HB" ) ;
201  meEnergyEcalTower_HB = ibooker.book1D(histo, histo, 440, -200, 2000);
202 
203  sprintf (histo, "CaloTowersTask_energy_of_HCAL_component_of_tower_HB" ) ;
204  meEnergyHcalTower_HB = ibooker.book1D(histo, histo, 440 , -200 , 2000);
205 
206  sprintf (histo, "CaloTowersTask_energy_HcalPlusEcalPlusHO_HB" ) ;
207  meTotEnergy_HB = ibooker.book1D(histo, histo,400, 0., 2000.) ;
208 
209  sprintf (histo, "CaloTowersTask_map_energy_HB" );
210  mapEnergy_HB = ibooker.book2D(histo, histo, 83, -41.5, 41.5, 72, 0., 72.);
211  sprintf (histo, "CaloTowersTask_map_energy_HCAL_HB");
212  mapEnergyHcal_HB = ibooker.book2D(histo, histo, 83, -41.5, 41.5, 72, 0., 72.);
213  sprintf (histo, "CaloTowersTask_map_energy_ECAL_HB" );
214  mapEnergyEcal_HB = ibooker.book2D(histo, histo, 83, -41.5, 41.5, 72, 0., 72.);
215 
216  sprintf (histo, "CaloTowersTask_phi_MET_HB" ) ;
217  phiMET_HB = ibooker.book1D(histo, histo, 72, -3.1415926535898, 3.1415926535898 ) ;
218  }
219  }
220 
221  if( isub == 2 || isub == 0) {
222  //All cell histos are used
223  sprintf (histo, "number_of_bad_cells_Hcal_HE");
224  numBadCellsHcal_HE = ibooker.book1D(histo, histo, 5, 0, 5);
225  sprintf (histo, "number_of_recovered_cells_Hcal_HE");
226  numRcvCellsHcal_HE = ibooker.book1D(histo, histo, 5, 0, 5);
227  sprintf (histo, "number_of_problematic_cells_Hcal_HE");
228  numPrbCellsHcal_HE = ibooker.book1D(histo, histo, 5, 0, 5);
229 
230  //These are the five oldest CaloTower histos used: NTowers, E in HCAL/ECAL, MET and SET
231  //-------------------------------------------------------------------------------------------
232  sprintf (histo, "CaloTowersTask_energy_HCAL_HE" ) ;
233  meEnergyHcal_HE = ibooker.book1D(histo, histo, 1240, -200, 6000);
234 
235  sprintf (histo, "CaloTowersTask_energy_ECAL_HE" ) ;
236  meEnergyEcal_HE = ibooker.book1D(histo, histo, 1240, -200, 6000);
237 
238  sprintf (histo, "CaloTowersTask_number_of_fired_towers_HE" ) ;
239  meNumFiredTowers_HE = ibooker.book1D(histo, histo, 1000, 0, 2000);
240 
241  sprintf (histo, "CaloTowersTask_MET_HE" ) ;
242  MET_HE = ibooker.book1D(histo, histo, 1000, 0. , 1000. ) ;
243 
244  sprintf (histo, "CaloTowersTask_SET_HE" ) ;
245  SET_HE = ibooker.book1D(histo, histo, 2000, 0. , 2000. ) ;
246  //-------------------------------------------------------------------------------------------
247 
248  //Timing histos and profiles -- all six are necessary
249  //-------------------------------------------------------------------------------------------
250  sprintf (histo, "CaloTowersTask_EM_Timing_HE" ) ;
251  emTiming_HE = ibooker.book1D(histo, histo, 110, -120., 100. ) ;
252 
253  sprintf (histo, "CaloTowersTask_HAD_Timing_HE" ) ;
254  hadTiming_HE = ibooker.book1D(histo, histo, 70, -48., 92. ) ;
255 
256  //Energy-Timing histos are divided into low and normal to reduce memory usage
257  //EM
258  sprintf (histo, "CaloTowersTask_EM_Energy_Timing_Low_HE" ) ;
259  emEnergyTiming_Low_HE = ibooker.book2D(histo, histo, 160, 0. , 160., 110, -120., 100. ) ;
260 
261  sprintf (histo, "CaloTowersTask_EM_Energy_Timing_HE" ) ;
262  emEnergyTiming_HE = ibooker.book2D(histo, histo, 200, 0. , 800., 110, -120., 100. ) ;
263 
264  sprintf (histo, "CaloTowersTask_EM_Energy_Timing_profile_Low_HE" ) ;
265  emEnergyTiming_profile_Low_HE = ibooker.bookProfile(histo, histo, 160, 0. , 160., 110, -120., 100. ) ;
266 
267  sprintf (histo, "CaloTowersTask_EM_Energy_Timing_profile_HE" ) ;
268  emEnergyTiming_profile_HE = ibooker.bookProfile(histo, histo, 200, 0. , 800., 110, -120., 100. ) ;
269 
270  //HAD
271  sprintf (histo, "CaloTowersTask_HAD_Energy_Timing_Low_HE" ) ;
272  hadEnergyTiming_Low_HE = ibooker.book2D(histo, histo, 160, 0. , 160., 70, -48., 92. ) ;
273 
274  sprintf (histo, "CaloTowersTask_HAD_Energy_Timing_HE" ) ;
275  hadEnergyTiming_HE = ibooker.book2D(histo, histo, 200, 0. , 800., 70, -48., 92. ) ;
276 
277  sprintf (histo, "CaloTowersTask_HAD_Energy_Timing_profile_Low_HE" ) ;
278  hadEnergyTiming_profile_Low_HE = ibooker.bookProfile(histo, histo, 160, 0. , 160., 70, -48., 92. ) ;
279 
280  sprintf (histo, "CaloTowersTask_HAD_Energy_Timing_profile_HE" ) ;
281  hadEnergyTiming_profile_HE = ibooker.bookProfile(histo, histo, 200, 0. , 800., 70, -48., 92. ) ;
282  //-------------------------------------------------------------------------------------------
283 
284  //Everything else is not drawn
285  if (useAllHistos_){
286  sprintf (histo, "CaloTowersTask_sum_of_energy_HCAL_vs_ECAL_HE") ;
287  meEnergyHcalvsEcal_HE = ibooker.book2D(histo, histo, 500, 0., 500., 500, 0., 500.);
288 
289  sprintf (histo, "CaloTowersTask_energy_OUTER_HE" ) ;
290  meEnergyHO_HE = ibooker.book1D(histo, histo, 440, -200, 2000);
291 
292  sprintf (histo, "CaloTowersTask_energy_of_ECAL_component_of_tower_HE" ) ;
293  meEnergyEcalTower_HE = ibooker.book1D(histo, histo, 1100, -200, 2000);
294 
295  sprintf (histo, "CaloTowersTask_energy_of_HCAL_component_of_tower_HE" ) ;
296  meEnergyHcalTower_HE = ibooker.book1D(histo, histo, 1100 , -200 , 2000);
297 
298  sprintf (histo, "CaloTowersTask_energy_HcalPlusEcalPlusHO_HE" ) ;
299  meTotEnergy_HE = ibooker.book1D(histo, histo,400, 0., 2000.) ;
300 
301  sprintf (histo, "CaloTowersTask_map_energy_HE" );
302  mapEnergy_HE = ibooker.book2D(histo, histo, 83, -41.5, 41.5, 72, 0., 72.);
303  sprintf (histo, "CaloTowersTask_map_energy_HCAL_HE");
304  mapEnergyHcal_HE = ibooker.book2D(histo, histo, 83, -41.5, 41.5, 72, 0., 72.);
305  sprintf (histo, "CaloTowersTask_map_energy_ECAL_HE" );
306  mapEnergyEcal_HE = ibooker.book2D(histo, histo, 83, -41.5, 41.5, 72, 0., 72.);
307 
308  sprintf (histo, "CaloTowersTask_phi_MET_HE" ) ;
309  phiMET_HE = ibooker.book1D(histo, histo, 72, -3.1415926535898, 3.1415926535898 ) ;
310  }
311  }
312 
313 
314  if( isub == 3 || isub == 0) {
315  //All cell histos are used
316  sprintf (histo, "number_of_bad_cells_Hcal_HF");
317  numBadCellsHcal_HF = ibooker.book1D(histo, histo, 5, 0, 5);
318  sprintf (histo, "number_of_recovered_cells_Hcal_HF");
319  numRcvCellsHcal_HF = ibooker.book1D(histo, histo, 5, 0, 5);
320  sprintf (histo, "number_of_problematic_cells_Hcal_HF");
321  numPrbCellsHcal_HF = ibooker.book1D(histo, histo, 5, 0, 5);
322 
323  //These are the five oldest CaloTower histos used: NTowers, E in HCAL/ECAL, MET and SET
324  //-------------------------------------------------------------------------------------------
325  sprintf (histo, "CaloTowersTask_energy_HCAL_HF" ) ;
326  meEnergyHcal_HF = ibooker.book1D(histo, histo, 4040, -200, 20000);
327 
328  sprintf (histo, "CaloTowersTask_energy_ECAL_HF" ) ;
329  meEnergyEcal_HF = ibooker.book1D(histo, histo, 2440, -200, 12000);
330 
331  sprintf (histo, "CaloTowersTask_number_of_fired_towers_HF" ) ;
332  meNumFiredTowers_HF = ibooker.book1D(histo, histo, 1000, 0, 2000);
333 
334  sprintf (histo, "CaloTowersTask_MET_HF" ) ;
335  MET_HF = ibooker.book1D(histo, histo, 500, 0. , 500. ) ;
336 
337  sprintf (histo, "CaloTowersTask_SET_HF" ) ;
338  SET_HF = ibooker.book1D(histo, histo, 2000, 0. , 2000. ) ;
339  //-------------------------------------------------------------------------------------------
340 
341  //Timing histos and profiles -- all six are necessary
342  //-------------------------------------------------------------------------------------------
343  sprintf (histo, "CaloTowersTask_EM_Timing_HF" ) ;
344  emTiming_HF = ibooker.book1D(histo, histo, 110, -120., 100. ) ;
345 
346  sprintf (histo, "CaloTowersTask_HAD_Timing_HF" ) ;
347  hadTiming_HF = ibooker.book1D(histo, histo, 70, -48., 92. ) ;
348 
349  //EM
350  sprintf (histo, "CaloTowersTask_EM_Energy_Timing_HF" ) ;
351  emEnergyTiming_HF = ibooker.book2D(histo, histo, 150, 0. , 300., 110, -120., 100. ) ;
352 
353  sprintf (histo, "CaloTowersTask_EM_Energy_Timing_profile_HF" ) ;
354  emEnergyTiming_profile_HF = ibooker.bookProfile(histo, histo, 150, 0. , 300., 110, -120., 100. ) ;
355 
356  //HAD (requires two different sets of histograms to lower RAM usage)
357  sprintf (histo, "CaloTowersTask_HAD_Energy_Timing_Low_HF" ) ;
358  hadEnergyTiming_Low_HF = ibooker.book2D(histo, histo, 40, 0. , 40., 70, -48., 92. ) ;
359 
360  sprintf (histo, "CaloTowersTask_HAD_Energy_Timing_HF" ) ;
361  hadEnergyTiming_HF = ibooker.book2D(histo, histo, 200, 0. , 600., 70, -48., 92. ) ;
362 
363  sprintf (histo, "CaloTowersTask_HAD_Energy_Timing_profile_Low_HF" ) ;
364  hadEnergyTiming_profile_Low_HF = ibooker.bookProfile(histo, histo, 40, 0. , 40., 70, -48., 92. ) ;
365 
366  sprintf (histo, "CaloTowersTask_HAD_Energy_Timing_profile_HF" ) ;
367  hadEnergyTiming_profile_HF = ibooker.bookProfile(histo, histo, 200, 0. , 600., 70, -48., 92. ) ;
368  //-------------------------------------------------------------------------------------------
369 
370  //Everything else is not drawn
371  if (useAllHistos_){
372  sprintf (histo, "CaloTowersTask_sum_of_energy_HCAL_vs_ECAL_HF") ;
373  meEnergyHcalvsEcal_HF = ibooker.book2D(histo, histo, 500, 0., 500., 500, 0., 500.);
374 
375  sprintf (histo, "CaloTowersTask_energy_OUTER_HF" ) ;
376  meEnergyHO_HF = ibooker.book1D(histo, histo, 440, -200, 2000);
377 
378  sprintf (histo, "CaloTowersTask_energy_of_ECAL_component_of_tower_HF" ) ;
379  meEnergyEcalTower_HF = ibooker.book1D(histo, histo, 440, -200, 2000);
380 
381  sprintf (histo, "CaloTowersTask_energy_of_HCAL_component_of_tower_HF" ) ;
382  meEnergyHcalTower_HF = ibooker.book1D(histo, histo, 440 , -200 , 2000);
383 
384  sprintf (histo, "CaloTowersTask_energy_HcalPlusEcalPlusHO_HF" ) ;
385  meTotEnergy_HF = ibooker.book1D(histo, histo, 400, 0., 2000.) ;
386 
387  sprintf (histo, "CaloTowersTask_map_energy_HF" );
388  mapEnergy_HF = ibooker.book2D(histo, histo, 83, -41.5, 41.5, 72, 0., 72.);
389  sprintf (histo, "CaloTowersTask_map_energy_HCAL_HF");
390  mapEnergyHcal_HF = ibooker.book2D(histo, histo, 83, -41.5, 41.5, 72, 0., 72.);
391  sprintf (histo, "CaloTowersTask_map_energy_ECAL_HF" );
392  mapEnergyEcal_HF = ibooker.book2D(histo, histo, 83, -41.5, 41.5, 72, 0., 72.);
393 
394  sprintf (histo, "CaloTowersTask_phi_MET_HF" ) ;
395  phiMET_HF = ibooker.book1D(histo, histo, 72, -3.1415926535898, 3.1415926535898 ) ;
396  }
397  }
398 
399 
400 
401 }
MonitorElement * emean_vs_ieta_E1
MonitorElement * emean_vs_ieta_H1
MonitorElement * mapEnergyEcal_HE
MonitorElement * phiMET_HF
MonitorElement * hadEnergyTiming_profile_Low_HE
MonitorElement * emEnergyTiming_HE
MonitorElement * meEnergyHcalTower_HB
MonitorElement * mapEnergy_HE
MonitorElement * bookProfile(Args &&...args)
Definition: DQMStore.h:160
MonitorElement * meTotEnergy_HF
MonitorElement * hadTiming_HE
MonitorElement * hadEnergyTiming_profile_HF
MonitorElement * mapEnergyEcal_HB
MonitorElement * hadEnergyTiming_profile_HB
MonitorElement * mapEnergy_HF
MonitorElement * meEnergyHcalvsEcal_HE
MonitorElement * meEnergyEcal_HB
MonitorElement * meTotEnergy_HB
MonitorElement * numPrbCellsHcal_HE
MonitorElement * hadEnergyTiming_profile_High_HB
MonitorElement * meNumFiredTowers_HF
MonitorElement * phiMET_HE
MonitorElement * mapEnergyHcal_HB
MonitorElement * hadEnergyTiming_profile_HE
MonitorElement * meNumFiredTowers_HE
MonitorElement * hadTiming_HB
MonitorElement * emTiming_HB
MonitorElement * hadEnergyTiming_Low_HE
MonitorElement * numBadCellsHcal_HB
MonitorElement * numBadCellsEcal_EE
MonitorElement * hadEnergyTiming_profile_Low_HF
MonitorElement * numRcvCellsEcal_EB
MonitorElement * meEnergyHcalTower_HF
MonitorElement * meEnergyEcalTower_HB
MonitorElement * numPrbCellsEcal_EB
MonitorElement * numBadCellsEcal_EB
MonitorElement * emean_vs_ieta_EH
MonitorElement * emEnergyTiming_High_HB
MonitorElement * mapEnergyHcal_HE
MonitorElement * phiMET_HB
MonitorElement * hadEnergyTiming_profile_Low_HB
MonitorElement * emTiming_HF
MonitorElement * emEnergyTiming_Low_HE
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:118
MonitorElement * mapEnergy_E
MonitorElement * numBadCellsHcal_HF
MonitorElement * numPrbCellsHcal_HB
MonitorElement * meEnergyEcalTower_HE
MonitorElement * meEnergyHcal_HF
MonitorElement * occupancy_vs_ieta
MonitorElement * numPrbCellsHcal_HF
MonitorElement * meEnergyEcalTower_HF
MonitorElement * meEnergyHcalvsEcal_HF
MonitorElement * hadEnergyTiming_High_HB
MonitorElement * emEnergyTiming_HF
MonitorElement * mapEnergy_H
MonitorElement * emTiming_HE
MonitorElement * emEnergyTiming_profile_Low_HB
MonitorElement * hadEnergyTiming_HF
MonitorElement * numRcvCellsEcal_EE
MonitorElement * meEnergyHO_HE
MonitorElement * numBadCellsHcal_HE
MonitorElement * hadTiming_HF
MonitorElement * numRcvCellsHcal_HE
MonitorElement * meEnergyHcal_HE
MonitorElement * meEnergyEcal_HF
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:274
MonitorElement * meEnergyHcalTower_HE
MonitorElement * book2D(Args &&...args)
Definition: DQMStore.h:136
MonitorElement * hadEnergyTiming_HB
MonitorElement * numRcvCellsHcal_HB
MonitorElement * emEnergyTiming_HB
MonitorElement * emEnergyTiming_profile_HF
MonitorElement * numRcvCellsHcal_HF
MonitorElement * numPrbCellsEcal_EE
MonitorElement * hadEnergyTiming_Low_HB
MonitorElement * meEnergyHO_HF
MonitorElement * meEnergyHcal_HB
MonitorElement * emEnergyTiming_Low_HB
MonitorElement * meNumFiredTowers_HB
MonitorElement * Ntowers_vs_ieta
MonitorElement * emean_vs_ieta_EH1
MonitorElement * meEnergyEcal_HE
MonitorElement * occupancy_map
MonitorElement * hadEnergyTiming_Low_HF
MonitorElement * meTotEnergy_HE
MonitorElement * mapEnergyHcal_HF
MonitorElement * emEnergyTiming_profile_Low_HE
MonitorElement * hadEnergyTiming_HE
MonitorElement * emean_vs_ieta_E
MonitorElement * emean_vs_ieta_H
MonitorElement * meEnergyHcalvsEcal_HB
MonitorElement * emEnergyTiming_profile_HE
MonitorElement * meEnergyHO_HB
MonitorElement * emEnergyTiming_profile_HB
MonitorElement * mapEnergy_EH
MonitorElement * emEnergyTiming_profile_High_HB
MonitorElement * mapEnergy_N
MonitorElement * mapEnergyEcal_HF
MonitorElement * mapEnergy_HB
double CaloTowersValidation::dR ( double  eta1,
double  phi1,
double  eta2,
double  phi2 
)
private

Definition at line 804 of file CaloTowersValidation.cc.

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

Referenced by analyze().

804  {
805  double PI = 3.1415926535898;
806  double deltaphi= phi1 - phi2;
807  if( phi2 > phi1 ) { deltaphi= phi2 - phi1;}
808  if(deltaphi > PI) { deltaphi = 2.*PI - deltaphi;}
809  double deltaeta = eta2 - eta1;
810  double tmp = sqrt(deltaeta* deltaeta + deltaphi*deltaphi);
811  return tmp;
812 }
T sqrt(T t)
Definition: SSEVec.h:18
#define PI
Definition: QcdUeDQM.h:36
std::vector< std::vector< double > > tmp
Definition: MVATrainer.cc:100

Member Data Documentation

MonitorElement* CaloTowersValidation::emean_vs_ieta_E
private

Definition at line 63 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emean_vs_ieta_E1
private

Definition at line 67 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emean_vs_ieta_EH
private

Definition at line 65 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emean_vs_ieta_EH1
private

Definition at line 69 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emean_vs_ieta_H
private

Definition at line 64 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emean_vs_ieta_H1
private

Definition at line 68 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_HB
private

Definition at line 121 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_HE
private

Definition at line 156 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_HF
private

Definition at line 185 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_High_HB
private

Definition at line 122 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_Low_HB
private

Definition at line 120 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_Low_HE
private

Definition at line 155 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_profile_HB
private

Definition at line 124 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_profile_HE
private

Definition at line 158 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_profile_HF
private

Definition at line 186 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_profile_High_HB
private

Definition at line 125 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_profile_Low_HB
private

Definition at line 123 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_profile_Low_HE
private

Definition at line 157 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emTiming_HB
private

Definition at line 117 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emTiming_HE
private

Definition at line 152 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emTiming_HF
private

Definition at line 183 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

double CaloTowersValidation::etaMax[3]
private

Definition at line 59 of file CaloTowersValidation.h.

Referenced by analyze(), and CaloTowersValidation().

double CaloTowersValidation::etaMin[3]
private

Definition at line 60 of file CaloTowersValidation.h.

Referenced by analyze(), and CaloTowersValidation().

MonitorElement* CaloTowersValidation::hadEnergyTiming_HB
private

Definition at line 128 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_HE
private

Definition at line 161 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_HF
private

Definition at line 189 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_High_HB
private

Definition at line 129 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_Low_HB
private

Definition at line 127 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_Low_HE
private

Definition at line 160 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_Low_HF
private

Definition at line 188 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_profile_HB
private

Definition at line 131 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_profile_HE
private

Definition at line 163 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_profile_HF
private

Definition at line 191 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_profile_High_HB
private

Definition at line 132 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_profile_Low_HB
private

Definition at line 130 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_profile_Low_HE
private

Definition at line 162 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_profile_Low_HF
private

Definition at line 190 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadTiming_HB
private

Definition at line 118 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadTiming_HE
private

Definition at line 153 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadTiming_HF
private

Definition at line 184 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

std::string CaloTowersValidation::hcalselector_
private

Definition at line 44 of file CaloTowersValidation.h.

Referenced by CaloTowersValidation().

int CaloTowersValidation::imc
private

Definition at line 56 of file CaloTowersValidation.h.

Referenced by analyze(), and CaloTowersValidation().

int CaloTowersValidation::isub
private

Definition at line 53 of file CaloTowersValidation.h.

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

MonitorElement* CaloTowersValidation::mapEnergy_E
private

Definition at line 76 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergy_EH
private

Definition at line 78 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergy_H
private

Definition at line 77 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergy_HB
private

Definition at line 110 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergy_HE
private

Definition at line 145 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergy_HF
private

Definition at line 176 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergy_N
private

Definition at line 79 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergyEcal_HB
private

Definition at line 111 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergyEcal_HE
private

Definition at line 146 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergyEcal_HF
private

Definition at line 177 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergyHcal_HB
private

Definition at line 112 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergyHcal_HE
private

Definition at line 147 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergyHcal_HF
private

Definition at line 178 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

std::string CaloTowersValidation::mc_
private

Definition at line 45 of file CaloTowersValidation.h.

Referenced by CaloTowersValidation().

MonitorElement* CaloTowersValidation::meEnergyEcal_HB
private

Definition at line 102 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyEcal_HE
private

Definition at line 137 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyEcal_HF
private

Definition at line 168 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyEcalTower_HB
private

Definition at line 106 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyEcalTower_HE
private

Definition at line 141 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyEcalTower_HF
private

Definition at line 172 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcal_HB
private

Definition at line 103 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcal_HE
private

Definition at line 138 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcal_HF
private

Definition at line 169 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcalTower_HB
private

Definition at line 107 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcalTower_HE
private

Definition at line 142 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcalTower_HF
private

Definition at line 173 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcalvsEcal_HB
private

Definition at line 100 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcalvsEcal_HE
private

Definition at line 135 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcalvsEcal_HF
private

Definition at line 166 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHO_HB
private

Definition at line 101 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHO_HE
private

Definition at line 136 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHO_HF
private

Definition at line 167 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meNumFiredTowers_HB
private

Definition at line 104 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meNumFiredTowers_HE
private

Definition at line 139 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meNumFiredTowers_HF
private

Definition at line 170 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::MET_HB
private

Definition at line 113 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::MET_HE
private

Definition at line 148 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::MET_HF
private

Definition at line 179 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meTotEnergy_HB
private

Definition at line 108 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meTotEnergy_HE
private

Definition at line 143 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meTotEnergy_HF
private

Definition at line 174 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

int CaloTowersValidation::nevent
private

Definition at line 54 of file CaloTowersValidation.h.

Referenced by analyze(), and CaloTowersValidation().

MonitorElement* CaloTowersValidation::Ntowers_vs_ieta
private

Definition at line 71 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numBadCellsEcal_EB
private

Definition at line 82 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numBadCellsEcal_EE
private

Definition at line 83 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numBadCellsHcal_HB
private

Definition at line 89 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numBadCellsHcal_HE
private

Definition at line 90 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numBadCellsHcal_HF
private

Definition at line 91 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numPrbCellsEcal_EB
private

Definition at line 86 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numPrbCellsEcal_EE
private

Definition at line 87 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numPrbCellsHcal_HB
private

Definition at line 95 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numPrbCellsHcal_HE
private

Definition at line 96 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numPrbCellsHcal_HF
private

Definition at line 97 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numRcvCellsEcal_EB
private

Definition at line 84 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numRcvCellsEcal_EE
private

Definition at line 85 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numRcvCellsHcal_HB
private

Definition at line 92 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numRcvCellsHcal_HE
private

Definition at line 93 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numRcvCellsHcal_HF
private

Definition at line 94 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::occupancy_map
private

Definition at line 72 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::occupancy_vs_ieta
private

Definition at line 73 of file CaloTowersValidation.h.

Referenced by bookHistograms().

std::string CaloTowersValidation::outputFile_
private

Definition at line 43 of file CaloTowersValidation.h.

Referenced by CaloTowersValidation().

MonitorElement* CaloTowersValidation::phiMET_HB
private

Definition at line 115 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::phiMET_HE
private

Definition at line 150 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::phiMET_HF
private

Definition at line 181 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::SET_HB
private

Definition at line 114 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::SET_HE
private

Definition at line 149 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::SET_HF
private

Definition at line 180 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

edm::EDGetTokenT<CaloTowerCollection> CaloTowersValidation::tok_calo_
private

Definition at line 50 of file CaloTowersValidation.h.

Referenced by analyze(), and CaloTowersValidation().

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

Definition at line 51 of file CaloTowersValidation.h.

Referenced by analyze(), and CaloTowersValidation().

bool CaloTowersValidation::useAllHistos_
private

Definition at line 46 of file CaloTowersValidation.h.

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