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
HcalZDCMonitor Class Reference

#include <HcalZDCMonitor.h>

Inheritance diagram for HcalZDCMonitor:
HcalBaseDQMonitor edm::EDAnalyzer

Public Member Functions

void analyze (const edm::Event &e, const edm::EventSetup &c)
 
void beginLuminosityBlock (const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c)
 
void beginRun (const edm::Run &run, const edm::EventSetup &c)
 
void endLuminosityBlock (const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c)
 
void endRun (const edm::Run &run, const edm::EventSetup &c)
 
 HcalZDCMonitor (const edm::ParameterSet &ps)
 
void processEvent (const ZDCDigiCollection &digi, const ZDCRecHitCollection &rechit, const HcalUnpackerReport &report)
 
void reset ()
 
void setup ()
 
 ~HcalZDCMonitor ()
 
- 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

double getTime (std::vector< double > fData, unsigned int ts_min, unsigned int ts_max, double &fSum)
 

Private Attributes

HcalCalibrations calibs_
 
const HcalQIECoderchannelCoder_
 
bool ChannelHasDigiError [18]
 
float ChannelRatio [18]
 
std::vector< double > ChannelWeighting_
 
bool checkZDC_
 
int ColdADCThreshold_
 
int ColdChannelCounter [18]
 
int DeadChannelCounter [18]
 
bool DeadChannelError [18]
 
bool DigiErrorCAPID [18]
 
bool DigiErrorDVER [18]
 
edm::InputTag digiLabel_
 
int EventCounter
 
MonitorElementEventsVsLS
 
MonitorElementh_2D_charge
 
MonitorElementh_2D_RecHitEnergy
 
MonitorElementh_2D_RecHitTime
 
MonitorElementh_2D_saturation
 
MonitorElementh_2D_TSMean
 
MonitorElementh_ZDCM_EM_Charge [5]
 
MonitorElementh_ZDCM_EM_Pulse [5]
 
MonitorElementh_ZDCM_EM_RecHitEnergy [5]
 
MonitorElementh_ZDCM_EM_RecHitTiming [5]
 
MonitorElementh_ZDCM_EM_TSMean [5]
 
MonitorElementh_ZDCM_HAD_Charge [4]
 
MonitorElementh_ZDCM_HAD_Pulse [4]
 
MonitorElementh_ZDCM_HAD_RecHitEnergy [4]
 
MonitorElementh_ZDCM_HAD_RecHitTiming [4]
 
MonitorElementh_ZDCM_HAD_TSMean [4]
 
MonitorElementh_ZDCP_EM_Charge [5]
 
MonitorElementh_ZDCP_EM_Pulse [5]
 
MonitorElementh_ZDCP_EM_RecHitEnergy [5]
 
MonitorElementh_ZDCP_EM_RecHitTiming [5]
 
MonitorElementh_ZDCP_EM_TSMean [5]
 
MonitorElementh_ZDCP_HAD_Charge [4]
 
MonitorElementh_ZDCP_HAD_Pulse [4]
 
MonitorElementh_ZDCP_HAD_RecHitEnergy [4]
 
MonitorElementh_ZDCP_HAD_RecHitTiming [4]
 
MonitorElementh_ZDCP_HAD_TSMean [4]
 
bool HotChannelError [18]
 
int ievt_
 
std::vector< double > MaxErrorRates_
 
MonitorElementmeEVT_
 
int NumBadZDC
 
MonitorElementNZDC_QualityIndexVsLB_
 
int OfflineColdThreshold_
 
int OfflineDeadThreshold_
 
int OnlineColdThreshold_
 
int OnlineDeadThreshold_
 
MonitorElementProblemsVsLB_ZDC
 
MonitorElementPZDC_QualityIndexVsLB_
 
edm::InputTag rechitLabel_
 
const HcalQIEShapeshape_
 
int TotalChannelErrors [18]
 
MonitorElementZDC_Cold_Channel_Errors
 
MonitorElementZDC_ColdChannelErrorsVsLS
 
MonitorElementZDC_Dead_Channel_Errors
 
MonitorElementZDC_DeadChannelErrorsVsLS
 
MonitorElementZDC_Digi_Errors
 
MonitorElementZDC_DigiErrors_CAPID
 
MonitorElementZDC_DigiErrors_DVER
 
MonitorElementZDC_DigiErrorsVsLS
 
MonitorElementZDC_Hot_Channel_Errors
 
MonitorElementZDC_HotChannelErrorsVsLS
 
MonitorElementZDC_TotalChannelErrors
 

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 cleanup (void)
 
virtual void endJob (void)
 
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: 2010/02/04 $Revision: 1.1

Author
S.Sen

Definition at line 43 of file HcalZDCMonitor.h.

Constructor & Destructor Documentation

HcalZDCMonitor::HcalZDCMonitor ( const edm::ParameterSet ps)

Definition at line 4 of file HcalZDCMonitor.cc.

References HcalBaseDQMonitor::AllowedCalibTypes_, ChannelWeighting_, ColdADCThreshold_, HcalBaseDQMonitor::debug_, digiLabel_, HcalBaseDQMonitor::enableCleanup_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), HcalBaseDQMonitor::makeDiagnostics_, MaxErrorRates_, HcalBaseDQMonitor::mergeRuns_, HcalBaseDQMonitor::NLumiBlocks_, OfflineColdThreshold_, OfflineDeadThreshold_, HcalBaseDQMonitor::Online_, OnlineColdThreshold_, OnlineDeadThreshold_, HcalBaseDQMonitor::prefixME_, rechitLabel_, HcalBaseDQMonitor::skipOutOfOrderLS_, and HcalBaseDQMonitor::subdir_.

4  {
5  Online_ = ps.getUntrackedParameter<bool>("online",false);
6  mergeRuns_ = ps.getUntrackedParameter<bool>("mergeRuns",false);
7  enableCleanup_ = ps.getUntrackedParameter<bool>("enableCleanup",false);
8  debug_ = ps.getUntrackedParameter<int>("debug",0);
9  prefixME_=ps.getUntrackedParameter<std::string>("subSystemFolder","Hcal/");
10  if (prefixME_.substr(prefixME_.size()-1, prefixME_.size())!="/")
11  prefixME_.append("/");
12  subdir_=ps.getUntrackedParameter<std::string>("TaskFolder","ZDCMonitor_Hcal/");
13  if (subdir_.size()>0 && subdir_.substr(subdir_.size()-1,subdir_.size())!="/")
14  subdir_.append("/");
15  subdir_=prefixME_+subdir_;
16 
17  rechitLabel_=ps.getParameter<edm::InputTag>("rechitLabel");
18  digiLabel_=ps.getParameter<edm::InputTag>("digiLabel");
19  AllowedCalibTypes_ = ps.getUntrackedParameter<std::vector<int> > ("AllowedCalibTypes");
20  skipOutOfOrderLS_ = ps.getUntrackedParameter<bool>("skipOutOfOrderLS",true);
21  NLumiBlocks_ = ps.getUntrackedParameter<int>("NLumiBlocks",4000);
22  makeDiagnostics_ = ps.getUntrackedParameter<bool>("makeDiagnostics",false);
23  OnlineColdThreshold_ = ps.getUntrackedParameter<int>("ZDC_OnlineColdThreshold");
24  OnlineDeadThreshold_ = ps.getUntrackedParameter<int>("ZDC_OnlineDeadThreshold");
25  OfflineColdThreshold_ = ps.getUntrackedParameter<int>("ZDC_OfflineColdThreshold");
26  OfflineDeadThreshold_ = ps.getUntrackedParameter<int>("ZDC_OfflineDeadThreshold");
27  ColdADCThreshold_ = ps.getUntrackedParameter<int>("ZDC_ColdADCThreshold");
28  ChannelWeighting_ = ps.getUntrackedParameter<std::vector<double>> ("ZDC_ChannelWeighting");
29  MaxErrorRates_ = ps.getUntrackedParameter<std::vector<double>> ("ZDC_AcceptableChannelErrorRates");
30 }
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
edm::InputTag digiLabel_
std::vector< int > AllowedCalibTypes_
edm::InputTag rechitLabel_
std::vector< double > ChannelWeighting_
std::vector< double > MaxErrorRates_
HcalZDCMonitor::~HcalZDCMonitor ( )

Definition at line 33 of file HcalZDCMonitor.cc.

33  {
34 }

Member Function Documentation

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

Reimplemented from HcalBaseDQMonitor.

Definition at line 464 of file HcalZDCMonitor.cc.

References HcalBaseDQMonitor::analyze(), digiLabel_, edm::Event::getByLabel(), HcalBaseDQMonitor::IsAllowedCalibType(), HcalBaseDQMonitor::LumiInOrder(), edm::EventBase::luminosityBlock(), processEvent(), rechitLabel_, and zeeHLT_cff::report.

465 {
466  if (!IsAllowedCalibType()) return;
467  if (LumiInOrder(e.luminosityBlock())==false) return;
469 
471  e.getByLabel(digiLabel_,zdcdigis);
473  e.getByLabel(rechitLabel_,zdcrechits);
475  e.getByLabel(digiLabel_,report);
476  processEvent(*zdcdigis, *zdcrechits, *report); // run the histogramming/analysis specific to this code
477 }
bool LumiInOrder(int lumisec)
edm::InputTag digiLabel_
virtual void analyze(const edm::Event &e, const edm::EventSetup &c)
edm::InputTag rechitLabel_
edm::LuminosityBlockNumber_t luminosityBlock() const
Definition: EventBase.h:59
tuple report
Definition: zeeHLT_cff.py:9
void processEvent(const ZDCDigiCollection &digi, const ZDCRecHitCollection &rechit, const HcalUnpackerReport &report)
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition: Event.h:356
void HcalZDCMonitor::beginLuminosityBlock ( const edm::LuminosityBlock lumiSeg,
const edm::EventSetup c 
)
virtual

Reimplemented from HcalBaseDQMonitor.

Definition at line 479 of file HcalZDCMonitor.cc.

References HcalBaseDQMonitor::beginLuminosityBlock(), ChannelRatio, EventCounter, i, and TotalChannelErrors.

