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 Member Functions | Private Attributes
HcalRecHitMonitor Class Reference

#include <HcalRecHitMonitor.h>

Inheritance diagram for HcalRecHitMonitor:
HcalBaseDQMonitor edm::EDAnalyzer

Public Member Functions

void analyze (const edm::Event &, const edm::EventSetup &)
 
void beginRun (const edm::Run &run, const edm::EventSetup &c)
 
void cleanup ()
 
void endJob ()
 
void endLuminosityBlock (const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c)
 
void endRun (const edm::Run &run, const edm::EventSetup &c)
 
 HcalRecHitMonitor (const edm::ParameterSet &ps)
 
void processEvent (const HBHERecHitCollection &hbHits, const HORecHitCollection &hoHits, const HFRecHitCollection &hfHits, int BCN, const edm::Event &iEvent)
 
void processEvent_rechit (const HBHERecHitCollection &hbheHits, const HORecHitCollection &hoHits, const HFRecHitCollection &hfHits, bool passedHcalHLT, bool passedMinBiasHLT, int BCN)
 
void reset ()
 
void setup ()
 
void zeroCounters ()
 
 ~HcalRecHitMonitor ()
 
- Public Member Functions inherited from HcalBaseDQMonitor
 HcalBaseDQMonitor (const edm::ParameterSet &ps)
 
 HcalBaseDQMonitor ()
 
 ~HcalBaseDQMonitor ()
 
- Public Member Functions inherited from edm::EDAnalyzer
 EDAnalyzer ()
 
std::string workerType () const
 
virtual ~EDAnalyzer ()
 

Private Member Functions

void fill_Nevents ()
 

Private Attributes

double energy2_ [85][72][4]
 
double energy2_thresh_ [85][72][4]
 
double energy_ [85][72][4]
 
double energy_thresh_ [85][72][4]
 
double energyThreshold_
 
double ETThreshold_
 
MonitorElementh_FlagMap_DIGITIME
 
MonitorElementh_FlagMap_HPDMULT
 
MonitorElementh_FlagMap_LONGSHORT
 
MonitorElementh_FlagMap_PULSESHAPE
 
MonitorElementh_FlagMap_TIMEADD
 
MonitorElementh_FlagMap_TIMEERROR
 
MonitorElementh_FlagMap_TIMESUBTRACT
 
MonitorElementh_HBflagcounter
 
MonitorElementh_HBHE_FlagCorr
 
MonitorElementh_HBHEHPDMult_vs_LS
 
MonitorElementh_HBHEPulseShape_vs_LS
 
MonitorElementh_HBM_weightedTime
 
MonitorElementh_HBOccupancy
 
MonitorElementh_HBP_weightedTime
 
MonitorElementh_HBsizeVsLS
 
MonitorElementh_HBThreshOccupancy
 
MonitorElementh_HBThreshTime
 
MonitorElementh_HBTime
 
MonitorElementh_HBTimeVsEnergy
 
MonitorElementh_HE_HcalHLT_energydifference
 
MonitorElementh_HE_HcalHLT_weightedtimedifference
 
MonitorElementh_HEenergydifference
 
MonitorElementh_HEflagcounter
 
MonitorElementh_HEM_weightedTime
 
MonitorElementh_HEOccupancy
 
MonitorElementh_HEP_weightedTime
 
MonitorElementh_HEsizeVsLS
 
MonitorElementh_HEThreshOccupancy
 
MonitorElementh_HEThreshTime
 
MonitorElementh_HETime
 
MonitorElementh_HEtimedifference
 
MonitorElementh_HETimeVsEnergy
 
MonitorElementh_HF_FlagCorr
 
MonitorElementh_HF_HcalHLT_energydifference
 
MonitorElementh_HF_HcalHLT_weightedtimedifference
 
MonitorElementh_HFDigiTime_vs_LS
 
MonitorElementh_HFenergydifference
 
MonitorElementh_HFflagcounter
 
MonitorElementh_HFLongShort_vs_LS
 
MonitorElementh_HFM_weightedTime
 
MonitorElementh_HFOccupancy
 
MonitorElementh_HFP_weightedTime
 
MonitorElementh_HFsizeVsLS
 
MonitorElementh_HFThreshOccupancy
 
MonitorElementh_HFThreshTime
 
MonitorElementh_HFTime
 
MonitorElementh_HFtimedifference
 
MonitorElementh_HFTimeVsEnergy
 
MonitorElementh_HOflagcounter
 
MonitorElementh_HOOccupancy
 
MonitorElementh_HOsizeVsLS
 
MonitorElementh_HOThreshOccupancy
 
MonitorElementh_HOThreshTime
 
MonitorElementh_HOTime
 
MonitorElementh_HOTimeVsEnergy
 
MonitorElementh_LumiPlot_BX_allevents
 
MonitorElementh_LumiPlot_BX_HcalHLTEvents
 
MonitorElementh_LumiPlot_BX_HcalHLTEvents_notimecut
 
MonitorElementh_LumiPlot_BX_MinBiasEvents
 
MonitorElementh_LumiPlot_BX_MinBiasEvents_notimecut
 
MonitorElementh_LumiPlot_LS_allevents
 
MonitorElementh_LumiPlot_LS_HcalHLTEvents
 
MonitorElementh_LumiPlot_LS_HcalHLTEvents_notimecut
 
MonitorElementh_LumiPlot_LS_MinBiasEvents
 
MonitorElementh_LumiPlot_LS_MinBiasEvents_notimecut
 
MonitorElementh_LumiPlot_MinTime_vs_MinHT
 
MonitorElementh_LumiPlot_SumEnergy_HFPlus_vs_HFMinus
 
MonitorElementh_LumiPlot_SumHT_HFPlus_vs_HFMinus
 
MonitorElementh_LumiPlot_timeHFPlus_vs_timeHFMinus
 
MonitorElementh_LumiPlot_timeHT_HFM
 
MonitorElementh_LumiPlot_timeHT_HFP
 
MonitorElementh_rechitieta
 
MonitorElementh_rechitieta_05
 
MonitorElementh_rechitieta_10
 
MonitorElementh_rechitieta_100
 
MonitorElementh_rechitieta_25
 
MonitorElementh_rechitieta_thresh
 
MonitorElementh_rechitiphi
 
MonitorElementh_rechitiphi_05
 
MonitorElementh_rechitiphi_10
 
MonitorElementh_rechitiphi_100
 
MonitorElementh_rechitiphi_25
 
MonitorElementh_rechitiphi_thresh
 
MonitorElementh_TriggeredEvents
 
double HB_occupancy_ [260]
 
double HB_occupancy_thresh_ [260]
 
double HBenergyThreshold_
 
double HBETThreshold_
 
int HBflagcounter_ [32]
 
edm::InputTag hbheRechitLabel_
 
bool HBpresent_
 
double HBtime_ [250--250]
 
double HBtime_thresh_ [250--250]
 
std::vector< std::string > HcalHLTBits_
 
double HE_occupancy_ [260]
 
double HE_occupancy_thresh_ [260]
 
double HEenergyThreshold_
 
double HEETThreshold_
 
int HEflagcounter_ [32]
 
bool HEpresent_
 
double HEtime_ [250--250]
 
double HEtime_thresh_ [250--250]
 
double HF_occupancy_ [174]
 
double HF_occupancy_thresh_ [174]
 
double HFenergyLong_ [200]
 
double HFenergyLong_thresh_ [200]
 
double HFenergyShort_ [200]
 
double HFenergyShort_thresh_ [200]
 
double HFenergyThreshold_
 
double HFETThreshold_
 
int HFflagcounter_ [32]
 
double HFlong_occupancy_ [865]
 
double HFlong_occupancy_thresh_ [865]
 
MonitorElementHFP_HFM_Energy
 
bool HFpresent_
 
edm::InputTag hfRechitLabel_
 
double HFshort_occupancy_ [865]
 
double HFshort_occupancy_thresh_ [865]
 
double HFtime_ [250--250]
 
double HFtime_thresh_ [250--250]
 
double HFtimeLong_ [250--250]
 
double HFtimeLong_thresh_ [250--250]
 
double HFtimeShort_ [250--250]
 
double HFtimeShort_thresh_ [250--250]
 
edm::InputTag hltresultsLabel_
 
double HO_occupancy_ [218]
 
double HO_occupancy_thresh_ [218]
 
double HOenergyThreshold_
 
double HOETThreshold_
 
int HOflagcounter_ [32]
 
bool HOpresent_
 
edm::InputTag hoRechitLabel_
 
double HOtime_ [250--250]
 
double HOtime_thresh_ [250--250]
 
edm::InputTag l1gtLabel_
 
HcalLogicalMaplogicalMap
 
std::vector< std::string > MinBiasHLTBits_
 
unsigned int occupancy_ [85][72][4]
 
unsigned int occupancy_thresh_ [85][72][4]
 
EtaPhiHists OccupancyByDepth
 
EtaPhiHists OccupancyThreshByDepth
 
EtaPhiHists SqrtSumEnergy2ByDepth
 
EtaPhiHists SqrtSumEnergy2ThreshByDepth
 
EtaPhiHists SumEnergyByDepth
 
EtaPhiHists SumEnergyThreshByDepth
 
EtaPhiHists SumTimeByDepth
 
EtaPhiHists SumTimeThreshByDepth
 
double time_ [85][72][4]
 
double time_thresh_ [85][72][4]
 
double timediffThresh_
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
typedef WorkerT< EDAnalyzerWorkerType
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
- Protected Member Functions inherited from HcalBaseDQMonitor
virtual void beginJob ()
 
virtual void beginLuminosityBlock (const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c)
 
bool IsAllowedCalibType ()
 
bool LumiInOrder (int lumisec)
 
void SetupEtaPhiHists (EtaPhiHists &hh, std::string Name, std::string Units)
 
- Protected Member Functions inherited from edm::EDAnalyzer
CurrentProcessingContext const * currentContext () const
 
- Protected Attributes inherited from HcalBaseDQMonitor
std::vector< int > AllowedCalibTypes_
 
int badChannelStatusMask_
 
int currentLS
 
int currenttype_
 
DQMStoredbe_
 
int debug_
 
bool enableCleanup_
 
bool eventAllowed_
 
bool HBpresent_
 
bool HEpresent_
 
bool HFpresent_
 
bool HOpresent_
 
int ievt_
 
std::map< unsigned int, int > KnownBadCells_
 
int levt_
 
bool makeDiagnostics_
 
MonitorElementmeIevt_
 
MonitorElementmeLevt_
 
bool mergeRuns_
 
MonitorElementmeTevt_
 
MonitorElementmeTevtHist_
 
int NLumiBlocks_
 
bool Online_
 
std::string prefixME_
 
MonitorElementProblemsCurrentLB
 
MonitorElementProblemsVsLB
 
MonitorElementProblemsVsLB_HB
 
MonitorElementProblemsVsLB_HBHEHF
 
MonitorElementProblemsVsLB_HE
 
MonitorElementProblemsVsLB_HF
 
MonitorElementProblemsVsLB_HO
 
bool skipOutOfOrderLS_
 
std::string subdir_
 
int tevt_
 

Detailed Description

Date:
2011/06/08 21:29:49
Revision:
1.51
Author
J. Temple - Univ. of Maryland

Definition at line 18 of file HcalRecHitMonitor.h.

Constructor & Destructor Documentation

HcalRecHitMonitor::HcalRecHitMonitor ( const edm::ParameterSet ps)

Definition at line 16 of file HcalRecHitMonitor.cc.

References HcalBaseDQMonitor::AllowedCalibTypes_, HcalBaseDQMonitor::debug_, HcalBaseDQMonitor::enableCleanup_, energyThreshold_, ETThreshold_, edm::ParameterSet::getUntrackedParameter(), HBenergyThreshold_, HBETThreshold_, hbheRechitLabel_, HcalHLTBits_, HEenergyThreshold_, HEETThreshold_, HFenergyThreshold_, HFETThreshold_, hfRechitLabel_, hltresultsLabel_, HOenergyThreshold_, HOETThreshold_, hoRechitLabel_, l1gtLabel_, HcalBaseDQMonitor::makeDiagnostics_, HcalBaseDQMonitor::mergeRuns_, MinBiasHLTBits_, HcalBaseDQMonitor::NLumiBlocks_, HcalBaseDQMonitor::Online_, HcalBaseDQMonitor::prefixME_, HcalBaseDQMonitor::skipOutOfOrderLS_, HcalBaseDQMonitor::subdir_, and timediffThresh_.

17 {
18  // Common Base Class parameters
19  Online_ = ps.getUntrackedParameter<bool>("online",false);
20  mergeRuns_ = ps.getUntrackedParameter<bool>("mergeRuns",false);
21  enableCleanup_ = ps.getUntrackedParameter<bool>("enableCleanup",false);
22  debug_ = ps.getUntrackedParameter<int>("debug",0);
23  prefixME_ = ps.getUntrackedParameter<std::string>("subSystemFolder","Hcal/");
24  if (prefixME_.substr(prefixME_.size()-1,prefixME_.size())!="/")
25  prefixME_.append("/");
26  subdir_ = ps.getUntrackedParameter<std::string>("TaskFolder","RecHitMonitor_Hcal/");
27  if (subdir_.size()>0 && subdir_.substr(subdir_.size()-1,subdir_.size())!="/")
28  subdir_.append("/");
29  subdir_=prefixME_+subdir_;
30  AllowedCalibTypes_ = ps.getUntrackedParameter<std::vector<int> > ("AllowedCalibTypes");
31  skipOutOfOrderLS_ = ps.getUntrackedParameter<bool>("skipOutOfOrderLS",false);
32  NLumiBlocks_ = ps.getUntrackedParameter<int>("NLumiBlocks",4000);
33  makeDiagnostics_ = ps.getUntrackedParameter<bool>("makeDiagnostics",false);
34 
35  hbheRechitLabel_ = ps.getUntrackedParameter<edm::InputTag>("hbheRechitLabel");
36  hoRechitLabel_ = ps.getUntrackedParameter<edm::InputTag>("hoRechitLabel");
37  hfRechitLabel_ = ps.getUntrackedParameter<edm::InputTag>("hfRechitLabel");
38  l1gtLabel_ = ps.getUntrackedParameter<edm::InputTag>("L1GTLabel"); // should be l1GtUnpack
39 
40  hltresultsLabel_ = ps.getUntrackedParameter<edm::InputTag>("HLTResultsLabel");
41  HcalHLTBits_ = ps.getUntrackedParameter<std::vector<std::string> >("HcalHLTBits");
42  MinBiasHLTBits_ = ps.getUntrackedParameter<std::vector<std::string> >("MinBiasHLTBits");
43 
44  // energy/ET threshold plots also require that at least one MinBias trigger bit fires
45  energyThreshold_ = ps.getUntrackedParameter<double>("energyThreshold",2);
46  HBenergyThreshold_ = ps.getUntrackedParameter<double>("HB_energyThreshold",energyThreshold_);
47  HEenergyThreshold_ = ps.getUntrackedParameter<double>("HE_energyThreshold",energyThreshold_);
48  HOenergyThreshold_ = ps.getUntrackedParameter<double>("HO_energyThreshold",energyThreshold_);
49  HFenergyThreshold_ = ps.getUntrackedParameter<double>("HF_energyThreshold",energyThreshold_);
50 
51  ETThreshold_ = ps.getUntrackedParameter<double>("ETThreshold",0);
52  HBETThreshold_ = ps.getUntrackedParameter<double>("HB_ETThreshold",ETThreshold_);
53  HEETThreshold_ = ps.getUntrackedParameter<double>("HE_ETThreshold",ETThreshold_);
54  HOETThreshold_ = ps.getUntrackedParameter<double>("HO_ETThreshold",ETThreshold_);
55  HFETThreshold_ = ps.getUntrackedParameter<double>("HF_ETThreshold",ETThreshold_);
56 
57  timediffThresh_ = ps.getUntrackedParameter<double>("collisiontimediffThresh",10.);
58 
59 } //constructor
T getUntrackedParameter(std::string const &, T const &) const
std::vector< int > AllowedCalibTypes_
edm::InputTag l1gtLabel_
edm::InputTag hfRechitLabel_
std::vector< std::string > HcalHLTBits_
edm::InputTag hltresultsLabel_
std::vector< std::string > MinBiasHLTBits_
edm::InputTag hbheRechitLabel_
edm::InputTag hoRechitLabel_
HcalRecHitMonitor::~HcalRecHitMonitor ( )

