CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Static Private Attributes
L1TdeGCT Class Reference

#include <L1TdeGCT.h>

Inheritance diagram for L1TdeGCT:
DQMEDAnalyzer edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >

Public Member Functions

 L1TdeGCT (const edm::ParameterSet &)
 
 ~L1TdeGCT () override
 
- Public Member Functions inherited from DQMEDAnalyzer
void accumulate (edm::Event const &event, edm::EventSetup const &setup) final
 
void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
void beginStream (edm::StreamID id) final
 
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &)
 
 DQMEDAnalyzer ()
 
void endLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void endRun (edm::Run const &run, edm::EventSetup const &setup) final
 
virtual bool getCanSaveByLumi ()
 
- Public Member Functions inherited from edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >
 EDProducer ()=default
 
 EDProducer (const EDProducer &)=delete
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 
const EDProduceroperator= (const EDProducer &)=delete
 

Protected Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void bookHistograms (DQMStore::IBooker &ibooker, edm::Run const &, edm::EventSetup const &) override
 
- Protected Member Functions inherited from DQMEDAnalyzer
uint64_t meId () const
 

Private Member Functions

int verbose ()
 

Private Attributes

std::string cLabel [nGctColl_]
 
int colCount [nGctColl_]
 
int colCount_stage1Layer2 [nStage1Layer2Coll_]
 
edm::EDGetTokenT< L1DataEmulRecordDEsource_
 
MonitorElementdeword [nGctColl_]
 
MonitorElementdeword_stage1layer2 [nStage1Layer2Coll_]
 
MonitorElementdword [nGctColl_]
 
MonitorElementdword_stage1layer2 [nStage1Layer2Coll_]
 
std::string errLabel [nerr] = {"Agree", "Loc. Agree", "L.Disagree", "Data only", "Emul only"}
 
MonitorElementerrortype [nGctColl_]
 
MonitorElementerrortype_stage1layer2 [nStage1Layer2Coll_]
 
MonitorElementeta [nGctColl_]
 
MonitorElementeta_stage1layer2 [nStage1Layer2Coll_]
 
MonitorElementetaData [nGctColl_]
 
MonitorElementetaData_stage1layer2 [nStage1Layer2Coll_]
 
const double etaMaxim = 21.5
 
const double etaMinim = -0.5
 
const int etaNBins = 22
 
MonitorElementetaphi [nGctColl_]
 
MonitorElementetaphi_stage1layer2 [nStage1Layer2Coll_]
 
MonitorElementeword [nGctColl_]
 
MonitorElementeword_stage1layer2 [nStage1Layer2Coll_]
 
bool hasRecord_
 
std::string histFile_
 
std::string histFolder_
 
bool m_stage1_layer2_
 
MonitorElementmasked [nGctColl_]
 
MonitorElementmasked_stage1layer2 [nStage1Layer2Coll_]
 
bool monitorDaemon_
 
const int nbit = 32
 
int nWithCol [nGctColl_]
 
int nWithCol_stage1Layer2 [nStage1Layer2Coll_]
 
MonitorElementphi [nGctColl_]
 
MonitorElementphi_stage1layer2 [nStage1Layer2Coll_]
 
MonitorElementphiData [nGctColl_]
 
MonitorElementphiData_stage1layer2 [nStage1Layer2Coll_]
 
const double phiMaxim = 17.5
 
const double phiMinim = -0.5
 
const int phiNBins = 18
 
MonitorElementrnk [nGctColl_]
 
MonitorElementrnk_stage1layer2 [nStage1Layer2Coll_]
 
MonitorElementrnkData [nGctColl_]
 
MonitorElementrnkData_stage1layer2 [nStage1Layer2Coll_]
 
std::string sLabel [nStage1Layer2Coll_]
 
MonitorElementsysncand [2]
 
MonitorElementsysrates
 
int verbose_
 

Static Private Attributes

static const int nerr = 5
 
static const int nGctColl_ = dedefs::GCThfbit - dedefs::GCTisolaem + 1
 
static const int nStage1Layer2Coll_ = dedefs::GCTisotaujets - dedefs::GCTisolaem + 1
 

Additional Inherited Members

- Public Types inherited from DQMEDAnalyzer
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- Public Types inherited from edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >
using CacheTypes = CacheContexts< T... >
 
using GlobalCache = typename CacheTypes::GlobalCache
 
using HasAbility = AbilityChecker< T... >
 
using InputProcessBlockCache = typename CacheTypes::InputProcessBlockCache
 
using LuminosityBlockCache = typename CacheTypes::LuminosityBlockCache
 
using LuminosityBlockContext = LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCache >
 
using LuminosityBlockSummaryCache = typename CacheTypes::LuminosityBlockSummaryCache
 
using RunCache = typename CacheTypes::RunCache
 
using RunContext = RunContextT< RunCache, GlobalCache >
 
using RunSummaryCache = typename CacheTypes::RunSummaryCache
 
- Static Public Member Functions inherited from DQMEDAnalyzer
static void globalEndJob (DQMEDAnalyzerGlobalCache const *)
 
static void globalEndLuminosityBlockProduce (edm::LuminosityBlock &lumi, edm::EventSetup const &setup, LuminosityBlockContext const *context)
 
static void globalEndRunProduce (edm::Run &run, edm::EventSetup const &setup, RunContext const *context)
 
static std::unique_ptr< DQMEDAnalyzerGlobalCacheinitializeGlobalCache (edm::ParameterSet const &)
 
- Protected Attributes inherited from DQMEDAnalyzer
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 
unsigned int streamId_
 

Detailed Description

Definition at line 27 of file L1TdeGCT.h.

Constructor & Destructor Documentation

◆ L1TdeGCT()

L1TdeGCT::L1TdeGCT ( const edm::ParameterSet iConfig)
explicit

Definition at line 10 of file L1TdeGCT.cc.

10  {
11  verbose_ = iConfig.getUntrackedParameter<int>("VerboseFlag", 0);
12 
13  if (verbose())
14  std::cout << "L1TdeGCT::L1TdeGCT()...\n" << std::flush;
15 
16  DEsource_ = consumes<L1DataEmulRecord>(iConfig.getParameter<edm::InputTag>("DataEmulCompareSource"));
17  histFolder_ = iConfig.getUntrackedParameter<std::string>("HistFolder");
18 
19  histFile_ = iConfig.getUntrackedParameter<std::string>("HistFile", "");
20  if (iConfig.getUntrackedParameter<bool>("disableROOToutput", true))
21  histFile_ = "";
22 
23  if (!histFile_.empty()) {
24  edm::LogInfo("OutputRootFile") << "L1TEmulator GCT specific histograms will be saved to " << histFile_.c_str()
25  << std::endl;
26  }
27 
28  hasRecord_ = true;
29 
30  if (verbose())
31  std::cout << "L1TdeGCT::L1TdeGCT()...done.\n" << std::flush;
32  m_stage1_layer2_ = iConfig.getParameter<bool>("stage1_layer2_");
33 }

