CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > > edm::stream::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

virtual void analyze (edm::Event const &e, edm::EventSetup const &c)
 
virtual void beginRun ()
 
virtual void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
 CaloTowersValidation (edm::ParameterSet const &conf)
 
virtual void endRun ()
 
 ~CaloTowersValidation ()
 
- 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
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
virtual ~EDAnalyzerBase ()
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
 EDConsumerBase ()
 
ProductHolderIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const
 
std::vector
< ProductHolderIndexAndSkipBit >
const & 
itemsToGetFromEvent () const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesDependentUpon (const std::string &iProcessName, std::vector< const char * > &oModuleLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
bool registeredToConsume (ProductHolderIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &)
 
virtual ~EDConsumerBase ()
 

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
< CaloTowerCollection
tok_calo_
 
edm::EDGetTokenT
< edm::HepMCProduct
tok_evt_
 
bool useAllHistos_
 

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, GlobalCache
LuminosityBlockContext
 
typedef
CacheTypes::LuminosityBlockSummaryCache 
LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache,
GlobalCache
RunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 
- Public Types inherited from edm::stream::EDAnalyzerBase
typedef EDAnalyzerAdaptorBase ModuleType
 
- Static Public Member Functions inherited from DQMEDAnalyzer
static std::shared_ptr
< dqmDetails::NoCache
globalBeginLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, LuminosityBlockContext const *)
 