Definition at line 61 of file HcalRecHitMonitor.cc.

62 {
63 } //destructor

Member Function Documentation

void HcalRecHitMonitor::analyze ( const edm::Event e,
const edm::EventSetup s 
)
virtual

Reimplemented from HcalBaseDQMonitor.

Definition at line 576 of file HcalRecHitMonitor.cc.

References HcalBaseDQMonitor::analyze(), edm::EventBase::bunchCrossing(), gather_cfg::cout, HcalBaseDQMonitor::currentLS, HcalBaseDQMonitor::debug_, alignCSCRings::e, MonitorElement::Fill(), edm::Event::getByLabel(), h_LumiPlot_BX_allevents, h_LumiPlot_LS_allevents, hbheRechitLabel_, hfRechitLabel_, hoRechitLabel_, HcalBaseDQMonitor::IsAllowedCalibType(), HcalBaseDQMonitor::LumiInOrder(), edm::EventBase::luminosityBlock(), and processEvent().

577 {
578  if (debug_>0) std::cout <<"HcalRecHitMonitor::analyze; debug = "<<debug_<<std::endl;
579 
580  if (!IsAllowedCalibType()) return;
581  if (LumiInOrder(e.luminosityBlock())==false) return;
582 
583  // Get objects
587 
588  if (!(e.getByLabel(hbheRechitLabel_,hbhe_rechit)))
589  {
590  edm::LogWarning("HcalHotCellMonitor")<< hbheRechitLabel_<<" hbhe_rechit not available";
591  return;
592  }
593 
594  if (!(e.getByLabel(hfRechitLabel_,hf_rechit)))
595  {
596  edm::LogWarning("HcalHotCellMonitor")<< hfRechitLabel_<<" hf_rechit not available";
597  return;
598  }
599 
600  if (!(e.getByLabel(hoRechitLabel_,ho_rechit)))
601  {
602  edm::LogWarning("HcalHotCellMonitor")<< hoRechitLabel_<<" ho_rechit not available";
603  return;
604  }
605 
606 
609  processEvent(*hbhe_rechit, *ho_rechit, *hf_rechit, e.bunchCrossing(), e);
610 
612 } // void HcalRecHitMonitor::analyze()
bool LumiInOrder(int lumisec)
virtual void analyze(const edm::Event &e, const edm::EventSetup &c)
void processEvent(const HBHERecHitCollection &hbHits, const HORecHitCollection &hoHits, const HFRecHitCollection &hfHits, int BCN, const edm::Event &iEvent)
int bunchCrossing() const
Definition: EventBase.h:62
edm::LuminosityBlockNumber_t luminosityBlock() const
Definition: EventBase.h:59
edm::InputTag hfRechitLabel_
MonitorElement * h_LumiPlot_LS_allevents
void Fill(long long x)
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition: Event.h:356
MonitorElement * h_LumiPlot_BX_allevents
edm::InputTag hbheRechitLabel_
edm::InputTag hoRechitLabel_
tuple cout
Definition: gather_cfg.py:121
void HcalRecHitMonitor::beginRun ( const edm::Run run,
const edm::EventSetup c 
)
virtual

Reimplemented from HcalBaseDQMonitor.

Definition at line 486 of file HcalRecHitMonitor.cc.

References HcalBaseDQMonitor::beginRun(), DQMStore::bookString(), gather_cfg::cout, HcalBaseDQMonitor::dbe_, HcalBaseDQMonitor::debug_, HcalHLTBits_, i, HcalBaseDQMonitor::mergeRuns_, MinBiasHLTBits_, reset(), DQMStore::setCurrentFolder(), setup(), HcalBaseDQMonitor::subdir_, and HcalBaseDQMonitor::tevt_.

487 {
488 
489  if (debug_>0) std::cout <<"HcalRecHitMonitor::beginRun(): task = '"<<subdir_<<"'"<<std::endl;
491  if (tevt_==0) // create histograms, if they haven't been created already
492  this->setup();
493  // Clear histograms at the start of each run if not merging runs
494  if (mergeRuns_==false)
495  this->reset();
496 
497  if (tevt_!=0) return;
498  // create histograms displaying trigger parameters? Specify names?
499  dbe_->setCurrentFolder(subdir_+"rechit_parameters");
500  std::string tnames="";
501  if (HcalHLTBits_.size()>0)
502  tnames=HcalHLTBits_[0];
503  for (unsigned int i=1;i<HcalHLTBits_.size();++i)
504  tnames=tnames + " OR " + HcalHLTBits_[i];
505  dbe_->bookString("HcalHLTriggerRequirements",tnames);
506  tnames="";
507  if (MinBiasHLTBits_.size()>0)
508  tnames=MinBiasHLTBits_[0];
509  for (unsigned int i=1;i<MinBiasHLTBits_.size();++i)
510  tnames=tnames + " OR " + MinBiasHLTBits_[i];
511  dbe_->bookString("MinBiasHLTriggerRequirements",tnames);
512  return;
513 
514 } //void HcalRecHitMonitor::beginRun(...)
int i
Definition: DBlmapReader.cc:9
virtual void beginRun(const edm::Run &run, const edm::EventSetup &c)
MonitorElement * bookString(const char *name, const char *value)
Book string.
Definition: DQMStore.cc:683
std::vector< std::string > HcalHLTBits_
std::vector< std::string > MinBiasHLTBits_
tuple cout
Definition: gather_cfg.py:121
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:429
void HcalRecHitMonitor::cleanup ( void  )
virtual

Reimplemented from HcalBaseDQMonitor.

Definition at line 549 of file HcalRecHitMonitor.cc.

References HcalBaseDQMonitor::dbe_, HcalBaseDQMonitor::enableCleanup_, DQMStore::removeContents(), DQMStore::setCurrentFolder(), and HcalBaseDQMonitor::subdir_.

Referenced by endJob().

550 {
551  //Add code to clean out subdirectories
552  if (!enableCleanup_) return;
553  if (dbe_)
554  {
556  dbe_->setCurrentFolder(subdir_+"rechit_parameters"); dbe_->removeContents();
557  dbe_->setCurrentFolder(subdir_+"rechit_parameters/thresholds"); dbe_->removeContents();
558  dbe_->setCurrentFolder(subdir_+"Distributions_AllRecHits"); dbe_->removeContents();
559  dbe_->setCurrentFolder(subdir_+"Distributions_AllRecHits/sumplots"); dbe_->removeContents();
560  dbe_->setCurrentFolder(subdir_+"Distributions_PassedMinBias"); dbe_->removeContents();
561  dbe_->setCurrentFolder(subdir_+"Distributions_PassedMinBias/sumplots"); dbe_->removeContents();
562  dbe_->setCurrentFolder(subdir_+"Distributions_PassedHcalHLTriggers"); dbe_->removeContents();
563  dbe_->setCurrentFolder(subdir_+"Distributions_PassedHcalHLTriggers/passedTechTriggers/"); dbe_->removeContents();
564 
565  dbe_->setCurrentFolder(subdir_+"AnomalousCellFlags"); dbe_->removeContents();
566  dbe_->setCurrentFolder(subdir_+"diagnostics/hb"); dbe_->removeContents();
567  dbe_->setCurrentFolder(subdir_+"diagnostics/he"); dbe_->removeContents();
568  dbe_->setCurrentFolder(subdir_+"diagnostics/ho"); dbe_->removeContents();
569  dbe_->setCurrentFolder(subdir_+"diagnostics/hf"); dbe_->removeContents();
570  }
571  return;
572 } // void HcalRecHitMonitor::cleanup()
void removeContents(void)
erase all monitoring elements in current directory (not including subfolders);
Definition: DQMStore.cc:2564
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:429
void HcalRecHitMonitor::endJob ( void  )
virtual

Reimplemented from HcalBaseDQMonitor.

Definition at line 539 of file HcalRecHitMonitor.cc.

References cleanup(), HcalBaseDQMonitor::cleanup(), and HcalBaseDQMonitor::enableCleanup_.

540 {
541  if (!enableCleanup_) return;
543  this->cleanup();
544 }
virtual void cleanup(void)
void HcalRecHitMonitor::endLuminosityBlock ( const edm::LuminosityBlock lumiSeg,
const edm::EventSetup c 
)
virtual

Reimplemented from HcalBaseDQMonitor.

Definition at line 1225 of file HcalRecHitMonitor.cc.

References fill_Nevents(), HcalBaseDQMonitor::LumiInOrder(), and edm::LuminosityBlockBase::luminosityBlock().

1228 {
1229  // don't fill lumi block information if it's already been filled
1230  if (LumiInOrder(lumiSeg.luminosityBlock())==false) return;
1231  fill_Nevents();
1232  return;
1233 } //endLuminosityBlock
bool LumiInOrder(int lumisec)
LuminosityBlockNumber_t luminosityBlock() const
void HcalRecHitMonitor::endRun ( const edm::Run run,
const edm::EventSetup c 
)
virtual

Reimplemented from HcalBaseDQMonitor.

Definition at line 517 of file HcalRecHitMonitor.cc.

References gather_cfg::cout, HcalBaseDQMonitor::debug_, and HcalBaseDQMonitor::subdir_.

518 {
519  if (debug_>0) std::cout <<"HcalRecHitMonitor::endRun(): task = '"<<subdir_<<"'"<<std::endl;
520 
521  //Any special fill calls needed? Shouldn't be necessary; last endLuminosityBlock should do necessary fills
522 } // void HcalRecHitMonitor::endrun(...)
tuple cout
Definition: gather_cfg.py:121
void HcalRecHitMonitor::fill_Nevents ( void  )
private

Definition at line 1236 of file HcalRecHitMonitor.cc.

References HcalObjRepresent::CalcIeta(), gather_cfg::cout, HcalBaseDQMonitor::debug_, EtaPhiHists::depth, energy2_, energy2_thresh_, energy_, energy_thresh_, eta(), MonitorElement::Fill(), HcalObjRepresent::FillUnphysicalHEHFBins(), h_HBflagcounter, h_HBOccupancy, h_HBThreshOccupancy, h_HBThreshTime, h_HBTime, h_HEflagcounter, h_HEOccupancy, h_HEThreshOccupancy, h_HEThreshTime, h_HETime, h_HFflagcounter, h_HFOccupancy, h_HFThreshOccupancy, h_HFThreshTime, h_HFTime, h_HOflagcounter, h_HOOccupancy, h_HOThreshOccupancy, h_HOThreshTime, h_HOTime, h_rechitieta, h_rechitieta_thresh, h_rechitiphi, h_rechitiphi_thresh, HB_occupancy_, HB_occupancy_thresh_, HBflagcounter_, HBtime_, HBtime_thresh_, HE_occupancy_, HE_occupancy_thresh_, HEflagcounter_, HEtime_, HEtime_thresh_, HF_occupancy_, HF_occupancy_thresh_, HFflagcounter_, HFtime_, HFtime_thresh_, HO_occupancy_, HO_occupancy_thresh_, HOflagcounter_, HOtime_, HOtime_thresh_, i, HcalBaseDQMonitor::ievt_, gen::k, occupancy_, occupancy_thresh_, OccupancyByDepth, OccupancyThreshByDepth, phi, RECHITMON_TIME_MAX, RECHITMON_TIME_MIN, MonitorElement::setBinContent(), mathSSE::sqrt(), SqrtSumEnergy2ByDepth, SqrtSumEnergy2ThreshByDepth, SumEnergyByDepth, SumEnergyThreshByDepth, SumTimeByDepth, SumTimeThreshByDepth, time_, and time_thresh_.

Referenced by endLuminosityBlock().

1237 {
1238  // looking at the contents of HbFlagcounters
1239  if (debug_>0)
1240  {
1241  for (int k = 0; k < 32; k++){
1242  std::cout << "<HcalRecHitMonitor::fill_Nevents> HF Flag counter: Bin #" << k+1 << " = "<< HFflagcounter_[k] << std::endl;
1243  }
1244  }
1245 
1246  for (int i=0;i<32;i++)
1247  {
1252  HBflagcounter_[i]=0;
1253  HEflagcounter_[i]=0;
1254  HOflagcounter_[i]=0;
1255  HFflagcounter_[i]=0;
1256  }
1257 
1258  // Fill Occupancy & Sum Energy, Time plots
1259  int myieta=-1;
1260  if (ievt_>0)
1261  {
1262  for (int mydepth=0;mydepth<4;++mydepth)
1263  {
1264  for (int eta=0;eta<OccupancyByDepth.depth[mydepth]->getNbinsX();++eta)
1265  {
1266  myieta=CalcIeta(eta,mydepth+1);
1267 
1268  for (int phi=0;phi<72;++phi)
1269  {
1270  if (occupancy_[eta][phi][mydepth]>0)
1271  {
1272  h_rechitieta->Fill(myieta,occupancy_[eta][phi][mydepth]);
1273  h_rechitiphi->Fill(phi+1,occupancy_[eta][phi][mydepth]);
1274  }
1275  if (occupancy_thresh_[eta][phi][mydepth]>0)
1276  {
1277  h_rechitieta_thresh->Fill(myieta,occupancy_thresh_[eta][phi][mydepth]);
1279  }
1280  OccupancyByDepth.depth[mydepth]->setBinContent(eta+1,phi+1,occupancy_[eta][phi][mydepth]);
1281  SumEnergyByDepth.depth[mydepth]->setBinContent(eta+1,phi+1,energy_[eta][phi][mydepth]);
1282  SqrtSumEnergy2ByDepth.depth[mydepth]->setBinContent(eta+1,phi+1,sqrt(energy2_[eta][phi][mydepth]));
1283  SumTimeByDepth.depth[mydepth]->setBinContent(eta+1,phi+1,time_[eta][phi][mydepth]);
1284 
1285  OccupancyThreshByDepth.depth[mydepth]->setBinContent(eta+1,phi+1,occupancy_thresh_[eta][phi][mydepth]);
1286  SumEnergyThreshByDepth.depth[mydepth]->setBinContent(eta+1,phi+1,energy_thresh_[eta][phi][mydepth]);
1287  SqrtSumEnergy2ThreshByDepth.depth[mydepth]->setBinContent(eta+1,phi+1,sqrt(energy2_thresh_[eta][phi][mydepth]));
1288  SumTimeThreshByDepth.depth[mydepth]->setBinContent(eta+1,phi+1,time_thresh_[eta][phi][mydepth]);
1289  } // for (int phi=0;phi<72;++phi)
1290  } // for (int eta=0;eta<OccupancyByDepth...;++eta)
1291  } // for (int mydepth=0;...)
1292 
1301 
1302  } // if (ievt_>0)
1303 
1304  // Fill subdet plots
1305 
1306  for (int i=0;i<(RECHITMON_TIME_MAX-RECHITMON_TIME_MIN);++i)
1307  {
1308  if (HBtime_[i]!=0)
1309  {
1310  h_HBTime->setBinContent(i+1,HBtime_[i]);
1311  }
1312  if (HBtime_thresh_[i]!=0)
1313  {
1315  }
1316  if (HEtime_[i]!=0)
1317  {
1318 
1319  h_HETime->setBinContent(i+1,HEtime_[i]);
1320  }
1321  if (HEtime_thresh_[i]!=0)
1322  {
1324  }
1325  if (HOtime_[i]!=0)
1326  {
1327  h_HOTime->setBinContent(i+1,HOtime_[i]);
1328  }
1329  if (HOtime_thresh_[i]!=0)
1330  {
1332  }
1333  if (HFtime_[i]!=0)
1334  {
1335  h_HFTime->setBinContent(i+1,HFtime_[i]);
1336  }
1337  if (HFtime_thresh_[i]!=0)
1338  {
1340  }
1341  } // for (int i=0;i<(RECHITMON_TIME_MAX-RECHITMON_TIME_MIN);++i)
1342 
1343  for (int i=0;i<260;++i)
1344  {
1345  if (HB_occupancy_[i]>0)
1346  {
1348  }
1349  if (HB_occupancy_thresh_[i]>0)
1350  {
1352  }
1353  if (HE_occupancy_[i]>0)
1354  {
1356  }
1357  if (HE_occupancy_thresh_[i]>0)
1358  {
1360  }
1361  }//for (int i=0;i<260;++i)
1362 
1363  for (int i=0;i<217;++i)
1364  {
1365  if (HO_occupancy_[i]>0)
1366  {
1368  }
1369  if (HO_occupancy_thresh_[i]>0)
1370  {
1372  }
1373  }// for (int i=0;i<217;++i)
1374 
1375  for (int i=0;i<173;++i)
1376  {
1377  if (HF_occupancy_[i]>0)
1378  {
1380  }
1381  if (HF_occupancy_thresh_[i]>0)
1382  {
1384  }
1385  }// for (int i=0;i<173;++i)
1386 
1387  //zeroCounters();
1388 
1389  if (debug_>0)
1390  std::cout <<"<HcalRecHitMonitor::fill_Nevents> FILLED REC HIT CELL PLOTS"<<std::endl;
1391 
1392 } // void HcalRecHitMonitor::fill_Nevents(void)
double time_[85][72][4]
double HB_occupancy_[260]
int i
Definition: DBlmapReader.cc:9
MonitorElement * h_HOThreshTime
void setBinContent(int binx, double content)
set content of bin (1-D)
EtaPhiHists OccupancyThreshByDepth
double HFtime_thresh_[250--250]
double HOtime_thresh_[250--250]
double HBtime_thresh_[250--250]
double HF_occupancy_thresh_[174]
MonitorElement * h_HBThreshTime
MonitorElement * h_HOflagcounter
double HO_occupancy_thresh_[218]
MonitorElement * h_HFThreshTime
MonitorElement * h_HFTime
MonitorElement * h_HFThreshOccupancy
double HBtime_[250--250]
double HEtime_thresh_[250--250]
MonitorElement * h_rechitieta
double HF_occupancy_[174]
MonitorElement * h_HFflagcounter
T eta() const
MonitorElement * h_HEOccupancy
EtaPhiHists SumEnergyByDepth
MonitorElement * h_HOThreshOccupancy
double HE_occupancy_thresh_[260]
unsigned int occupancy_[85][72][4]
void Fill(long long x)
MonitorElement * h_HETime
MonitorElement * h_rechitieta_thresh
EtaPhiHists OccupancyByDepth
MonitorElement * h_HOOccupancy
double time_thresh_[85][72][4]
EtaPhiHists SumTimeThreshByDepth
std::vector< MonitorElement * > depth
int CalcIeta(int subdet, int eta, int depth)
EtaPhiHists SqrtSumEnergy2ThreshByDepth
EtaPhiHists SumTimeByDepth
unsigned int occupancy_thresh_[85][72][4]
T sqrt(T t)
Definition: SSEVec.h:46
EtaPhiHists SqrtSumEnergy2ByDepth
MonitorElement * h_HBOccupancy
double energy2_[85][72][4]
double HFtime_[250--250]
MonitorElement * h_HOTime
int k[5][pyjets_maxn]
double energy2_thresh_[85][72][4]
double HOtime_[250--250]
double energy_thresh_[85][72][4]
MonitorElement * h_HBThreshOccupancy
double HEtime_[250--250]
MonitorElement * h_rechitiphi
void FillUnphysicalHEHFBins(std::vector< TH2F > &hh)
MonitorElement * h_HFOccupancy
#define RECHITMON_TIME_MIN
MonitorElement * h_HEflagcounter
MonitorElement * h_HBTime
MonitorElement * h_rechitiphi_thresh
double HB_occupancy_thresh_[260]
#define RECHITMON_TIME_MAX
MonitorElement * h_HEThreshTime
tuple cout
Definition: gather_cfg.py:121
EtaPhiHists SumEnergyThreshByDepth
MonitorElement * h_HEThreshOccupancy
double HE_occupancy_[260]
double HO_occupancy_[218]
MonitorElement * h_HBflagcounter
double energy_[85][72][4]
Definition: DDAxes.h:10
void HcalRecHitMonitor::processEvent ( const HBHERecHitCollection hbHits,
const HORecHitCollection hoHits,
const HFRecHitCollection hfHits,
int  BCN,
const edm::Event iEvent 
)