References gather_cfg::cout, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), AlCaHLTBitMon_QueryRunRegistry::string, and verbose.

◆ ~L1TdeGCT()

L1TdeGCT::~L1TdeGCT ( )
override

Definition at line 35 of file L1TdeGCT.cc.

35 {}

Member Function Documentation

◆ analyze()

void L1TdeGCT::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
overrideprotectedvirtual

get the comparison results

get the de candidates

— Fill histograms(me) —

(note see L1Trigger/HardwareValidation/interface/DEtrait.h)

bitset loop

event based rate

object based rate

get the de candidates

— Fill histograms(me) —

(note see L1Trigger/HardwareValidation/interface/DEtrait.h)

bitset loop

event based rate

object based rate

Reimplemented from DQMEDAnalyzer.

Definition at line 336 of file L1TdeGCT.cc.

336  {
337  if (!hasRecord_)
338  return;
339 
340  if (verbose())
341  std::cout << "L1TdeGCT::analyze() start\n" << std::flush;
342 
345  iEvent.getByToken(DEsource_, deRecord);
346 
347  if (!deRecord.isValid()) {
348  edm::LogInfo("DataNotFound") << "Cannot find L1DataEmulRecord"
349  << " Please verify that comparator was successfully executed."
350  << " Emulator DQM for GCT will be skipped!" << std::endl;
351  hasRecord_ = false;
352  return;
353  }
354 
355  if (m_stage1_layer2_ == false) {
356  bool isComp = deRecord->get_isComp(GCT);
357  if (!isComp) {
358  if (verbose())
359  std::cout << "[L1TdeGCT] Gct information not generated in de-record."
360  << " Skiping event!\n"
361  << std::flush;
362  return;
363  }
364 
365  int DEncand[2] = {0};
366  for (int j = 0; j < 2; j++)
367  DEncand[j] = deRecord->getNCand(GCT, j);
368 
369  if (verbose())
370  std::cout << "[L1TdeGCT] ncands"
371  << " data: " << DEncand[0] << " emul: " << DEncand[1] << std::endl;
372 
374  L1DEDigiCollection deColl;
375  deColl = deRecord->getColl();
376 
377  // extract the GCT comparison digis
378  L1DEDigiCollection gctColl;
379 
380  gctColl.reserve(20);
381  gctColl.clear();
382 
383  for (L1DEDigiCollection::const_iterator it = deColl.begin(); it != deColl.end(); it++)
384  if (!it->empty())
385  if (it->sid() == GCT)
386  gctColl.push_back(*it);
387 
388  if (verbose()) {
389  std::cout << "[L1TdeGCT] record has " << gctColl.size() << " gct de digis\n" << std::flush;
390  for (L1DEDigiCollection::const_iterator it = gctColl.begin(); it != gctColl.end(); it++)
391  std::cout << "\t" << *it << std::endl;
392  }
393 
394  const int nullVal = L1DataEmulDigi().reset();
395 
397 
398  // d|e candidate loop
399  for (L1DEDigiCollection::const_iterator it = gctColl.begin(); it != gctColl.end(); it++) {
400  // sid should be GCT
401  int sid = it->sid();
402  // cid: GCTisolaem, GCTnoisoem, GCTcenjets, GCTforjets, GCTtaujets
403  int cid = it->cid();
405 
406  if (verbose())
407  std::cout << "[L1TdeGCT] processing digi "
408  << " sys:" << sid << " type:" << cid << " \n\t" << *it << "\n"
409  << std::flush;
410 
411  //assert(cid==GCT);
412  if (sid != GCT || it->empty()) {
413  LogDebug("L1TdeGCT") << "consistency check failure, non-gct digis!";
414  continue;
415  }
416 
417  int type = it->type();
418  double phiv = it->x1();
419  double etav = it->x2();
420  float rankarr[2];
421  it->rank(rankarr);
422  float rnkv = rankarr[0];
423 
424  double wei = 1.;
425 
426  unsigned int mask = (~0x0);
427 
428  // shift coll type for starting at zero
429  int ccid = cid - dedefs::GCTisolaem;
430  if (ccid < 0 || ccid >= nGctColl_) {
431  LogDebug("L1TdeGCT") << "consistency check failure, col type outbounds:" << ccid << "\n";
432  ccid = 0;
433  }
434 
435  //type: 0:agree 1:loc.agree, 2:loc.disagree, 3:data.only, 4:emul.only
436  if (it->type() < 4)
437  sysncand[0]->Fill(ccid);
438  if (it->type() < 5 && it->type() != 3)
439  sysncand[1]->Fill(ccid);
440 
441  errortype[ccid]->Fill(type);
442 
443  wei = 1.;
444  if (!type)
445  wei = 0.;
446  if (etav != nullVal && phiv != nullVal)
447  etaphi[ccid]->Fill(etav, phiv, wei);
448  if (etav != nullVal)
449  eta[ccid]->Fill(etav, wei);
450  if (phiv != nullVal)
451  phi[ccid]->Fill(phiv, wei);
452  rnk[ccid]->Fill(rnkv, wei);
453 
454  //exclude e-only cands (only data)
455  wei = 1.;
456  if (type == 4)
457  wei = 0.;
458  if (etav != nullVal)
459  etaData[ccid]->Fill(etav, wei);
460  if (phiv != nullVal)
461  phiData[ccid]->Fill(phiv, wei);
462  rnkData[ccid]->Fill(rnkv, wei);
463  wei = 1;
464 
465  // GCT trigger bits
466  unsigned int word[2];
467  it->data(word);
468  std::bitset<32> dbits(word[0]);
469  std::bitset<32> ebits(word[1]);
470  unsigned int dexor = ((word[0]) ^ (word[1]));
471  //disagreeing bits
472  std::bitset<32> debits(dexor);
473  //disagreeing bits after masking
474  std::bitset<32> dembits(((dexor) & (mask)));
475 
476  if (verbose())
477  std::cout << "l1degct"
478  << " sid:" << sid << " cid:" << cid << "\n"
479  << " data:0x" << std::hex << word[0] << std::dec << " bitset:" << dbits << "\n"
480  << " emul:0x" << std::hex << word[1] << std::dec << " bitset:" << ebits << "\n"
481  << " xor:0x" << std::hex << dexor << std::dec << " bitset:" << debits
482  << " bitset:" << ((dbits) ^ (ebits)) << "\n"
483  << std::flush;
484 
486  for (int ibit = 0; ibit < 32; ibit++) {
487  wei = 1.;
488  //comparison gives no info if there's only 1 candidate
489  if (type == 3 || type == 4)
490  wei = 0.;
491  if (dbits[ibit])
492  dword[ccid]->Fill(ibit, wei);
493  if (ebits[ibit])
494  eword[ccid]->Fill(ibit, wei);
495  if (debits[ibit])
496  deword[ccid]->Fill(ibit, wei);
497  //if(dembits[ibit])masked[sid]->Fill(ibit,wei);
498  }
499  wei = 1;
500  }
501 
502  //error rates per GCT trigger object type
503  int hasCol[nGctColl_] = {0};
504  int nagree[nGctColl_] = {0};
505  for (L1DEDigiCollection::const_iterator it = gctColl.begin(); it != gctColl.end(); it++) {
506  int ccid = it->cid() - dedefs::GCTisolaem;
507  ccid = (ccid < 0 || ccid >= nGctColl_) ? 0 : ccid;
508  hasCol[ccid]++;
509  if (!it->type())
510  nagree[ccid]++;
511  }
512  for (int i = 0; i < nGctColl_; i++) {
513  if (!hasCol[i])
514  continue;
516  //nWithCol[i]++;
517  //if(nagree[i]<hasCol[i]) colCount[i]++;
519  nWithCol[i] += hasCol[i]; //#of objects
520  colCount[i] += nagree[i]; //#of agreements
521  }
522  for (int i = 0; i < nGctColl_; i++) {
523  int ibin = i + 1;
524  double rate = nWithCol[i] ? 1. - 1. * colCount[i] / nWithCol[i] : 0.;
525  sysrates->setBinContent(ibin, rate);
526  if (verbose()) {
527  std::cout << "[L1TDEMON] analyze rate computation\t\n"
528  << " colid:" << i << "(so far)"
529  << " nWithCol: " << nWithCol[i] << " colCount: " << colCount[i] << "(this event)"
530  << "hasCol: " << hasCol[i] << " nagree: " << nagree[i] << " rate:" << sysrates->getBinContent(ibin)
531  << "\n"
532  << std::flush;
533  if (rate > 1. || rate < 0.)
534  std::cout << "problem, error rate for " << SystLabel[i] << " is " << sysrates->getBinContent(ibin) << "\n"
535  << std::flush;
536  }
537  }
538  }
539 
540  if (m_stage1_layer2_ == true) {
541  bool isComp = deRecord->get_isComp(GCT);
542  if (!isComp) {
543  if (verbose())
544  std::cout << "[L1TdeGCT] Gct information not generated in de-record."
545  << " Skiping event!\n"
546  << std::flush;
547  return;
548  }
549 
550  int DEncand[2] = {0};
551  for (int j = 0; j < 2; j++)
552  DEncand[j] = deRecord->getNCand(GCT, j);
553 
554  if (verbose())
555  std::cout << "[L1TdeGCT] ncands"
556  << " data: " << DEncand[0] << " emul: " << DEncand[1] << std::endl;
557 
559  L1DEDigiCollection deColl;
560  deColl = deRecord->getColl();
561 
562  // extract the GCT comparison digis
563  L1DEDigiCollection stage1layer2Coll;
564 
565  stage1layer2Coll.reserve(21);
566  stage1layer2Coll.clear();
567 
568  for (L1DEDigiCollection::const_iterator it = deColl.begin(); it != deColl.end(); it++)
569  if (!it->empty())
570  if (it->sid() == GCT)
571  stage1layer2Coll.push_back(*it);
572 
573  if (verbose()) {
574  std::cout << "[L1TdeSTAGE1LAYER2] record has " << stage1layer2Coll.size() << " stage1layer2 de digis\n"
575  << std::endl;
576  for (L1DEDigiCollection::const_iterator it = stage1layer2Coll.begin(); it != stage1layer2Coll.end(); it++)
577  std::cout << "\t" << *it << std::endl;
578  }
579 
580  const int nullVal = L1DataEmulDigi().reset();
581 
583 
584  // d|e candidate loop
585  for (L1DEDigiCollection::const_iterator it = stage1layer2Coll.begin(); it != stage1layer2Coll.end(); it++) {
586  // sid should be GCT
587  int sid = it->sid();
588 
589  int cid = it->cid();
591 
592  if (verbose())
593  std::cout << "[L1TdeStage1Layer2] processing digi "
594  << " sys:" << sid << " type:" << cid << " \n\t" << *it << "\n"
595  << std::endl;
596 
597  if (sid != GCT || it->empty()) {
598  LogDebug("L1TdeGCT") << "consistency check failure, non-stage1layer2 digis!";
599  continue;
600  }
601 
602  int type = it->type();
603  double phiv = it->x1();
604  double etav = it->x2();
605  float rankarr[2];
606  it->rank(rankarr);
607  float rnkv = rankarr[0];
608 
609  double wei = 1.;
610 
611  unsigned int mask = (~0x0);
612 
613  // shift coll type for starting at zero
614  int ccid = cid - dedefs::GCTisolaem;
615  if (ccid < 0 || ccid >= nStage1Layer2Coll_) {
616  LogDebug("L1TdeGCT") << "consistency check failure, col type outbounds:" << ccid << "\n";
617  ccid = 0;
618  }
619 
620  //type: 0:agree 1:loc.agree, 2:loc.disagree, 3:data.only, 4:emul.only
621  if (it->type() < 4)
622  sysncand[0]->Fill(ccid);
623  if (it->type() < 5 && it->type() != 3)
624  sysncand[1]->Fill(ccid);
626  wei = 1.;
627  if (!type)
628  wei = 0.;
629  if (etav != nullVal && phiv != nullVal)
630  etaphi_stage1layer2[ccid]->Fill(etav, phiv, wei);
631  if (etav != nullVal)
632  eta_stage1layer2[ccid]->Fill(etav, wei);
633  if (phiv != nullVal)
634  phi_stage1layer2[ccid]->Fill(phiv, wei);
635  rnk_stage1layer2[ccid]->Fill(rnkv, wei);
636 
637  //exclude e-only cands (only data)
638  wei = 1.;
639  if (type == 4)
640  wei = 0.;
641  if (etav != nullVal)
642  etaData_stage1layer2[ccid]->Fill(etav, wei);
643  if (phiv != nullVal)
644  phiData_stage1layer2[ccid]->Fill(phiv, wei);
645  rnkData_stage1layer2[ccid]->Fill(rnkv, wei);
646  wei = 1;
647 
648  // GCT trigger bits
649  unsigned int word_stage1layer2[2];
650  it->data(word_stage1layer2);
651  std::bitset<32> dbits(word_stage1layer2[0]);
652  std::bitset<32> ebits(word_stage1layer2[1]);
653  unsigned int dexor = ((word_stage1layer2[0]) ^ (word_stage1layer2[1]));
654  //disagreeing bits
655  std::bitset<32> debits(dexor);
656  //disagreeing bits after masking
657  std::bitset<32> dembits(((dexor) & (mask)));
658 
659  if (verbose())
660  std::cout << "l1degct"
661  << " sid:" << sid << " cid:" << cid << "\n"
662  << " data:0x" << std::hex << word_stage1layer2[0] << std::dec << " bitset:" << dbits << "\n"
663  << " emul:0x" << std::hex << word_stage1layer2[1] << std::dec << " bitset:" << ebits << "\n"
664  << " xor:0x" << std::hex << dexor << std::dec << " bitset:" << debits
665  << " bitset:" << ((dbits) ^ (ebits)) << "\n"
666  << std::flush;
667 
669  for (int ibit = 0; ibit < 32; ibit++) {
670  wei = 1.;
671  //comparison gives no info if there's only 1 candidate
672  if (type == 3 || type == 4)
673  wei = 0.;
674  if (dbits[ibit])
675  dword_stage1layer2[ccid]->Fill(ibit, wei);
676  if (ebits[ibit])
677  eword_stage1layer2[ccid]->Fill(ibit, wei);
678  if (debits[ibit])
679  deword_stage1layer2[ccid]->Fill(ibit, wei);
680  //if(dembits[ibit])masked[sid]->Fill(ibit,wei);
681  }
682  wei = 1;
683  }
684  //error rates per GCT trigger object type
685  int hasCol[nStage1Layer2Coll_] = {0};
686  int nagree[nStage1Layer2Coll_] = {0};
687  for (L1DEDigiCollection::const_iterator it = stage1layer2Coll.begin(); it != stage1layer2Coll.end(); it++) {
688  int ccid = it->cid() - dedefs::GCTisolaem;
689  ccid = (ccid < 0 || ccid >= nStage1Layer2Coll_) ? 0 : ccid;
690  hasCol[ccid]++;
691  if (!it->type())
692  nagree[ccid]++;
693  }
694  for (int i = 0; i < nStage1Layer2Coll_; i++) {
695  if (!hasCol[i])
696  continue;
698  //nWithCol[i]++;
699  //if(nagree[i]<hasCol[i]) colCount[i]++;
701  nWithCol_stage1Layer2[i] += hasCol[i]; //#of objects
702  colCount_stage1Layer2[i] += nagree[i]; //#of agreements
703  }
704  for (int i = 0; i < nStage1Layer2Coll_; i++) {
705  int ibin = i + 1;
707  sysrates->setBinContent(ibin, rate);
708  if (verbose()) {
709  std::cout << "[L1TDEMON] analyze rate computation\t\n"
710  << " colid:" << i << "(so far)"
711  << " nWithCol: " << nWithCol_stage1Layer2[i] << " colCount: " << colCount_stage1Layer2[i]
712  << "(this event)"
713  << "hasCol: " << hasCol[i] << " nagree: " << nagree[i] << " rate:" << sysrates->getBinContent(ibin)
714  << "\n"
715  << std::flush;
716  if (rate > 1. || rate < 0.)
717  std::cout << "problem, error rate for " << SystLabel[i] << " is " << sysrates->getBinContent(ibin) << "\n"
718  << std::flush;
719  }
720  }
721  }
722 }