480 {
482  // ZDC_Dead_Channel_Errors->Fill(-1,-1,1);
483  // ZDC_Cold_Channel_Errors->Fill(-1,-1,1); READ COMMENT!!!!
484  // The above line should be uncommented IF, in the fill (down in endlumiblock) we used a value of 1 to say that a specific ZDC channel had 1 Cold Error after >50 times that the cold error occured. Currently, I have it set so that if a ZDC channel goes over the threshold, the RAW number of times that the channel appeared cold shows up. For example: the cold threshold is at 50, EM 1 has a cold Error 51 times...currently, the number 51 will show up in the ZDC_Cold_Channel_Errors plot...however the other way....it would say 1.
485  //This is only a problem when you get to the client level since this line fills the underflow bin. The underflow bin is read in by the client as the divisor. If you try to divide a number of ColdEvents by a number of Lumis...most likely your rate will be greater than one. For now I am moving this line back to processEvent.
486  EventCounter=0;
487  for (int i=0;i<18;++i)
488  {
489  ChannelRatio[i]=0.;
491  }
492 
493 }
int i
Definition: DBlmapReader.cc:9
virtual void beginLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c)
int TotalChannelErrors[18]
float ChannelRatio[18]
void HcalZDCMonitor::beginRun ( const edm::Run run,
const edm::EventSetup c 
)
virtual

Reimplemented from HcalBaseDQMonitor.

Definition at line 437 of file HcalZDCMonitor.cc.

References HcalBaseDQMonitor::beginRun(), ColdChannelCounter, DeadChannelCounter, EventCounter, i, setup(), and HcalBaseDQMonitor::tevt_.

438 {
440  if (tevt_==0) this->setup(); // call basic setup of histograms
441 
442  for (int i=0;i<18;++i)
443  {
446  }
447 
448  EventCounter=0;
449 
450 }
int i
Definition: DBlmapReader.cc:9
int ColdChannelCounter[18]
virtual void beginRun(const edm::Run &run, const edm::EventSetup &c)
int DeadChannelCounter[18]
void HcalZDCMonitor::endLuminosityBlock ( const edm::LuminosityBlock lumiSeg,
const edm::EventSetup c 
)
virtual

Reimplemented from HcalBaseDQMonitor.

Definition at line 854 of file HcalZDCMonitor.cc.

References ChannelRatio, ChannelWeighting_, ColdChannelCounter, HcalBaseDQMonitor::currentLS, HcalBaseDQMonitor::dbe_, DeadChannelCounter, HcalBaseDQMonitor::endLuminosityBlock(), EventCounter, EventsVsLS, MonitorElement::Fill(), h_2D_charge, h_2D_RecHitEnergy, h_2D_RecHitTime, h_2D_TSMean, h_ZDCM_EM_Charge, h_ZDCM_EM_RecHitEnergy, h_ZDCM_EM_RecHitTiming, h_ZDCM_EM_TSMean, h_ZDCM_HAD_Charge, h_ZDCM_HAD_RecHitEnergy, h_ZDCM_HAD_RecHitTiming, h_ZDCM_HAD_TSMean, h_ZDCP_EM_Charge, h_ZDCP_EM_RecHitEnergy, h_ZDCP_EM_RecHitTiming, h_ZDCP_EM_TSMean, h_ZDCP_HAD_Charge, h_ZDCP_HAD_RecHitEnergy, h_ZDCP_HAD_RecHitTiming, h_ZDCP_HAD_TSMean, i, MaxErrorRates_, NZDC_QualityIndexVsLB_, OfflineColdThreshold_, OfflineDeadThreshold_, HcalBaseDQMonitor::Online_, OnlineColdThreshold_, OnlineDeadThreshold_, PZDC_QualityIndexVsLB_, MonitorElement::setBinContent(), TotalChannelErrors, ZDC_Cold_Channel_Errors, ZDC_ColdChannelErrorsVsLS, ZDC_Dead_Channel_Errors, ZDC_DeadChannelErrorsVsLS, and ZDC_TotalChannelErrors.

855 {
856 
857  bool HadLumiError[18]={false};
858 
860 
861  if(Online_ == false)
862  {//checks if DQM is in OFFLINE MODE
863  for (int i=0;i<18;++i)
864  {
866  if (ChannelRatio[i] <= MaxErrorRates_[i])
867  {
868  if (i<9)
869  {
871  }
872  else
873  {
875  }
876  if (ColdChannelCounter[i] >= OfflineColdThreshold_)//Begin Cold Error Plots
877  {
880  ZDC_TotalChannelErrors->Fill(i/9,i%9,ColdChannelCounter[i]);//Can change this between 1, or the amount of errors (Currently the latter)
882  HadLumiError[i]=true;
883  }//END OF Cold Error Plot
885  {//Begin Dead Error Plots
888  ZDC_TotalChannelErrors->Fill(i/9,i%9,DeadChannelCounter[i]); //Could fill this with 1 or total dead errors (which is currently done)
890  HadLumiError[i]=true;
891  }//END OF Dead Channel Plots
892  if (HadLumiError[i]==true)
893  {//Removing the QI for Dead of Cold Channels
894  if (i<9)
895  {
897  }
898  else
899  {
901  }
902  }//END OF QI Removal
903  }//END OF ChannelRatio[i]<=MaxErrorRates_[i]
904  else
905  {//This part only happens if ChannelRatio[i] > MaxErrorRates_[i]...Above you notice the QI plots become 'un-filled'. If the plot was never filled to begin with, then we do not want to remove from the plot causing there to be a negative QI
907  {//Begin Cold Error Plots
912  }//END OF Cold Error Plot
914  {//Begin Dead Error plots
919  }//END OF Dead Error Plots
920  }
921  }//END OF FOR LOOP
922  }//END OF DQM OFFLINE PART
923 
924  if(Online_ == true)
925  {//checks if DQM is in ONLINE MODE
926  for (int i=0;i<18;++i)
927  {
929  if (ChannelRatio[i] <= MaxErrorRates_[i])
930  {
931  if (i<9)
932  {
934  }
935  else
936  {
938  }
939  if (ColdChannelCounter[i] >= OnlineColdThreshold_)//Begin Cold Error Plots
940  {
943  ZDC_TotalChannelErrors->Fill(i/9,i%9,ColdChannelCounter[i]);//Can change this between 1, or the amount of errors (Currently the latter)
945  HadLumiError[i]=true;
946  }//END OF Cold Error Plot
948  {//Begin Dead Error Plots
951  ZDC_TotalChannelErrors->Fill(i/9,i%9,DeadChannelCounter[i]); //Could fill this with 1 or total dead errors (which is currently done)
953  HadLumiError[i]=true;
954  }//END OF Dead Channel Plots
955  if (HadLumiError[i]==true)
956  {//Removing the QI for Dead of Cold Channels
957  if (i<9)
958  {
960  }
961  else
962  {
964  }
965  }//END OF QI Removal
966  }//END OF ChannelRatio[i]<=MaxErrorRates_[i]
967  else
968  {//This part only happens if ChannelRatio[i] > MaxErrorRates_[i]...Above you notice the QI plots become 'un-filled'. If the plot was never filled to begin with, then we do not want to remove from the plot causing there to be a negative QI
970  {//Begin Cold Error Plots
975  }//END OF Cold Error Plot
977  {//Begin Dead Error plots
982  }//END OF Dead Error Plots
983  }//end of ChannelRatio[i] > MaxErrorRates_[i] part
984  }//END OF FOR LOOP
985  }//END OF DQM ONLINE PART
986 
987 
988 
989  //if (LumiInOrder(lumiSeg.luminosityBlock())==false) return; // WHY DOESN'T THIS WORK?
990  if (dbe_==0)
991  {
992  return;
993  }
995 
996  for (int i = 0; i < 5; ++i) { // EM Channels
997  // ZDC Plus
998  h_2D_charge->setBinContent(1, i + 1, h_ZDCP_EM_Charge[i]->getMean());
999  h_2D_TSMean->setBinContent(1, i + 1, h_ZDCP_EM_TSMean[i]->getMean());
1000  h_2D_RecHitEnergy->setBinContent(1, i + 1, h_ZDCP_EM_RecHitEnergy[i]->getMean());
1001  h_2D_RecHitTime->setBinContent(1, i + 1, h_ZDCP_EM_RecHitTiming[i]->getMean());
1002  // ZDC Minus
1003  h_2D_charge->setBinContent(2, i + 1, h_ZDCM_EM_Charge[i]->getMean());
1004  h_2D_TSMean->setBinContent(2, i + 1, h_ZDCM_EM_TSMean[i]->getMean());
1005  h_2D_RecHitEnergy->setBinContent(2, i + 1, h_ZDCM_EM_RecHitEnergy[i]->getMean());
1006  h_2D_RecHitTime->setBinContent(2, i + 1, h_ZDCM_EM_RecHitTiming[i]->getMean());
1007  }
1008  for (int i = 0; i < 4; ++i) { // HAD channels
1009  // ZDC Plus
1010  h_2D_charge->setBinContent(1, i + 6, h_ZDCP_HAD_Charge[i]->getMean());
1011  h_2D_TSMean->setBinContent(1, i + 6, h_ZDCP_HAD_TSMean[i]->getMean());
1012  h_2D_RecHitEnergy->setBinContent(1, i + 6, h_ZDCP_HAD_RecHitEnergy[i]->getMean());
1013  h_2D_RecHitTime->setBinContent(1, i + 6, h_ZDCP_HAD_RecHitTiming[i]->getMean());
1014  // ZDC Minus
1015  //h_ZDCM_HAD_Pulse[i]->Scale(10. / h_ZDCM_HAD_Pulse[i]->getEntries());
1016  h_2D_charge->setBinContent(2, i + 6, h_ZDCM_HAD_Charge[i]->getMean());
1017  h_2D_TSMean->setBinContent(2, i + 6, h_ZDCM_HAD_TSMean[i]->getMean());
1018  h_2D_RecHitEnergy->setBinContent(2, i + 6, h_ZDCM_HAD_RecHitEnergy[i]->getMean());
1019  h_2D_RecHitTime->setBinContent(2, i + 6, h_ZDCM_HAD_RecHitTiming[i]->getMean());
1020 
1021  // use ZDCProblemsCurrentLB_ for stuff
1022  }
1023 }// void HcalZDCMonitor::endLuminosityBlock()
virtual void endLuminosityBlock(const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c)
MonitorElement * h_ZDCP_HAD_TSMean[4]
int i
Definition: DBlmapReader.cc:9
void setBinContent(int binx, double content)
set content of bin (1-D)
MonitorElement * h_ZDCP_HAD_RecHitTiming[4]
MonitorElement * h_ZDCM_HAD_TSMean[4]
int ColdChannelCounter[18]
MonitorElement * h_ZDCM_EM_TSMean[5]
MonitorElement * h_ZDCM_EM_RecHitTiming[5]
MonitorElement * NZDC_QualityIndexVsLB_
MonitorElement * ZDC_Dead_Channel_Errors
MonitorElement * h_2D_TSMean
MonitorElement * h_ZDCM_HAD_RecHitTiming[4]
MonitorElement * h_ZDCP_EM_RecHitEnergy[5]
std::vector< double > ChannelWeighting_
MonitorElement * h_ZDCP_EM_TSMean[5]
MonitorElement * h_ZDCM_EM_Charge[5]
std::vector< double > MaxErrorRates_
MonitorElement * ZDC_DeadChannelErrorsVsLS
void Fill(long long x)
MonitorElement * h_ZDCP_HAD_Charge[4]
MonitorElement * ZDC_ColdChannelErrorsVsLS
MonitorElement * h_2D_charge
MonitorElement * h_2D_RecHitTime
MonitorElement * h_ZDCM_HAD_Charge[4]
MonitorElement * h_ZDCM_HAD_RecHitEnergy[4]
MonitorElement * ZDC_Cold_Channel_Errors
MonitorElement * PZDC_QualityIndexVsLB_
MonitorElement * h_2D_RecHitEnergy
MonitorElement * EventsVsLS
MonitorElement * h_ZDCM_EM_RecHitEnergy[5]
MonitorElement * ZDC_TotalChannelErrors
MonitorElement * h_ZDCP_HAD_RecHitEnergy[4]
int TotalChannelErrors[18]
float ChannelRatio[18]
int DeadChannelCounter[18]
MonitorElement * h_ZDCP_EM_Charge[5]
MonitorElement * h_ZDCP_EM_RecHitTiming[5]
void HcalZDCMonitor::endRun ( const edm::Run run,
const edm::EventSetup c 
)
virtual