Definition at line 615 of file HcalRecHitMonitor.cc.

References gather_cfg::cout, HcalBaseDQMonitor::debug_, MonitorElement::Fill(), edm::Event::getByLabel(), h_TriggeredEvents, HcalHLTBits_, hltresultsLabel_, i, gen::k, MinBiasHLTBits_, processEvent_rechit(), edm::TriggerNames::size(), edm::TriggerNames::triggerName(), and edm::Event::triggerNames().

Referenced by analyze().

621 {
622 
623 
624  if (debug_>1) std::cout <<"<HcalRecHitMonitor::processEvent> Processing event..."<<std::endl;
625 
626 
627  bool passedHcalHLT=false;
628  bool passedMinBiasHLT=false;
629 
631  if (!(iEvent.getByLabel(hltresultsLabel_,hltRes)))
632  {
633  if (debug_>0) edm::LogWarning("HcalRecHitMonitor")<<" Could not get HLT results with tag "<<hltresultsLabel_<<std::endl;
634  }
635  else
636  {
637  const edm::TriggerNames & triggerNames = iEvent.triggerNames(*hltRes);
638  const unsigned int nTrig(triggerNames.size());
639  for (unsigned int i=0;i<nTrig;++i)
640  {
641  // trigger decision is based on 'OR' of any specified trigger names
642  for (unsigned int k=0;k<HcalHLTBits_.size();++k)
643  {
644  // if (triggerNames.triggerName(i)==HcalHLTBits_[k] && hltRes->accept(i))
645  if (triggerNames.triggerName(i).find(HcalHLTBits_[k])!=std::string::npos && hltRes->accept(i))
646  {
647  passedHcalHLT=true;
648  break;
649  }
650  }
651  // repeat for minbias triggers
652  for (unsigned int k=0;k<MinBiasHLTBits_.size();++k)
653  {
654  // if (triggerNames.triggerName(i)==MinBiasHLTBits_[k] && hltRes->accept(i))
655  if (triggerNames.triggerName(i).find(MinBiasHLTBits_[k])!=std::string::npos && hltRes->accept(i))
656  {
657  passedMinBiasHLT=true;
658  break;
659  }
660  }
661  }
662  } //else
663 
664  if (debug_>2 && passedHcalHLT) std::cout <<"\t<HcalRecHitMonitor::processEvent> Passed Hcal HLT trigger "<<std::endl;
665  if (debug_>2 && passedMinBiasHLT) std::cout <<"\t<HcalRecHitMonitor::processEvent> Passed MinBias HLT trigger "<<std::endl;
666 
667  h_TriggeredEvents->Fill(0); // all events
668  if (passedMinBiasHLT) h_TriggeredEvents->Fill(1); // Minbias;
669  if (passedHcalHLT) h_TriggeredEvents->Fill(2); // hcal HLT
670  processEvent_rechit(hbHits, hoHits, hfHits,passedHcalHLT,passedMinBiasHLT,BCN);
671 
672  return;
673 } // void HcalRecHitMonitor::processEvent(...)
int i
Definition: DBlmapReader.cc:9
virtual edm::TriggerNames const & triggerNames(edm::TriggerResults const &triggerResults) const
Definition: Event.cc:199
Strings::size_type size() const
Definition: TriggerNames.cc:39
void Fill(long long x)
void processEvent_rechit(const HBHERecHitCollection &hbheHits, const HORecHitCollection &hoHits, const HFRecHitCollection &hfHits, bool passedHcalHLT, bool passedMinBiasHLT, int BCN)
std::vector< std::string > HcalHLTBits_
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition: Event.h:356
int k[5][pyjets_maxn]
edm::InputTag hltresultsLabel_
std::vector< std::string > MinBiasHLTBits_
std::string const & triggerName(unsigned int index) const
Definition: TriggerNames.cc:27
tuple cout
Definition: gather_cfg.py:121
MonitorElement * h_TriggeredEvents
void HcalRecHitMonitor::processEvent_rechit ( const HBHERecHitCollection hbheHits,
const HORecHitCollection hoHits,
const HFRecHitCollection hfHits,
bool  passedHcalHLT,
bool  passedMinBiasHLT,
int  BCN 
)

Definition at line 679 of file HcalRecHitMonitor.cc.

References abs, edm::SortedCollection< T, SORT >::begin(), CalcEtaBin(), gather_cfg::cout, HcalBaseDQMonitor::currentLS, HcalBaseDQMonitor::debug_, EtaPhiHists::depth, edm::SortedCollection< T, SORT >::end(), energy2_, energy2_thresh_, energy_, energy_thresh_, f, MonitorElement::Fill(), HcalLogicalMap::getHcalFrontEndId(), h_FlagMap_DIGITIME, h_FlagMap_HPDMULT, h_FlagMap_LONGSHORT, h_FlagMap_PULSESHAPE, h_FlagMap_TIMEADD, h_FlagMap_TIMEERROR, h_FlagMap_TIMESUBTRACT, h_HBflagcounter, h_HBHE_FlagCorr, h_HBHEHPDMult_vs_LS, h_HBHEPulseShape_vs_LS, h_HBM_weightedTime, h_HBP_weightedTime, h_HBsizeVsLS, h_HBThreshTime, h_HBTime, h_HBTimeVsEnergy, h_HE_HcalHLT_energydifference, h_HE_HcalHLT_weightedtimedifference, h_HEenergydifference, h_HEflagcounter, h_HEM_weightedTime, h_HEP_weightedTime, h_HEsizeVsLS, h_HEThreshTime, h_HETime, h_HEtimedifference, h_HETimeVsEnergy, h_HF_FlagCorr, h_HF_HcalHLT_energydifference, h_HF_HcalHLT_weightedtimedifference, h_HFDigiTime_vs_LS, h_HFenergydifference, h_HFflagcounter, h_HFLongShort_vs_LS, h_HFM_weightedTime, h_HFP_weightedTime, h_HFsizeVsLS, h_HFThreshTime, h_HFTime, h_HFtimedifference, h_HFTimeVsEnergy, h_HOflagcounter, h_HOsizeVsLS, h_HOThreshTime, h_HOTime, h_HOTimeVsEnergy, h_LumiPlot_BX_HcalHLTEvents, h_LumiPlot_BX_HcalHLTEvents_notimecut, h_LumiPlot_BX_MinBiasEvents, h_LumiPlot_BX_MinBiasEvents_notimecut, h_LumiPlot_LS_HcalHLTEvents, h_LumiPlot_LS_HcalHLTEvents_notimecut, h_LumiPlot_LS_MinBiasEvents, h_LumiPlot_LS_MinBiasEvents_notimecut, h_LumiPlot_MinTime_vs_MinHT, h_LumiPlot_SumEnergy_HFPlus_vs_HFMinus, h_LumiPlot_SumHT_HFPlus_vs_HFMinus, h_LumiPlot_timeHFPlus_vs_timeHFMinus, h_LumiPlot_timeHT_HFM, h_LumiPlot_timeHT_HFP, h_rechitieta_05, h_rechitieta_10, h_rechitieta_100, h_rechitieta_25, h_rechitiphi_05, h_rechitiphi_10, h_rechitiphi_100, h_rechitiphi_25, HB_occupancy_, HB_occupancy_thresh_, HBenergyThreshold_, HBETThreshold_, HBflagcounter_, HcalCaloFlagLabels::HBHEHpdHitMultiplicity, HcalCaloFlagLabels::HBHEPulseShape, HBtime_, HBtime_thresh_, HcalBarrel, HcalEndcap, HcalForward, HcalOuter, HE_occupancy_, HE_occupancy_thresh_, HEenergyThreshold_, HEETThreshold_, HEflagcounter_, HEtime_, HEtime_thresh_, HF_occupancy_, HF_occupancy_thresh_, HcalCaloFlagLabels::HFDigiTime, HFenergyThreshold_, HFETThreshold_, HFflagcounter_, HcalCaloFlagLabels::HFLongShort, HFP_HFM_Energy, HFtime_, HFtime_thresh_, HO_occupancy_, HO_occupancy_thresh_, HOenergyThreshold_, HOETThreshold_, HOflagcounter_, HOtime_, HOtime_thresh_, i, errorMatrix2Lands_multiChannel::id, logicalMap, min, occupancy_, occupancy_thresh_, OccupancyByDepth, OccupancyThreshByDepth, funct::pow(), RECHITMON_TIME_MAX, RECHITMON_TIME_MIN, submit::rm, edm::SortedCollection< T, SORT >::size(), SqrtSumEnergy2ByDepth, SumEnergyByDepth, SumTimeByDepth, theHBHEEtaBounds, theHFEtaBounds, time_, time_thresh_, timediffThresh_, HcalCaloFlagLabels::TimingAddedBit, HcalCaloFlagLabels::TimingErrorBit, HcalCaloFlagLabels::TimingSubtractedBit, and MonitorElement::update().

Referenced by processEvent().