References gather_cfg::cout, TauDecayModes::dec, PVValHelper::eta, fastmath::etaphi(), HcalObjRepresent::Fill(), dedefs::GCT, dedefs::GCTisolaem, L1DataEmulRecord::get_isComp(), L1DataEmulRecord::getColl(), L1DataEmulRecord::getNCand(), mps_fire::i, iEvent, edm::HandleBase::isValid(), dqmiolumiharvest::j, LogDebug, RPCpg::rate(), L1DataEmulDigi::reset(), dedefs::SystLabel, and verbose.

◆ bookHistograms()

void L1TdeGCT::bookHistograms ( DQMStore::IBooker ibooker,
edm::Run const &  ,
edm::EventSetup const &   
)
overrideprotectedvirtual

Implements DQMEDAnalyzer.

Definition at line 37 of file L1TdeGCT.cc.

37  {
38  int rnkNBins = 63;
39  double rnkMinim = 0.5;
40  double rnkMaxim = 63.5;
41 
42  if (verbose())
43  std::cout << "L1TdeGCT::beginRun() start\n" << std::flush;
44 
46  //for Legacy GCT
47  if (m_stage1_layer2_ == false) {
48  sysrates = ibooker.book1D("sysrates", "RATE OF COMPARISON FAILURES", nGctColl_, 0, nGctColl_);
49 
50  for (int j = 0; j < 2; j++) {
51  std::string lbl("sysncand");
52  lbl += (j == 0 ? "Data" : "Emul");
53  std::string title("GCT OBJECT MULTIPLICITY ");
54  title += (j == 0 ? "(DATA)" : "(EMULATOR)");
55  sysncand[j] = ibooker.book1D(lbl.data(), title.data(), nGctColl_, 0, nGctColl_);
56  }
57 
58  for (int j = 0; j < nGctColl_; j++) {
59  ibooker.setCurrentFolder(std::string(histFolder_ + "/" + cLabel[j]));
60 
61  std::string lbl("");
62  std::string title("");
63  lbl.clear();
64  title.clear();
65  lbl += cLabel[j];
66  lbl += "ErrorFlag";
67  title += cLabel[j];
68  title += " ErrorFlag";
69  errortype[j] = ibooker.book1D(lbl.data(), title.data(), nerr, 0, nerr);
70 
71  lbl.clear();
72  title.clear();
73  lbl += cLabel[j];
74  lbl += "Eta";
75  title += cLabel[j];
76  title += " ETA OF COMPARISON FAILURES";
77  eta[j] = ibooker.book1D(lbl.data(), title.data(), etaNBins, etaMinim, etaMaxim);
78  lbl.clear();
79  title.clear();
80  lbl += cLabel[j];
81  lbl += "Phi";
82  title += cLabel[j];
83  title += " PHI OF COMPARISON FAILURES";
84  phi[j] = ibooker.book1D(lbl.data(), title.data(), phiNBins, phiMinim, phiMaxim);
85 
86  lbl.clear();
87  title.clear();
88  lbl += cLabel[j];
89  lbl += "Etaphi";
90  title += cLabel[j];
91  title += " ETA PHI OF COMPARISON FAILURES";
92  etaphi[j] = ibooker.book2D(lbl.data(), title.data(), etaNBins, etaMinim, etaMaxim, phiNBins, phiMinim, phiMaxim);
93  lbl.clear();
94  title.clear();
95  lbl += cLabel[j];
96  lbl += "Rank";
97  title += cLabel[j];
98  title += " RANK OF COMPARISON FAILURES";
99  rnk[j] = ibooker.book1D(lbl.data(), title.data(), rnkNBins, rnkMinim, rnkMaxim);
100  //
101  lbl.clear();
102  title.clear();
103  lbl += cLabel[j];
104  lbl += "Eta";
105  lbl += "Data";
106  title += cLabel[j];
107  title += " ETA (DATA)";
108  etaData[j] = ibooker.book1D(lbl.data(), title.data(), etaNBins, etaMinim, etaMaxim);
109  lbl.clear();
110  title.clear();
111  lbl += cLabel[j];
112  lbl += "Phi";
113  lbl += "Data";
114  title += cLabel[j];
115  title += " PHI (DATA)";
116  phiData[j] = ibooker.book1D(lbl.data(), title.data(), phiNBins, phiMinim, phiMaxim);
117 
118  lbl.clear();
119  title.clear();
120  lbl += cLabel[j];
121  lbl += "Rank";
122  lbl += "Data";
123  title += cLabel[j];
124  title += " RANK (DATA)";
125  rnkData[j] = ibooker.book1D(lbl.data(), title.data(), rnkNBins, rnkMinim, rnkMaxim);
126  lbl.clear();
127  lbl += cLabel[j];
128  lbl += "Dword";
129  dword[j] = ibooker.book1D(lbl.data(), lbl.data(), nbit, 0, nbit);
130  lbl.clear();
131  lbl += cLabel[j];
132  lbl += "Eword";
133  eword[j] = ibooker.book1D(lbl.data(), lbl.data(), nbit, 0, nbit);
134  lbl.clear();
135  lbl += cLabel[j];
136  lbl += "DEword";
137  deword[j] = ibooker.book1D(lbl.data(), lbl.data(), nbit, 0, nbit);
138  //lbl.clear();
139  //lbl+=cLabel[j];lbl+="Masked";
140  //masked[j] = dbe->book1D(lbl.data(),lbl.data(),nbit,0,nbit);
141  }
142 
143  for (int i = 0; i < nGctColl_; i++) {
144  sysrates->setBinLabel(i + 1, cLabel[i]);
145  sysncand[0]->setBinLabel(i + 1, cLabel[i]);
146  sysncand[1]->setBinLabel(i + 1, cLabel[i]);
147  }
148 
149  for (int i = 0; i < nGctColl_; i++) {
150  for (int j = 0; j < nerr; j++) {
151  errortype[i]->setBinLabel(j + 1, errLabel[j]);
152  }
153  }
154 
155  for (int i = 0; i < nGctColl_; i++) {
156  etaphi[i]->setAxisTitle("GCT #eta", 1);
157  etaphi[i]->setAxisTitle("GCT #phi", 2);
158  eta[i]->setAxisTitle("GCT #eta");
159  phi[i]->setAxisTitle("GCT #phi");
160  rnk[i]->setAxisTitle("Rank");
161  etaData[i]->setAxisTitle("GCT #eta");
162  phiData[i]->setAxisTitle("GCT #phi");
163  rnkData[i]->setAxisTitle("Rank");
164  dword[i]->setAxisTitle("trigger data word bit");
165  eword[i]->setAxisTitle("trigger data word bit");
166  deword[i]->setAxisTitle("trigger data word bit");
167  }
168 
169  for (int i = 0; i < nGctColl_; i++) {
170  colCount[i] = 0;
171  nWithCol[i] = 0;
172  }
173  }
174 
175  // for stage 1 layer 2
176 
177  if (m_stage1_layer2_ == true) {
178  sysrates = ibooker.book1D("sysrates", "RATE OF COMPARISON FAILURES", nStage1Layer2Coll_, 0, nStage1Layer2Coll_);
179 
180  for (int j = 0; j < 2; j++) {
181  std::string lbl("sysncand");
182  lbl += (j == 0 ? "Data" : "Emul");
183  std::string title("Stage1Layer2 OBJECT MULTIPLICITY ");
184  title += (j == 0 ? "(DATA)" : "(EMULATOR)");
185  sysncand[j] = ibooker.book1D(lbl.data(), title.data(), nStage1Layer2Coll_, 0, nStage1Layer2Coll_);
186  }
187 
188  for (int j = 0; j < nStage1Layer2Coll_; j++) {
189  ibooker.setCurrentFolder(std::string(histFolder_ + "/" + sLabel[j]));
190 
191  if (sLabel[j] == "MHT") {
192  rnkNBins = 127;
193  rnkMinim = 0.5;
194  rnkMaxim = 127.5;
195  }
196 
197  if ((sLabel[j] == "HT") || (sLabel[j] == "ET") || (sLabel[j] == "MET")) {
198  rnkNBins = 4096;
199  rnkMinim = -0.5;
200  rnkMaxim = 4095.5;
201  }
202 
203  if (sLabel[j] == "Stage1HFSums") {
204  rnkNBins = 9;
205  rnkMinim = -0.5;
206  rnkMaxim = 8.5;
207  }
208 
209  if (sLabel[j] == "IsoTauJet") {
210  rnkNBins = 64;
211  rnkMinim = -0.5;
212  rnkMaxim = 63.5;
213  }
214 
215  std::string lbl("");
216  std::string title("");
217  lbl.clear();
218  title.clear();
219  lbl += sLabel[j];
220  lbl += "ErrorFlag";
221  title += sLabel[j];
222  title += " ErrorFlag";
223  errortype_stage1layer2[j] = ibooker.book1D(lbl.data(), title.data(), nerr, 0, nerr);
224 
225  lbl.clear();
226  title.clear();
227  lbl += sLabel[j];
228  lbl += "Eta";
229  title += sLabel[j];
230  title += " ETA OF COMPARISON FAILURES";
231  eta_stage1layer2[j] = ibooker.book1D(lbl.data(), title.data(), etaNBins, etaMinim, etaMaxim);
232  lbl.clear();
233  title.clear();
234  lbl += sLabel[j];
235  lbl += "Phi";
236  title += sLabel[j];
237  title += " PHI OF COMPARISON FAILURES";
238  phi_stage1layer2[j] = ibooker.book1D(lbl.data(), title.data(), phiNBins, phiMinim, phiMaxim);
239 
240  lbl.clear();
241  title.clear();
242  lbl += sLabel[j];
243  lbl += "Etaphi";
244  title += sLabel[j];
245  title += " ETA PHI OF COMPARISON FAILURES";
247  ibooker.book2D(lbl.data(), title.data(), etaNBins, etaMinim, etaMaxim, phiNBins, phiMinim, phiMaxim);
248  lbl.clear();
249  title.clear();
250  lbl += sLabel[j];
251  lbl += "Rank";
252  title += sLabel[j];
253  title += " RANK OF COMPARISON FAILURES";
254  rnk_stage1layer2[j] = ibooker.book1D(lbl.data(), title.data(), rnkNBins, rnkMinim, rnkMaxim);
255  //
256  lbl.clear();
257  title.clear();
258  lbl += sLabel[j];
259  lbl += "Eta";
260  lbl += "Data";
261  title += sLabel[j];
262  title += " ETA (DATA)";
263  etaData_stage1layer2[j] = ibooker.book1D(lbl.data(), title.data(), etaNBins, etaMinim, etaMaxim);
264  lbl.clear();
265  title.clear();
266  lbl += sLabel[j];
267  lbl += "Phi";
268  lbl += "Data";
269  title += sLabel[j];
270  title += " PHI (DATA)";
271  phiData_stage1layer2[j] = ibooker.book1D(lbl.data(), title.data(), phiNBins, phiMinim, phiMaxim);
272 
273  lbl.clear();
274  title.clear();
275  lbl += sLabel[j];
276  lbl += "Rank";
277  lbl += "Data";
278  title += sLabel[j];
279  title += " RANK (DATA)";
280  rnkData_stage1layer2[j] = ibooker.book1D(lbl.data(), title.data(), rnkNBins, rnkMinim, rnkMaxim);
281  lbl.clear();
282  lbl += sLabel[j];
283  lbl += "Dword";
284  dword_stage1layer2[j] = ibooker.book1D(lbl.data(), lbl.data(), nbit, 0, nbit);
285  lbl.clear();
286  lbl += sLabel[j];
287  lbl += "Eword";
288  eword_stage1layer2[j] = ibooker.book1D(lbl.data(), lbl.data(), nbit, 0, nbit);
289  lbl.clear();
290  lbl += sLabel[j];
291  lbl += "DEword";
292  deword_stage1layer2[j] = ibooker.book1D(lbl.data(), lbl.data(), nbit, 0, nbit);
293  //lbl.clear();
294  //lbl+=cLabel[j];lbl+="Masked";
295  //masked_stage1layer2[j] = dbe->book1D(lbl.data(),lbl.data(),nbit,0,nbit);
296  }
297 
298  for (int i = 0; i < nStage1Layer2Coll_; i++) {
299  sysrates->setBinLabel(i + 1, sLabel[i]);
300  sysncand[0]->setBinLabel(i + 1, sLabel[i]);
301  sysncand[1]->setBinLabel(i + 1, sLabel[i]);
302  }
303 
304  for (int i = 0; i < nStage1Layer2Coll_; i++) {
305  for (int j = 0; j < nerr; j++) {
307  }
308  }
309 
310  for (int i = 0; i < nStage1Layer2Coll_; i++) {
311  etaphi_stage1layer2[i]->setAxisTitle("Stage1Layer2 #eta", 1);
312  etaphi_stage1layer2[i]->setAxisTitle("Stage1Layer2 #phi", 2);
313  eta_stage1layer2[i]->setAxisTitle("Stage1Layer2 #eta");
314  phi_stage1layer2[i]->setAxisTitle("Stage1Layer2 #phi");
315  rnk_stage1layer2[i]->setAxisTitle("Rank");
316  etaData_stage1layer2[i]->setAxisTitle("Stage1Layer2 #eta");
317  phiData_stage1layer2[i]->setAxisTitle("Stage1Layer2 #phi");
319  dword_stage1layer2[i]->setAxisTitle("trigger data word bit");
320  eword_stage1layer2[i]->setAxisTitle("trigger data word bit");
321  deword_stage1layer2[i]->setAxisTitle("trigger data word bit");
322  }
323 
324  for (int i = 0; i < nStage1Layer2Coll_; i++) {
327  }
328  }
329 
330  if (verbose())
331  std::cout << "L1TdeGCT::beginJob() end.\n" << std::flush;
332 }