Reimplemented from HcalBaseDQMonitor.

Definition at line 452 of file HcalZDCMonitor.cc.

References ColdChannelCounter, DeadChannelCounter, HcalBaseDQMonitor::endRun(), MonitorElement::Fill(), i, ZDC_Cold_Channel_Errors, ZDC_Dead_Channel_Errors, and ZDC_TotalChannelErrors.

453 {
454  for(int i=0;i<18;++i)
455  {
460  }
462 }
int i
Definition: DBlmapReader.cc:9
int ColdChannelCounter[18]
MonitorElement * ZDC_Dead_Channel_Errors
void Fill(long long x)
MonitorElement * ZDC_Cold_Channel_Errors
virtual void endRun(const edm::Run &run, const edm::EventSetup &c)
MonitorElement * ZDC_TotalChannelErrors
int DeadChannelCounter[18]
double HcalZDCMonitor::getTime ( std::vector< double >  fData,
unsigned int  ts_min,
unsigned int  ts_max,
double &  fSum 
)
private

Definition at line 830 of file HcalZDCMonitor.cc.

Referenced by processEvent().

830  {
831  double weightedTime = 0.;
832  double SumT = 0.;
833  double Time = -999.;
834  double digiThreshf = 99.5;
835 
836  for (unsigned int ts=ts_min; ts<=ts_max; ++ts) {
837  if (fData[ts] > digiThreshf){
838  weightedTime += ts * fData[ts];
839  SumT += fData[ts];
840  }
841  }
842 
843  if (SumT > 0.) {
844  Time = weightedTime / SumT;
845  }
846 
847  fSum = SumT;
848 
849  return Time;
850 
851 } //double HcalZDCMonitor::getTime()
void HcalZDCMonitor::processEvent ( const ZDCDigiCollection digi,
const ZDCRecHitCollection rechit,
const HcalUnpackerReport report 
)

DEAD CELL ERROR/////////////////////////// Right now we are simply checking that the digi exists

Definition at line 497 of file HcalZDCMonitor.cc.

References ecalMGPA::adc(), HcalUnpackerReport::bad_quality_begin(), HcalUnpackerReport::bad_quality_end(), edm::SortedCollection< T, SORT >::begin(), DetId::Calo, HcalQIESample::capid(), ChannelHasDigiError, ColdChannelCounter, HcalBaseDQMonitor::currentLS, DeadChannelCounter, DeadChannelError, DigiErrorCAPID, DigiErrorDVER, HcalQIESample::dv(), edm::SortedCollection< T, SORT >::end(), HcalQIESample::er(), EventCounter, MonitorElement::Fill(), getTime(), h_2D_saturation, h_ZDCM_EM_Charge, h_ZDCM_EM_Pulse, h_ZDCM_EM_RecHitEnergy, h_ZDCM_EM_RecHitTiming, h_ZDCM_EM_TSMean, h_ZDCM_HAD_Charge, h_ZDCM_HAD_Pulse, h_ZDCM_HAD_RecHitEnergy, h_ZDCM_HAD_RecHitTiming, h_ZDCM_HAD_TSMean, h_ZDCP_EM_Charge, h_ZDCP_EM_Pulse, h_ZDCP_EM_RecHitEnergy, h_ZDCP_EM_RecHitTiming, h_ZDCP_EM_TSMean, h_ZDCP_HAD_Charge, h_ZDCP_HAD_Pulse, h_ZDCP_HAD_RecHitEnergy, h_ZDCP_HAD_RecHitTiming, h_ZDCP_HAD_TSMean, HotChannelError, i, errorMatrix2Lands_multiChannel::id, ievt_, meEVT_, ZDCDataFrame::sample(), ZDCDataFrame::size(), edm::SortedCollection< T, SORT >::size(), HcalZDCDetId::SubdetectorId, TotalChannelErrors, ZDC_Cold_Channel_Errors, ZDC_Dead_Channel_Errors, ZDC_Digi_Errors, ZDC_DigiErrors_CAPID, ZDC_DigiErrors_DVER, ZDC_DigiErrorsVsLS, ZDC_Hot_Channel_Errors, ZDC_HotChannelErrorsVsLS, and ZDC_TotalChannelErrors.

Referenced by analyze().