685 {
686  // Gather rechit info
687 
688  //const float area[]={0.111,0.175,0.175,0.175,0.175,0.175,0.174,0.178,0.172,0.175,0.178,0.346,0.604};
689 
690  if (debug_>1) std::cout <<"<HcalRecHitMonitor::processEvent_rechitenergy> Processing rechits..."<<std::endl;
691 
692  // loop over HBHE
693 
694  int hbocc=0;
695  int heocc=0;
696  int hboccthresh=0;
697  int heoccthresh=0;
698 
699  double HtPlus =0, HtMinus=0;
700  double HFePlus=0, HFeMinus=0;
701  double HBePlus=0, HBeMinus=0;
702  double HEePlus=0, HEeMinus=0;
703  double HFtPlus=0, HFtMinus=0;
704  double HBtPlus=0, HBtMinus=0;
705  double HEtPlus=0, HEtMinus=0;
706 
707  int hbpocc=0, hbmocc=0, hepocc=0, hemocc=0, hfpocc=0, hfmocc=0;
708 
709  for (unsigned int i=0;i<4;++i)
710  {
711  OccupancyByDepth.depth[i]->update();
712  OccupancyThreshByDepth.depth[i]->update();
713  SumEnergyByDepth.depth[i]->update();
714  SqrtSumEnergy2ByDepth.depth[i]->update();
715  SumTimeByDepth.depth[i]->update();
716  }
717 
722 
723 
724  for (HBHERecHitCollection::const_iterator HBHEiter=hbheHits.begin(); HBHEiter!=hbheHits.end(); ++HBHEiter)
725  { // loop over all hits
726  float en = HBHEiter->energy();
727  float ti = HBHEiter->time();
728  HcalDetId id(HBHEiter->detid().rawId());
729  int ieta = id.ieta();
730  int iphi = id.iphi();
731  int depth = id.depth();
732 
733  if (en>0.5)
734  {
735  h_rechitieta_05->Fill(ieta);
736  h_rechitiphi_05->Fill(iphi);
737  if (en>1.)
738  {
739  h_rechitieta_10->Fill(ieta);
740  h_rechitiphi_10->Fill(iphi);
741  if (en>2.5)
742  {
743  h_rechitieta_25->Fill(ieta);
744  h_rechitiphi_25->Fill(iphi);
745  if (en>10.)
746  {
747  h_rechitieta_100->Fill(ieta);
748  h_rechitiphi_100->Fill(iphi);
749  }
750  }
751  }
752  }
753 
754 
755 
756  HcalSubdetector subdet = id.subdet();
757  double fEta=fabs(0.5*(theHBHEEtaBounds[abs(ieta)-1]+theHBHEEtaBounds[abs(ieta)]));
758 
759  int calcEta = CalcEtaBin(subdet,ieta,depth);
760  int rbxindex=logicalMap->getHcalFrontEndId(HBHEiter->detid()).rbxIndex();
761  int rm= logicalMap->getHcalFrontEndId(HBHEiter->detid()).rm();
762 
763  // Fill HBHE flag plots
765  HBHEiter->flagField(HcalCaloFlagLabels::HBHEHpdHitMultiplicity));
766 
767  if (HBHEiter->flagField(HcalCaloFlagLabels::HBHEHpdHitMultiplicity))
768  {
769  h_FlagMap_HPDMULT->Fill(rbxindex,rm);
771  }
772  if (HBHEiter->flagField(HcalCaloFlagLabels::HBHEPulseShape))
773  {
774  h_FlagMap_PULSESHAPE->Fill(rbxindex,rm);
776  }
777  if (HBHEiter->flagField(HcalCaloFlagLabels::TimingSubtractedBit))
778  h_FlagMap_TIMESUBTRACT->Fill(rbxindex,rm);
779  else if (HBHEiter->flagField(HcalCaloFlagLabels::TimingAddedBit))
780  h_FlagMap_TIMEADD->Fill(rbxindex,rm);
781  else if (HBHEiter->flagField(HcalCaloFlagLabels::TimingErrorBit))
782  h_FlagMap_TIMEERROR->Fill(rbxindex,rm);
783 
784  if (subdet==HcalBarrel)
785  {
786  if (en>HBenergyThreshold_)
787  h_HBTimeVsEnergy->Fill(en,ti);
788  //Looping over HB searching for flags --- cris
789  for (int f=0;f<32;f++)
790  {
791  // Let's display HSCP just to see if these bits are set
792  /*
793  if (f == HcalCaloFlagLabels::HSCP_R1R2) continue;
794  if (f == HcalCaloFlagLabels::HSCP_FracLeader) continue;
795  if (f == HcalCaloFlagLabels::HSCP_OuterEnergy) continue;
796  if (f == HcalCaloFlagLabels::HSCP_ExpFit) continue;
797  */
798  if (HBHEiter->flagField(f))
799  ++HBflagcounter_[f];
800  }
801  ++occupancy_[calcEta][iphi-1][depth-1];
802  energy_[calcEta][iphi-1][depth-1]+=en;
803  energy2_[calcEta][iphi-1][depth-1]+=pow(en,2);
804  time_[calcEta][iphi-1][depth-1]+=ti;
805  if (ti<RECHITMON_TIME_MIN || ti>RECHITMON_TIME_MAX)
806  h_HBTime->Fill(ti);
807  else
808  ++HBtime_[int(ti-RECHITMON_TIME_MIN)];
809  ++hbocc;
810 
811  // Threshold plots; require E> threshold and minbias trigger
812  if (
813  en>=HBenergyThreshold_ &&
814  en/cosh(fEta)>=HBETThreshold_
815  )
816  {
817  if (passedMinBiasHLT==true)
818  {
819  ++occupancy_thresh_[calcEta][iphi-1][depth-1];
820  energy_thresh_[calcEta][iphi-1][depth-1]+=en;
821  energy2_thresh_[calcEta][iphi-1][depth-1]+=pow(en,2);
822  time_thresh_[calcEta][iphi-1][depth-1]+=ti;
823 
824  ++hboccthresh;
825  if (ti<RECHITMON_TIME_MIN || ti>RECHITMON_TIME_MAX)
826  h_HBThreshTime->Fill(ti);
827  else
829  }
830 
831  if (ieta>0)
832  {
833  HBePlus+=en;
834  HBtPlus+=ti*en;
835  hbpocc++;
836  }
837  else
838  {
839  HBeMinus+=en;
840  HBtMinus+=ti*en;
841  hbmocc++;
842  }
843  } // if (HB en>thresh, ET>thresh)
844  } // if (id.subdet()==HcalBarrel)
845 
846  else if (subdet==HcalEndcap)
847  {
848  if (en>HEenergyThreshold_)
849  h_HETimeVsEnergy->Fill(en,ti);
850  //Looping over HE searching for flags --- cris
851  for (int f=0;f<32;f++)
852  {
853  if (HBHEiter->flagField(f))
854  ++HEflagcounter_[f];
855  }
856 
857  ++occupancy_[calcEta][iphi-1][depth-1];
858  energy_[calcEta][iphi-1][depth-1]+=en;
859  energy2_[calcEta][iphi-1][depth-1]+=pow(en,2);
860  time_[calcEta][iphi-1][depth-1]+=ti;
861 
862  ++heocc;
863  if (ti<RECHITMON_TIME_MIN || ti>RECHITMON_TIME_MAX)
864  h_HETime->Fill(ti);
865  else
866  ++HEtime_[int(ti-RECHITMON_TIME_MIN)];
867 
868  // Threshold plots require e>E_thresh, ET>ET_thresh
869  if (en>=HEenergyThreshold_
870  && en/cosh(fEta)>=HEETThreshold_
871  )
872  {
873  // occupancy plots also require passedMinBiasHLT
874  if (passedMinBiasHLT==true)
875  {
876  ++occupancy_thresh_[calcEta][iphi-1][depth-1];
877  energy_thresh_[calcEta][iphi-1][depth-1]+=en;
878  energy2_thresh_[calcEta][iphi-1][depth-1]+=pow(en,2);
879  time_thresh_[calcEta][iphi-1][depth-1]+=ti;
880  ++heoccthresh;
881  if (ti<RECHITMON_TIME_MIN || ti>RECHITMON_TIME_MAX)
882  h_HEThreshTime->Fill(ti);
883  else
885  }
886  // ePlus, tPlus calculated regardless of trigger
887  if (ieta>0)
888  {
889  HEePlus+=en;
890  HEtPlus+=ti*en;
891  hepocc++;
892  }
893  else
894  {
895  HEeMinus+=en;
896  HEtMinus+=ti*en;
897  hemocc++;
898  }
899  } // if (en>=HEenergyThreshold_ && ET>threshold)
900 
901  } // else if (id.subdet()==HcalEndcap)
902 
903  } //for (HBHERecHitCollection::const_iterator HBHEiter=...)
904 
905  // Calculate normalized time
906  HEePlus>0 ? HEtPlus/=HEePlus : HEtPlus=10000;
907  HEeMinus>0 ? HEtMinus/=HEeMinus : HEtMinus=-10000;
908  HBePlus>0 ? HBtPlus/=HBePlus : HBtPlus=10000;
909  HBeMinus>0 ? HBtMinus/=HBeMinus : HBtMinus=-10000;
910 
911  ++HB_occupancy_[hbocc/10];
912  ++HE_occupancy_[heocc/10];
913  ++HB_occupancy_thresh_[hboccthresh/10];
914  ++HE_occupancy_thresh_[heoccthresh/10];
915  h_HBsizeVsLS->Fill(currentLS,hbocc);
916  h_HEsizeVsLS->Fill(currentLS,heocc);
917 
918  // loop over HO
919 
920  h_HOsizeVsLS->Fill(currentLS,hoHits.size());
921  int hoocc=0;
922  int hooccthresh=0;
923  for (HORecHitCollection::const_iterator HOiter=hoHits.begin(); HOiter!=hoHits.end(); ++HOiter)
924  { // loop over all hits
925  float en = HOiter->energy();
926  float ti = HOiter->time();
927  if (en>HOenergyThreshold_)
928  h_HOTimeVsEnergy->Fill(en,ti);
929 
930  HcalDetId id(HOiter->detid().rawId());
931  int ieta = id.ieta();
932  int iphi = id.iphi();
933  int depth = id.depth();
934 
935  if (en>0.5)
936  {
937  h_rechitieta_05->Fill(ieta);
938  h_rechitiphi_05->Fill(iphi);
939  if (en>1.)
940  {
941  h_rechitieta_10->Fill(ieta);
942  h_rechitiphi_10->Fill(iphi);
943  if (en>2.5)
944  {
945  h_rechitieta_25->Fill(ieta);
946  h_rechitiphi_25->Fill(iphi);
947  if (en>10.)
948  {
949  h_rechitieta_100->Fill(ieta);
950  h_rechitiphi_100->Fill(iphi);
951  }
952  }
953  }
954  }
955 
956 
957 
958  int calcEta = CalcEtaBin(HcalOuter,ieta,depth);
959  double fEta=fabs(0.5*(theHBHEEtaBounds[abs(ieta)-1]+theHBHEEtaBounds[abs(ieta)]));
960 
961  int rbxindex=logicalMap->getHcalFrontEndId(HOiter->detid()).rbxIndex();
962  int rm= logicalMap->getHcalFrontEndId(HOiter->detid()).rm();
963 
964  if (HOiter->flagField(HcalCaloFlagLabels::TimingSubtractedBit))
965  h_FlagMap_TIMESUBTRACT->Fill(rbxindex,rm);
966  else if (HOiter->flagField(HcalCaloFlagLabels::TimingAddedBit))
967  h_FlagMap_TIMEADD->Fill(rbxindex,rm);
968  else if (HOiter->flagField(HcalCaloFlagLabels::TimingErrorBit))
969  h_FlagMap_TIMEERROR->Fill(rbxindex,rm);
970 
971 
972  //Looping over HO searching for flags --- cris
973  for (int f=0;f<32;f++)
974  {
975  if (HOiter->flagField(f))
976  HOflagcounter_[f]++;
977  }
978 
979  ++occupancy_[calcEta][iphi-1][depth-1];
980  energy_[calcEta][iphi-1][depth-1]+=en;
981  energy2_[calcEta][iphi-1][depth-1]+=pow(en,2);
982  time_[calcEta][iphi-1][depth-1]+=ti;
983  ++hoocc;
984  if (ti<RECHITMON_TIME_MIN || ti>RECHITMON_TIME_MAX)
985  h_HOTime->Fill(ti);
986  else
987  ++HOtime_[int(ti-RECHITMON_TIME_MIN)];
988 
989  // We don't calculate HOplus/HOminus values (independent of trigger), so require min bias trigger
990  // along with E, ET thresholds directly in this HO loop:
991 
992  if (en>=HOenergyThreshold_
993  && en/cosh(fEta)>=HOETThreshold_
994  && passedMinBiasHLT==true
995  )
996  {
997  ++occupancy_thresh_[calcEta][iphi-1][depth-1];
998  energy_thresh_[calcEta][iphi-1][depth-1]+=en;
999  energy2_thresh_[calcEta][iphi-1][depth-1]+=pow(en,2);
1000  time_thresh_[calcEta][iphi-1][depth-1]+=ti;
1001 
1002  ++hooccthresh;
1003  if (ti<RECHITMON_TIME_MIN || ti>RECHITMON_TIME_MAX)
1004  h_HOThreshTime->Fill(ti);
1005  else
1007  }
1008  } // loop over all HO hits
1009 
1010  ++HO_occupancy_[hoocc/10];
1011  ++HO_occupancy_thresh_[hooccthresh/10];
1012 
1013  // loop over HF
1014  h_HFsizeVsLS->Fill(currentLS,hfHits.size());
1015 
1016  HtPlus=0; HtMinus=0;
1017 
1018  int hfocc=0;
1019  int hfoccthresh=0;
1020  for (HFRecHitCollection::const_iterator HFiter=hfHits.begin(); HFiter!=hfHits.end(); ++HFiter)
1021  { // loop over all hits
1022  float en = HFiter->energy();
1023  float ti = HFiter->time();
1024  if (en> HFenergyThreshold_)
1025  h_HFTimeVsEnergy->Fill(en,ti);
1026 
1027  HcalDetId id(HFiter->detid().rawId());
1028  int ieta = id.ieta();
1029  int iphi = id.iphi();
1030  int depth = id.depth();
1031 
1032  if (en>0.5)
1033  {
1034  h_rechitieta_05->Fill(ieta);
1035  h_rechitiphi_05->Fill(iphi);
1036  if (en>1.)
1037  {
1038  h_rechitieta_10->Fill(ieta);
1039  h_rechitiphi_10->Fill(iphi);
1040  if (en>2.5)
1041  {
1042  h_rechitieta_25->Fill(ieta);
1043  h_rechitiphi_25->Fill(iphi);
1044  if (en>10.)
1045  {
1046  h_rechitieta_100->Fill(ieta);
1047  h_rechitiphi_100->Fill(iphi);
1048  }
1049  }
1050  }
1051  }
1052 
1053  double fEta=fabs(0.5*(theHFEtaBounds[abs(ieta)-29]+theHFEtaBounds[abs(ieta)-28]));
1054  int calcEta = CalcEtaBin(HcalForward,ieta,depth);
1055 
1056  int rbxindex=logicalMap->getHcalFrontEndId(HFiter->detid()).rbxIndex();
1057  int rm= logicalMap->getHcalFrontEndId(HFiter->detid()).rm();
1058 
1059  h_HF_FlagCorr->Fill(HFiter->flagField(HcalCaloFlagLabels::HFDigiTime),HFiter->flagField(HcalCaloFlagLabels::HFLongShort));
1060  if (HFiter->flagField(HcalCaloFlagLabels::TimingSubtractedBit))
1061  h_FlagMap_TIMESUBTRACT->Fill(rbxindex,rm);
1062  else if (HFiter->flagField(HcalCaloFlagLabels::TimingAddedBit))
1063  h_FlagMap_TIMEADD->Fill(rbxindex,rm);
1064  else if (HFiter->flagField(HcalCaloFlagLabels::TimingErrorBit))
1065  h_FlagMap_TIMEERROR->Fill(rbxindex,rm);
1066 
1067  if (HFiter->flagField(HcalCaloFlagLabels::HFDigiTime))
1068  {
1069  h_FlagMap_DIGITIME->Fill(rbxindex,rm);
1071  }
1072  if (HFiter->flagField(HcalCaloFlagLabels::HFLongShort))
1073  {
1074  h_FlagMap_LONGSHORT->Fill(rbxindex,rm);
1076  }
1077  //Looping over HF searching for flags --- cris
1078  for (int f=0;f<32;f++)
1079  {
1080  if (HFiter->flagField(f))
1081  HFflagcounter_[f]++;
1082  }
1083 
1084  // Occupancy plots, without threshold
1085  ++occupancy_[calcEta][iphi-1][depth-1];
1086  energy_[calcEta][iphi-1][depth-1]+=en;
1087  energy2_[calcEta][iphi-1][depth-1]+=pow(en,2);
1088  time_[calcEta][iphi-1][depth-1]+=ti;
1089  ++hfocc;
1090  if (ti<RECHITMON_TIME_MIN || ti>RECHITMON_TIME_MAX)
1091  h_HFTime->Fill(ti);
1092  else
1093  ++HFtime_[int(ti-RECHITMON_TIME_MIN)];
1094 
1095  ieta>0 ? HtPlus+=en/cosh(fEta) : HtMinus+=en/cosh(fEta); // add energy from all cells, or only those > threshold?
1096 
1097  if (en>=HFenergyThreshold_ &&
1098  en/cosh(fEta)>=HFETThreshold_
1099  )
1100  {
1101  // Occupancy plots require min bias trigger, along with thresholds exceeded
1102  if (passedMinBiasHLT)
1103  {
1104  ++occupancy_thresh_[calcEta][iphi-1][depth-1];
1105  energy_thresh_[calcEta][iphi-1][depth-1]+=en;
1106  energy2_thresh_[calcEta][iphi-1][depth-1]+=pow(en,2);
1107  time_thresh_[calcEta][iphi-1][depth-1]+=ti;
1108 
1109  ++hfoccthresh;
1110  if (ti<RECHITMON_TIME_MIN || ti>RECHITMON_TIME_MAX)
1111  h_HFThreshTime->Fill(ti);
1112  else
1114  }
1115 
1116  if (ieta>0)
1117  {
1118  HFtPlus+=en*ti;
1119  HFePlus+=en;
1120  hfpocc++;
1121  }
1122  else if (ieta<0)
1123  {
1124  HFtMinus+=en*ti;
1125  HFeMinus+=en;
1126  hfmocc++;
1127  }
1128  } // if (en>thresh, ET>thresh)
1129  } // loop over all HF hits
1130 
1131  ++HF_occupancy_[hfocc/10];
1132  ++HF_occupancy_thresh_[hfoccthresh/10];
1133 
1134 
1135  // Form event-wide variables (time averages, etc.), and plot them
1136 
1137  // Calculate weighted times. (Set tPlus, tMinus to overflow in case where total energy < 0)
1138  HFePlus>0 ? HFtPlus/=HFePlus : HFtPlus = 10000;
1139  HFeMinus>0 ? HFtMinus/=HFeMinus : HFtMinus = -10000;
1140 
1141  double mintime=99; // used to be min(tPlus,tMinus);
1142  double minHT=std::min(HtMinus,HtPlus);
1143  minHT==HtMinus ? mintime=HFtMinus : mintime = HFtPlus;
1144  //mintime = min(HFtPlus,HFtMinus); // I think we might want to use this value for mintime?
1145 
1146 
1147  h_LumiPlot_MinTime_vs_MinHT->Fill(minHT, mintime);
1148  h_LumiPlot_timeHT_HFM->Fill(HtMinus,HFtMinus);
1149  h_LumiPlot_timeHT_HFP->Fill(HtPlus,HFtPlus);
1150 
1151  if (passedMinBiasHLT==true)
1152  {
1153  h_LumiPlot_SumHT_HFPlus_vs_HFMinus->Fill(HtMinus,HtPlus);
1154  // HtMinus, HtPlus require no energy cuts for their contributing cells
1155  // HFeMinus, HFePlus require that cells be > threshold cut
1156 
1157  if (HtMinus>1 && HtPlus > 1) // is this the condition we want, or do we want hfmocc>0 && hfpocc >0?
1158  {
1159  h_LumiPlot_SumEnergy_HFPlus_vs_HFMinus->Fill(HFeMinus,HFePlus);
1160  h_LumiPlot_timeHFPlus_vs_timeHFMinus->Fill(HFtMinus,HFtPlus);
1161 
1162  h_HFP_weightedTime->Fill(HFtPlus);
1163  h_HFM_weightedTime->Fill(HFtMinus);
1164  h_HBP_weightedTime->Fill(HBtPlus);
1165  h_HBM_weightedTime->Fill(HBtMinus);
1166 
1167  h_HEP_weightedTime->Fill(HEtPlus);
1168  h_HEM_weightedTime->Fill(HEtMinus);
1169 
1170  if (hepocc>0 && hemocc>0)
1171  {
1172  h_HEtimedifference->Fill(HEtPlus-HEtMinus);
1173  if (HEePlus-HEeMinus!=0) h_HEenergydifference->Fill((HEePlus-HEeMinus)/(HEePlus+HEeMinus));
1174  }
1175  if (hfpocc>0 && hfmocc>0) // which condition do we want?
1176  {
1177  h_HFtimedifference->Fill((HFtPlus)-(HFtMinus));
1178  if (HFePlus+HFeMinus!=0) h_HFenergydifference->Fill((HFePlus-HFeMinus)/(HFePlus+HFeMinus));
1179  }
1180 
1183  if (fabs(HFtPlus-HFtMinus)<timediffThresh_)
1184  {
1187  }
1188 
1189  HFP_HFM_Energy->Fill(HFeMinus/1000., HFePlus/1000.);
1190  }
1191 
1192  if (debug_>1) std::cout <<"\t<HcalRecHitMonitor:: HF averages> TPLUS = "<<HFtPlus<<" EPLUS = "<<HFePlus<<" TMINUS = "<<HFtMinus<<" EMINUS = "<<HFeMinus<<" Weighted Time Diff = "<<((HFtPlus)-(HFtMinus))<<std::endl;
1193 
1194 
1195  } // if (passedMinBiasHLT)
1196 
1197  if (passedHcalHLT && HtMinus>1 && HtPlus> 1 )
1198  {
1199  if (hfpocc>0 && hfmocc>0)
1200  {
1201  h_HF_HcalHLT_weightedtimedifference->Fill(HFtPlus-HFtMinus);
1202  if (HFePlus+HFeMinus!=0) h_HF_HcalHLT_energydifference->Fill((HFePlus-HFeMinus)/(HFePlus+HFeMinus));
1203  }
1204  if (hepocc>0 && hemocc>0)
1205  {
1206  h_HE_HcalHLT_weightedtimedifference->Fill(HEtPlus-HEtMinus);
1207  if (HEePlus-HEeMinus!=0) h_HE_HcalHLT_energydifference->Fill((HEePlus-HEeMinus)/(HEePlus+HEeMinus));
1208  }
1209 
1212  if (fabs(HFtPlus-HFtMinus)<timediffThresh_)
1213  {
1216  }
1217  } // passsed Hcal HLT
1218 
1219  return;
1220 } // void HcalRecHitMonitor::processEvent_rechitenergy
MonitorElement * h_rechitieta_100
double time_[85][72][4]
double HB_occupancy_[260]
int i
Definition: DBlmapReader.cc:9
MonitorElement * h_HOThreshTime
MonitorElement * h_HFP_weightedTime
MonitorElement * h_HFLongShort_vs_LS
MonitorElement * h_HFtimedifference
MonitorElement * h_LumiPlot_timeHT_HFP
MonitorElement * h_HBHE_FlagCorr
MonitorElement * h_HBsizeVsLS
MonitorElement * h_LumiPlot_MinTime_vs_MinHT
EtaPhiHists OccupancyThreshByDepth
double HFtime_thresh_[250--250]
double HOtime_thresh_[250--250]
MonitorElement * h_HF_HcalHLT_weightedtimedifference
double HBtime_thresh_[250--250]
double HF_occupancy_thresh_[174]
MonitorElement * h_HBThreshTime
MonitorElement * h_FlagMap_PULSESHAPE
MonitorElement * h_HBHEPulseShape_vs_LS
MonitorElement * h_HF_FlagCorr
MonitorElement * h_HOflagcounter
MonitorElement * h_rechitiphi_05
MonitorElement * h_rechitieta_10
double HO_occupancy_thresh_[218]
MonitorElement * h_LumiPlot_timeHFPlus_vs_timeHFMinus
MonitorElement * h_HFThreshTime
MonitorElement * h_rechitieta_25
std::vector< T >::const_iterator const_iterator
MonitorElement * h_rechitiphi_10
MonitorElement * h_HFTime
double HBtime_[250--250]
MonitorElement * h_FlagMap_TIMEADD
#define abs(x)
Definition: mlp_lapack.h:159
MonitorElement * h_LumiPlot_LS_MinBiasEvents
double HEtime_thresh_[250--250]
MonitorElement * h_LumiPlot_SumEnergy_HFPlus_vs_HFMinus
double HF_occupancy_[174]
#define min(a, b)
Definition: mlp_lapack.h:161
MonitorElement * h_HFflagcounter
MonitorElement * h_HFM_weightedTime
void update(void)
Mark the object updated.
MonitorElement * h_HBTimeVsEnergy
MonitorElement * h_HEtimedifference
MonitorElement * h_HEM_weightedTime
MonitorElement * h_HE_HcalHLT_weightedtimedifference
MonitorElement * h_FlagMap_TIMEERROR
MonitorElement * h_HF_HcalHLT_energydifference
EtaPhiHists SumEnergyByDepth
double HE_occupancy_thresh_[260]
unsigned int occupancy_[85][72][4]
MonitorElement * h_rechitiphi_100
void Fill(long long x)
MonitorElement * h_HETime
EtaPhiHists OccupancyByDepth
MonitorElement * h_HFenergydifference
double time_thresh_[85][72][4]
MonitorElement * h_HEsizeVsLS
MonitorElement * h_LumiPlot_BX_MinBiasEvents_notimecut
MonitorElement * h_HOsizeVsLS
std::vector< MonitorElement * > depth
MonitorElement * h_LumiPlot_BX_HcalHLTEvents_notimecut
EtaPhiHists SumTimeByDepth
unsigned int occupancy_thresh_[85][72][4]
MonitorElement * h_HETimeVsEnergy
MonitorElement * h_HEenergydifference
string rm
Definition: submit.py:76
MonitorElement * h_HFTimeVsEnergy
HcalSubdetector
Definition: HcalAssistant.h:32
MonitorElement * h_LumiPlot_BX_HcalHLTEvents
MonitorElement * h_HBM_weightedTime
double f[11][100]
MonitorElement * h_HFsizeVsLS
EtaPhiHists SqrtSumEnergy2ByDepth
MonitorElement * h_HFDigiTime_vs_LS
MonitorElement * h_HBHEHPDMult_vs_LS
double energy2_[85][72][4]
double HFtime_[250--250]
MonitorElement * h_HOTime
MonitorElement * h_rechitiphi_25
const_iterator end() const
MonitorElement * h_FlagMap_TIMESUBTRACT
const HcalFrontEndId getHcalFrontEndId(const DetId &)
double energy2_thresh_[85][72][4]
MonitorElement * h_HEP_weightedTime
MonitorElement * h_FlagMap_LONGSHORT
double HOtime_[250--250]
double energy_thresh_[85][72][4]
static const double theHFEtaBounds[]
MonitorElement * h_HE_HcalHLT_energydifference
double HEtime_[250--250]
MonitorElement * h_LumiPlot_LS_MinBiasEvents_notimecut
int CalcEtaBin(int subdet, int ieta, int depth)
MonitorElement * h_rechitieta_05
#define RECHITMON_TIME_MIN
MonitorElement * h_HEflagcounter
MonitorElement * h_HBTime
size_type size() const
MonitorElement * h_HBP_weightedTime
double HB_occupancy_thresh_[260]
MonitorElement * h_LumiPlot_BX_MinBiasEvents
MonitorElement * h_FlagMap_HPDMULT
#define RECHITMON_TIME_MAX
MonitorElement * h_HOTimeVsEnergy
MonitorElement * h_HEThreshTime
tuple cout
Definition: gather_cfg.py:121
double HE_occupancy_[260]
MonitorElement * h_LumiPlot_LS_HcalHLTEvents_notimecut
MonitorElement * h_LumiPlot_LS_HcalHLTEvents
static const double theHBHEEtaBounds[]
MonitorElement * HFP_HFM_Energy
double HO_occupancy_[218]
MonitorElement * h_FlagMap_DIGITIME
MonitorElement * h_LumiPlot_timeHT_HFM
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:40
MonitorElement * h_HBflagcounter
const_iterator begin() const
MonitorElement * h_LumiPlot_SumHT_HFPlus_vs_HFMinus
HcalLogicalMap * logicalMap
double energy_[85][72][4]
void HcalRecHitMonitor::reset ( void  )
virtual

