59 for (
int i = 0;
i < 18;
i++) {
160 for (
int i = 0;
i < 18;
i++) {
228 for (
int i = 0;
i < 18;
i++) {
229 sprintf(histo,
"EEOT digi occupancy %s",
Numbers::sEE(
i+1).c_str());
236 sprintf(histo,
"EEOT MEM digi occupancy %s",
Numbers::sEE(i+1).c_str());
242 sprintf(histo,
"EEOT rec hit energy %s",
Numbers::sEE(i+1).c_str());
243 meEERecHitEnergy_[
i] =
dqmStore_->
bookProfile2D(histo, histo, 50,
Numbers::ix0EE(i+1)+0.,
Numbers::ix0EE(i+1)+50., 50,
Numbers::iy0EE(i+1)+0.,
Numbers::iy0EE(i+1)+50., 4096, 0., 4096.,
"s");
250 sprintf(histo,
"EEOT energy spectrum %s",
Numbers::sEE(i+1).c_str());
256 sprintf(histo,
"EEOT rec hit spectrum EE -");
260 sprintf(histo,
"EEOT rec hit spectrum EE +");
264 sprintf(histo,
"EEOT digi occupancy EE -");
268 sprintf(histo,
"EEOT digi occupancy EE - projection eta");
272 sprintf(histo,
"EEOT digi occupancy EE - projection phi");
277 sprintf(histo,
"EEOT digi occupancy EE +");
281 sprintf(histo,
"EEOT digi occupancy EE + projection eta");
285 sprintf(histo,
"EEOT digi occupancy EE + projection phi");
290 sprintf(histo,
"EEOT rec hit occupancy EE -");
294 sprintf(histo,
"EEOT rec hit occupancy EE - projection eta");
298 sprintf(histo,
"EEOT rec hit occupancy EE - projection phi");
303 sprintf(histo,
"EEOT rec hit occupancy EE +");
307 sprintf(histo,
"EEOT rec hit occupancy EE + projection eta");
311 sprintf(histo,
"EEOT rec hit occupancy EE + projection phi");
316 sprintf(histo,
"EEOT rec hit thr occupancy EE -");
320 sprintf(histo,
"EEOT rec hit thr occupancy EE - projection eta");
324 sprintf(histo,
"EEOT rec hit thr occupancy EE - projection phi");
329 sprintf(histo,
"EEOT rec hit thr occupancy EE +");
333 sprintf(histo,
"EEOT rec hit thr occupancy EE + projection eta");
337 sprintf(histo,
"EEOT rec hit thr occupancy EE + projection phi");
342 sprintf(histo,
"EEOT TP digi occupancy EE -");
346 sprintf(histo,
"EEOT TP digi occupancy EE - projection eta");
350 sprintf(histo,
"EEOT TP digi occupancy EE - projection phi");
355 sprintf(histo,
"EEOT TP digi occupancy EE +");
359 sprintf(histo,
"EEOT TP digi occupancy EE + projection eta");
363 sprintf(histo,
"EEOT TP digi occupancy EE + projection phi");
368 sprintf(histo,
"EEOT TP digi thr occupancy EE -");
372 sprintf(histo,
"EEOT TP digi thr occupancy EE - projection eta");
376 sprintf(histo,
"EEOT TP digi thr occupancy EE - projection phi");
381 sprintf(histo,
"EEOT TP digi thr occupancy EE +");
385 sprintf(histo,
"EEOT TP digi thr occupancy EE + projection eta");
389 sprintf(histo,
"EEOT TP digi thr occupancy EE + projection phi");
394 sprintf(histo,
"EEOT test pulse digi occupancy EE -");
399 sprintf(histo,
"EEOT test pulse digi occupancy EE +");
404 sprintf(histo,
"EEOT led digi occupancy EE -");
409 sprintf(histo,
"EEOT led digi occupancy EE +");
414 sprintf(histo,
"EEOT laser digi occupancy EE -");
419 sprintf(histo,
"EEOT laser digi occupancy EE +");
424 sprintf(histo,
"EEOT pedestal digi occupancy EE -");
429 sprintf(histo,
"EEOT pedestal digi occupancy EE +");
440 if ( !
init_ )
return;
445 for (
int i = 0;
i < 18;
i++) {
583 int runtype = dcchItr->getRunType();
610 int need = digis->size();
611 LogDebug(
"EEOccupancyTask") <<
"event " <<
ievt_ <<
" digi collection size " << need;
620 int hi =
id.hashedIndex();
633 if ( ism >= 1 && ism <= 9 ) ix = 101 - ix;
635 float xix = ix - 0.5;
636 float xiy = iy - 0.5;
638 if ( xix <= 0. || xix >= 100. || xiy <= 0. || xiy >= 100. ) {
640 edm::LogWarning(
"EEOccupancyTask") <<
" sm, ix, iw " << ism <<
" " << ix <<
" " << iy;
641 edm::LogWarning(
"EEOccupancyTask") <<
" xix, xiy " << xix <<
" " << xiy;
649 float xeex = eex - 0.5;
650 float xeey = eey - 0.5;
654 if ( ism >=1 && ism <= 9 ) {
668 if ( ism >=1 && ism <= 9 ) {
676 if ( runType[ism-1] ==
laser ) {
678 if ( ism >=1 && ism <= 9 ) {
686 if ( runType[ism-1] ==
led ) {
688 if ( ism >=1 && ism <= 9 ) {
698 if ( ism >=1 && ism <= 9 ) {
727 float PnId = pnItr->id().iPnId();
732 for (
int chInStrip = 1; chInStrip <= 5; chInStrip++){
734 st = chInStrip - 0.5;
756 int nebrh = rechits->size();
757 LogDebug(
"EEOccupancyTask") <<
"event " <<
ievt_ <<
" rec hits collection size " << nebrh;
766 int hi =
id.hashedIndex();
780 float xix = ( ism >= 1 && ism <= 9 ) ? 101 - eex - 0.5 : eex - 0.5;
781 float xiy = eey - 0.5;
784 float xeex = eex - 0.5;
785 float xeey = eey - 0.5;
789 if ( ism >= 1 && ism <= 9 ) {
799 uint32_t
flag = rechitItr->recoFlag();
804 if ( ism >= 1 && ism <= 9 ) {
836 int nebtpg = trigPrimDigis->size();
837 LogDebug(
"EEOccupancyTask") <<
"event " <<
ievt_ <<
" trigger primitives digis collection size " << nebtpg;
847 for (
unsigned int i=0;
i<crystals->size();
i++ ) {
854 int hi =
id.hashedIndex();
865 float xeex = eex - 0.5;
866 float xeey = eey - 0.5;
870 if ( ism >= 1 && ism <= 9 ) {
882 if ( ism >= 1 && ism <= 9 ) {
MonitorElement * meEEPedestalDigiOccupancy_[2]
T getParameter(std::string const &) const
MonitorElement * meEETrigPrimDigiOccupancyProEtaThr_[2]
T getUntrackedParameter(std::string const &, T const &) const
void beginJob(void)
BeginJob.
MonitorElement * meEETestPulseDigiOccupancy_[2]
boost::transform_iterator< IterHelp, boost::counting_iterator< int > > const_iterator
MonitorElement * meEERecHitEnergy_[18]
MonitorElement * book1D(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1D histogram.
void rmdir(const std::string &fullpath)
static int iy0EE(const int ism)
Some "id" conversions.
MonitorElement * meEETrigPrimDigiOccupancyProPhi_[2]
void beginRun(const edm::Run &r, const edm::EventSetup &c)
BeginRun.
static std::string sEE(const int ism)
Geom::Phi< T > phi() const
std::vector< T >::const_iterator const_iterator
MonitorElement * meEELaserDigiOccupancy_[2]
MonitorElement * meEERecHitOccupancyProEtaThr_[2]
edm::InputTag EcalPnDiodeDigiCollection_
MonitorElement * meSpectrum_[18]
void endRun(const edm::Run &r, const edm::EventSetup &c)
EndRun.
MonitorElement * meEEDigiOccupancyProEta_[2]
MonitorElement * book1DD(const char *name, const char *title, int nchX, double lowX, double highX)
Book 1S histogram.
edm::ESHandle< CaloGeometry > pGeometry_
MonitorElement * meEERecHitOccupancyProPhi_[2]
virtual ~EEOccupancyTask()
Destructor.
float geometryEE[EEDetId::kSizeForDenseIndexing][2]
void tag(MonitorElement *me, unsigned int myTag)
void analyze(const edm::Event &e, const edm::EventSetup &c)
Analyze.
MonitorElement * meOccupancyMem_[18]
MonitorElement * meEETrigPrimDigiOccupancyThr_[2]
edm::InputTag EcalTrigPrimDigiCollection_
static std::vector< DetId > * crystals(const EcalTrigTowerDetId &id)
static int iSM(const int ism, const EcalSubdetector subdet)
edm::InputTag EcalRawDataCollection_
void removeElement(const std::string &name)
std::string getName(Reflex::Type &cc)
MonitorElement * meEERecHitOccupancyProPhiThr_[2]
MonitorElement * meEERecHitOccupancy_[2]
MonitorElement * meEEDigiOccupancy_[2]
MonitorElement * meEETrigPrimDigiOccupancy_[2]
EEOccupancyTask(const edm::ParameterSet &ps)
Constructor.
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
MonitorElement * meEERecHitOccupancyThr_[2]
MonitorElement * meEEDigiOccupancyProPhi_[2]
static void initGeometry(const edm::EventSetup &setup, bool verbose=false)
T const * product() const
MonitorElement * meEELedDigiOccupancy_[2]
MonitorElement * meEETrigPrimDigiOccupancyProEta_[2]
edm::InputTag EcalRecHitCollection_
MonitorElement * meOccupancy_[18]
MonitorElement * meEERecHitOccupancyProEta_[2]
static int ix0EE(const int ism)
static int severityLevel(const DetId, const EcalRecHitCollection &, const EcalChannelStatus &, float recHitEtThreshold=5., SpikeId spId=kSwissCross, float spIdThreshold=0.95, float recHitEnergyThresholdForTiming=2., float recHitEnergyThresholdForEE=15, float spIdThresholdIEta85=0.999)
edm::InputTag EEDigiCollection_
static EcalSubdetector subDet(const EBDetId &id)
MonitorElement * book2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
Book 2D histogram.
void cleanup(void)
Cleanup.
int ism(int ieta, int iphi)
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
void Reset(void)
reset ME (ie. contents, errors, etc)
void setCurrentFolder(const std::string &fullpath)
MonitorElement * meEETrigPrimDigiOccupancyProPhiThr_[2]
MonitorElement * meEERecHitSpectrum_[2]
MonitorElement * bookProfile2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, int nchZ, double lowZ, double highZ, const char *option="s")