References dqm::implementation::IBooker::book1D(), dqm::implementation::IBooker::book2D(), gather_cfg::cout, PVValHelper::eta, metDiagnosticParameterSet_cfi::etaNBins, fastmath::etaphi(), mps_fire::i, dqmiolumiharvest::j, metDiagnosticParameterSet_cfi::phiNBins, dqm::impl::MonitorElement::setBinLabel(), dqm::implementation::NavigatorBase::setCurrentFolder(), AlCaHLTBitMon_QueryRunRegistry::string, runGCPTkAlMap::title, and verbose.

◆ verbose()

int L1TdeGCT::verbose ( )
inlineprivate

Definition at line 44 of file L1TdeGCT.h.

44 { return verbose_; }

References verbose_.

Member Data Documentation

◆ cLabel

std::string L1TdeGCT::cLabel[nGctColl_]
private
Initial value:
= {
"IsoEM", "NoisoEM", "CenJet", "ForJet", "TauJet", "HT", "MET", "ET", "MHT", "HFSums", "HFCnts"}

Definition at line 77 of file L1TdeGCT.h.

◆ colCount

int L1TdeGCT::colCount[nGctColl_]
private

Definition at line 62 of file L1TdeGCT.h.

◆ colCount_stage1Layer2

int L1TdeGCT::colCount_stage1Layer2[nStage1Layer2Coll_]
private