497  {
498 
499  meEVT_->Fill(ievt_);
500 
501  //--------------------------------------
502  // ZDC Digi part
503  //--------------------------------------
504  double fSum = 0.;
505  std::vector<double> fData;
506  double digiThresh = 99.5; //corresponds to 40 ADC counts
507  //int digiThreshADC = 40;
508  int digiSaturation = 127;
509  //double ZDCQIEConst = 2.6;
510 
511 
512  if (digi.size()>0)
513  {
514  ZDC_Digi_Errors->Fill(-1,-1,1);
515  ZDC_Hot_Channel_Errors->Fill(-1,-1,1);
516  ZDC_TotalChannelErrors->Fill(-1,-1,1);
517  ZDC_Cold_Channel_Errors->Fill(-1,-1,1);
518  ZDC_Dead_Channel_Errors->Fill(-1,-1,1);
519  EventCounter+=1;
520  }
521  for (int i=0;i<18;++i)
522  {
523  ChannelHasDigiError[i]=false;
524  DigiErrorDVER[i]=false;
525  DigiErrorCAPID[i]=false;
526  HotChannelError[i]=false;
527  DeadChannelError[i]=true;
528  }
529 
530 
531  typedef std::vector<DetId> DetIdVector;
532 
533  for (DetIdVector::const_iterator baddigi_iter=report.bad_quality_begin();
534  baddigi_iter != report.bad_quality_end();
535  ++baddigi_iter)
536  {
537  DetId id(baddigi_iter->rawId());
538  if (id.det()==DetId::Calo && id.subdetId()==HcalZDCDetId::SubdetectorId)
539  //HcalDetId id(baddigi_iter->rawId());
540  //if (id.subdet()==HcalZDCDetId::SubdetectorId)
541  {
542  // const ZDCDataFrame digi = (const ZDCDataFrame) (*baddigi_iter);
543  HcalZDCDetId id(baddigi_iter->rawId());
544  int iSide = id.zside();
545  int iSection = id.section();
546  int iChannel = id.channel();
547  if(iSection==1 || iSection==2){
548  ChannelHasDigiError[(9*((1-iSide)/2))+(iChannel-1)+(5*((iSection-1)%2))]=true;
549  DeadChannelError[(9*((1-iSide)/2))+(iChannel-1)+(5*((iSection-1)%2))]=false;
550  //do stuff
551  }//end of if i(Section==1 || iSection==2)
552  }
553  else continue;
554 
555  }//end unpacker section
556 
557 
558 
559  // ChannelHasError[18]: [0-8] are iSide=1, [9-17] are iSide=2
560  // First 5 bins ([0-4],[9-13]) are EM bins
561  // Last 4 bins are HAD bins
562 
563 
564  for (ZDCDigiCollection::const_iterator digi_iter = digi.begin();
565  digi_iter != digi.end(); ++digi_iter)
566  {
567  const ZDCDataFrame digi = (const ZDCDataFrame) (*digi_iter);
568  //HcalZDCDetId id(digi_iter->id());
569  int iSide = digi_iter->id().zside();
570  int iSection = digi_iter->id().section();
571  int iChannel = digi_iter->id().channel();
572 
573  unsigned int fTS = digi_iter->size();
574  while (fData.size()<fTS)
575  fData.push_back(-999);
576  while (fData.size()>fTS)
577  fData.pop_back(); // delete last elements
578 
579  if (iSection==1 || iSection==2)
580  {
581 
583 
586  DeadChannelError[(9*((1-iSide)/2))+(iChannel-1)+(5*((iSection-1)%2))]=false;
588 
589  int iCapID=27;
590  int iCapIDPrevious=27;
591  int HotCounter=0;
592  int ColdCounter=0;
593 
594  for (int iTS=0; iTS<digi.size(); ++iTS) //looping over all ten timeslices
595  {
597  if (digi[iTS].adc()==127) HotCounter+=1;
598  else HotCounter=0;//require 3 consecutive saturated Time Slices in a single channel in a single event
599  if (HotCounter >= 3) HotChannelError[(9*((1-iSide)/2))+(iChannel-1)+(5*((iSection-1)%2))]=true;
601 
602 
604  if (digi[iTS].adc()<=10) ColdCounter+=1;
605  if (ColdCounter==10)
606  {
607  ColdChannelCounter[(9*((1-iSide)/2))+(iChannel-1)+(5*((iSection-1)%2))]+=1;
608  }
610 
611 
614  if ((ChannelHasDigiError[(9*((1-iSide)/2))+(iChannel-1)+(5*((iSection-1)%2))]=false))
615  {
616  iCapID=digi.sample(iTS).capid();
617  if (iTS>0) iCapIDPrevious=digi.sample(iTS-1).capid();
618 
619  if (digi.sample(iTS).dv()==0 || digi.sample(iTS).er()==1)
620  {
621  ChannelHasDigiError[(9*((1-iSide)/2))+(iChannel-1)+(5*((iSection-1)%2))]=true;
622  DigiErrorDVER[(9*((1-iSide)/2))+(iChannel-1)+(5*((iSection-1)%2))]=true;
623  break;
624  }
625  else
626  {
627  if (iTS==0) continue;
628  else
629  {
630  if ((iCapID-iCapIDPrevious+4)%4!=1)
631  {
632  ChannelHasDigiError[(9*((1-iSide)/2))+(iChannel-1)+(5*((iSection-1)%2))]=true;
633  DigiErrorCAPID[(9*((1-iSide)/2))+(iChannel-1)+(5*((iSection-1)%2))]=true;
634  break;
635  }//end of capid rotation check
636  }//checking if TS!=0
637  } // end of the check for dv/er
638  }//END of unpacker double check
639  } // end of TS loop
640 
642 
643 
644 
645 
646  fSum = 0.;
647  bool saturated = false;
648  for (unsigned int i = 0; i < fTS; ++i)
649  {
650  //fData[i]=digi[i].nominal_fC() * ZDCQIEConst;
651  fData[i]=digi[i].nominal_fC();
652  if (digi[i].adc()==digiSaturation){
653  saturated=true;
654  }
655  }
656 
657  double fTSMean = 0;
658  if (fData.size()>6)
659  fTSMean = getTime(fData, 4, 6, fSum); // tsmin = 4, tsmax = 6.
660  //std::cout << "Side= " << iSide << " Section= " << iSection << " Channel= " << iChannel << "\tCharge\t" << fSum <<std::endl;
661  if (saturated==true){
662  h_2D_saturation->Fill(iSide==1?0:1,iSection==1?iChannel-1:iChannel+4,1);
663  }
664 
665  if (iSection == 1)
666  { // EM
667  if (iSide == 1) { // Plus
668  for (unsigned int i = 0; i < fTS; ++i) {
669  if (fData[i] > digiThresh) h_ZDCP_EM_Pulse[iChannel - 1]->Fill(i, fData[i]);
670  }
671  if (fSum > digiThresh) {
672  h_ZDCP_EM_Charge[iChannel - 1]->Fill(fSum);
673  h_ZDCP_EM_TSMean[iChannel - 1]->Fill(fTSMean);
674  //std::cout<< "fSum " << fSum << " fTSMean " << fTSMean <<std::endl;
675  }
676  } // Plus
677  if (iSide == -1) { // Minus
678  for (unsigned int i = 0; i < fTS; ++i) {
679  if (fData[i] > digiThresh) h_ZDCM_EM_Pulse[iChannel - 1]->Fill(i, fData[i]);
680  }
681  if (fSum > digiThresh) {
682  h_ZDCM_EM_Charge[iChannel - 1]->Fill(fSum);
683  h_ZDCM_EM_TSMean[iChannel - 1]->Fill(fTSMean);
684  }
685  } // Minus
686  }// EM
687 
688  else if (iSection == 2)
689  { // HAD
690  if (iSide == 1) { // Plus
691  for (unsigned int i = 0; i < fTS; ++i) {
692  if (fData[i] > digiThresh) h_ZDCP_HAD_Pulse[iChannel - 1]->Fill(i, fData[i]);
693  }
694  if (fSum > digiThresh) {
695  h_ZDCP_HAD_Charge[iChannel - 1]->Fill(fSum);
696  h_ZDCP_HAD_TSMean[iChannel - 1]->Fill(fTSMean);
697  }
698  } // Plus
699  if (iSide == -1) { // Minus
700  for (unsigned int i = 0; i < fTS; ++i) {
701  if (fData[i] > digiThresh) h_ZDCM_HAD_Pulse[iChannel - 1]->Fill(i, fData[i]);
702  }
703  if (fSum > digiThresh) {
704  h_ZDCM_HAD_Charge[iChannel - 1]->Fill(fSum);
705  h_ZDCM_HAD_TSMean[iChannel - 1]->Fill(fTSMean);
706  }
707  }// Minus
708  } // HAD
709  }//end of if (iSection==1 || iSection==2)
710  } // loop on zdc digi collection
711 
712 
713 
715  // Fill Fall 2012 histograms
717  int numdigierrors=0;
718  int numhoterrors=0;
719 
720  for (int i = 0; i<18; i++){
721  if (ChannelHasDigiError[i]==true)
722  {
723  ++numdigierrors;
724  ZDC_Digi_Errors->Fill(i/9,i%9,1);
725  }
726  if (DigiErrorDVER[i]==true)
727  {
728  ZDC_DigiErrors_DVER->Fill(i/9,i%9,1);
729  }
730  if (DigiErrorCAPID[i]==true)
731  {
732  ZDC_DigiErrors_CAPID->Fill(i/9,i%9,1);
733  }
734  if(HotChannelError[i]==true)
735  {
736  ++numhoterrors;
737  ZDC_Hot_Channel_Errors->Fill(i/9,(i%9),1);
738  }
739  if(DeadChannelError[i]==true)
740  {
741  DeadChannelCounter[i]+=1;
742  }
743  // If any of the above is true, fill the total channel errors
745  {
746  ZDC_TotalChannelErrors->Fill(i/9,i%9,1);
747  TotalChannelErrors[i]+=1;
748  }
749  }//end the for i<18 loop
750 
751 
752  if (numdigierrors>0)
753  ZDC_DigiErrorsVsLS->Fill(currentLS,numdigierrors); //could make this ->Fill(currentLS,1) if I want to count each event as only having one error even if multiple channels are in error
754  if (numhoterrors>0)
755  ZDC_HotChannelErrorsVsLS->Fill(currentLS,numhoterrors);
757  //End of filling Fall 2012 histograms
759 
760  //--------------------------------------
761  // ZDC RecHit part
762  //--------------------------------------
763  for (ZDCRecHitCollection::const_iterator rechit_iter = rechit.begin();
764  rechit_iter != rechit.end(); ++rechit_iter)
765  {
766  HcalZDCDetId id(rechit_iter->id());
767  int Side = (rechit_iter->id()).zside();
768  int Section = (rechit_iter->id()).section();
769  int Channel = (rechit_iter->id()).channel();
770  //std::cout << "RecHitEnergy " << zhit->energy() << " RecHitTime " << zhit->time() << std::endl;
771 
772  if(Section==1)
773  { //EM
774  if (Side ==1 ){ // Plus
775  h_ZDCP_EM_RecHitEnergy[Channel-1]->Fill(rechit_iter->energy());
776  h_ZDCP_EM_RecHitTiming[Channel-1]->Fill(rechit_iter->time());
777  }
778  if (Side == -1 ){ //Minus
779  h_ZDCM_EM_RecHitEnergy[Channel-1]->Fill(rechit_iter->energy());
780  h_ZDCM_EM_RecHitTiming[Channel-1]->Fill(rechit_iter->time());
781  }
782  } //EM
783  else if(Section==2)
784  { //HAD
785  if (Side ==1 ){ //Plus
786  h_ZDCP_HAD_RecHitEnergy[Channel-1]->Fill(rechit_iter->energy());
787  h_ZDCP_HAD_RecHitTiming[Channel-1]->Fill(rechit_iter->time());
788  }
789  if (Side == -1 ){ //Minus
790  h_ZDCM_HAD_RecHitEnergy[Channel-1]->Fill(rechit_iter->energy());
791  h_ZDCM_HAD_RecHitTiming[Channel-1]->Fill(rechit_iter->time());
792  }
793  } // HAD
794  } // loop on rechits
795 
796 } // end of event processing
int adc(sample_type sample)
get the ADC sample (12 bits)
MonitorElement * h_ZDCP_HAD_TSMean[4]
bool ChannelHasDigiError[18]
int i
Definition: DBlmapReader.cc:9
MonitorElement * ZDC_DigiErrorsVsLS
MonitorElement * h_ZDCP_HAD_RecHitTiming[4]
MonitorElement * h_ZDCM_EM_Pulse[5]
MonitorElement * h_ZDCM_HAD_TSMean[4]
int ColdChannelCounter[18]
MonitorElement * ZDC_Hot_Channel_Errors
MonitorElement * h_ZDCM_EM_TSMean[5]
bool HotChannelError[18]
MonitorElement * h_ZDCM_EM_RecHitTiming[5]
MonitorElement * ZDC_Dead_Channel_Errors
double getTime(std::vector< double > fData, unsigned int ts_min, unsigned int ts_max, double &fSum)
MonitorElement * h_ZDCM_HAD_RecHitTiming[4]
MonitorElement * h_ZDCP_EM_RecHitEnergy[5]
std::vector< T >::const_iterator const_iterator
MonitorElement * h_ZDCP_EM_Pulse[5]
bool dv() const
is the Data Valid bit set?
Definition: HcalQIESample.h:30
MonitorElement * h_ZDCP_EM_TSMean[5]
MonitorElement * h_ZDCM_EM_Charge[5]
void Fill(long long x)
MonitorElement * ZDC_HotChannelErrorsVsLS
MonitorElement * h_ZDCP_HAD_Charge[4]
const HcalQIESample & sample(int i) const
access a sample
Definition: ZDCDataFrame.h:39
MonitorElement * ZDC_DigiErrors_CAPID
bool DigiErrorDVER[18]
MonitorElement * ZDC_DigiErrors_DVER
DetIdVector::const_iterator bad_quality_begin() const
MonitorElement * h_2D_saturation
MonitorElement * h_ZDCM_HAD_Charge[4]
MonitorElement * h_ZDCM_HAD_RecHitEnergy[4]
MonitorElement * ZDC_Cold_Channel_Errors
const_iterator end() const
Definition: DetId.h:20
static const int SubdetectorId
Definition: HcalZDCDetId.h:22
bool DigiErrorCAPID[18]
int capid() const
get the Capacitor id
Definition: HcalQIESample.h:28
bool DeadChannelError[18]
MonitorElement * h_ZDCP_HAD_Pulse[4]
int size() const
total number of samples in the digi
Definition: ZDCDataFrame.h:26
MonitorElement * meEVT_
MonitorElement * h_ZDCM_EM_RecHitEnergy[5]
MonitorElement * ZDC_Digi_Errors
size_type size() const
MonitorElement * ZDC_TotalChannelErrors
MonitorElement * h_ZDCP_HAD_RecHitEnergy[4]
int TotalChannelErrors[18]
DQMChannel Channel
int DeadChannelCounter[18]
MonitorElement * h_ZDCP_EM_Charge[5]
bool er() const
is the error bit set?
Definition: HcalQIESample.h:32
const_iterator begin() const
DetIdVector::const_iterator bad_quality_end() const
MonitorElement * h_ZDCP_EM_RecHitTiming[5]
MonitorElement * h_ZDCM_HAD_Pulse[4]
void HcalZDCMonitor::reset ( void  )
virtual