Reimplemented from HcalBaseDQMonitor.

Definition at line 527 of file HcalRecHitMonitor.cc.

References HcalBaseDQMonitor::dbe_, MonitorElement::DQM_KIND_TH1F, MonitorElement::DQM_KIND_TH2F, MonitorElement::DQM_KIND_TPROFILE, DQMStore::getAllContents(), i, HcalObjRepresent::Reset(), and HcalBaseDQMonitor::subdir_.

Referenced by beginRun(), and setup().

528 {
529  std::vector<MonitorElement*> hists = dbe_->getAllContents(subdir_);
530  for (unsigned int i=0;i<hists.size();++i)
531  {
532  if (hists[i]->kind()==MonitorElement::DQM_KIND_TH1F ||
533  hists[i]->kind()==MonitorElement::DQM_KIND_TH2F ||
534  hists[i]->kind()==MonitorElement::DQM_KIND_TPROFILE)
535  hists[i]->Reset();
536  }
537 }
int i
Definition: DBlmapReader.cc:9
std::vector< MonitorElement * > getAllContents(const std::string &path) const
Definition: DQMStore.cc:1672
void Reset(std::vector< TH2F > &depth)
void HcalRecHitMonitor::setup ( void  )
virtual

Reimplemented from HcalBaseDQMonitor.

Definition at line 69 of file HcalRecHitMonitor.cc.

References HcalCaloFlagLabels::ADCSaturationBit, DQMStore::book1D(), DQMStore::book2D(), DQMStore::bookFloat(), DQMStore::bookProfile(), gather_cfg::cout, HcalLogicalMapGenerator::createMap(), HcalBaseDQMonitor::dbe_, HcalBaseDQMonitor::debug_, MonitorElement::Fill(), HcalCaloFlagLabels::Fraction2TS, relval_steps::gen(), MonitorElement::getTH1F(), h_FlagMap_DIGITIME, h_FlagMap_HPDMULT, h_FlagMap_LONGSHORT, h_FlagMap_PULSESHAPE, h_FlagMap_TIMEADD, h_FlagMap_TIMEERROR, h_FlagMap_TIMESUBTRACT, h_HBflagcounter, h_HBHE_FlagCorr, h_HBHEHPDMult_vs_LS, h_HBHEPulseShape_vs_LS, h_HBM_weightedTime, h_HBOccupancy, h_HBP_weightedTime, h_HBsizeVsLS, h_HBThreshOccupancy, h_HBThreshTime, h_HBTime, h_HBTimeVsEnergy, h_HE_HcalHLT_energydifference, h_HE_HcalHLT_weightedtimedifference, h_HEenergydifference, h_HEflagcounter, h_HEM_weightedTime, h_HEOccupancy, h_HEP_weightedTime, h_HEsizeVsLS, h_HEThreshOccupancy, h_HEThreshTime, h_HETime, h_HEtimedifference, h_HETimeVsEnergy, h_HF_FlagCorr, h_HF_HcalHLT_energydifference, h_HF_HcalHLT_weightedtimedifference, h_HFDigiTime_vs_LS, h_HFenergydifference, h_HFflagcounter, h_HFLongShort_vs_LS, h_HFM_weightedTime, h_HFOccupancy, h_HFP_weightedTime, h_HFsizeVsLS, h_HFThreshOccupancy, h_HFThreshTime, h_HFTime, h_HFtimedifference, h_HFTimeVsEnergy, h_HOflagcounter, h_HOOccupancy, h_HOsizeVsLS, h_HOThreshOccupancy, h_HOThreshTime, h_HOTime, h_HOTimeVsEnergy, h_LumiPlot_BX_allevents, h_LumiPlot_BX_HcalHLTEvents, h_LumiPlot_BX_HcalHLTEvents_notimecut, h_LumiPlot_BX_MinBiasEvents, h_LumiPlot_BX_MinBiasEvents_notimecut, h_LumiPlot_LS_allevents, h_LumiPlot_LS_HcalHLTEvents, h_LumiPlot_LS_HcalHLTEvents_notimecut, h_LumiPlot_LS_MinBiasEvents, h_LumiPlot_LS_MinBiasEvents_notimecut, h_LumiPlot_MinTime_vs_MinHT, h_LumiPlot_SumEnergy_HFPlus_vs_HFMinus, h_LumiPlot_SumHT_HFPlus_vs_HFMinus, h_LumiPlot_timeHFPlus_vs_timeHFMinus, h_LumiPlot_timeHT_HFM, h_LumiPlot_timeHT_HFP, h_rechitieta, h_rechitieta_05, h_rechitieta_10, h_rechitieta_100, h_rechitieta_25, h_rechitieta_thresh, h_rechitiphi, h_rechitiphi_05, h_rechitiphi_10, h_rechitiphi_100, h_rechitiphi_25, h_rechitiphi_thresh, h_TriggeredEvents, HBenergyThreshold_, HBETThreshold_, HcalCaloFlagLabels::HBHEHpdHitMultiplicity, HcalCaloFlagLabels::HBHEPulseShape, HcalCaloFlagLabels::HBHETimingShapedCutsBits, HcalCaloFlagLabels::HBHETimingTrustBits, HEenergyThreshold_, HEETThreshold_, HcalCaloFlagLabels::HFDigiTime, HFenergyThreshold_, HFETThreshold_, HcalCaloFlagLabels::HFLongShort, HFP_HFM_Energy, HcalCaloFlagLabels::HFTimingTrustBits, HOenergyThreshold_, HOETThreshold_, HcalCaloFlagLabels::HSCP_ExpFit, HcalCaloFlagLabels::HSCP_FracLeader, HcalCaloFlagLabels::HSCP_OuterEnergy, HcalCaloFlagLabels::HSCP_R1R2, logicalMap, HcalBaseDQMonitor::NLumiBlocks_, OccupancyByDepth, OccupancyThreshByDepth, RECHITMON_TIME_MAX, RECHITMON_TIME_MIN, reset(), MonitorElement::setBinLabel(), DQMStore::setCurrentFolder(), HcalBaseDQMonitor::setup(), HcalBaseDQMonitor::SetupEtaPhiHists(), SqrtSumEnergy2ByDepth, SqrtSumEnergy2ThreshByDepth, HcalBaseDQMonitor::subdir_, SumEnergyByDepth, SumEnergyThreshByDepth, SumTimeByDepth, SumTimeThreshByDepth, timediffThresh_, HcalCaloFlagLabels::TimingAddedBit, HcalCaloFlagLabels::TimingErrorBit, HcalCaloFlagLabels::TimingSubtractedBit, and zeroCounters().

Referenced by beginRun().