Definition at line 65 of file L1TdeGCT.h.

◆ DEsource_

edm::EDGetTokenT<L1DataEmulRecord> L1TdeGCT::DEsource_
private

Definition at line 39 of file L1TdeGCT.h.

◆ deword

MonitorElement* L1TdeGCT::deword[nGctColl_]
private

Definition at line 111 of file L1TdeGCT.h.

◆ deword_stage1layer2

MonitorElement* L1TdeGCT::deword_stage1layer2[nStage1Layer2Coll_]
private

Definition at line 115 of file L1TdeGCT.h.

◆ dword

MonitorElement* L1TdeGCT::dword[nGctColl_]
private

Definition at line 109 of file L1TdeGCT.h.

◆ dword_stage1layer2

MonitorElement* L1TdeGCT::dword_stage1layer2[nStage1Layer2Coll_]
private

Definition at line 113 of file L1TdeGCT.h.

◆ errLabel

std::string L1TdeGCT::errLabel[nerr] = {"Agree", "Loc. Agree", "L.Disagree", "Data only", "Emul only"}
private

Definition at line 81 of file L1TdeGCT.h.

◆ errortype

MonitorElement* L1TdeGCT::errortype[nGctColl_]
private

Definition at line 87 of file L1TdeGCT.h.

◆ errortype_stage1layer2