Reimplemented from HcalBaseDQMonitor.

Definition at line 36 of file HcalZDCMonitor.cc.

36  {
37 }
void HcalZDCMonitor::setup ( void  )
virtual

Reimplemented from HcalBaseDQMonitor.

Definition at line 40 of file HcalZDCMonitor.cc.

References DQMStore::book1D(), DQMStore::book2D(), DQMStore::bookInt(), HcalBaseDQMonitor::dbe_, HcalBaseDQMonitor::debug_, EventsVsLS, MonitorElement::Fill(), MonitorElement::getTH2F(), h_2D_charge, h_2D_RecHitEnergy, h_2D_RecHitTime, h_2D_saturation, h_2D_TSMean, h_ZDCM_EM_Charge, h_ZDCM_EM_Pulse, h_ZDCM_EM_RecHitEnergy, h_ZDCM_EM_RecHitTiming, h_ZDCM_EM_TSMean, h_ZDCM_HAD_Charge, h_ZDCM_HAD_Pulse, h_ZDCM_HAD_RecHitEnergy, h_ZDCM_HAD_RecHitTiming, h_ZDCM_HAD_TSMean, h_ZDCP_EM_Charge, h_ZDCP_EM_Pulse, h_ZDCP_EM_RecHitEnergy, h_ZDCP_EM_RecHitTiming, h_ZDCP_EM_TSMean, h_ZDCP_HAD_Charge, h_ZDCP_HAD_Pulse, h_ZDCP_HAD_RecHitEnergy, h_ZDCP_HAD_RecHitTiming, h_ZDCP_HAD_TSMean, i, ievt_, meEVT_, mergeVDriftHistosByStation::name, HcalBaseDQMonitor::NLumiBlocks_, NZDC_QualityIndexVsLB_, PZDC_QualityIndexVsLB_, MonitorElement::setAxisTitle(), MonitorElement::setBinLabel(), DQMStore::setCurrentFolder(), HcalBaseDQMonitor::setup(), HcalBaseDQMonitor::subdir_, indexGen::title, ZDC_Cold_Channel_Errors, ZDC_ColdChannelErrorsVsLS, ZDC_Dead_Channel_Errors, ZDC_DeadChannelErrorsVsLS, ZDC_Digi_Errors, ZDC_DigiErrors_CAPID, ZDC_DigiErrors_DVER, ZDC_DigiErrorsVsLS, ZDC_Hot_Channel_Errors, ZDC_HotChannelErrorsVsLS, and ZDC_TotalChannelErrors.

Referenced by beginRun().