70 {
72 
73 
74  if (debug_>0)
75  std::cout <<"<HcalRecHitMonitor::setup> Setting up histograms"<<std::endl;
76 
77  // Can we include this just in the setup, or do we need to get a new logical map with every run?
80 
81  // RecHit Monitor - specific cfg variables
82 
83  if (debug_>1)
84  std::cout <<"<HcalRecHitMonitor::setup> Creating Histograms"<<std::endl;
85 
87  h_TriggeredEvents=dbe_->book1D("EventTriggers","EventTriggers",3,-0.5,2.5);
88  h_TriggeredEvents->setBinLabel(1,"AllEvents");
89  h_TriggeredEvents->setBinLabel(2,"HLT_Minbias");
90  h_TriggeredEvents->setBinLabel(3,"HLT_Hcal");
91 
92  dbe_->setCurrentFolder(subdir_+"rechit_parameters");
93  MonitorElement* THR;
94  dbe_->setCurrentFolder(subdir_+"rechit_parameters/thresholds");
95  THR=dbe_->bookFloat("HB_Rechit_Energy_Threshold");
97  THR=dbe_->bookFloat("HE_Rechit_Energy_Threshold");
99  THR=dbe_->bookFloat("HO_Rechit_Energy_Threshold");
100  THR->Fill(HOenergyThreshold_);
101  THR=dbe_->bookFloat("HF_Rechit_Energy_Threshold");
102  THR->Fill(HFenergyThreshold_);
103  THR=dbe_->bookFloat("HB_Rechit_ET_Threshold");
104  THR->Fill(HBETThreshold_);
105  THR=dbe_->bookFloat("HE_Rechit_ET_Threshold");
106  THR->Fill(HEETThreshold_);
107  THR=dbe_->bookFloat("HO_Rechit_ET_Threshold");
108  THR->Fill(HOETThreshold_);
109  THR=dbe_->bookFloat("HF_Rechit_ET_Threshold");
110  THR->Fill(HFETThreshold_);
111  THR=dbe_->bookFloat("Maximum_HFM_HFP_time_difference_for_luminosityplots");
112  THR->Fill(timediffThresh_);
113 
114 
115  // Set up histograms that are filled by all rechits
116  dbe_->setCurrentFolder(subdir_+"Distributions_AllRecHits");
117  SetupEtaPhiHists(OccupancyByDepth,"RecHit Occupancy","");
118  h_rechitieta = dbe_->book1D("HcalRecHitIeta",
119  "Hcal RecHit ieta",
120  83,-41.5,41.5);
121  h_rechitiphi = dbe_->book1D("HcalRecHitIphi",
122  "Hcal RecHit iphi",
123  72,0.5,72.5);
124 
125  h_rechitieta_05 = dbe_->book1D("HcalRecHitIeta05",
126  "Hcal RecHit ieta E>0.5 GeV",
127  83,-41.5,41.5);
128  h_rechitiphi_05 = dbe_->book1D("HcalRecHitIphi05",
129  "Hcal RecHit iphi E>0.5 GeV",
130  72,0.5,72.5);
131  h_rechitieta_10 = dbe_->book1D("HcalRecHitIeta10",
132  "Hcal RecHit ieta E>1.0 GeV",
133  83,-41.5,41.5);
134  h_rechitiphi_10 = dbe_->book1D("HcalRecHitIphi10",
135  "Hcal RecHit iphi E>1.0 GeV",
136  72,0.5,72.5);
137  h_rechitieta_25 = dbe_->book1D("HcalRecHitIeta25",
138  "Hcal RecHit ieta E>2.5 GeV",
139  83,-41.5,41.5);
140  h_rechitiphi_25 = dbe_->book1D("HcalRecHitIphi25",
141  "Hcal RecHit iphi E>2.5 GeV",
142  72,0.5,72.5);
143  h_rechitieta_100 = dbe_->book1D("HcalRecHitIeta100",
144  "Hcal RecHit ieta E>10.0 GeV",
145  83,-41.5,41.5);
146  h_rechitiphi_100 = dbe_->book1D("HcalRecHitIphi100",
147  "Hcal RecHit iphi E>10.0 GeV",
148  72,0.5,72.5);
149 
150 
151 
152  h_LumiPlot_LS_allevents = dbe_->book1D("AllEventsPerLS",
153  "LS # of all events",
154  NLumiBlocks_,0.5,NLumiBlocks_+0.5);
155  h_LumiPlot_BX_allevents = dbe_->book1D("BX_allevents",
156  "BX # of all events",
157  3600,0,3600);
158  h_LumiPlot_MinTime_vs_MinHT = dbe_->book2D("MinTime_vs_MinSumET",
159  "Energy-Weighted Time vs Min (HF+,HF-) Scalar Sum ET;min Sum ET(GeV);time(ns)",
160  100,0,10,80,-40,40);
161 
162  h_LumiPlot_timeHT_HFM = dbe_->book2D("HFM_Time_vs_SumET",
163  "Energy-Weighted Time vs HFMinus Scalar Sum ET;Sum ET(GeV);time(ns)",
164  100,0,10,80,-40,40);
165 
166  h_LumiPlot_timeHT_HFP = dbe_->book2D("HFP_Time_vs_SumET",
167  "Energy-Weighted Time vs HFPlus Scalar Sum ET;Sum ET(GeV);time(ns)",
168  100,0,10,80,-40,40);
169 
170 
171  dbe_->setCurrentFolder(subdir_+"Distributions_AllRecHits/sumplots");
172  SetupEtaPhiHists(SumEnergyByDepth,"RecHit Summed Energy","GeV");
173  SetupEtaPhiHists(SqrtSumEnergy2ByDepth,"RecHit Sqrt Summed Energy2","GeV");
174  SetupEtaPhiHists(SumTimeByDepth,"RecHit Summed Time","nS");
175 
176  // Histograms for events that passed MinBias triggers
177  dbe_->setCurrentFolder(subdir_+"Distributions_PassedMinBias");
178 
179  h_HBP_weightedTime = dbe_->book1D("WeightedTime_HBP","Weighted Time for HBP",
180  300,-150,150);
181  h_HBM_weightedTime = dbe_->book1D("WeightedTime_HBM","Weighted Time for HBM",
182  300,-150,150);
183  h_HEP_weightedTime = dbe_->book1D("WeightedTime_HEP","Weighted Time for HEP",
184  300,-150,150);
185  h_HEM_weightedTime = dbe_->book1D("WeightedTime_HEM","Weighted Time for HEM",
186  300,-150,150);
187  h_HFP_weightedTime = dbe_->book1D("WeightedTime_HFP","Weighted Time for HFP",
188  300,-150,150);
189  h_HFM_weightedTime = dbe_->book1D("WeightedTime_HFM","Weighted Time for HFM",
190  300,-150,150);
191 
192  h_HFtimedifference = dbe_->book1D("HFweightedtimeDifference",
193  "Energy-Weighted time difference between HF+ and HF- passing MinBias (no HT cut)",
194  251,-250.5,250.5);
195  h_HEtimedifference = dbe_->book1D("HEweightedtimeDifference",
196  "Energy-Weighted time difference between HE+ and HE- passing MinBias (no HT cut)",
197  251,-250.5,250.5);
198 
199  HFP_HFM_Energy = dbe_->book2D("HFP_HFM_Energy",
200  "HFP VS HFM Energy; Total Energy in HFMinus (TeV); Total Energy in HFPlus (TeV)",
201  100,0,100, 100,0,100);
202 
203  // Would these work better as 2D plots?
204  h_HFenergydifference = dbe_->book1D("HFenergyDifference",
205  "Sum(E_HFPlus - E_HFMinus)/Sum(E_HFPlus + E_HFMinus)",
206  200,-1,1);
207  h_HEenergydifference = dbe_->book1D("HEenergyDifference",
208  "Sum(E_HEPlus - E_HEMinus)/Sum(E_HEPlus + E_HEMinus)",
209  200,-1,1);
210 
211  h_LumiPlot_LS_MinBiasEvents=dbe_->book1D("MinBiasEventsPerLS",
212  "Number of MinBias Events vs LS (HT cut and HFM-HFP time cut)",
213  NLumiBlocks_/10,0.5,NLumiBlocks_+0.5);
214  h_LumiPlot_LS_MinBiasEvents_notimecut=dbe_->book1D("MinBiasEventsPerLS_notimecut",
215  "Number of Events with MinBias vs LS (HFM,HFP HT>1,no time cut)",
216  NLumiBlocks_/10,0.5,NLumiBlocks_+0.5);
217 
218  h_LumiPlot_SumHT_HFPlus_vs_HFMinus = dbe_->book2D("SumHT_plus_minus",
219  "HF+ Sum HT vs HF- Sum HT",60,0,30,60,0,30);
220  h_LumiPlot_SumEnergy_HFPlus_vs_HFMinus = dbe_->book2D("SumEnergy_plus_minus",
221  "HF+ Sum Energy vs HF- Sum Energy",
222  60,0,150,60,0,150);
223  h_LumiPlot_timeHFPlus_vs_timeHFMinus = dbe_->book2D("timeHFplus_vs_timeHFminus",
224  "Energy-weighted time average of HF+ vs HF-",
225  60,-60,60,60,-60,60);
226  h_LumiPlot_BX_MinBiasEvents = dbe_->book1D("BX_MinBias_Events_TimeCut",
227  "BX # of MinBias events (HFM & HFP HT>1 & HFM-HFP time cut)",
228  3600,0,3600);
229  h_LumiPlot_BX_MinBiasEvents_notimecut = dbe_->book1D("BX_MinBias_Events_notimecut",
230  "BX # of MinBias events (HFM,HFP HT>1, no time cut)",
231  3600,0,3600);
232  // threshold plots must pass MinBias Trigger
233  SetupEtaPhiHists(OccupancyThreshByDepth,"Above Threshold RecHit Occupancy","");
234  h_rechitieta_thresh = dbe_->book1D("HcalRecHitIeta_thresh",
235  "Hcal RecHit ieta above energy and ET threshold",
236  83,-41.5,41.5);
237  h_rechitiphi_thresh = dbe_->book1D("HcalRecHitIphi_thresh",
238  "Hcal RecHit iphi above energy and ET threshold",
239  72,0.5,72.5);
240 
241  dbe_->setCurrentFolder(subdir_+"Distributions_PassedMinBias/sumplots");
242  SetupEtaPhiHists(SumEnergyThreshByDepth,"Above Threshold RecHit Summed Energy","GeV");
243  SetupEtaPhiHists(SumTimeThreshByDepth,"Above Threshold RecHit Summed Time","nS");
244  SetupEtaPhiHists(SqrtSumEnergy2ThreshByDepth,"Above Threshold RecHit Sqrt Summed Energy2","GeV");
245 
246  dbe_->setCurrentFolder(subdir_+"Distributions_PassedMinBias/rechit_1D_plots");
247  h_HBThreshTime=dbe_->book1D("HB_time_thresh",
248  "HB RecHit Time Above Threshold",
250  h_HBThreshOccupancy=dbe_->book1D("HB_occupancy_thresh",
251  "HB RecHit Occupancy Above Threshold",260,-0.5,2599.5);
252  h_HEThreshTime=dbe_->book1D("HE_time_thresh",
253  "HE RecHit Time Above Threshold",
255  h_HEThreshOccupancy=dbe_->book1D("HE_occupancy_thresh",
256  "HE RecHit Occupancy Above Threshold",260,-0.5,2599.5);
257  h_HOThreshTime=dbe_->book1D("HO_time_thresh",
258  "HO RecHit Time Above Threshold",
260  h_HOThreshOccupancy=dbe_->book1D("HO_occupancy_thresh",
261  "HO RecHit Occupancy Above Threshold",217,-0.5,2169.5);
262  h_HFThreshTime=dbe_->book1D("HF_time_thresh",
263  "HF RecHit Time Above Threshold",
265  h_HFThreshOccupancy=dbe_->book1D("HF_occupancy_thresh",
266  "HF RecHit Occupancy Above Threshold",
267  173,-0.5,1729.5);
268 
269  // Histograms for events that did passed Hcal-specfied HLT triggers
270  dbe_->setCurrentFolder(subdir_+"Distributions_PassedHcalHLTriggers");
271 
272  h_LumiPlot_BX_HcalHLTEvents = dbe_->book1D("BX_HcalHLT_Events_TimeCut",
273  "BX # of HcalHLT events (HFM & HFP HT>1 & HFM-HFP time cut)",
274  3600,0,3600);
275  h_LumiPlot_BX_HcalHLTEvents_notimecut = dbe_->book1D("BX_HcalHLT_Events_notimecut",
276  "BX # of HcalHLT events (HFM,HFP HT>1, no time cut)",
277  3600,0,3600);
278  h_LumiPlot_LS_HcalHLTEvents=dbe_->book1D("HcalHLTEventsPerLS",
279  "Number of HcalHLT Events vs LS (HT cut and HFM-HFP time cut)",
280  NLumiBlocks_/10,0.5,NLumiBlocks_+0.5);
281  h_LumiPlot_LS_HcalHLTEvents_notimecut=dbe_->book1D("HcalHLTEventsPerLS_notimecut",
282  "Number of Events with HcalHLT vs LS (HFM,HFP HT>1,no time cut)",
283  NLumiBlocks_/10,0.5,NLumiBlocks_+0.5);
284 
285 
286  dbe_->setCurrentFolder(subdir_+"Distributions_PassedHcalHLTriggers/");
287  h_HF_HcalHLT_weightedtimedifference = dbe_->book1D("HF_HcalHLT_weightedtimeDifference",
288  "Energy-Weighted time difference between HF+ and HF- Hcal HLT",
289  251,-250.5,250.5);
290  h_HE_HcalHLT_weightedtimedifference = dbe_->book1D("HE_HcalHLT_weightedtimeDifference",
291  "Energy-Weighted time difference between HE+ and HE- Hcal HLT",
292  251,-250.5,250.5);
293  h_HF_HcalHLT_energydifference = dbe_->book1D("HF_HcalHLT_energyDifference",
294  "Sum(E_HFPlus - E_HFMinus)/Sum(E_HFPlus + E_HFMinus)",
295  200,-1,1);
296  h_HE_HcalHLT_energydifference = dbe_->book1D("HE_HcalHLT_energyDifference",
297  "Sum(E_HEPlus - E_HEMinus)/Sum(E_HEPlus + E_HEMinus)",
298  200,-1,1);
299 
300  // Do we want separate directories for Minbias, other flags at some point?
301  dbe_->setCurrentFolder(subdir_+"AnomalousCellFlags");// HB Flag Histograms
302 
303 
304  h_HFLongShort_vs_LS=dbe_->book1D("HFLongShort_vs_LS",
305  "HFLongShort Flags vs Lumi Section",
306  NLumiBlocks_/10,0.5,0.5+NLumiBlocks_);
307  h_HFDigiTime_vs_LS=dbe_->book1D("HFDigiTime_vs_LS",
308  "HFDigiTime Flags vs Lumi Section",
309  NLumiBlocks_/10,0.5,0.5+NLumiBlocks_);
310  h_HBHEHPDMult_vs_LS=dbe_->book1D("HBHEHPDMult_vs_LS",
311  "HBHEHPDMult Flags vs Lumi Section",
312  NLumiBlocks_/10,0.5,0.5+NLumiBlocks_);
313  h_HBHEPulseShape_vs_LS=dbe_->book1D("HBHEPulseShape_vs_LS",
314  "HBHEPulseShape Flags vs Lumi Section",
315  NLumiBlocks_/10,0.5,0.5+NLumiBlocks_);
316 
317  h_HF_FlagCorr=dbe_->book2D("HF_FlagCorrelation",
318  "HF LongShort vs. DigiTime flags; DigiTime; LongShort",
319  2,-0.5,1.5,2,-0.5,1.5);
320  h_HF_FlagCorr->setBinLabel(1,"OFF",1);
321  h_HF_FlagCorr->setBinLabel(2,"ON",1);
322  h_HF_FlagCorr->setBinLabel(1,"OFF",2);
323  h_HF_FlagCorr->setBinLabel(2,"ON",2);
324 
325  h_HBHE_FlagCorr=dbe_->book2D("HBHE_FlagCorrelation",
326  "HBHE HpdHitMultiplicity vs. PulseShape flags; PulseShape; HpdHitMultiplicity",
327  2,-0.5,1.5,2,-0.5,1.5);
328  h_HBHE_FlagCorr->setBinLabel(1,"OFF",1);
329  h_HBHE_FlagCorr->setBinLabel(2,"ON",1);
330  h_HBHE_FlagCorr->setBinLabel(1,"OFF",2);
331  h_HBHE_FlagCorr->setBinLabel(2,"ON",2);
332 
333  h_FlagMap_HPDMULT=dbe_->book2D("FlagMap_HPDMULT",
334  "RBX Map of HBHEHpdHitMultiplicity Flags;RBX;RM",
335  72,-0.5,71.5,4,0.5,4.5);
336  h_FlagMap_PULSESHAPE=dbe_->book2D("FlagMap_PULSESHAPE",
337  "RBX Map of HBHEPulseShape Flags;RBX;RM",
338  72,-0.5,71.5,4,0.5,4.5);
339  h_FlagMap_DIGITIME=dbe_->book2D("FlagMap_DIGITIME",
340  "RBX Map of HFDigiTime Flags;RBX;RM",
341  24,131.5,155.5,4,0.5,4.5);
342  h_FlagMap_LONGSHORT=dbe_->book2D("FlagMap_LONGSHORT",
343  "RBX Map of HFLongShort Flags;RBX;RM",
344  24,131.5,155.5,4,0.5,4.5);
345 
346  h_FlagMap_TIMEADD=dbe_->book2D("FlagMap_TIMEADD",
347  "RBX Map of Timing Added Flags;RBX;RM",
348  156,-0.5,155.5,4,0.5,4.5);
349  h_FlagMap_TIMESUBTRACT=dbe_->book2D("FlagMap_TIMESUBTRACT",
350  "RBX Map of Timing Subtracted Flags;RBX;RM",
351  156,-0.5,155.5,4,0.5,4.5);
352  h_FlagMap_TIMEERROR=dbe_->book2D("FlagMap_TIMEERROR",
353  "RBX Map of Timing Error Flags;RBX;RM",
354  156,-0.5,155.5,4,0.5,4.5);
355 
356  h_HBflagcounter=dbe_->book1D("HBflags","HB flags",32,-0.5,31.5);
363  // 2-bit timing counter
366  //3-bit timing shape cut
370 
371  // common flags
377 
378  // HE Flag Histograms
379  h_HEflagcounter=dbe_->book1D("HEflags","HE flags",32,-0.5,31.5);
386  // 2-bit timing counter
389  //3-bit timing shape cut
398 
399  // HO Flag Histograms
400  h_HOflagcounter=dbe_->book1D("HOflags","HO flags",32,-0.5,31.5);
406 
407  // HF Flag Histograms
408  h_HFflagcounter=dbe_->book1D("HFflags","HF flags",32,-0.5,31.5);
417 
418  h_HBflagcounter->getTH1F()->LabelsOption("v");
419  h_HEflagcounter->getTH1F()->LabelsOption("v");
420  h_HOflagcounter->getTH1F()->LabelsOption("v");
421  h_HFflagcounter->getTH1F()->LabelsOption("v");
422 
423 
424  // Diagnostic plots are currently filled for all rechits (no trigger/threshold requirement)
425  // hb
426  dbe_->setCurrentFolder(subdir_+"diagnostics/hb");
427 
428  h_HBTimeVsEnergy=dbe_->book2D("HBTimeVsEnergy","HB Time Vs Energy (All RecHits);Energy (GeV); time(nS)",100,0,500,40,-100,100);
429 
430  h_HBsizeVsLS=dbe_->bookProfile("HBRecHitsVsLB","HB RecHits vs Luminosity Block",
431  NLumiBlocks_,0.5,NLumiBlocks_+0.5,
432  100,0,10000);
433 
434  h_HBTime=dbe_->book1D("HB_time","HB RecHit Time",
436  h_HBOccupancy=dbe_->book1D("HB_occupancy",
437  "HB RecHit Occupancy",260,-0.5,2599.5);
438 
439  //he
440  dbe_->setCurrentFolder(subdir_+"diagnostics/he");
441 
442  h_HETimeVsEnergy=dbe_->book2D("HETimeVsEnergy","HE Time Vs Energy (All RecHits);Energy (GeV); time(nS)",100,0,500,40,-100,100);
443 
444  h_HEsizeVsLS=dbe_->bookProfile("HERecHitsVsLB","HE RecHits vs Luminosity Block",
445  NLumiBlocks_,0.5,NLumiBlocks_+0.5,
446  100,0,10000);
447 
448  h_HETime=dbe_->book1D("HE_time","HE RecHit Time",
450  h_HEOccupancy=dbe_->book1D("HE_occupancy","HE RecHit Occupancy",260,-0.5,2599.5);
451 
452  // ho
453  dbe_->setCurrentFolder(subdir_+"diagnostics/ho");
454 
455  h_HOTimeVsEnergy=dbe_->book2D("HOTimeVsEnergy","HO Time Vs Energy (All RecHits);Energy (GeV); time(nS)",100,0,500,40,-100,100);
456 
457  h_HOsizeVsLS=dbe_->bookProfile("HORecHitsVsLB","HO RecHits vs Luminosity Block",
458  NLumiBlocks_,0.5,NLumiBlocks_+0.5,
459  100,0,10000);
460  h_HOTime=dbe_->book1D("HO_time",
461  "HO RecHit Time",
463  h_HOOccupancy=dbe_->book1D("HO_occupancy",
464  "HO RecHit Occupancy",217,-0.5,2169.5);
465 
466  // hf
467  dbe_->setCurrentFolder(subdir_+"diagnostics/hf");
468 
469  h_HFTimeVsEnergy=dbe_->book2D("HFTimeVsEnergy","HF Time Vs Energy (All RecHits);Energy (GeV); time(nS)",100,0,500,40,-100,100);
470 
471  h_HFsizeVsLS=dbe_->bookProfile("HFRecHitsVsLB",
472  "HF RecHits vs Luminosity Block",
473  NLumiBlocks_,0.5,NLumiBlocks_+0.5,
474  100, 0,10000);
475  h_HFTime=dbe_->book1D("HF_time","HF RecHit Time",
477  h_HFOccupancy=dbe_->book1D("HF_occupancy","HF RecHit Occupancy",173,-0.5,1729.5);
478 
479  // clear all counters, reset histograms
480  this->zeroCounters();
481  this->reset();
482 
483  return;
484 } //void HcalRecHitMonitor::setup(...)
MonitorElement * h_rechitieta_100
MonitorElement * h_HOThreshTime
MonitorElement * h_HFP_weightedTime
MonitorElement * h_HFLongShort_vs_LS
MonitorElement * h_HFtimedifference
MonitorElement * h_LumiPlot_timeHT_HFP
MonitorElement * h_HBHE_FlagCorr
MonitorElement * h_HBsizeVsLS
MonitorElement * h_LumiPlot_MinTime_vs_MinHT
EtaPhiHists OccupancyThreshByDepth
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
Definition: DQMStore.cc:717
MonitorElement * h_HF_HcalHLT_weightedtimedifference
MonitorElement * h_HBThreshTime
MonitorElement * h_FlagMap_PULSESHAPE
MonitorElement * h_HBHEPulseShape_vs_LS
MonitorElement * h_HF_FlagCorr
MonitorElement * h_HOflagcounter
HcalLogicalMap createMap(unsigned int mapIOV=5)
MonitorElement * h_rechitiphi_05
MonitorElement * h_rechitieta_10
MonitorElement * h_LumiPlot_timeHFPlus_vs_timeHFMinus
MonitorElement * h_HFThreshTime
MonitorElement * h_rechitieta_25
MonitorElement * h_rechitiphi_10
MonitorElement * h_HFTime
void setBinLabel(int bin, const std::string &label, int axis=1)
set bin label for x, y or z axis (axis=1, 2, 3 respectively)
MonitorElement * h_HFThreshOccupancy
MonitorElement * h_FlagMap_TIMEADD
MonitorElement * h_LumiPlot_LS_MinBiasEvents
MonitorElement * h_rechitieta
MonitorElement * h_LumiPlot_SumEnergy_HFPlus_vs_HFMinus
MonitorElement * h_HFflagcounter
MonitorElement * h_HFM_weightedTime
MonitorElement * h_HBTimeVsEnergy
MonitorElement * h_HEOccupancy
MonitorElement * h_LumiPlot_LS_allevents
MonitorElement * h_HEtimedifference
MonitorElement * h_HEM_weightedTime
MonitorElement * h_HE_HcalHLT_weightedtimedifference
MonitorElement * h_FlagMap_TIMEERROR
MonitorElement * h_HF_HcalHLT_energydifference
EtaPhiHists SumEnergyByDepth
MonitorElement * h_HOThreshOccupancy
MonitorElement * bookFloat(const char *name)
Book float.
Definition: DQMStore.cc:654
MonitorElement * h_rechitiphi_100
void Fill(long long x)
MonitorElement * h_HETime
MonitorElement * h_rechitieta_thresh
EtaPhiHists OccupancyByDepth
MonitorElement * h_HOOccupancy
MonitorElement * h_HFenergydifference
MonitorElement * h_HEsizeVsLS
MonitorElement * h_LumiPlot_BX_MinBiasEvents_notimecut
EtaPhiHists SumTimeThreshByDepth
MonitorElement * h_HOsizeVsLS
MonitorElement * h_LumiPlot_BX_HcalHLTEvents_notimecut
EtaPhiHists SqrtSumEnergy2ThreshByDepth
EtaPhiHists SumTimeByDepth
MonitorElement * h_HETimeVsEnergy
MonitorElement * h_HEenergydifference
MonitorElement * h_HFTimeVsEnergy
MonitorElement * h_LumiPlot_BX_HcalHLTEvents
MonitorElement * h_HBM_weightedTime
MonitorElement * h_HFsizeVsLS
MonitorElement * bookProfile(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, const char *option="s")
Definition: DQMStore.cc:1031
EtaPhiHists SqrtSumEnergy2ByDepth
MonitorElement * h_HBOccupancy
MonitorElement * h_HFDigiTime_vs_LS
MonitorElement * h_HBHEHPDMult_vs_LS
MonitorElement * h_HOTime
MonitorElement * h_rechitiphi_25
MonitorElement * h_FlagMap_TIMESUBTRACT
MonitorElement * h_HEP_weightedTime
MonitorElement * h_FlagMap_LONGSHORT
MonitorElement * h_LumiPlot_BX_allevents
MonitorElement * h_HBThreshOccupancy
TH1F * getTH1F(void) const
MonitorElement * h_HE_HcalHLT_energydifference
MonitorElement * h_rechitiphi
MonitorElement * h_LumiPlot_LS_MinBiasEvents_notimecut
MonitorElement * h_HFOccupancy
MonitorElement * h_rechitieta_05
void SetupEtaPhiHists(EtaPhiHists &hh, std::string Name, std::string Units)
#define RECHITMON_TIME_MIN
MonitorElement * h_HEflagcounter
MonitorElement * h_HBTime
MonitorElement * h_rechitiphi_thresh
MonitorElement * h_HBP_weightedTime
MonitorElement * h_LumiPlot_BX_MinBiasEvents
MonitorElement * h_FlagMap_HPDMULT
#define RECHITMON_TIME_MAX
MonitorElement * h_HOTimeVsEnergy
MonitorElement * h_HEThreshTime
tuple cout
Definition: gather_cfg.py:121
EtaPhiHists SumEnergyThreshByDepth
MonitorElement * h_HEThreshOccupancy
MonitorElement * book2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
Book 2D histogram.
Definition: DQMStore.cc:845
virtual void setup(void)
MonitorElement * h_LumiPlot_LS_HcalHLTEvents_notimecut
MonitorElement * h_LumiPlot_LS_HcalHLTEvents
MonitorElement * HFP_HFM_Energy
MonitorElement * h_FlagMap_DIGITIME
MonitorElement * h_LumiPlot_timeHT_HFM
MonitorElement * h_HBflagcounter
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:429
MonitorElement * h_TriggeredEvents
MonitorElement * h_LumiPlot_SumHT_HFPlus_vs_HFMinus
HcalLogicalMap * logicalMap
void HcalRecHitMonitor::zeroCounters ( void  )

Definition at line 1395 of file HcalRecHitMonitor.cc.

References energy2_, energy2_thresh_, energy_, energy_thresh_, HB_occupancy_, HB_occupancy_thresh_, HBflagcounter_, HBtime_, HBtime_thresh_, HE_occupancy_, HE_occupancy_thresh_, HEflagcounter_, HEtime_, HEtime_thresh_, HF_occupancy_, HF_occupancy_thresh_, HFenergyLong_, HFenergyLong_thresh_, HFenergyShort_, HFenergyShort_thresh_, HFflagcounter_, HFlong_occupancy_, HFlong_occupancy_thresh_, HFshort_occupancy_, HFshort_occupancy_thresh_, HFtime_, HFtime_thresh_, HFtimeLong_, HFtimeLong_thresh_, HFtimeShort_, HFtimeShort_thresh_, HO_occupancy_, HO_occupancy_thresh_, HOflagcounter_, HOtime_, HOtime_thresh_, i, j, gen::k, occupancy_, occupancy_thresh_, RECHITMON_TIME_MAX, RECHITMON_TIME_MIN, time_, and time_thresh_.

Referenced by setup().

1396 {
1397  // Set all histogram counters back to zero
1398 
1399  for (int i=0;i<32;++i)
1400  {
1401  HBflagcounter_[i]=0;
1402  HEflagcounter_[i]=0;
1403  HOflagcounter_[i]=0;
1404  HFflagcounter_[i]=0;
1405 
1406  }
1407  // TH2F counters
1408  for (int i=0;i<85;++i)
1409  {
1410  for (int j=0;j<72;++j)
1411  {
1412  for (int k=0;k<4;++k)
1413  {
1414  occupancy_[i][j][k]=0;
1415  occupancy_thresh_[i][j][k]=0;
1416  energy_[i][j][k]=0;
1417  energy2_[i][j][k]=0;
1418  energy_thresh_[i][j][k]=0;
1419  energy2_thresh_[i][j][k]=0;
1420  time_[i][j][k]=0;
1421  time_thresh_[i][j][k]=0;
1422  }
1423  } // for (int j=0;j<PHIBINS;++j)
1424  } // for (int i=0;i<87;++i)
1425 
1426  // TH1F counters
1427 
1428  for (int i=0;i<200;++i)
1429  {
1430  HFenergyLong_[i]=0;
1432  HFenergyShort_[i]=0;
1434  }
1435 
1436  // time
1437  for (int i=0;i<(RECHITMON_TIME_MAX-RECHITMON_TIME_MIN);++i)
1438  {
1439  HBtime_[i]=0;
1440  HBtime_thresh_[i]=0;
1441  HEtime_[i]=0;
1442  HEtime_thresh_[i]=0;
1443  HOtime_[i]=0;
1444  HOtime_thresh_[i]=0;
1445  HFtime_[i]=0;
1446  HFtime_thresh_[i]=0;
1447  HFtimeLong_[i]=0;
1448  HFtimeLong_thresh_[i]=0;
1449  HFtimeShort_[i]=0;
1451  }
1452 
1453  // occupancy
1454  for (int i=0;i<865;++i)
1455  {
1456  if (i<260)
1457  {
1458  HB_occupancy_[i]=0;
1459  HE_occupancy_[i]=0;
1462  }
1463  if (i<218)
1464  {
1465  HO_occupancy_[i]=0;
1467  }
1468  if (i<174)
1469  {
1470  HF_occupancy_[i]=0;
1472  }
1473 
1474  HFlong_occupancy_[i] =0;
1475  HFshort_occupancy_[i]=0;
1478  } // for (int i=0;i<865;++i)
1479 
1480  return;
1481 } //void HcalRecHitMonitor::zeroCounters(void)
double HFenergyShort_[200]
double time_[85][72][4]
double HB_occupancy_[260]
int i
Definition: DBlmapReader.cc:9
double HFshort_occupancy_[865]
double HFtime_thresh_[250--250]
double HOtime_thresh_[250--250]
double HBtime_thresh_[250--250]
double HF_occupancy_thresh_[174]
double HFenergyLong_[200]
double HFshort_occupancy_thresh_[865]
double HO_occupancy_thresh_[218]
double HBtime_[250--250]
double HEtime_thresh_[250--250]
double HF_occupancy_[174]
double HFtimeShort_thresh_[250--250]
double HFtimeLong_[250--250]
double HE_occupancy_thresh_[260]
unsigned int occupancy_[85][72][4]
double time_thresh_[85][72][4]
unsigned int occupancy_thresh_[85][72][4]
double HFtimeLong_thresh_[250--250]
int j
Definition: DBlmapReader.cc:9
double HFlong_occupancy_thresh_[865]
double energy2_[85][72][4]
double HFtime_[250--250]
double HFtimeShort_[250--250]
int k[5][pyjets_maxn]
double energy2_thresh_[85][72][4]
double HOtime_[250--250]
double energy_thresh_[85][72][4]
double HEtime_[250--250]
#define RECHITMON_TIME_MIN
double HB_occupancy_thresh_[260]
#define RECHITMON_TIME_MAX
double HE_occupancy_[260]
double HFlong_occupancy_[865]
double HO_occupancy_[218]
double HFenergyShort_thresh_[200]
double HFenergyLong_thresh_[200]
double energy_[85][72][4]

Member Data Documentation

double HcalRecHitMonitor::energy2_[85][72][4]
private

Definition at line 82 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::energy2_thresh_[85][72][4]
private

Definition at line 84 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::energy_[85][72][4]
private

Definition at line 81 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::energy_thresh_[85][72][4]
private

Definition at line 83 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::energyThreshold_
private

Definition at line 54 of file HcalRecHitMonitor.h.

Referenced by HcalRecHitMonitor().

double HcalRecHitMonitor::ETThreshold_
private

Definition at line 60 of file HcalRecHitMonitor.h.

Referenced by HcalRecHitMonitor().

MonitorElement* HcalRecHitMonitor::h_FlagMap_DIGITIME
private

Definition at line 171 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_FlagMap_HPDMULT
private

Definition at line 169 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_FlagMap_LONGSHORT
private

Definition at line 172 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_FlagMap_PULSESHAPE
private

Definition at line 170 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_FlagMap_TIMEADD
private

Definition at line 173 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_FlagMap_TIMEERROR
private

Definition at line 175 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_FlagMap_TIMESUBTRACT
private

Definition at line 174 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HBflagcounter
private

Definition at line 164 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HBHE_FlagCorr
private

Definition at line 183 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HBHEHPDMult_vs_LS
private

Definition at line 179 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HBHEPulseShape_vs_LS
private

Definition at line 180 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HBM_weightedTime
private

Definition at line 224 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HBOccupancy
private

Definition at line 146 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), and setup().

MonitorElement* HcalRecHitMonitor::h_HBP_weightedTime
private

Definition at line 223 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HBsizeVsLS
private

Definition at line 139 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HBThreshOccupancy
private

Definition at line 147 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), and setup().

MonitorElement* HcalRecHitMonitor::h_HBThreshTime
private

Definition at line 145 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HBTime
private

Definition at line 144 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HBTimeVsEnergy
private

Definition at line 226 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HE_HcalHLT_energydifference
private

Definition at line 195 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HE_HcalHLT_weightedtimedifference
private

Definition at line 194 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HEenergydifference
private

Definition at line 190 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HEflagcounter
private

Definition at line 165 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HEM_weightedTime
private

Definition at line 222 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HEOccupancy
private

Definition at line 151 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), and setup().

MonitorElement* HcalRecHitMonitor::h_HEP_weightedTime
private

Definition at line 221 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HEsizeVsLS
private

Definition at line 140 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HEThreshOccupancy
private

Definition at line 152 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), and setup().

MonitorElement* HcalRecHitMonitor::h_HEThreshTime
private

Definition at line 150 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HETime
private

Definition at line 149 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HEtimedifference
private

Definition at line 189 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HETimeVsEnergy
private

Definition at line 227 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HF_FlagCorr
private

Definition at line 182 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HF_HcalHLT_energydifference
private

Definition at line 193 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HF_HcalHLT_weightedtimedifference
private

Definition at line 192 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HFDigiTime_vs_LS
private

Definition at line 178 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HFenergydifference
private

Definition at line 188 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HFflagcounter
private

Definition at line 167 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HFLongShort_vs_LS
private

Definition at line 177 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HFM_weightedTime
private

Definition at line 220 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HFOccupancy
private

Definition at line 161 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), and setup().

MonitorElement* HcalRecHitMonitor::h_HFP_weightedTime
private

Definition at line 219 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HFsizeVsLS
private

Definition at line 142 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HFThreshOccupancy
private

Definition at line 162 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), and setup().

MonitorElement* HcalRecHitMonitor::h_HFThreshTime
private

Definition at line 160 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HFTime
private

Definition at line 159 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HFtimedifference
private

Definition at line 187 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HFTimeVsEnergy
private

Definition at line 229 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HOflagcounter
private

Definition at line 166 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HOOccupancy
private

Definition at line 156 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), and setup().

MonitorElement* HcalRecHitMonitor::h_HOsizeVsLS
private

Definition at line 141 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HOThreshOccupancy
private

Definition at line 157 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), and setup().