MonitorElement* L1TdeGCT::errortype_stage1layer2[nStage1Layer2Coll_]
private

Definition at line 97 of file L1TdeGCT.h.

◆ eta

MonitorElement* L1TdeGCT::eta[nGctColl_]
private

Definition at line 90 of file L1TdeGCT.h.

Referenced by Particle.Particle::__str__(), Jet.Jet::jetID(), and Jet.Jet::puJetId().

◆ eta_stage1layer2

MonitorElement* L1TdeGCT::eta_stage1layer2[nStage1Layer2Coll_]
private

Definition at line 100 of file L1TdeGCT.h.

◆ etaData

MonitorElement* L1TdeGCT::etaData[nGctColl_]
private

Definition at line 93 of file L1TdeGCT.h.

◆ etaData_stage1layer2

MonitorElement* L1TdeGCT::etaData_stage1layer2[nStage1Layer2Coll_]
private

Definition at line 103 of file L1TdeGCT.h.

◆ etaMaxim

const double L1TdeGCT::etaMaxim = 21.5
private

Definition at line 74 of file L1TdeGCT.h.

◆ etaMinim

const double L1TdeGCT::etaMinim = -0.5
private

Definition at line 73 of file L1TdeGCT.h.

◆ etaNBins

const int L1TdeGCT::etaNBins = 22
private