static std::shared_ptr
< dqmDetails::NoCache
globalBeginRunSummary (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::stream::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
- 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 33 of file CaloTowersValidation.h.

Member Typedef Documentation

Definition at line 50 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, HLT_25ns14e33_v1_cff::InputTag, 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("generator"));
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_.size() != 0 ) {
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_
tuple conf
Definition: dbtoconf.py:185
edm::EDGetTokenT< edm::HepMCProduct > tok_evt_
CaloTowersValidation::~CaloTowersValidation ( )

Definition at line 51 of file CaloTowersValidation.cc.

51  {
52 
53 }

Member Function Documentation

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

Implements edm::stream::EDAnalyzerBase.

Definition at line 412 of file CaloTowersValidation.cc.

References 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, etaMax, etaMin, MonitorElement::Fill(), HcalObjRepresent::Fill(), 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, 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, objects.METAnalyzer::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_, HLT_25ns14e33_v1_cff::towers, and useAllHistos_.

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

Definition at line 47 of file CaloTowersValidation.cc.

47 {}
void CaloTowersValidation::bookHistograms ( DQMStore::IBooker ibooker,
edm::Run const &  irun,
edm::EventSetup const &  isetup 
)
overridevirtual

Implements DQMEDAnalyzer.

Definition at line 56 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, timingPdfMaker::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_.

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

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

Referenced by analyze().

814  {
815  double PI = 3.1415926535898;
816  double deltaphi= phi1 - phi2;
817  if( phi2 > phi1 ) { deltaphi= phi2 - phi1;}
818  if(deltaphi > PI) { deltaphi = 2.*PI - deltaphi;}
819  double deltaeta = eta2 - eta1;
820  double tmp = sqrt(deltaeta* deltaeta + deltaphi*deltaphi);
821  return tmp;
822 }
#define PI
T sqrt(T t)
Definition: SSEVec.h:48
std::vector< std::vector< double > > tmp
Definition: MVATrainer.cc:100
void CaloTowersValidation::endRun ( void  )
virtual

Definition at line 49 of file CaloTowersValidation.cc.

49 {}

Member Data Documentation

MonitorElement* CaloTowersValidation::emean_vs_ieta_E
private

Definition at line 65 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emean_vs_ieta_E1
private

Definition at line 69 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emean_vs_ieta_EH
private

Definition at line 67 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emean_vs_ieta_EH1
private

Definition at line 71 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emean_vs_ieta_H
private

Definition at line 66 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emean_vs_ieta_H1
private

Definition at line 70 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_HB
private

Definition at line 123 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_HE
private

Definition at line 158 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_HF
private

Definition at line 187 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_High_HB
private

Definition at line 124 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_Low_HB
private

Definition at line 122 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_Low_HE
private

Definition at line 157 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_profile_HB
private

Definition at line 126 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_profile_HE
private

Definition at line 160 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_profile_HF
private

Definition at line 188 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_profile_High_HB
private

Definition at line 127 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_profile_Low_HB
private

Definition at line 125 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emEnergyTiming_profile_Low_HE
private

Definition at line 159 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emTiming_HB
private

Definition at line 119 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emTiming_HE
private

Definition at line 154 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::emTiming_HF
private

Definition at line 185 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

double CaloTowersValidation::etaMax[3]
private

Definition at line 61 of file CaloTowersValidation.h.

Referenced by analyze(), and CaloTowersValidation().

double CaloTowersValidation::etaMin[3]
private

Definition at line 62 of file CaloTowersValidation.h.

Referenced by analyze(), and CaloTowersValidation().

MonitorElement* CaloTowersValidation::hadEnergyTiming_HB
private

Definition at line 130 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_HE
private

Definition at line 163 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_HF
private

Definition at line 191 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_High_HB
private

Definition at line 131 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_Low_HB
private

Definition at line 129 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_Low_HE
private

Definition at line 162 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_Low_HF
private

Definition at line 190 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_profile_HB
private

Definition at line 133 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_profile_HE
private

Definition at line 165 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_profile_HF
private

Definition at line 193 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_profile_High_HB
private

Definition at line 134 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_profile_Low_HB
private

Definition at line 132 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_profile_Low_HE
private

Definition at line 164 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadEnergyTiming_profile_Low_HF
private

Definition at line 192 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadTiming_HB
private

Definition at line 120 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadTiming_HE
private

Definition at line 155 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::hadTiming_HF
private

Definition at line 186 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

std::string CaloTowersValidation::hcalselector_
private

Definition at line 46 of file CaloTowersValidation.h.

Referenced by CaloTowersValidation().

int CaloTowersValidation::imc
private

Definition at line 58 of file CaloTowersValidation.h.

Referenced by analyze(), and CaloTowersValidation().

int CaloTowersValidation::isub
private

Definition at line 55 of file CaloTowersValidation.h.

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

MonitorElement* CaloTowersValidation::mapEnergy_E
private

Definition at line 78 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergy_EH
private

Definition at line 80 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergy_H
private

Definition at line 79 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergy_HB
private

Definition at line 112 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergy_HE
private

Definition at line 147 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergy_HF
private

Definition at line 178 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergy_N
private

Definition at line 81 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergyEcal_HB
private

Definition at line 113 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergyEcal_HE
private

Definition at line 148 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergyEcal_HF
private

Definition at line 179 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergyHcal_HB
private

Definition at line 114 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergyHcal_HE
private

Definition at line 149 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::mapEnergyHcal_HF
private

Definition at line 180 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

std::string CaloTowersValidation::mc_
private

Definition at line 47 of file CaloTowersValidation.h.

Referenced by CaloTowersValidation().

MonitorElement* CaloTowersValidation::meEnergyEcal_HB
private

Definition at line 104 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyEcal_HE
private

Definition at line 139 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyEcal_HF
private

Definition at line 170 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyEcalTower_HB
private

Definition at line 108 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyEcalTower_HE
private

Definition at line 143 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyEcalTower_HF
private

Definition at line 174 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcal_HB
private

Definition at line 105 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcal_HE
private

Definition at line 140 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcal_HF
private

Definition at line 171 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcalTower_HB
private

Definition at line 109 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcalTower_HE
private

Definition at line 144 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcalTower_HF
private

Definition at line 175 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcalvsEcal_HB
private

Definition at line 102 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcalvsEcal_HE
private

Definition at line 137 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHcalvsEcal_HF
private

Definition at line 168 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHO_HB
private

Definition at line 103 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHO_HE
private

Definition at line 138 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meEnergyHO_HF
private

Definition at line 169 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meNumFiredTowers_HB
private

Definition at line 106 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meNumFiredTowers_HE
private

Definition at line 141 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meNumFiredTowers_HF
private

Definition at line 172 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::MET_HB
private

Definition at line 115 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::MET_HE
private

Definition at line 150 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::MET_HF
private

Definition at line 181 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meTotEnergy_HB
private

Definition at line 110 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meTotEnergy_HE
private

Definition at line 145 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::meTotEnergy_HF
private

Definition at line 176 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

int CaloTowersValidation::nevent
private

Definition at line 56 of file CaloTowersValidation.h.

Referenced by analyze(), and CaloTowersValidation().

MonitorElement* CaloTowersValidation::Ntowers_vs_ieta
private

Definition at line 73 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numBadCellsEcal_EB
private

Definition at line 84 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numBadCellsEcal_EE
private

Definition at line 85 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numBadCellsHcal_HB
private

Definition at line 91 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numBadCellsHcal_HE
private

Definition at line 92 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numBadCellsHcal_HF
private

Definition at line 93 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numPrbCellsEcal_EB
private

Definition at line 88 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numPrbCellsEcal_EE
private

Definition at line 89 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numPrbCellsHcal_HB
private

Definition at line 97 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numPrbCellsHcal_HE
private

Definition at line 98 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numPrbCellsHcal_HF
private

Definition at line 99 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numRcvCellsEcal_EB
private

Definition at line 86 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numRcvCellsEcal_EE
private

Definition at line 87 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numRcvCellsHcal_HB
private

Definition at line 94 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numRcvCellsHcal_HE
private

Definition at line 95 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::numRcvCellsHcal_HF
private

Definition at line 96 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::occupancy_map
private

Definition at line 74 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::occupancy_vs_ieta
private

Definition at line 75 of file CaloTowersValidation.h.

Referenced by bookHistograms().

std::string CaloTowersValidation::outputFile_
private

Definition at line 45 of file CaloTowersValidation.h.

Referenced by CaloTowersValidation().

MonitorElement* CaloTowersValidation::phiMET_HB
private

Definition at line 117 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::phiMET_HE
private

Definition at line 152 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::phiMET_HF
private

Definition at line 183 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::SET_HB
private

Definition at line 116 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::SET_HE
private

Definition at line 151 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* CaloTowersValidation::SET_HF
private

Definition at line 182 of file CaloTowersValidation.h.

Referenced by analyze(), and bookHistograms().

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

Definition at line 52 of file CaloTowersValidation.h.

Referenced by analyze(), and CaloTowersValidation().

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

Definition at line 53 of file CaloTowersValidation.h.

Referenced by analyze(), and CaloTowersValidation().

bool CaloTowersValidation::useAllHistos_
private

Definition at line 48 of file CaloTowersValidation.h.

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