#include <HcalBaseMonitor.h>
Public Member Functions | |
void | beginLuminosityBlock (int lb) |
virtual void | beginRun () |
virtual void | clearME () |
virtual void | done () |
void | endLuminosityBlock () |
bool | getDiagnostics () const |
int | getVerbosity () const |
HcalBaseMonitor () | |
void | hideKnownBadCells () |
virtual void | periodicReset () |
void | processEvent () |
void | setDiagnostics (bool myval) |
void | setMinMaxHists1D (std::vector< MonitorElement * > &hh, double min, double max) |
void | setMinMaxHists2D (std::vector< MonitorElement * > &hh, double min, double max) |
virtual void | setup (const edm::ParameterSet &ps, DQMStore *dbe) |
void | setupDepthHists1D (std::vector< MonitorElement * > &hh, std::string Name, std::string Units, int lowbound, int highbound, int Nbins) |
void | setupDepthHists1D (MonitorElement *&h, std::vector< MonitorElement * > &hh, std::string Name, std::string Units, int lowbound, int highbound, int Nbins) |
void | setupDepthHists2D (MonitorElement *&h, std::vector< MonitorElement * > &hh, std::string Name, std::string Units) |
void | setupDepthHists2D (MonitorElement *&h, std::vector< MonitorElement * > &hh, std::string Name, std::string Units, int nbinsx, int lowboundx, int highboundx, int nbinsy, int lowboundy, int highboundy) |
void | setupDepthHists2D (std::vector< MonitorElement * > &hh, std::string Name, std::string Units) |
void | setupDepthHists2D (std::vector< MonitorElement * > &hh, std::string Name, std::string Units, int nbinsx, int lowboundx, int highboundx, int nbinsy, int lowboundy, int highboundy) |
void | SetupEtaPhiHists (MonitorElement *&h, EtaPhiHists &hh, std::string Name, std::string Units) |
void | SetupEtaPhiHists (EtaPhiHists &hh, std::string Name, std::string Units) |
void | setVerbosity (int verb) |
bool | vetoCell (HcalDetId &id) |
virtual | ~HcalBaseMonitor () |
Protected Member Functions | |
void | LumiBlockUpdate (int lb) |
Protected Attributes | |
std::vector< int > | AllowedCalibTypes_ |
std::vector< std::string > | badCells_ |
std::string | baseFolder_ |
bool | checkHB_ |
bool | checkHE_ |
bool | checkHF_ |
bool | checkHO_ |
int | checkNevents_ |
edm::CPUTimer | cpu_timer |
bool | dump2database |
int | etaBins_ |
double | etaMax_ |
double | etaMin_ |
int | fVerbosity |
int | ievt_ |
bool | LBprocessed_ |
int | levt_ |
int | lumiblock |
DQMStore * | m_dbe |
bool | makeDiagnostics |
MonitorElement * | meEVT_ |
MonitorElement * | meTOTALEVT_ |
double | minErrorFlag_ |
int | Nlumiblocks_ |
int | NumBadHB |
int | NumBadHE |
int | NumBadHF |
int | NumBadHO |
int | oldlumiblock |
bool | Online_ |
int | phiBins_ |
double | phiMax_ |
double | phiMin_ |
MonitorElement * | ProblemCells |
EtaPhiHists | ProblemCellsByDepth |
MonitorElement * | ProblemsVsLB |
MonitorElement * | ProblemsVsLB_HB |
MonitorElement * | ProblemsVsLB_HBHEHF |
MonitorElement * | ProblemsVsLB_HE |
MonitorElement * | ProblemsVsLB_HF |
MonitorElement * | ProblemsVsLB_HO |
int | resetNevents_ |
std::string | rootFolder_ |
bool | showTiming |
int | tevt_ |
HcalBaseMonitor::HcalBaseMonitor | ( | ) |
Definition at line 10 of file HcalBaseMonitor.cc.
References badCells_, baseFolder_, fVerbosity, and rootFolder_.
{ fVerbosity = 0; badCells_.clear(); rootFolder_ = "Hcal"; baseFolder_ = "BaseMonitor"; }
HcalBaseMonitor::~HcalBaseMonitor | ( | ) | [virtual] |
Definition at line 17 of file HcalBaseMonitor.cc.
{}
void HcalBaseMonitor::beginLuminosityBlock | ( | int | lb | ) |
Definition at line 160 of file HcalBaseMonitor.cc.
References LBprocessed_, levt_, and LumiBlockUpdate().
{ // Protect against online mis-ordering of events. // Do we want this enabled here? //if (Online_ && lumisec<lumiblock) // return; LumiBlockUpdate(lumisec); levt_=0; LBprocessed_=false; } // beginLuminosityBlock
void HcalBaseMonitor::beginRun | ( | void | ) | [virtual] |
Definition at line 19 of file HcalBaseMonitor.cc.
References ievt_, LBprocessed_, and levt_.
{ievt_=0;levt_=0;LBprocessed_=false;}
void HcalBaseMonitor::clearME | ( | ) | [virtual] |
Reimplemented in HcalEEUSMonitor.
Definition at line 179 of file HcalBaseMonitor.cc.
References baseFolder_, m_dbe, DQMStore::removeContents(), and DQMStore::setCurrentFolder().
{ if(m_dbe){ m_dbe->setCurrentFolder(baseFolder_); m_dbe->removeContents(); /* m_dbe->setCurrentFolder(baseFolder_+"/HB"); m_dbe->removeContents(); m_dbe->setCurrentFolder(baseFolder_+"/HE"); m_dbe->removeContents(); m_dbe->setCurrentFolder(baseFolder_+"/HO"); m_dbe->removeContents(); m_dbe->setCurrentFolder(baseFolder_+"/HF"); m_dbe->removeContents(); */ } return; } // void HcalBaseMonitor::clearME();
void HcalBaseMonitor::done | ( | ) | [virtual] |
Definition at line 177 of file HcalBaseMonitor.cc.
{}
void HcalBaseMonitor::endLuminosityBlock | ( | void | ) |
Definition at line 171 of file HcalBaseMonitor.cc.
References LBprocessed_.
{ LBprocessed_=true; return; } // endLuminosityBlock;
bool HcalBaseMonitor::getDiagnostics | ( | ) | const [inline] |
Definition at line 61 of file HcalBaseMonitor.h.
References makeDiagnostics.
{ return makeDiagnostics;}
int HcalBaseMonitor::getVerbosity | ( | ) | const [inline] |
void HcalBaseMonitor::hideKnownBadCells | ( | ) |
Definition at line 221 of file HcalBaseMonitor.cc.
References badCells_, CalcEtaBin(), EtaPhiHists::depth, i, errorMatrix2Lands_multiChannel::id, ProblemCells, ProblemCellsByDepth, and MonitorElement::setBinContent().
{ /* This prevents known bad cells from being displayed in overall problem maps and depth histograms. Is this what we want? Or do we want some problems to be displayed in the depth plots but not the overall map? (Or vice versa?) */ for (unsigned int i=0;i<badCells_.size();++i) { unsigned int badc = atoi(badCells_[i].c_str()); HcalDetId id(badc); int etabin=CalcEtaBin(id.subdet(),id.ieta(),id.depth()); if (ProblemCells!=0) ProblemCells->setBinContent(etabin+1,id.iphi(),0); if (ProblemCellsByDepth.depth[id.depth()-1]!=0) ProblemCellsByDepth.depth[id.depth()-1]->setBinContent(etabin+1,id.iphi(),0); } // for (unsigned int i=0;...) return; } // void HcalBaseMonitor::hideKnownBadCells()
void HcalBaseMonitor::LumiBlockUpdate | ( | int | lb | ) | [protected] |
Definition at line 120 of file HcalBaseMonitor.cc.
References lumiblock, and Nlumiblocks_.
Referenced by beginLuminosityBlock().
{ //if (Online_ && lb<=lumiblock) // protect against mis-ordered LBs. Handle differently in the future? // return; lumiblock=lb; if (lumiblock==0) // initial lumiblock call; don't fill histograms, because nothing has been determined yet return; if (lb>Nlumiblocks_) // don't fill plots if lumiblock is beyond range return; // The following function would let us 'fill in' missing lumiblock sections. // I think we only want this for Online running, since offline should fill each lumi block // independently. // Should probably just do this in the individual tasks? /* if (Online_ && lumiblock<lb) { for (int i=lumiblock+1;i<lb;++i) { if (ProblemsVsLB) ProblemsVsLB->Fill(i,NumBadHB+NumBadHE+NumBadHO+NumBadHF); if (ProblemsVsLB_HB) ProblemsVsLB_HB->Fill(i,NumBadHB); if (ProblemsVsLB_HE) ProblemsVsLB_HE->Fill(i,NumBadHE); if (ProblemsVsLB_HO) ProblemsVsLB_HO->Fill(i,NumBadHO); if (ProblemsVsLB_HF) ProblemsVsLB_HF->Fill(i,NumBadHF); if (ProblemsVsLB_HBHEHF) ProblemsVsLB_HBHEHF->Fill(i,NumBadHB+NumBadHE+NumBadHF); } } */ return; }
void HcalBaseMonitor::periodicReset | ( | ) | [virtual] |
Definition at line 639 of file HcalBaseMonitor.cc.
References EtaPhiHists::depth, i, ProblemCells, ProblemCellsByDepth, and MonitorElement::Reset().
{ // when called, reset all counters, and all histograms if (ProblemCells!=0) ProblemCells->Reset(); for (unsigned int i=0;i<ProblemCellsByDepth.depth.size();++i) { if (ProblemCellsByDepth.depth[i]!=0) ProblemCellsByDepth.depth[i]->Reset(); } return; }
void HcalBaseMonitor::processEvent | ( | ) |
Definition at line 105 of file HcalBaseMonitor.cc.
References MonitorElement::Fill(), ievt_, levt_, m_dbe, meEVT_, meTOTALEVT_, and tevt_.
void HcalBaseMonitor::setDiagnostics | ( | bool | myval | ) | [inline] |
Definition at line 60 of file HcalBaseMonitor.h.
References makeDiagnostics.
{ makeDiagnostics=myval;}
void HcalBaseMonitor::setMinMaxHists1D | ( | std::vector< MonitorElement * > & | hh, |
double | min, | ||
double | max | ||
) |
void HcalBaseMonitor::setMinMaxHists2D | ( | std::vector< MonitorElement * > & | hh, |
double | min, | ||
double | max | ||
) |
void HcalBaseMonitor::setup | ( | const edm::ParameterSet & | ps, |
DQMStore * | dbe | ||
) | [virtual] |
Reimplemented in HcalCaloTowerMonitor, and HcalEEUSMonitor.
Definition at line 21 of file HcalBaseMonitor.cc.
References AllowedCalibTypes_, badCells_, checkHB_, checkHE_, checkHF_, checkHO_, checkNevents_, gather_cfg::cout, dump2database, etaBins_, ETAMAX, etaMax_, ETAMIN, etaMin_, fVerbosity, edm::ParameterSet::getUntrackedParameter(), ievt_, levt_, lumiblock, m_dbe, makeDiagnostics, meEVT_, meTOTALEVT_, minErrorFlag_, Nlumiblocks_, NULL, NumBadHB, NumBadHE, NumBadHF, NumBadHO, oldlumiblock, Online_, phiBins_, PHIMAX, phiMax_, PHIMIN, phiMin_, ProblemsVsLB, ProblemsVsLB_HB, ProblemsVsLB_HBHEHF, ProblemsVsLB_HE, ProblemsVsLB_HF, ProblemsVsLB_HO, resetNevents_, rootFolder_, showTiming, and tevt_.
{ m_dbe = NULL; if(dbe != NULL) m_dbe = dbe; std::vector<std::string> dummy; dummy.clear(); Online_ = ps.getUntrackedParameter<bool>("Online",false); badCells_ = ps.getUntrackedParameter<std::vector<std::string> >( "BadCells" , dummy); AllowedCalibTypes_ = ps.getUntrackedParameter<std::vector<int> > ("AllowedCalibTypes"); // Base folder for the contents of this job std::string subsystemname = ps.getUntrackedParameter<std::string>("subSystemFolder", "Hcal") ; rootFolder_ = subsystemname + "/"; // Global cfgs fVerbosity = ps.getUntrackedParameter<int>("debug",0); makeDiagnostics = ps.getUntrackedParameter<bool>("makeDiagnosticPlots",false); showTiming = ps.getUntrackedParameter<bool>("showTiming",false); dump2database = ps.getUntrackedParameter<bool>("dump2database",false); // dumps output to database file checkHB_ = ps.getUntrackedParameter<bool>("checkHB",true); checkHE_ = ps.getUntrackedParameter<bool>("checkHE",true); checkHO_ = ps.getUntrackedParameter<bool>("checkHO",true); checkHF_ = ps.getUntrackedParameter<bool>("checkHF",true); checkNevents_ = ps.getUntrackedParameter<int>("checkNevents",1000); // specify how often to run checks Nlumiblocks_ = ps.getUntrackedParameter<int>("Nlumiblocks",1000); // number of luminosity blocks to include in time plots if (Nlumiblocks_<=0) Nlumiblocks_=1000; resetNevents_ = ps.getUntrackedParameter<int>("resetNevents",-1); // how often to reset histograms // Minimum error rate that will caused the problem histogram to be filled minErrorFlag_ = ps.getUntrackedParameter<double>("minErrorFlag",0.05); // Set eta, phi boundaries // We can remove these variables once we move completely to EtaPhiHists from the old 2D SJ6hists etaMax_ = ps.getUntrackedParameter<double>("MaxEta", ETAMAX); etaMin_ = ps.getUntrackedParameter<double>("MinEta", ETAMIN); if (etaMax_ > 44.5) { std::cout <<"<HcalBaseMonitor> WARNING: etaMax_ value of "<<etaMax_<<" exceeds maximum allowed value of 44.5"<<std::endl; std::cout <<" Value being set back to 44.5."<<std::endl; std::cout <<" Additional code changes are necessary to allow value of "<<etaMax_<<std::endl; etaMax_ = 44.5; } if (etaMin_ < ETAMIN) { std::cout <<"<HcalBaseMonitor> WARNING: etaMin_ value of "<<etaMin_<<" exceeds minimum allowed value of 44.5"<<std::endl; std::cout <<" Value being set back to -44.5."<<std::endl; std::cout <<" Additional code changes are necessary to allow value of "<<etaMin_<<std::endl; etaMin_ = -44.5; } etaBins_ = (int)(etaMax_ - etaMin_); phiMax_ = ps.getUntrackedParameter<double>("MaxPhi", PHIMAX); phiMin_ = ps.getUntrackedParameter<double>("MinPhi", PHIMIN); phiBins_ = (int)(phiMax_ - phiMin_); ProblemsVsLB=0; ProblemsVsLB_HB=0; ProblemsVsLB_HE=0; ProblemsVsLB_HO=0; ProblemsVsLB_HF=0; ProblemsVsLB_HBHEHF=0; meEVT_=0; meTOTALEVT_=0; ievt_=0; levt_=0; tevt_=0; lumiblock=0; oldlumiblock=0; NumBadHB=0; NumBadHE=0; NumBadHO=0; NumBadHF=0; return; } //void HcalBaseMonitor::setup()
void HcalBaseMonitor::setupDepthHists1D | ( | MonitorElement *& | h, |
std::vector< MonitorElement * > & | hh, | ||
std::string | Name, | ||
std::string | Units, | ||
int | lowbound, | ||
int | highbound, | ||
int | Nbins | ||
) |
Definition at line 523 of file HcalBaseMonitor.cc.
References DQMStore::book1D(), gather_cfg::cout, cpu_timer, edm::CPUTimer::cpuTime(), m_dbe, mergeVDriftHistosByStation::name, edm::CPUTimer::reset(), MonitorElement::setAxisTitle(), showTiming, edm::CPUTimer::start(), and edm::CPUTimer::stop().
{ // Makes an overall 1D Monitor Element (for summing over depths) for h, and creates individual depth Monitor Elements for hh if (showTiming) { cpu_timer.reset(); cpu_timer.start(); } std::stringstream name; name<<Name; std::stringstream unitname; std::stringstream unittitle; if (Units.empty()) { unitname<<Units; unittitle<<"No Units"; } else { unitname<<" "<<Units; unittitle<<Units; } // Create overall 1D Monitor Element h=m_dbe->book1D(("All "+name.str()+unitname.str()).c_str(), (name.str() + " for all HCAL ("+unittitle.str().c_str()+")"), Nbins,lowbound,highbound); h->setAxisTitle(unitname.str().c_str(),1); // Create vector of Monitor Elements for individual depths setupDepthHists1D(hh, Name, Units, lowbound, highbound, Nbins); if (showTiming) { cpu_timer.stop(); std::cout <<"TIMER:: HcalBaseMonitor SETUPDEPTHHISTS1D_OVERALL "<<name.str().c_str()<<" -> "<<cpu_timer.cpuTime()<<std::endl; } return; } //void HcalBaseMonitor::setupDepthHists1D(MonitorElement* &h, std::vector<MonitorElement*> &hh, std::string Name, std::string Units)
void HcalBaseMonitor::setupDepthHists1D | ( | std::vector< MonitorElement * > & | hh, |
std::string | Name, | ||
std::string | Units, | ||
int | lowbound, | ||
int | highbound, | ||
int | Nbins | ||
) |
Definition at line 566 of file HcalBaseMonitor.cc.
References DQMStore::book1D(), gather_cfg::cout, cpu_timer, edm::CPUTimer::cpuTime(), i, m_dbe, mergeVDriftHistosByStation::name, edm::CPUTimer::reset(), showTiming, edm::CPUTimer::start(), and edm::CPUTimer::stop().
{ // Makes histograms just for the vector of Monitor Elements if (showTiming) { cpu_timer.reset(); cpu_timer.start(); } std::stringstream name; name<<Name; std::stringstream unitname; std::stringstream unittitle; if (Units.empty()) { unitname<<Units; unittitle<<"No Units"; } else { unitname<<" "<<Units; unittitle<<Units; } // Push back depth plots hh.push_back(m_dbe->book1D(("HB "+name.str()+unitname.str()).c_str(), (name.str()+" HB ("+unittitle.str().c_str()+")"), Nbins,lowbound,highbound)); hh.push_back( m_dbe->book1D(("HE "+name.str()+unitname.str()).c_str(), (name.str()+" HE ("+unittitle.str().c_str()+")"), Nbins,lowbound,highbound)); hh.push_back( m_dbe->book1D(("HO "+name.str()+unitname.str()).c_str(), (name.str()+" HO ("+unittitle.str().c_str()+")"), Nbins,lowbound,highbound)); hh.push_back( m_dbe->book1D(("HF "+name.str()+unitname.str()).c_str(), (name.str()+" HF ("+unittitle.str().c_str()+")"), Nbins,lowbound,highbound)); for (unsigned int i=0;i<hh.size();++i) { hh[i]->setAxisTitle(unitname.str().c_str(),1); } if (showTiming) { cpu_timer.stop(); std::cout <<"TIMER:: HcalBaseMonitor SETUPDEPTHHISTS1D "<<name.str().c_str()<<" -> "<<cpu_timer.cpuTime()<<std::endl; } return; } // void HcalBaseMonitor::setupDepthHists1D(std::vector<MonitorElement*> &hh, std::string Name, std::string Units, int lowbound, int highbound, int Nbins)
void HcalBaseMonitor::setupDepthHists2D | ( | std::vector< MonitorElement * > & | hh, |
std::string | Name, | ||
std::string | Units | ||
) |
Definition at line 332 of file HcalBaseMonitor.cc.
References DQMStore::book2D(), etaBins_, etaMax_, etaMin_, i, m_dbe, mergeVDriftHistosByStation::name, phiBins_, phiMax_, and phiMin_.
{ /* Code makes vector of 2D MonitorElements for all 6 depths (4 depths, + 2 for separate HE histograms). Bins are automatically set for eta/phi indices DEPRECATE THIS ONCE ALL OLD-STYLE 2D HISTOGRAMS HAVE BEEN REMOVED! */ /* if (showTiming) { cpu_timer.reset(); cpu_timer.start(); } */ std::stringstream name; name<<Name; std::stringstream unitname; std::stringstream unittitle; if (Units.empty()) { unitname<<Units; unittitle<<"No Units"; } else { unitname<<" "<<Units; unittitle<<Units; } // Push back depth plots -- remove ZDC names at some point? hh.push_back(m_dbe->book2D(("HB HF Depth 1 "+name.str()+unitname.str()).c_str(), (name.str()+" Depth 1 -- HB & HF only ("+unittitle.str().c_str()+")"), etaBins_,etaMin_,etaMax_, phiBins_,phiMin_,phiMax_)); hh.push_back( m_dbe->book2D(("HB HF Depth 2 "+name.str()+unitname.str()).c_str(), (name.str()+" Depth 2 -- HB & HF only ("+unittitle.str().c_str()+")"), etaBins_,etaMin_,etaMax_, phiBins_,phiMin_,phiMax_)); hh.push_back( m_dbe->book2D(("HE Depth 3 "+name.str()+unitname.str()).c_str(), (name.str()+" Depth 3 -- HE ("+unittitle.str().c_str()+")"), etaBins_,etaMin_,etaMax_, phiBins_,phiMin_,phiMax_)); hh.push_back( m_dbe->book2D(("HO ZDC "+name.str()+unitname.str()).c_str(), (name.str()+" -- HO & ZDC ("+unittitle.str().c_str()+")"), etaBins_,etaMin_,etaMax_, phiBins_,phiMin_,phiMax_)); hh.push_back(m_dbe->book2D(("HE Depth 1 "+name.str()+unitname.str()).c_str(), (name.str()+" Depth 1 -- HE only ("+unittitle.str().c_str()+")"), etaBins_,etaMin_,etaMax_, phiBins_,phiMin_,phiMax_)); hh.push_back(m_dbe->book2D(("HE Depth 2 "+name.str()+unitname.str()).c_str(), (name.str()+" Depth 2 -- HE only ("+unittitle.str().c_str()+")"), etaBins_,etaMin_,etaMax_, phiBins_,phiMin_,phiMax_)); for (unsigned int i=0;i<hh.size();++i) { hh[i]->setAxisTitle("i#eta",1); hh[i]->setAxisTitle("i#phi",2); } /* if (showTiming) { cpu_timer.stop(); std::cout <<"TIMER:: HcalBaseMonitor SETUPDEPTHHISTS2D "<<name.str().c_str()<<" -> "<<cpu_timer.cpuTime()<<std::endl; } */ return; } // void HcalBaseMonitor::setupDepthHists2D(std::vector<MonitorElement*> &hh, std::string Name, std::string Units)
void HcalBaseMonitor::setupDepthHists2D | ( | std::vector< MonitorElement * > & | hh, |
std::string | Name, | ||
std::string | Units, | ||
int | nbinsx, | ||
int | lowboundx, | ||
int | highboundx, | ||
int | nbinsy, | ||
int | lowboundy, | ||
int | highboundy | ||
) |
Definition at line 454 of file HcalBaseMonitor.cc.
References DQMStore::book2D(), gather_cfg::cout, cpu_timer, edm::CPUTimer::cpuTime(), m_dbe, mergeVDriftHistosByStation::name, edm::CPUTimer::reset(), showTiming, edm::CPUTimer::start(), and edm::CPUTimer::stop().
{ /* Code makes vector of 2D MonitorElements for all 6 depths (4 depths, + 2 for separate HE histograms). Bins are automatically set for eta/phi indices DEPRECATE THIS ONCE ALL OLD-STYLE 2D HISTOGRAMS HAVE BEEN REMOVED! */ if (showTiming) { cpu_timer.reset(); cpu_timer.start(); } std::stringstream name; name<<Name; std::stringstream unitname; std::stringstream unittitle; if (Units.empty()) { unitname<<Units; unittitle<<"No Units"; } else { unitname<<" "<<Units; unittitle<<Units; } // Push back depth plots hh.push_back(m_dbe->book2D(("HB HF Depth 1 "+name.str()+unitname.str()).c_str(), (name.str()+" Depth 1 -- HB & HF only ("+unittitle.str().c_str()+")"), nbinsx, lowboundx, highboundx, nbinsy, lowboundy, highboundy)); hh.push_back( m_dbe->book2D(("HB HF Depth 2 "+name.str()+unitname.str()).c_str(), (name.str()+" Depth 2 -- HB & HF only ("+unittitle.str().c_str()+")"), nbinsx, lowboundx, highboundx, nbinsy, lowboundy, highboundy)); hh.push_back( m_dbe->book2D(("HE Depth 3 "+name.str()+unitname.str()).c_str(), (name.str()+" Depth 3 -- HE ("+unittitle.str().c_str()+")"), nbinsx, lowboundx, highboundx, nbinsy, lowboundy, highboundy)); hh.push_back( m_dbe->book2D(("HO ZDC "+name.str()+unitname.str()).c_str(), (name.str()+" -- HO & ZDC ("+unittitle.str().c_str()+")"), nbinsx, lowboundx, highboundx, nbinsy, lowboundy, highboundy)); hh.push_back(m_dbe->book2D(("HE Depth 1 "+name.str()+unitname.str()).c_str(), (name.str()+" Depth 1 -- HE only ("+unittitle.str().c_str()+")"), nbinsx, lowboundx, highboundx, nbinsy, lowboundy, highboundy)); hh.push_back(m_dbe->book2D(("HE Depth 2 "+name.str()+unitname.str()).c_str(), (name.str()+" Depth 2 -- HE only ("+unittitle.str().c_str()+")"), nbinsx, lowboundx, highboundx, nbinsy, lowboundy, highboundy)); if (showTiming) { cpu_timer.stop(); std::cout <<"TIMER:: HcalBaseMonitor SETUPDEPTHHISTS2D "<<name.str().c_str()<<" -> "<<cpu_timer.cpuTime()<<std::endl; } return; } // void HcalBaseMonitor::setupDepthHists2D(std::vector<MonitorElement*> &hh, std::string Name, std::string Units)
void HcalBaseMonitor::setupDepthHists2D | ( | MonitorElement *& | h, |
std::vector< MonitorElement * > & | hh, | ||
std::string | Name, | ||
std::string | Units, | ||
int | nbinsx, | ||
int | lowboundx, | ||
int | highboundx, | ||
int | nbinsy, | ||
int | lowboundy, | ||
int | highboundy | ||
) |
Definition at line 404 of file HcalBaseMonitor.cc.
References DQMStore::book2D(), gather_cfg::cout, cpu_timer, edm::CPUTimer::cpuTime(), m_dbe, mergeVDriftHistosByStation::name, edm::CPUTimer::reset(), setupDepthHists2D(), showTiming, edm::CPUTimer::start(), and edm::CPUTimer::stop().
{ /* Code makes overall 2D MonitorElement histogram, and the vector of 2D MonitorElements for each individual depth. Bin ranges, sizes are specified by user DEPRECATE THIS ONCE ALL OLD-STYLE 2D HISTOGRAMS HAVE BEEN REMOVED! */ if (showTiming) { cpu_timer.reset(); cpu_timer.start(); } std::stringstream name; name<<Name; std::stringstream unitname; std::stringstream unittitle; if (Units.empty()) { unitname<<Units; unittitle<<"No Units"; } else { unitname<<" "<<Units; unittitle<<Units; } h=m_dbe->book2D(("All "+name.str()+unitname.str()).c_str(), (name.str() + " for all HCAL ("+unittitle.str().c_str()+")"), nbinsx, lowboundx, highboundx, nbinsy, lowboundy, highboundy); setupDepthHists2D(hh, Name, Units, nbinsx, lowboundx, highboundx, nbinsy, lowboundy, highboundy); if (showTiming) { cpu_timer.stop(); std::cout <<"TIMER:: HcalBaseMonitor SETUPDEPTHHISTS2D_OVERALL "<<name.str().c_str()<<" -> "<<cpu_timer.cpuTime()<<std::endl; } return; } // void HcalBaseMonitor::setupDepthHists2D(MonitorElement* &h, std::vector<MonitorElement*> &hh, std::string Name, std::string Units, int nbinsx...)
void HcalBaseMonitor::setupDepthHists2D | ( | MonitorElement *& | h, |
std::vector< MonitorElement * > & | hh, | ||
std::string | Name, | ||
std::string | Units | ||
) |
Definition at line 283 of file HcalBaseMonitor.cc.
References DQMStore::book2D(), etaBins_, etaMax_, etaMin_, m_dbe, mergeVDriftHistosByStation::name, phiBins_, phiMax_, phiMin_, and MonitorElement::setAxisTitle().
Referenced by setupDepthHists2D().
{ /* Code makes overall 2D MonitorElement histogram, and the vector of 2D MonitorElements for each individual depth. Eta, Phi bins are set automatically from the etaMax_, etaMin_, etc. values in HcalBaseMonitor.h */ /* if (showTiming) { cpu_timer.reset(); cpu_timer.start(); } */ std::stringstream name; name<<Name; std::stringstream unitname; std::stringstream unittitle; if (Units.empty()) { unitname<<Units; unittitle<<"No Units"; } else { unitname<<" "<<Units; unittitle<<Units; } h=m_dbe->book2D(("All "+name.str()+unitname.str()).c_str(), (name.str() + " for all HCAL ("+unittitle.str().c_str()+")"), etaBins_, etaMin_, etaMax_, phiBins_, phiMin_, phiMax_); h->setAxisTitle("i#eta",1); h->setAxisTitle("i#phi",2); setupDepthHists2D(hh, Name, Units); /* if (showTiming) { cpu_timer.stop(); std::cout <<"TIMER:: HcalBaseMonitor SETUPDEPTHHISTS2D_OVERALL "<<name.str().c_str()<<" -> "<<cpu_timer.cpuTime()<<std::endl; } */ return; } // void HcalBaseMonitor::setupDepthHists2D(MonitorElement* &h, std::vector<MonitorElement*> &hh, std::string Name, std::string Units)
void HcalBaseMonitor::SetupEtaPhiHists | ( | EtaPhiHists & | hh, |
std::string | Name, | ||
std::string | Units | ||
) |
Definition at line 277 of file HcalBaseMonitor.cc.
References m_dbe, and EtaPhiHists::setup().
void HcalBaseMonitor::SetupEtaPhiHists | ( | MonitorElement *& | h, |
EtaPhiHists & | hh, | ||
std::string | Name, | ||
std::string | Units | ||
) |
Definition at line 248 of file HcalBaseMonitor.cc.
References DQMStore::book2D(), m_dbe, mergeVDriftHistosByStation::name, and MonitorElement::setAxisTitle().
{ std::stringstream name; name<<Name; std::stringstream unitname; std::stringstream unittitle; if (Units.empty()) { unitname<<Units; unittitle<<"No Units"; } else { unitname<<" "<<Units; unittitle<<Units; } h=m_dbe->book2D(("All "+name.str()+unitname.str()).c_str(), (name.str() + " for all HCAL ("+unittitle.str().c_str()+")"), 85,-42.5,42.5, 72,0.5,72.5); h->setAxisTitle("i#eta",1); h->setAxisTitle("i#phi",2); SetupEtaPhiHists(hh, Name, Units); return; }
void HcalBaseMonitor::setVerbosity | ( | int | verb | ) | [inline] |
bool HcalBaseMonitor::vetoCell | ( | HcalDetId & | id | ) |
Definition at line 204 of file HcalBaseMonitor.cc.
{ /* Function identifies whether cell with HcalDetId 'id' should be vetoed, based on elements stored in badCells_ array. */ if(badCells_.size()==0) return false; for(unsigned int i = 0; i< badCells_.size(); ++i) { unsigned int badc = atoi(badCells_[i].c_str()); if(id.rawId() == badc) return true; } return false; } // bool HcalBaseMonitor::vetoCell(HcalDetId id)
std::vector<int> HcalBaseMonitor::AllowedCalibTypes_ [protected] |
Definition at line 120 of file HcalBaseMonitor.h.
Referenced by setup().
std::vector<std::string> HcalBaseMonitor::badCells_ [protected] |
Definition at line 116 of file HcalBaseMonitor.h.
Referenced by HcalBaseMonitor(), hideKnownBadCells(), setup(), and vetoCell().
std::string HcalBaseMonitor::baseFolder_ [protected] |
Definition at line 118 of file HcalBaseMonitor.h.
Referenced by HcalEEUSMonitor::clearME(), clearME(), HcalBaseMonitor(), HcalEEUSMonitor::setup(), and HcalCaloTowerMonitor::setup().
bool HcalBaseMonitor::checkHB_ [protected] |
Definition at line 106 of file HcalBaseMonitor.h.
Referenced by setup().
bool HcalBaseMonitor::checkHE_ [protected] |
Definition at line 106 of file HcalBaseMonitor.h.
Referenced by setup().
bool HcalBaseMonitor::checkHF_ [protected] |
Definition at line 106 of file HcalBaseMonitor.h.
Referenced by setup().
bool HcalBaseMonitor::checkHO_ [protected] |
Definition at line 106 of file HcalBaseMonitor.h.
Referenced by setup().
int HcalBaseMonitor::checkNevents_ [protected] |
Definition at line 99 of file HcalBaseMonitor.h.
Referenced by setup().
edm::CPUTimer HcalBaseMonitor::cpu_timer [protected] |
Definition at line 110 of file HcalBaseMonitor.h.
Referenced by setupDepthHists1D(), and setupDepthHists2D().
bool HcalBaseMonitor::dump2database [protected] |
Definition at line 98 of file HcalBaseMonitor.h.
Referenced by setup().
int HcalBaseMonitor::etaBins_ [protected] |
Reimplemented in HcalCaloTowerMonitor.
Definition at line 103 of file HcalBaseMonitor.h.
Referenced by setup(), and setupDepthHists2D().
double HcalBaseMonitor::etaMax_ [protected] |
Reimplemented in HcalCaloTowerMonitor.
Definition at line 101 of file HcalBaseMonitor.h.
Referenced by setup(), and setupDepthHists2D().
double HcalBaseMonitor::etaMin_ [protected] |
Reimplemented in HcalCaloTowerMonitor.
Definition at line 101 of file HcalBaseMonitor.h.
Referenced by setup(), and setupDepthHists2D().
int HcalBaseMonitor::fVerbosity [protected] |
Definition at line 96 of file HcalBaseMonitor.h.
Referenced by getVerbosity(), HcalBaseMonitor(), HcalCaloTowerMonitor::processEvent(), HcalEEUSMonitor::processEvent(), HcalEEUSMonitor::setup(), setup(), and setVerbosity().
int HcalBaseMonitor::ievt_ [protected] |
Reimplemented in HcalCaloTowerMonitor, and HcalEEUSMonitor.
Definition at line 125 of file HcalBaseMonitor.h.
Referenced by beginRun(), processEvent(), and setup().
bool HcalBaseMonitor::LBprocessed_ [protected] |
Definition at line 128 of file HcalBaseMonitor.h.
Referenced by beginLuminosityBlock(), beginRun(), and endLuminosityBlock().
int HcalBaseMonitor::levt_ [protected] |
Definition at line 126 of file HcalBaseMonitor.h.
Referenced by beginLuminosityBlock(), beginRun(), processEvent(), and setup().
int HcalBaseMonitor::lumiblock [protected] |
Definition at line 131 of file HcalBaseMonitor.h.
Referenced by LumiBlockUpdate(), and setup().
DQMStore* HcalBaseMonitor::m_dbe [protected] |
Definition at line 114 of file HcalBaseMonitor.h.
Referenced by HcalEEUSMonitor::clearME(), clearME(), HcalCaloTowerMonitor::processEvent(), HcalEEUSMonitor::processEvent(), processEvent(), HcalEEUSMonitor::processEvent_RawData(), HcalEEUSMonitor::setup(), setup(), HcalCaloTowerMonitor::setup(), setupDepthHists1D(), setupDepthHists2D(), and SetupEtaPhiHists().
bool HcalBaseMonitor::makeDiagnostics [protected] |
Definition at line 112 of file HcalBaseMonitor.h.
Referenced by getDiagnostics(), setDiagnostics(), and setup().
MonitorElement* HcalBaseMonitor::meEVT_ [protected] |
Reimplemented in HcalCaloTowerMonitor, and HcalEEUSMonitor.
Definition at line 129 of file HcalBaseMonitor.h.
Referenced by processEvent(), and setup().
MonitorElement* HcalBaseMonitor::meTOTALEVT_ [protected] |
Definition at line 130 of file HcalBaseMonitor.h.
Referenced by processEvent(), and setup().
double HcalBaseMonitor::minErrorFlag_ [protected] |
Definition at line 104 of file HcalBaseMonitor.h.
Referenced by setup().
int HcalBaseMonitor::Nlumiblocks_ [protected] |
Definition at line 108 of file HcalBaseMonitor.h.
Referenced by LumiBlockUpdate(), and setup().
int HcalBaseMonitor::NumBadHB [protected] |
Definition at line 133 of file HcalBaseMonitor.h.
Referenced by setup().
int HcalBaseMonitor::NumBadHE [protected] |
Definition at line 133 of file HcalBaseMonitor.h.
Referenced by setup().
int HcalBaseMonitor::NumBadHF [protected] |
Definition at line 133 of file HcalBaseMonitor.h.
Referenced by setup().
int HcalBaseMonitor::NumBadHO [protected] |
Definition at line 133 of file HcalBaseMonitor.h.
Referenced by setup().
int HcalBaseMonitor::oldlumiblock [protected] |
Definition at line 132 of file HcalBaseMonitor.h.
Referenced by setup().
bool HcalBaseMonitor::Online_ [protected] |
Definition at line 115 of file HcalBaseMonitor.h.
Referenced by setup().
int HcalBaseMonitor::phiBins_ [protected] |
Reimplemented in HcalCaloTowerMonitor.
Definition at line 103 of file HcalBaseMonitor.h.
Referenced by setup(), and setupDepthHists2D().
double HcalBaseMonitor::phiMax_ [protected] |
Reimplemented in HcalCaloTowerMonitor.
Definition at line 102 of file HcalBaseMonitor.h.
Referenced by setup(), and setupDepthHists2D().
double HcalBaseMonitor::phiMin_ [protected] |
Reimplemented in HcalCaloTowerMonitor.
Definition at line 102 of file HcalBaseMonitor.h.
Referenced by setup(), and setupDepthHists2D().
MonitorElement* HcalBaseMonitor::ProblemCells [protected] |
Definition at line 122 of file HcalBaseMonitor.h.
Referenced by hideKnownBadCells(), and periodicReset().
EtaPhiHists HcalBaseMonitor::ProblemCellsByDepth [protected] |
Definition at line 123 of file HcalBaseMonitor.h.
Referenced by hideKnownBadCells(), and periodicReset().
MonitorElement* HcalBaseMonitor::ProblemsVsLB [protected] |
Definition at line 134 of file HcalBaseMonitor.h.
Referenced by setup().
MonitorElement* HcalBaseMonitor::ProblemsVsLB_HB [protected] |
Definition at line 135 of file HcalBaseMonitor.h.
Referenced by setup().
MonitorElement * HcalBaseMonitor::ProblemsVsLB_HBHEHF [protected] |
Definition at line 135 of file HcalBaseMonitor.h.
Referenced by setup().
MonitorElement * HcalBaseMonitor::ProblemsVsLB_HE [protected] |
Definition at line 135 of file HcalBaseMonitor.h.
Referenced by setup().
MonitorElement * HcalBaseMonitor::ProblemsVsLB_HF [protected] |
Definition at line 135 of file HcalBaseMonitor.h.
Referenced by setup().
MonitorElement * HcalBaseMonitor::ProblemsVsLB_HO [protected] |
Definition at line 135 of file HcalBaseMonitor.h.
Referenced by setup().
int HcalBaseMonitor::resetNevents_ [protected] |
Definition at line 107 of file HcalBaseMonitor.h.
Referenced by setup().
std::string HcalBaseMonitor::rootFolder_ [protected] |
Definition at line 117 of file HcalBaseMonitor.h.
Referenced by HcalBaseMonitor(), HcalEEUSMonitor::setup(), setup(), and HcalCaloTowerMonitor::setup().
bool HcalBaseMonitor::showTiming [protected] |
Definition at line 97 of file HcalBaseMonitor.h.
Referenced by setup(), setupDepthHists1D(), and setupDepthHists2D().
int HcalBaseMonitor::tevt_ [protected] |
Definition at line 127 of file HcalBaseMonitor.h.
Referenced by processEvent(), and setup().