Definition at line 72 of file L1TdeGCT.h.

◆ etaphi

MonitorElement* L1TdeGCT::etaphi[nGctColl_]
private

Definition at line 89 of file L1TdeGCT.h.

◆ etaphi_stage1layer2

MonitorElement* L1TdeGCT::etaphi_stage1layer2[nStage1Layer2Coll_]
private

Definition at line 99 of file L1TdeGCT.h.

◆ eword

MonitorElement* L1TdeGCT::eword[nGctColl_]
private

Definition at line 110 of file L1TdeGCT.h.

◆ eword_stage1layer2

MonitorElement* L1TdeGCT::eword_stage1layer2[nStage1Layer2Coll_]
private

Definition at line 114 of file L1TdeGCT.h.

◆ hasRecord_

bool L1TdeGCT::hasRecord_
private

Definition at line 40 of file L1TdeGCT.h.

◆ histFile_

std::string L1TdeGCT::histFile_
private

Definition at line 47 of file L1TdeGCT.h.

◆ histFolder_

std::string L1TdeGCT::histFolder_
private

Definition at line 50 of file L1TdeGCT.h.

◆ m_stage1_layer2_

bool L1TdeGCT::m_stage1_layer2_
private

Definition at line 52 of file L1TdeGCT.h.

◆ masked

MonitorElement* L1TdeGCT::masked[nGctColl_]
private

Definition at line 112 of file L1TdeGCT.h.

◆ masked_stage1layer2

MonitorElement* L1TdeGCT::masked_stage1layer2[nStage1Layer2Coll_]
private

Definition at line 116 of file L1TdeGCT.h.

◆ monitorDaemon_

bool L1TdeGCT::monitorDaemon_
private

Definition at line 55 of file L1TdeGCT.h.

◆ nbit

const int L1TdeGCT::nbit = 32
private

Definition at line 76 of file L1TdeGCT.h.

◆ nerr

const int L1TdeGCT::nerr = 5
staticprivate

Definition at line 75 of file L1TdeGCT.h.

◆ nGctColl_

const int L1TdeGCT::nGctColl_ = dedefs::GCThfbit - dedefs::GCTisolaem + 1
staticprivate

Definition at line 58 of file L1TdeGCT.h.

◆ nStage1Layer2Coll_

const int L1TdeGCT::nStage1Layer2Coll_ = dedefs::GCTisotaujets - dedefs::GCTisolaem + 1
staticprivate

Definition at line 59 of file L1TdeGCT.h.

◆ nWithCol

int L1TdeGCT::nWithCol[nGctColl_]
private

Definition at line 63 of file L1TdeGCT.h.

◆ nWithCol_stage1Layer2

int L1TdeGCT::nWithCol_stage1Layer2[nStage1Layer2Coll_]
private

Definition at line 66 of file L1TdeGCT.h.

◆ phi

MonitorElement* L1TdeGCT::phi[nGctColl_]
private

Definition at line 91 of file L1TdeGCT.h.

Referenced by Particle.Particle::__str__(), and ntupleDataFormat.Track::phiPull().

◆ phi_stage1layer2

MonitorElement* L1TdeGCT::phi_stage1layer2[nStage1Layer2Coll_]
private

Definition at line 101 of file L1TdeGCT.h.

◆ phiData

MonitorElement* L1TdeGCT::phiData[nGctColl_]
private

Definition at line 94 of file L1TdeGCT.h.

◆ phiData_stage1layer2

MonitorElement* L1TdeGCT::phiData_stage1layer2[nStage1Layer2Coll_]
private

Definition at line 104 of file L1TdeGCT.h.

◆ phiMaxim

const double L1TdeGCT::phiMaxim = 17.5
private

Definition at line 71 of file L1TdeGCT.h.

◆ phiMinim

const double L1TdeGCT::phiMinim = -0.5
private

Definition at line 70 of file L1TdeGCT.h.

◆ phiNBins

const int L1TdeGCT::phiNBins = 18
private

Definition at line 69 of file L1TdeGCT.h.

◆ rnk

MonitorElement* L1TdeGCT::rnk[nGctColl_]
private

Definition at line 92 of file L1TdeGCT.h.

◆ rnk_stage1layer2

MonitorElement* L1TdeGCT::rnk_stage1layer2[nStage1Layer2Coll_]
private

Definition at line 102 of file L1TdeGCT.h.

◆ rnkData

MonitorElement* L1TdeGCT::rnkData[nGctColl_]
private

Definition at line 95 of file L1TdeGCT.h.

◆ rnkData_stage1layer2

MonitorElement* L1TdeGCT::rnkData_stage1layer2[nStage1Layer2Coll_]
private

Definition at line 105 of file L1TdeGCT.h.

◆ sLabel

std::string L1TdeGCT::sLabel[nStage1Layer2Coll_]
private
Initial value:
= {
"IsoEM", "NoisoEM", "CenJet", "ForJet", "TauJet", "HT", "MET", "ET", "MHT", "Stage1HFSums", "HFCnts", "IsoTauJet"}

Definition at line 79 of file L1TdeGCT.h.

◆ sysncand

MonitorElement* L1TdeGCT::sysncand[2]
private

Definition at line 85 of file L1TdeGCT.h.

◆ sysrates

MonitorElement* L1TdeGCT::sysrates
private

Definition at line 84 of file L1TdeGCT.h.

◆ verbose_

int L1TdeGCT::verbose_
private

Definition at line 43 of file L1TdeGCT.h.

Referenced by verbose().