MonitorElement* HcalRecHitMonitor::h_HOThreshTime
private

Definition at line 155 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HOTime
private

Definition at line 154 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_HOTimeVsEnergy
private

Definition at line 228 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_LumiPlot_BX_allevents
private

Definition at line 208 of file HcalRecHitMonitor.h.

Referenced by analyze(), and setup().

MonitorElement* HcalRecHitMonitor::h_LumiPlot_BX_HcalHLTEvents
private

Definition at line 211 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_LumiPlot_BX_HcalHLTEvents_notimecut
private

Definition at line 212 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_LumiPlot_BX_MinBiasEvents
private

Definition at line 209 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_LumiPlot_BX_MinBiasEvents_notimecut
private

Definition at line 210 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_LumiPlot_LS_allevents
private

Definition at line 197 of file HcalRecHitMonitor.h.

Referenced by analyze(), and setup().

MonitorElement* HcalRecHitMonitor::h_LumiPlot_LS_HcalHLTEvents
private

Definition at line 200 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_LumiPlot_LS_HcalHLTEvents_notimecut
private

Definition at line 201 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_LumiPlot_LS_MinBiasEvents
private

Definition at line 198 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_LumiPlot_LS_MinBiasEvents_notimecut
private

Definition at line 199 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_LumiPlot_MinTime_vs_MinHT
private