40  {
41  debug_=0;
42 
44 
45 
46  // Set initial event # to 0
47  ievt_ = 0;
48 
49  //Histograms
50  if (dbe_) {
52  meEVT_ = dbe_->bookInt("ZDC Event Number");
53  meEVT_->Fill(ievt_);
54  char name[128];
55  char title[128];
56 
57  // Add histograms of your choice
58 
59 
64  PZDC_QualityIndexVsLB_ = dbe_->book1D("PZDC_QualityIndexVSLB","Quality Index for the ZDC+ vs LS; LS; Quality Index", NLumiBlocks_,0,NLumiBlocks_);
65  NZDC_QualityIndexVsLB_ = dbe_->book1D("NZDC_QualityIndexVSLB","Quality Index for the ZDC- vs LS; LS; Quality Index", NLumiBlocks_,0,NLumiBlocks_);
66  EventsVsLS = dbe_->book1D("EventsVsLS", "Total Number of Events per LS; LS; # of Events", NLumiBlocks_,0,NLumiBlocks_);
67 
68 
69 
75 
76  dbe_->setCurrentFolder(subdir_ + "Errors/Digis");
77  ZDC_Digi_Errors = dbe_->book2D("ZDC_Digi_Errors", "Raw Number of Digi Errors Per ZDC Channel", 2, 0, 2, 9, 0, 9);
78  ZDC_Digi_Errors->setBinLabel(1,"ZDC+",1);
79  ZDC_Digi_Errors->setBinLabel(2,"ZDC-",1);
80  ZDC_Digi_Errors->setBinLabel(1,"EM1",2);
81  ZDC_Digi_Errors->setBinLabel(2,"EM2",2);
82  ZDC_Digi_Errors->setBinLabel(3,"EM3",2);
83  ZDC_Digi_Errors->setBinLabel(4,"EM4",2);
84  ZDC_Digi_Errors->setBinLabel(5,"EM5",2);
85  ZDC_Digi_Errors->setBinLabel(6,"HAD1",2);
86  ZDC_Digi_Errors->setBinLabel(7,"HAD2",2);
87  ZDC_Digi_Errors->setBinLabel(8,"HAD3",2);
88  ZDC_Digi_Errors->setBinLabel(9,"HAD4",2);
89  ZDC_Digi_Errors->getTH2F()->SetOption("coltext");
90 
91 
92  ZDC_DigiErrorsVsLS=dbe_->book1D("ZDC_DigiErrorsVsLS","Total Number of (Digi) Errors found in the ZDCs vs. Lumi Section;LS;# errors",NLumiBlocks_,0,NLumiBlocks_);
93 
94 
95 
96 
97  dbe_->setCurrentFolder(subdir_+"Errors/Digis/DigiErrorCauses");
98  ZDC_DigiErrors_DVER = dbe_->book2D("ZDC_DigiErrors_DVER","Raw Number of Digi Errors Caused by Finding .dv()=0 or .er()=1",2,0,2,9,0,9);
99  ZDC_DigiErrors_DVER->setBinLabel(1,"ZDC+",1);
100  ZDC_DigiErrors_DVER->setBinLabel(2,"ZDC-",1);
101  ZDC_DigiErrors_DVER->setBinLabel(1,"EM1",2);
102  ZDC_DigiErrors_DVER->setBinLabel(2,"EM2",2);
103  ZDC_DigiErrors_DVER->setBinLabel(3,"EM3",2);
104  ZDC_DigiErrors_DVER->setBinLabel(4,"EM4",2);
105  ZDC_DigiErrors_DVER->setBinLabel(5,"EM5",2);
106  ZDC_DigiErrors_DVER->setBinLabel(6,"HAD1",2);
107  ZDC_DigiErrors_DVER->setBinLabel(7,"HAD2",2);
108  ZDC_DigiErrors_DVER->setBinLabel(8,"HAD3",2);
109  ZDC_DigiErrors_DVER->setBinLabel(9,"HAD4",2);
110  ZDC_DigiErrors_DVER->getTH2F()->SetOption("coltext");
111 
112 
113  ZDC_DigiErrors_CAPID = dbe_->book2D("ZDC_DigiErrors_CAPID","Raw Number of Digi Errors Caused by the Caps not Alternating",2,0,2,9,0,9);
114  ZDC_DigiErrors_CAPID->setBinLabel(1,"ZDC+",1);
115  ZDC_DigiErrors_CAPID->setBinLabel(2,"ZDC-",1);
116  ZDC_DigiErrors_CAPID->setBinLabel(1,"EM1",2);
117  ZDC_DigiErrors_CAPID->setBinLabel(2,"EM2",2);
118  ZDC_DigiErrors_CAPID->setBinLabel(3,"EM3",2);
119  ZDC_DigiErrors_CAPID->setBinLabel(4,"EM4",2);
120  ZDC_DigiErrors_CAPID->setBinLabel(5,"EM5",2);
121  ZDC_DigiErrors_CAPID->setBinLabel(6,"HAD1",2);
122  ZDC_DigiErrors_CAPID->setBinLabel(7,"HAD2",2);
123  ZDC_DigiErrors_CAPID->setBinLabel(8,"HAD3",2);
124  ZDC_DigiErrors_CAPID->setBinLabel(9,"HAD4",2);
125  ZDC_DigiErrors_CAPID->getTH2F()->SetOption("coltext");
126 
132 
133 
134  dbe_->setCurrentFolder(subdir_ + "Errors/HotChannel");
135  ZDC_Hot_Channel_Errors = dbe_->book2D("ZDC_Hot_Channel_Errors", "Raw Number of Times Each Channel Appeared Hot", 2, 0, 2, 9, 0, 9);
136  ZDC_Hot_Channel_Errors->setBinLabel(1,"ZDC+",1);
137  ZDC_Hot_Channel_Errors->setBinLabel(2,"ZDC-",1);
143  ZDC_Hot_Channel_Errors->setBinLabel(6,"HAD1",2);
144  ZDC_Hot_Channel_Errors->setBinLabel(7,"HAD2",2);
145  ZDC_Hot_Channel_Errors->setBinLabel(8,"HAD3",2);
146  ZDC_Hot_Channel_Errors->setBinLabel(9,"HAD4",2);
147  ZDC_Hot_Channel_Errors->getTH2F()->SetOption("coltext");
148 
149 
150  ZDC_HotChannelErrorsVsLS=dbe_->book1D("ZDC_HotChannelErrorsVsLS","Total Number of Hot Channel Errors in the ZDCs vs. Lumi Section; LS; # Hot channels", NLumiBlocks_,0,NLumiBlocks_);
151 
152 
153 
159 
160  dbe_->setCurrentFolder(subdir_ + "Errors/DeadChannel");
161  ZDC_Dead_Channel_Errors = dbe_->book2D("ZDC_Dead_Channel_Errors", "Raw Number of Times Each Channel Appeared Dead", 2, 0, 2, 9, 0, 9);
172  ZDC_Dead_Channel_Errors->setBinLabel(9,"HAD4",2);
173  ZDC_Dead_Channel_Errors->getTH2F()->SetOption("coltext");
174 
175  ZDC_DeadChannelErrorsVsLS=dbe_->book1D("ZDC_DeadChannelErrorsVsLS","Total Number of Dead Channel Errors in the ZDC vs. Lumi Section; LS; # of Dead Chanels", NLumiBlocks_, 0, NLumiBlocks_);
176 
177 
183 
184  dbe_->setCurrentFolder(subdir_ + "Errors/ColdChannel");
185  ZDC_Cold_Channel_Errors = dbe_->book2D("ZDC_Cold_Channel_Errors", "Raw Number of Times Each Channel Appeared Cold", 2, 0, 2, 9, 0, 9);
196  ZDC_Cold_Channel_Errors->setBinLabel(9,"HAD4",2);
197  ZDC_Cold_Channel_Errors->getTH2F()->SetOption("coltext");
198 
199  ZDC_ColdChannelErrorsVsLS=dbe_->book1D("ZDC_ColdChannelErrorsVsLS","Total Number of Cold Channels in the ZDC vs. Lumi Section; LS; # of Cold Chanels", NLumiBlocks_, 0, NLumiBlocks_);
200 
201 
202 
203 
209 
210 
211  dbe_->setCurrentFolder(subdir_ + "Errors");
212  ZDC_TotalChannelErrors = dbe_->book2D("ZDC_TotalChannelErrors","Total Number of Errors(Digi Error, Hot Cell or Dead Cell) Per Channel in the ZDC" ,2,0,2,9,0,9);
213  ZDC_TotalChannelErrors->setBinLabel(1,"ZDC+",1);
214  ZDC_TotalChannelErrors->setBinLabel(2,"ZDC-",1);
220  ZDC_TotalChannelErrors->setBinLabel(6,"HAD1",2);
221  ZDC_TotalChannelErrors->setBinLabel(7,"HAD2",2);
222  ZDC_TotalChannelErrors->setBinLabel(8,"HAD3",2);
223  ZDC_TotalChannelErrors->setBinLabel(9,"HAD4",2);
224  ZDC_TotalChannelErrors->getTH2F()->SetOption("coltext");
225 
231 
233  h_2D_charge = dbe_->book2D("2D_DigiCharge", "Digi Charge (fC)", 2, 0, 2, 9, 0, 9);
234  h_2D_charge->setBinLabel(1,"ZDC+",1);
235  h_2D_charge->setBinLabel(2,"ZDC-",1);
236  h_2D_charge->setBinLabel(1,"EM1",2);
237  h_2D_charge->setBinLabel(2,"EM2",2);
238  h_2D_charge->setBinLabel(3,"EM3",2);
239  h_2D_charge->setBinLabel(4,"EM4",2);
240  h_2D_charge->setBinLabel(5,"EM5",2);
241  h_2D_charge->setBinLabel(6,"HAD1",2);
242  h_2D_charge->setBinLabel(7,"HAD2",2);
243  h_2D_charge->setBinLabel(8,"HAD3",2);
244  h_2D_charge->setBinLabel(9,"HAD4",2);
245 
246  h_2D_TSMean = dbe_->book2D("2D_DigiTiming", "Digi Timing", 2, 0, 2, 9, 0, 9);
247  h_2D_TSMean->setBinLabel(1,"ZDC+",1);
248  h_2D_TSMean->setBinLabel(2,"ZDC-",1);
249  h_2D_TSMean->setBinLabel(1,"EM1",2);
250  h_2D_TSMean->setBinLabel(2,"EM2",2);
251  h_2D_TSMean->setBinLabel(3,"EM3",2);
252  h_2D_TSMean->setBinLabel(4,"EM4",2);
253  h_2D_TSMean->setBinLabel(5,"EM5",2);
254  h_2D_TSMean->setBinLabel(6,"HAD1",2);
255  h_2D_TSMean->setBinLabel(7,"HAD2",2);
256  h_2D_TSMean->setBinLabel(8,"HAD3",2);
257  h_2D_TSMean->setBinLabel(9,"HAD4",2);
258 
259  h_2D_RecHitEnergy = dbe_->book2D("2D_RecHitEnergy", "Rechit Energy", 2, 0, 2, 9, 0, 9);
260  h_2D_RecHitEnergy->setBinLabel(1,"ZDC+",1);
261  h_2D_RecHitEnergy->setBinLabel(2,"ZDC-",1);
262  h_2D_RecHitEnergy->setBinLabel(1,"EM1",2);
263  h_2D_RecHitEnergy->setBinLabel(2,"EM2",2);
264  h_2D_RecHitEnergy->setBinLabel(3,"EM3",2);
265  h_2D_RecHitEnergy->setBinLabel(4,"EM4",2);
266  h_2D_RecHitEnergy->setBinLabel(5,"EM5",2);
267  h_2D_RecHitEnergy->setBinLabel(6,"HAD1",2);
268  h_2D_RecHitEnergy->setBinLabel(7,"HAD2",2);
269  h_2D_RecHitEnergy->setBinLabel(8,"HAD3",2);
270  h_2D_RecHitEnergy->setBinLabel(9,"HAD4",2);
271 
272  h_2D_RecHitTime = dbe_->book2D("2D_RecHitTime", "Rechit Timing", 2, 0, 2, 9, 0, 9);
273  h_2D_RecHitTime->setBinLabel(1,"ZDC+",1);
274  h_2D_RecHitTime->setBinLabel(2,"ZDC-",1);
275  h_2D_RecHitTime->setBinLabel(1,"EM1",2);
276  h_2D_RecHitTime->setBinLabel(2,"EM2",2);
277  h_2D_RecHitTime->setBinLabel(3,"EM3",2);
278  h_2D_RecHitTime->setBinLabel(4,"EM4",2);
279  h_2D_RecHitTime->setBinLabel(5,"EM5",2);
280  h_2D_RecHitTime->setBinLabel(6,"HAD1",2);
281  h_2D_RecHitTime->setBinLabel(7,"HAD2",2);
282  h_2D_RecHitTime->setBinLabel(8,"HAD3",2);
283  h_2D_RecHitTime->setBinLabel(9,"HAD4",2);
284 
285  h_2D_saturation = dbe_->book2D("h_2D_QIE", "Saturation Check", 2, 0, 2, 9, 0, 9);
286  h_2D_saturation->setBinLabel(1,"ZDC+",1);
287  h_2D_saturation->setBinLabel(2,"ZDC-",1);
288  h_2D_saturation->setBinLabel(1,"EM1",2);
289  h_2D_saturation->setBinLabel(2,"EM2",2);
290  h_2D_saturation->setBinLabel(3,"EM3",2);
291  h_2D_saturation->setBinLabel(4,"EM4",2);
292  h_2D_saturation->setBinLabel(5,"EM5",2);
293  h_2D_saturation->setBinLabel(6,"HAD1",2);
294  h_2D_saturation->setBinLabel(7,"HAD2",2);
295  h_2D_saturation->setBinLabel(8,"HAD3",2);
296  h_2D_saturation->setBinLabel(9,"HAD4",2);
297 
298  dbe_->setCurrentFolder(subdir_ + "Digis");
299 
300  for (int i = 0; i < 5; ++i) {
301  // pulse Plus Side
302  sprintf(title, "h_ZDCP_EMChan_%i_Pulse", i + 1);
303  sprintf(name, "ZDC Plus EM Section Pulse for channel %i", i + 1);
304  h_ZDCP_EM_Pulse[i]= dbe_->book1D(title, name, 10, -0.5, 9.5);
305  h_ZDCP_EM_Pulse[i]->setAxisTitle("Time Slice id",1);
306  h_ZDCP_EM_Pulse[i]->setAxisTitle("Pulse Height",2);
307  // pulse Minus Side
308  sprintf(title, "h_ZDCM_EMChan_%i_Pulse", i + 1);
309  sprintf(name, "ZDC Minus EM Section Pulse for channel %i", i + 1);
310  h_ZDCM_EM_Pulse[i] = dbe_->book1D(title, name, 10, -0.5, 9.5);
311  h_ZDCM_EM_Pulse[i]->setAxisTitle("Time Slice id",1);
312  h_ZDCM_EM_Pulse[i]->setAxisTitle("Pulse Height",2);
313  // integrated charge over 10 time samples
314  sprintf(title, "h_ZDCP_EMChan_%i_Charge", i + 1);
315  sprintf(name, "ZDC Plus EM Section Charge for channel %i", i + 1);
316  h_ZDCP_EM_Charge[i] = dbe_->book1D(title, name, 1000, 0., 30000.);
317  h_ZDCP_EM_Charge[i]->setAxisTitle("Charge (fC)",1);
318  h_ZDCP_EM_Charge[i]->setAxisTitle("Events",2);
319  // integrated charge over 10 time samples
320  sprintf(title, "h_ZDCM_EMChan_%i_Charge", i + 1);
321  sprintf(name, "ZDC Minus EM Section Charge for channel %i", i + 1);
322  h_ZDCM_EM_Charge[i] = dbe_->book1D(title, name, 1000, 0., 30000.);
323  h_ZDCM_EM_Charge[i]->setAxisTitle("Charge (fC)",1);
324  h_ZDCM_EM_Charge[i]->setAxisTitle("Events",2);
325  // charge weighted time slice
326  sprintf(title, "h_ZDCP_EMChan_%i_TSMean", i + 1);
327  sprintf(name, "ZDC Plus EM Section TSMean for channel %i", i + 1);
328  h_ZDCP_EM_TSMean[i] = dbe_->book1D(title, name, 100, -0.5, 9.5);
329  h_ZDCP_EM_TSMean[i]->setAxisTitle("Timing",1);
330  h_ZDCP_EM_TSMean[i]->setAxisTitle("Events",2);
331  // charge weighted time slice
332  sprintf(title, "h_ZDCM_EMChan_%i_TSMean", i + 1);
333  sprintf(name, "ZDC Minus EM Section TSMean for channel %i", i + 1);
334  h_ZDCM_EM_TSMean[i] = dbe_->book1D(title, name, 100, -0.5, 9.5);
335  h_ZDCM_EM_TSMean[i]->setAxisTitle("Timing",1);
336  h_ZDCM_EM_TSMean[i]->setAxisTitle("Events",2);
337  }
338 
339  for (int i = 0; i < 4; ++i) {
340  // pulse Plus Side
341  sprintf(title, "h_ZDCP_HADChan_%i_Pulse", i + 1);
342  sprintf(name, "ZDC Plus HAD Section Pulse for channel %i", i + 1);
343  h_ZDCP_HAD_Pulse[i] = dbe_->book1D(title, name, 10, -0.5, 9.5);
344  h_ZDCP_HAD_Pulse[i]->setAxisTitle("Time Slice id",1);
345  h_ZDCP_HAD_Pulse[i]->setAxisTitle("Pulse Height",2);
346  // pulse Minus Side
347  sprintf(title, "h_ZDCM_HADChan_%i_Pulse", i + 1);
348  sprintf(name, "ZDC Minus HAD Section Pulse for channel %i", i + 1);
349  h_ZDCM_HAD_Pulse[i] = dbe_->book1D(title, name, 10, -0.5, 9.5);
350  h_ZDCP_HAD_Pulse[i]->setAxisTitle("Time Slice id",1);
351  h_ZDCP_HAD_Pulse[i]->setAxisTitle("Pulse Height",2);
352  // integrated charge over 10 time samples
353  sprintf(title, "h_ZDCP_HADChan_%i_Charge", i + 1);
354  sprintf(name, "ZDC Plus HAD Section Charge for channel %i", i + 1);
355  h_ZDCP_HAD_Charge[i] = dbe_->book1D(title, name, 1000, 0., 30000.);
356  h_ZDCP_HAD_Charge[i]->setAxisTitle("Charge (fC)",1);
357  h_ZDCP_HAD_Charge[i]->setAxisTitle("Events",2);
358  // integrated charge over 10 time samples
359  sprintf(title, "h_ZDCM_HADChan_%i_Charge", i + 1);
360  sprintf(name, "ZDC Minus HAD Section Charge for channel %i", i + 1);
361  h_ZDCM_HAD_Charge[i] = dbe_->book1D(title, name, 1000, 0., 30000.);
362  h_ZDCM_HAD_Charge[i]->setAxisTitle("Charge (fC)",1);
363  h_ZDCM_HAD_Charge[i]->setAxisTitle("Events",2);
364  // charge weighted time slice
365  sprintf(title, "h_ZDCP_HADChan_%i_TSMean", i + 1);
366  sprintf(name, "ZDC Plus HAD Section TSMean for channel %i", i + 1);
367  h_ZDCP_HAD_TSMean[i] = dbe_->book1D(title, name, 100, -0.5, 9.5);
368  h_ZDCP_HAD_TSMean[i]->setAxisTitle("Timing",1);
369  h_ZDCP_HAD_TSMean[i]->setAxisTitle("Events",2);
370  // charge weighted time slice
371  sprintf(title, "h_ZDCM_HADChan_%i_TSMean", i + 1);
372  sprintf(name, "ZDC Minus HAD Section TSMean for channel %i", i + 1);
373  h_ZDCM_HAD_TSMean[i] = dbe_->book1D(title, name, 100, -0.5, 9.5);
374  h_ZDCM_HAD_TSMean[i]->setAxisTitle("Timing",1);
375  h_ZDCM_HAD_TSMean[i]->setAxisTitle("Events",2);
376  }
377 
378  dbe_->setCurrentFolder(subdir_ + "RecHits");
379  for (int i = 0; i < 5; ++i) {
380  //RecHitEnergy Plus Side
381  sprintf(title,"h_ZDCP_EMChan_%i_RecHit_Energy",i+1);
382  sprintf(name,"ZDC EM Section Rechit Energy for channel %i",i+1);
383  h_ZDCP_EM_RecHitEnergy[i] = dbe_->book1D(title, name, 1010, -100., 10000.);
384  h_ZDCP_EM_RecHitEnergy[i]->setAxisTitle("Energy (GeV)",1);
385  h_ZDCP_EM_RecHitEnergy[i]->setAxisTitle("Events",2);
386  //RecHitEnergy Minus Side
387  sprintf(title,"h_ZDCM_EMChan_%i_RecHit_Energy",i+1);
388  sprintf(name,"ZDC EM Section Rechit Energy for channel %i",i+1);
389  h_ZDCM_EM_RecHitEnergy[i] = dbe_->book1D(title, name, 1010, -100., 10000.);
390  h_ZDCM_EM_RecHitEnergy[i]->setAxisTitle("Energy (GeV)",1);
391  h_ZDCM_EM_RecHitEnergy[i]->setAxisTitle("Events",2);
392  //RecHit Timing Plus Side
393  sprintf(title,"h_ZDCP_EMChan_%i_RecHit_Timing",i+1);
394  sprintf(name,"ZDC EM Section Rechit Timing for channel %i",i+1);
395  h_ZDCP_EM_RecHitTiming[i] = dbe_->book1D(title, name, 100, -100., 100.);
396  h_ZDCP_EM_RecHitTiming[i]->setAxisTitle("RecHit Time",1);
397  h_ZDCP_EM_RecHitTiming[i]->setAxisTitle("Events",2);
398  //RecHit Timing Minus Side
399  sprintf(title,"h_ZDCM_EMChan_%i_RecHit_Timing",i+1);
400  sprintf(name,"ZDC EM Section Rechit Timing for channel %i",i+1);
401  h_ZDCM_EM_RecHitTiming[i] = dbe_->book1D(title, name, 100, -100., 100.);
402  h_ZDCM_EM_RecHitTiming[i]->setAxisTitle("RecHit Time",1);
403  h_ZDCM_EM_RecHitTiming[i]->setAxisTitle("Events",2);
404  }
405 
406  for (int i = 0; i < 4; ++i) {
407  //RecHitEnergy Plus Side
408  sprintf(title,"h_ZDCP_HADChan_%i_RecHit_Energy",i+1);
409  sprintf(name,"ZDC HAD Section Rechit Energy for channel %i",i+1);
410  h_ZDCP_HAD_RecHitEnergy[i] = dbe_->book1D(title, name, 1010, -100., 10000.);
411  h_ZDCP_HAD_RecHitEnergy[i]->setAxisTitle("Energy (GeV)",1);
412  h_ZDCP_HAD_RecHitEnergy[i]->setAxisTitle("Events",2);
413  //RecHitEnergy Minus Side
414  sprintf(title,"h_ZDCM_HADChan_%i_RecHit_Energy",i+1);
415  sprintf(name,"ZDC HAD Section Rechit Energy for channel %i",i+1);
416  h_ZDCM_HAD_RecHitEnergy[i] = dbe_->book1D(title, name, 1010, -100., 10000.);
417  h_ZDCM_HAD_RecHitEnergy[i]->setAxisTitle("Energy (GeV)",1);
418  h_ZDCM_HAD_RecHitEnergy[i]->setAxisTitle("Events",2);
419  //RecHit Timing Plus Side
420  sprintf(title,"h_ZDCP_HADChan_%i_RecHit_Timing",i+1);
421  sprintf(name,"ZDC HAD Section Rechit Timing for channel %i",i+1);
422  h_ZDCP_HAD_RecHitTiming[i] = dbe_->book1D(title, name, 100, -100., 100.);
423  h_ZDCP_HAD_RecHitTiming[i]->setAxisTitle("RecHit Time",1);
424  h_ZDCP_HAD_RecHitTiming[i]->setAxisTitle("Events",2);
425  //RecHit Timing Minus Side
426  sprintf(title,"h_ZDCM_HADChan_%i_RecHit_Timing",i+1);
427  sprintf(name,"ZDC HAD Section Rechit Timing for channel %i",i+1);
428  h_ZDCM_HAD_RecHitTiming[i] = dbe_->book1D(title, name, 100, -100., 100.);
429  h_ZDCM_HAD_RecHitTiming[i]->setAxisTitle("RecHit Time",1);
430  h_ZDCM_HAD_RecHitTiming[i]->setAxisTitle("Events",2);
431  }
432  } // if (dbe_)
433  return;
434 }
MonitorElement * h_ZDCP_HAD_TSMean[4]
int i
Definition: DBlmapReader.cc:9
MonitorElement * ZDC_DigiErrorsVsLS
MonitorElement * h_ZDCP_HAD_RecHitTiming[4]
MonitorElement * h_ZDCM_EM_Pulse[5]
MonitorElement * h_ZDCM_HAD_TSMean[4]
MonitorElement * ZDC_Hot_Channel_Errors
MonitorElement * h_ZDCM_EM_TSMean[5]
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
Definition: DQMStore.cc:717
MonitorElement * h_ZDCM_EM_RecHitTiming[5]
MonitorElement * NZDC_QualityIndexVsLB_
MonitorElement * ZDC_Dead_Channel_Errors
MonitorElement * h_2D_TSMean
MonitorElement * h_ZDCM_HAD_RecHitTiming[4]
MonitorElement * h_ZDCP_EM_RecHitEnergy[5]
MonitorElement * h_ZDCP_EM_Pulse[5]
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_ZDCP_EM_TSMean[5]
MonitorElement * h_ZDCM_EM_Charge[5]
MonitorElement * ZDC_DeadChannelErrorsVsLS
void Fill(long long x)
MonitorElement * ZDC_HotChannelErrorsVsLS
MonitorElement * h_ZDCP_HAD_Charge[4]
MonitorElement * ZDC_ColdChannelErrorsVsLS
MonitorElement * ZDC_DigiErrors_CAPID
MonitorElement * ZDC_DigiErrors_DVER
MonitorElement * h_2D_saturation
MonitorElement * h_2D_charge
MonitorElement * h_2D_RecHitTime
MonitorElement * h_ZDCM_HAD_Charge[4]
MonitorElement * h_ZDCM_HAD_RecHitEnergy[4]
MonitorElement * ZDC_Cold_Channel_Errors
MonitorElement * PZDC_QualityIndexVsLB_
MonitorElement * h_2D_RecHitEnergy
MonitorElement * EventsVsLS
MonitorElement * h_ZDCP_HAD_Pulse[4]
MonitorElement * meEVT_
MonitorElement * h_ZDCM_EM_RecHitEnergy[5]
MonitorElement * ZDC_Digi_Errors
MonitorElement * ZDC_TotalChannelErrors
MonitorElement * h_ZDCP_HAD_RecHitEnergy[4]
TH2F * getTH2F(void) const
MonitorElement * bookInt(const char *name)
Book int.
Definition: DQMStore.cc:624
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_ZDCP_EM_Charge[5]
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:429
MonitorElement * h_ZDCP_EM_RecHitTiming[5]
MonitorElement * h_ZDCM_HAD_Pulse[4]