dedefs::SystLabel
const std::string SystLabel[DEnsys]
Definition: DEtrait.h:42
L1DEDigiCollection
std::vector< L1DataEmulDigi > L1DEDigiCollection
Definition: DEtrait.h:101
runGCPTkAlMap.title
string title
Definition: runGCPTkAlMap.py:94
mps_fire.i
i
Definition: mps_fire.py:428
L1TdeGCT::eta
MonitorElement * eta[nGctColl_]
Definition: L1TdeGCT.h:90
L1TdeGCT::deword
MonitorElement * deword[nGctColl_]
Definition: L1TdeGCT.h:111
L1TdeGCT::etaData_stage1layer2
MonitorElement * etaData_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:103
L1TdeGCT::eword_stage1layer2
MonitorElement * eword_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:114
L1TdeGCT::phiNBins
const int phiNBins
Definition: L1TdeGCT.h:69
L1TdeGCT::colCount_stage1Layer2
int colCount_stage1Layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:65
gather_cfg.cout
cout
Definition: gather_cfg.py:144
dqm::implementation::NavigatorBase::setCurrentFolder
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:32
L1TdeGCT::etaNBins
const int etaNBins
Definition: L1TdeGCT.h:72
L1DataEmulRecord::getNCand
int getNCand(int i, int j) const
Definition: L1DataEmulRecord.h:41
L1TdeGCT::sLabel
std::string sLabel[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:79
L1TdeGCT::etaMinim
const double etaMinim
Definition: L1TdeGCT.h:73
L1TdeGCT::phiMaxim
const double phiMaxim
Definition: L1TdeGCT.h:71
L1TdeGCT::cLabel
std::string cLabel[nGctColl_]
Definition: L1TdeGCT.h:77
L1TdeGCT::histFolder_
std::string histFolder_
Definition: L1TdeGCT.h:50
L1TdeGCT::errortype
MonitorElement * errortype[nGctColl_]
Definition: L1TdeGCT.h:87
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
edm::LogInfo
Log< level::Info, false > LogInfo
Definition: MessageLogger.h:125
RPCpg::rate
double rate(double x)
Definition: Constants.cc:3
edm::Handle
Definition: AssociativeIterator.h:50
L1TdeGCT::phi
MonitorElement * phi[nGctColl_]
Definition: L1TdeGCT.h:91
word
uint64_t word
Definition: CTPPSTotemDataFormatter.cc:29
L1TdeGCT::etaphi_stage1layer2
MonitorElement * etaphi_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:99
L1TdeGCT::sysrates
MonitorElement * sysrates
Definition: L1TdeGCT.h:84
L1TdeGCT::etaData
MonitorElement * etaData[nGctColl_]
Definition: L1TdeGCT.h:93
L1DataEmulDigi
Definition: L1DataEmulDigi.h:17
L1TdeGCT::sysncand
MonitorElement * sysncand[2]
Definition: L1TdeGCT.h:85
L1TdeGCT::m_stage1_layer2_
bool m_stage1_layer2_
Definition: L1TdeGCT.h:52
L1TdeGCT::verbose_
int verbose_
Definition: L1TdeGCT.h:43
dedefs::GCT
Definition: DEtrait.h:40
L1TdeGCT::phiData
MonitorElement * phiData[nGctColl_]
Definition: L1TdeGCT.h:94
dqm::impl::MonitorElement::Fill
void Fill(long long x)
Definition: MonitorElement.h:290
L1TdeGCT::histFile_
std::string histFile_
Definition: L1TdeGCT.h:47
L1TdeGCT::nbit
const int nbit
Definition: L1TdeGCT.h:76
L1TdeGCT::errortype_stage1layer2
MonitorElement * errortype_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:97
L1TdeGCT::eword
MonitorElement * eword[nGctColl_]
Definition: L1TdeGCT.h:110
L1TdeGCT::nWithCol_stage1Layer2
int nWithCol_stage1Layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:66
dedefs::GCTisolaem
Definition: DEtrait.h:55
LogDebug
#define LogDebug(id)
Definition: MessageLogger.h:233
L1TdeGCT::nGctColl_
static const int nGctColl_
Definition: L1TdeGCT.h:58
L1TdeGCT::dword_stage1layer2
MonitorElement * dword_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:113
type
type
Definition: SiPixelVCal_PayloadInspector.cc:39
L1TdeGCT::hasRecord_
bool hasRecord_
Definition: L1TdeGCT.h:40
L1TdeGCT::rnk_stage1layer2
MonitorElement * rnk_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:102
iEvent
int iEvent
Definition: GenABIO.cc:224
L1TdeGCT::phiMinim
const double phiMinim
Definition: L1TdeGCT.h:70
dqm::impl::MonitorElement::setBinLabel
virtual 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)
Definition: MonitorElement.cc:762
L1TdeGCT::dword
MonitorElement * dword[nGctColl_]
Definition: L1TdeGCT.h:109
L1TdeGCT::nerr
static const int nerr
Definition: L1TdeGCT.h:75
L1DataEmulDigi::reset
int reset()
Definition: L1DataEmulDigi.cc:13
L1DataEmulRecord::getColl
L1DEDigiCollection getColl() const
Definition: L1DataEmulRecord.h:39
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
HcalObjRepresent::Fill
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
Definition: HcalObjRepresent.h:1053
L1TdeGCT::phiData_stage1layer2
MonitorElement * phiData_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:104
L1TdeGCT::colCount
int colCount[nGctColl_]
Definition: L1TdeGCT.h:62
L1TdeGCT::etaphi
MonitorElement * etaphi[nGctColl_]
Definition: L1TdeGCT.h:89
L1TdeGCT::deword_stage1layer2
MonitorElement * deword_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:115
dqm::impl::MonitorElement::setBinContent
virtual void setBinContent(int binx, double content)
set content of bin (1-D)
Definition: MonitorElement.cc:682
L1TdeGCT::errLabel
std::string errLabel[nerr]
Definition: L1TdeGCT.h:81
L1DataEmulRecord::get_isComp
bool get_isComp(int i) const
Definition: L1DataEmulRecord.h:42
dqm::implementation::IBooker::book2D
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
Definition: DQMStore.h:177
L1TdeGCT::phi_stage1layer2
MonitorElement * phi_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:101
L1TdeGCT::DEsource_
edm::EDGetTokenT< L1DataEmulRecord > DEsource_
Definition: L1TdeGCT.h:39
L1TdeGCT::rnkData
MonitorElement * rnkData[nGctColl_]
Definition: L1TdeGCT.h:95
L1TdeGCT::nWithCol
int nWithCol[nGctColl_]
Definition: L1TdeGCT.h:63
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
L1TdeGCT::verbose
int verbose()
Definition: L1TdeGCT.h:44
L1TdeGCT::eta_stage1layer2
MonitorElement * eta_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:100
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
L1TdeGCT::rnk
MonitorElement * rnk[nGctColl_]
Definition: L1TdeGCT.h:92
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
L1TdeGCT::etaMaxim
const double etaMaxim
Definition: L1TdeGCT.h:74
L1TdeGCT::nStage1Layer2Coll_
static const int nStage1Layer2Coll_
Definition: L1TdeGCT.h:59
dqm::impl::MonitorElement::setAxisTitle
virtual void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
Definition: MonitorElement.cc:791
dqm::impl::MonitorElement::getBinContent
virtual double getBinContent(int binx) const
get content of bin (1-D)
Definition: MonitorElement.cc:583
TauDecayModes.dec
dec
Definition: TauDecayModes.py:142
edm::InputTag
Definition: InputTag.h:15
dqm::implementation::IBooker::book1D
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98
L1TdeGCT::rnkData_stage1layer2
MonitorElement * rnkData_stage1layer2[nStage1Layer2Coll_]
Definition: L1TdeGCT.h:105