Definition at line 214 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_LumiPlot_SumEnergy_HFPlus_vs_HFMinus
private

Definition at line 206 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_LumiPlot_SumHT_HFPlus_vs_HFMinus
private

Definition at line 203 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_LumiPlot_timeHFPlus_vs_timeHFMinus
private

Definition at line 204 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_LumiPlot_timeHT_HFM
private

Definition at line 215 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_LumiPlot_timeHT_HFP
private

Definition at line 216 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_rechitieta
private

Definition at line 124 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), and setup().

MonitorElement* HcalRecHitMonitor::h_rechitieta_05
private

Definition at line 127 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_rechitieta_10
private

Definition at line 128 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_rechitieta_100
private

Definition at line 130 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_rechitieta_25
private

Definition at line 129 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_rechitieta_thresh
private

Definition at line 136 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), and setup().

MonitorElement* HcalRecHitMonitor::h_rechitiphi
private

Definition at line 125 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), and setup().

MonitorElement* HcalRecHitMonitor::h_rechitiphi_05
private

Definition at line 131 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_rechitiphi_10
private

Definition at line 132 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_rechitiphi_100
private

Definition at line 134 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_rechitiphi_25
private

Definition at line 133 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

MonitorElement* HcalRecHitMonitor::h_rechitiphi_thresh
private

Definition at line 137 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), and setup().

MonitorElement* HcalRecHitMonitor::h_TriggeredEvents
private

Definition at line 218 of file HcalRecHitMonitor.h.

Referenced by processEvent(), and setup().

double HcalRecHitMonitor::HB_occupancy_[260]
private

Definition at line 90 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::HB_occupancy_thresh_[260]
private

Definition at line 91 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::HBenergyThreshold_
private

Definition at line 55 of file HcalRecHitMonitor.h.

Referenced by HcalRecHitMonitor(), processEvent_rechit(), and setup().

double HcalRecHitMonitor::HBETThreshold_
private

Definition at line 61 of file HcalRecHitMonitor.h.

Referenced by HcalRecHitMonitor(), processEvent_rechit(), and setup().

int HcalRecHitMonitor::HBflagcounter_[32]
private

Definition at line 118 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

edm::InputTag HcalRecHitMonitor::hbheRechitLabel_
private

Definition at line 234 of file HcalRecHitMonitor.h.

Referenced by analyze(), and HcalRecHitMonitor().

bool HcalRecHitMonitor::HBpresent_
private

Definition at line 232 of file HcalRecHitMonitor.h.

double HcalRecHitMonitor::HBtime_[250--250]
private

Definition at line 88 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::HBtime_thresh_[250--250]
private

Definition at line 89 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

std::vector<std::string> HcalRecHitMonitor::HcalHLTBits_
private

Definition at line 237 of file HcalRecHitMonitor.h.

Referenced by beginRun(), HcalRecHitMonitor(), and processEvent().

double HcalRecHitMonitor::HE_occupancy_[260]
private

Definition at line 94 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::HE_occupancy_thresh_[260]
private

Definition at line 95 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::HEenergyThreshold_
private

Definition at line 56 of file HcalRecHitMonitor.h.

Referenced by HcalRecHitMonitor(), processEvent_rechit(), and setup().

double HcalRecHitMonitor::HEETThreshold_
private

Definition at line 62 of file HcalRecHitMonitor.h.

Referenced by HcalRecHitMonitor(), processEvent_rechit(), and setup().

int HcalRecHitMonitor::HEflagcounter_[32]
private

Definition at line 117 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

bool HcalRecHitMonitor::HEpresent_
private

Definition at line 232 of file HcalRecHitMonitor.h.

double HcalRecHitMonitor::HEtime_[250--250]
private

Definition at line 92 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::HEtime_thresh_[250--250]
private

Definition at line 93 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::HF_occupancy_[174]
private

Definition at line 110 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::HF_occupancy_thresh_[174]
private

Definition at line 111 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::HFenergyLong_[200]
private

Definition at line 102 of file HcalRecHitMonitor.h.

Referenced by zeroCounters().

double HcalRecHitMonitor::HFenergyLong_thresh_[200]
private

Definition at line 103 of file HcalRecHitMonitor.h.

Referenced by zeroCounters().

double HcalRecHitMonitor::HFenergyShort_[200]
private

Definition at line 106 of file HcalRecHitMonitor.h.

Referenced by zeroCounters().

double HcalRecHitMonitor::HFenergyShort_thresh_[200]
private

Definition at line 107 of file HcalRecHitMonitor.h.

Referenced by zeroCounters().

double HcalRecHitMonitor::HFenergyThreshold_
private

Definition at line 58 of file HcalRecHitMonitor.h.

Referenced by HcalRecHitMonitor(), processEvent_rechit(), and setup().

double HcalRecHitMonitor::HFETThreshold_
private

Definition at line 64 of file HcalRecHitMonitor.h.

Referenced by HcalRecHitMonitor(), processEvent_rechit(), and setup().

int HcalRecHitMonitor::HFflagcounter_[32]
private

Definition at line 120 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::HFlong_occupancy_[865]
private

Definition at line 112 of file HcalRecHitMonitor.h.

Referenced by zeroCounters().

double HcalRecHitMonitor::HFlong_occupancy_thresh_[865]
private

Definition at line 113 of file HcalRecHitMonitor.h.

Referenced by zeroCounters().

MonitorElement* HcalRecHitMonitor::HFP_HFM_Energy
private

Definition at line 230 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

bool HcalRecHitMonitor::HFpresent_
private

Definition at line 232 of file HcalRecHitMonitor.h.

edm::InputTag HcalRecHitMonitor::hfRechitLabel_
private

Definition at line 234 of file HcalRecHitMonitor.h.

Referenced by analyze(), and HcalRecHitMonitor().

double HcalRecHitMonitor::HFshort_occupancy_[865]
private

Definition at line 114 of file HcalRecHitMonitor.h.

Referenced by zeroCounters().

double HcalRecHitMonitor::HFshort_occupancy_thresh_[865]
private

Definition at line 115 of file HcalRecHitMonitor.h.

Referenced by zeroCounters().

double HcalRecHitMonitor::HFtime_[250--250]
private

Definition at line 100 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::HFtime_thresh_[250--250]
private

Definition at line 101 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::HFtimeLong_[250--250]
private

Definition at line 104 of file HcalRecHitMonitor.h.

Referenced by zeroCounters().

double HcalRecHitMonitor::HFtimeLong_thresh_[250--250]
private

Definition at line 105 of file HcalRecHitMonitor.h.

Referenced by zeroCounters().

double HcalRecHitMonitor::HFtimeShort_[250--250]
private

Definition at line 108 of file HcalRecHitMonitor.h.

Referenced by zeroCounters().

double HcalRecHitMonitor::HFtimeShort_thresh_[250--250]
private

Definition at line 109 of file HcalRecHitMonitor.h.

Referenced by zeroCounters().

edm::InputTag HcalRecHitMonitor::hltresultsLabel_
private

Definition at line 236 of file HcalRecHitMonitor.h.

Referenced by HcalRecHitMonitor(), and processEvent().

double HcalRecHitMonitor::HO_occupancy_[218]
private

Definition at line 98 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::HO_occupancy_thresh_[218]
private

Definition at line 99 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::HOenergyThreshold_
private

Definition at line 57 of file HcalRecHitMonitor.h.

Referenced by HcalRecHitMonitor(), processEvent_rechit(), and setup().

double HcalRecHitMonitor::HOETThreshold_
private

Definition at line 63 of file HcalRecHitMonitor.h.

Referenced by HcalRecHitMonitor(), processEvent_rechit(), and setup().

int HcalRecHitMonitor::HOflagcounter_[32]
private

Definition at line 119 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

bool HcalRecHitMonitor::HOpresent_
private

Definition at line 232 of file HcalRecHitMonitor.h.

edm::InputTag HcalRecHitMonitor::hoRechitLabel_
private

Definition at line 234 of file HcalRecHitMonitor.h.

Referenced by analyze(), and HcalRecHitMonitor().

double HcalRecHitMonitor::HOtime_[250--250]
private

Definition at line 96 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::HOtime_thresh_[250--250]
private

Definition at line 97 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

edm::InputTag HcalRecHitMonitor::l1gtLabel_
private

Definition at line 235 of file HcalRecHitMonitor.h.

Referenced by HcalRecHitMonitor().

HcalLogicalMap* HcalRecHitMonitor::logicalMap
private

Definition at line 66 of file HcalRecHitMonitor.h.

Referenced by processEvent_rechit(), and setup().

std::vector<std::string> HcalRecHitMonitor::MinBiasHLTBits_
private

Definition at line 238 of file HcalRecHitMonitor.h.

Referenced by beginRun(), HcalRecHitMonitor(), and processEvent().

unsigned int HcalRecHitMonitor::occupancy_[85][72][4]
private

Definition at line 79 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

unsigned int HcalRecHitMonitor::occupancy_thresh_[85][72][4]
private

Definition at line 80 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

EtaPhiHists HcalRecHitMonitor::OccupancyByDepth
private

Definition at line 69 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

EtaPhiHists HcalRecHitMonitor::OccupancyThreshByDepth
private

Definition at line 70 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

EtaPhiHists HcalRecHitMonitor::SqrtSumEnergy2ByDepth
private

Definition at line 73 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

EtaPhiHists HcalRecHitMonitor::SqrtSumEnergy2ThreshByDepth
private

Definition at line 75 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), and setup().

EtaPhiHists HcalRecHitMonitor::SumEnergyByDepth
private

Definition at line 72 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

EtaPhiHists HcalRecHitMonitor::SumEnergyThreshByDepth
private

Definition at line 74 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), and setup().

EtaPhiHists HcalRecHitMonitor::SumTimeByDepth
private

Definition at line 76 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and setup().

EtaPhiHists HcalRecHitMonitor::SumTimeThreshByDepth
private

Definition at line 77 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), and setup().

double HcalRecHitMonitor::time_[85][72][4]
private

Definition at line 85 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::time_thresh_[85][72][4]
private

Definition at line 86 of file HcalRecHitMonitor.h.

Referenced by fill_Nevents(), processEvent_rechit(), and zeroCounters().

double HcalRecHitMonitor::timediffThresh_
private

Definition at line 185 of file HcalRecHitMonitor.h.

Referenced by HcalRecHitMonitor(), processEvent_rechit(), and setup().