Member Data Documentation

HcalCalibrations HcalZDCMonitor::calibs_
private

Definition at line 97 of file HcalZDCMonitor.h.

const HcalQIECoder* HcalZDCMonitor::channelCoder_
private

Definition at line 96 of file HcalZDCMonitor.h.

bool HcalZDCMonitor::ChannelHasDigiError[18]
private

Definition at line 92 of file HcalZDCMonitor.h.

Referenced by processEvent().

float HcalZDCMonitor::ChannelRatio[18]
private

Definition at line 76 of file HcalZDCMonitor.h.

Referenced by beginLuminosityBlock(), and endLuminosityBlock().

std::vector<double> HcalZDCMonitor::ChannelWeighting_
private

Definition at line 79 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), and HcalZDCMonitor().

bool HcalZDCMonitor::checkZDC_
private

Definition at line 69 of file HcalZDCMonitor.h.

int HcalZDCMonitor::ColdADCThreshold_
private

Definition at line 85 of file HcalZDCMonitor.h.

Referenced by HcalZDCMonitor().

int HcalZDCMonitor::ColdChannelCounter[18]
private

Definition at line 87 of file HcalZDCMonitor.h.

Referenced by beginRun(), endLuminosityBlock(), endRun(), and processEvent().

int HcalZDCMonitor::DeadChannelCounter[18]
private

Definition at line 86 of file HcalZDCMonitor.h.

Referenced by beginRun(), endLuminosityBlock(), endRun(), and processEvent().

bool HcalZDCMonitor::DeadChannelError[18]
private

Definition at line 88 of file HcalZDCMonitor.h.

Referenced by processEvent().

bool HcalZDCMonitor::DigiErrorCAPID[18]
private

Definition at line 90 of file HcalZDCMonitor.h.

Referenced by processEvent().

bool HcalZDCMonitor::DigiErrorDVER[18]
private

Definition at line 91 of file HcalZDCMonitor.h.

Referenced by processEvent().

edm::InputTag HcalZDCMonitor::digiLabel_
private

Definition at line 73 of file HcalZDCMonitor.h.

Referenced by analyze(), and HcalZDCMonitor().

int HcalZDCMonitor::EventCounter
private

Definition at line 77 of file HcalZDCMonitor.h.

Referenced by beginLuminosityBlock(), beginRun(), endLuminosityBlock(), and processEvent().

MonitorElement* HcalZDCMonitor::EventsVsLS
private

Definition at line 143 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), and setup().

MonitorElement* HcalZDCMonitor::h_2D_charge
private

Definition at line 102 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), and setup().

MonitorElement* HcalZDCMonitor::h_2D_RecHitEnergy
private

Definition at line 104 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), and setup().

MonitorElement* HcalZDCMonitor::h_2D_RecHitTime
private

Definition at line 105 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), and setup().

MonitorElement* HcalZDCMonitor::h_2D_saturation
private

Definition at line 101 of file HcalZDCMonitor.h.

Referenced by processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_2D_TSMean
private

Definition at line 103 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCM_EM_Charge[5]
private

Definition at line 109 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCM_EM_Pulse[5]
private

Definition at line 107 of file HcalZDCMonitor.h.

Referenced by processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCM_EM_RecHitEnergy[5]
private

Definition at line 119 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCM_EM_RecHitTiming[5]
private

Definition at line 121 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCM_EM_TSMean[5]
private

Definition at line 111 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCM_HAD_Charge[4]
private

Definition at line 115 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCM_HAD_Pulse[4]
private

Definition at line 113 of file HcalZDCMonitor.h.

Referenced by processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCM_HAD_RecHitEnergy[4]
private

Definition at line 123 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCM_HAD_RecHitTiming[4]
private

Definition at line 125 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCM_HAD_TSMean[4]
private

Definition at line 117 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCP_EM_Charge[5]
private

Definition at line 108 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCP_EM_Pulse[5]
private

Definition at line 106 of file HcalZDCMonitor.h.

Referenced by processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCP_EM_RecHitEnergy[5]
private

Definition at line 118 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCP_EM_RecHitTiming[5]
private

Definition at line 120 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCP_EM_TSMean[5]
private

Definition at line 110 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCP_HAD_Charge[4]
private

Definition at line 114 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCP_HAD_Pulse[4]
private

Definition at line 112 of file HcalZDCMonitor.h.

Referenced by processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCP_HAD_RecHitEnergy[4]
private

Definition at line 122 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCP_HAD_RecHitTiming[4]
private

Definition at line 124 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::h_ZDCP_HAD_TSMean[4]
private

Definition at line 116 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), processEvent(), and setup().

bool HcalZDCMonitor::HotChannelError[18]
private

Definition at line 89 of file HcalZDCMonitor.h.

Referenced by processEvent().

int HcalZDCMonitor::ievt_
private

Definition at line 98 of file HcalZDCMonitor.h.

Referenced by processEvent(), and setup().

std::vector<double> HcalZDCMonitor::MaxErrorRates_
private

Definition at line 80 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), and HcalZDCMonitor().

MonitorElement* HcalZDCMonitor::meEVT_
private

Definition at line 100 of file HcalZDCMonitor.h.

Referenced by processEvent(), and setup().

int HcalZDCMonitor::NumBadZDC
private

Definition at line 70 of file HcalZDCMonitor.h.

MonitorElement* HcalZDCMonitor::NZDC_QualityIndexVsLB_
private

Definition at line 146 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), and setup().

int HcalZDCMonitor::OfflineColdThreshold_
private

Definition at line 81 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), and HcalZDCMonitor().

int HcalZDCMonitor::OfflineDeadThreshold_
private

Definition at line 83 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), and HcalZDCMonitor().

int HcalZDCMonitor::OnlineColdThreshold_
private

Definition at line 82 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), and HcalZDCMonitor().

int HcalZDCMonitor::OnlineDeadThreshold_
private

Definition at line 84 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), and HcalZDCMonitor().

MonitorElement* HcalZDCMonitor::ProblemsVsLB_ZDC
private

Definition at line 71 of file HcalZDCMonitor.h.

MonitorElement* HcalZDCMonitor::PZDC_QualityIndexVsLB_
private

Definition at line 145 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), and setup().

edm::InputTag HcalZDCMonitor::rechitLabel_
private

Definition at line 72 of file HcalZDCMonitor.h.

Referenced by analyze(), and HcalZDCMonitor().

const HcalQIEShape* HcalZDCMonitor::shape_
private

Definition at line 95 of file HcalZDCMonitor.h.

int HcalZDCMonitor::TotalChannelErrors[18]
private

Definition at line 78 of file HcalZDCMonitor.h.

Referenced by beginLuminosityBlock(), endLuminosityBlock(), and processEvent().

MonitorElement* HcalZDCMonitor::ZDC_Cold_Channel_Errors
private

Definition at line 136 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), endRun(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::ZDC_ColdChannelErrorsVsLS
private

Definition at line 137 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), and setup().

MonitorElement* HcalZDCMonitor::ZDC_Dead_Channel_Errors
private

Definition at line 139 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), endRun(), processEvent(), and setup().

MonitorElement* HcalZDCMonitor::ZDC_DeadChannelErrorsVsLS
private

Definition at line 140 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), and setup().

MonitorElement* HcalZDCMonitor::ZDC_Digi_Errors
private

Definition at line 128 of file HcalZDCMonitor.h.

Referenced by processEvent(), and setup().

MonitorElement* HcalZDCMonitor::ZDC_DigiErrors_CAPID
private

Definition at line 131 of file HcalZDCMonitor.h.

Referenced by processEvent(), and setup().

MonitorElement* HcalZDCMonitor::ZDC_DigiErrors_DVER
private

Definition at line 130 of file HcalZDCMonitor.h.

Referenced by processEvent(), and setup().

MonitorElement* HcalZDCMonitor::ZDC_DigiErrorsVsLS
private

Definition at line 129 of file HcalZDCMonitor.h.

Referenced by processEvent(), and setup().

MonitorElement* HcalZDCMonitor::ZDC_Hot_Channel_Errors
private

Definition at line 133 of file HcalZDCMonitor.h.

Referenced by processEvent(), and setup().

MonitorElement* HcalZDCMonitor::ZDC_HotChannelErrorsVsLS
private

Definition at line 134 of file HcalZDCMonitor.h.

Referenced by processEvent(), and setup().

MonitorElement* HcalZDCMonitor::ZDC_TotalChannelErrors
private

Definition at line 142 of file HcalZDCMonitor.h.

Referenced by endLuminosityBlock(), endRun(), processEvent(), and setup().