CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Member Functions | Private Attributes
HLXMonitor Class Reference

#include <DQM/HLXMonitor/src/HLXMonitor.cc>

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

Public Types

typedef HCAL_HLX::LUMI_SECTION LUMI_SECTION
 
typedef HCAL_HLX::TCPReceiver TCPReceiver
 
- 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 >
typedef CacheContexts< T... > CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T... > HasAbility
 
typedef CacheTypes::LuminosityBlockCache LuminosityBlockCache
 
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 

Public Member Functions

 HLXMonitor (const edm::ParameterSet &)
 
 ~HLXMonitor () 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
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 

Private Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
void connectHLXTCP ()
 
void EndRun ()
 
void FillEventInfo (const LUMI_SECTION &, const edm::Event &e)
 
void FillHistograms (const LUMI_SECTION &)
 
void FillHistoHFCompare (const LUMI_SECTION &)
 
void FillReportSummary ()
 
double getUTCtime (timeval *a, timeval *b=nullptr)
 
void SetupEventInfo (DQMStore::IBooker &)
 
void SetupHists (DQMStore::IBooker &)
 

Private Attributes

bool Accumulate
 
unsigned int AquireMode
 
MonitorElementAvgEtSum
 
MonitorElementAvgOccAboveSet1
 
MonitorElementAvgOccAboveSet2
 
MonitorElementAvgOccBelowSet1
 
MonitorElementAvgOccBelowSet2
 
MonitorElementAvgOccBetweenSet1
 
MonitorElementAvgOccBetweenSet2
 
MonitorElementBXvsTimeAvgEtSumHFM
 
MonitorElementBXvsTimeAvgEtSumHFP
 
MonitorElementcmsswVer_
 Current working directory of the job. More...
 
unsigned int counter
 
bool currentRunEnded_
 
timeval currentTime_
 
std::string DistribIP1
 
std::string DistribIP2
 
MonitorElementdqmPatch_
 CMSSW version run for this job. More...
 
MonitorElementerrSummary_
 DQM patch version for this job. More...
 
MonitorElementerrSummaryEtaPhi_
 Subdetector-specific error summary (float) More...
 
MonitorElementerrSummarySegment_ [10]
 Subdetector-specific etaPhi summary (float) More...
 
MonitorElementETSum [36]
 
std::string EtXAxisTitle
 
std::string EtYAxisTitle
 
MonitorElementeventId_
 UTC time of the run start. More...
 
std::string eventInfoFolder_
 
std::string eventInfoFolderHLX_
 
MonitorElementeventTimeStamp_
 
int evtRateCount_
 
float evtRateWindow_
 
unsigned int expectedNibbles_
 
MonitorElementHFCompareEtSum
 
MonitorElementHFCompareOccAboveSet1
 
MonitorElementHFCompareOccAboveSet2
 
MonitorElementHFCompareOccBelowSet1
 
MonitorElementHFCompareOccBelowSet2
 
MonitorElementHFCompareOccBetweenSet1
 
MonitorElementHFCompareOccBetweenSet2
 
MonitorElementHistAvgEtSumHFM
 
MonitorElementHistAvgEtSumHFP
 
MonitorElementHistAvgLumiEtSum
 
MonitorElementHistAvgLumiOccSet1
 
MonitorElementHistAvgLumiOccSet2
 
MonitorElementHistAvgOccAboveSet1HFM
 
MonitorElementHistAvgOccAboveSet1HFP
 
MonitorElementHistAvgOccAboveSet2HFM
 
MonitorElementHistAvgOccAboveSet2HFP
 
MonitorElementHistAvgOccBelowSet1HFM
 
MonitorElementHistAvgOccBelowSet1HFP
 
MonitorElementHistAvgOccBelowSet2HFM
 
MonitorElementHistAvgOccBelowSet2HFP
 
MonitorElementHistAvgOccBetweenSet1HFM
 
MonitorElementHistAvgOccBetweenSet1HFP
 
MonitorElementHistAvgOccBetweenSet2HFM
 
MonitorElementHistAvgOccBetweenSet2HFP
 
MonitorElementHistInstantLumiEtSum
 
MonitorElementHistInstantLumiEtSumError
 
MonitorElementHistInstantLumiOccSet1
 
MonitorElementHistInstantLumiOccSet1Error
 
MonitorElementHistInstantLumiOccSet2
 
MonitorElementHistInstantLumiOccSet2Error
 
MonitorElementHistIntegratedLumiEtSum
 
MonitorElementHistIntegratedLumiOccSet1
 
MonitorElementHistIntegratedLumiOccSet2
 
unsigned int HLXHFMap [36]
 
TCPReceiver HLXTCP
 
MonitorElementhostName_
 
timeval lastAvgTime_
 
timeval lastUpdateTime_
 
int listenPort
 
int lsBinOld
 
MonitorElementLumiAvgEtSum
 
MonitorElementLumiAvgOccSet1
 
MonitorElementLumiAvgOccSet2
 
MonitorElementLumiInstantEtSum
 
MonitorElementLumiInstantOccSet1
 
MonitorElementLumiInstantOccSet2
 
MonitorElementLumiIntegratedEtSum
 
MonitorElementLumiIntegratedOccSet1
 
MonitorElementLumiIntegratedOccSet2
 
MonitorElementlumisecId_
 
HCAL_HLX::LUMI_SECTION lumiSection
 
unsigned int lumiSectionCount
 
unsigned int MAX_LS
 
MonitorElementMaxInstLumiBX1
 
MonitorElementMaxInstLumiBX2
 
MonitorElementMaxInstLumiBX3
 
MonitorElementMaxInstLumiBX4
 
MonitorElementMaxInstLumiBXNum1
 
MonitorElementMaxInstLumiBXNum2
 
MonitorElementMaxInstLumiBXNum3
 
MonitorElementMaxInstLumiBXNum4
 
unsigned int MinLSBeforeSave
 
MonitorElementMissingDQMDataCheck
 
std::string monitorName_
 
unsigned int NBINS
 
double num4NibblePerLS_
 
unsigned int NUM_BUNCHES
 
unsigned int NUM_HLX
 
unsigned int numActiveTowersSet1
 
unsigned int numActiveTowersSet2
 
MonitorElementnUpdates_
 These MEs are either static or updated upon each analyze() call. More...
 
std::string OccXAxisTitle
 
std::string OccYAxisTitle
 
std::string OutputDir
 
std::string OutputFilePrefix
 
int pEvent_
 
int prescaleEvt_
 
unsigned int previousSection
 
MonitorElementprocessEventRate_
 Time elapsed since the last event. More...
 
MonitorElementprocessEvents_
 
MonitorElementprocessId_
 Number of collector updates (TBD) More...
 
MonitorElementprocessLatency_
 The UTC time of the last event. More...
 
MonitorElementprocessName_
 Hostname of the local machine. More...
 
MonitorElementprocessStartTimeStamp_
 The PID associated with this job. More...
 
MonitorElementprocessTimeStamp_
 The UTC time of the first event processed. More...
 
unsigned char * rData
 
MonitorElementRecentInstantLumiEtSum
 
MonitorElementRecentInstantLumiOccSet1
 
MonitorElementRecentInstantLumiOccSet2
 
MonitorElementRecentIntegratedLumiEtSum
 
MonitorElementRecentIntegratedLumiOccSet1
 
MonitorElementRecentIntegratedLumiOccSet2
 
unsigned int reconnTime
 
MonitorElementreportSummary_
 
MonitorElementreportSummaryMap_
 
MonitorElementrunId_
 
unsigned int runNumber_
 
unsigned int runNumLength
 
timeval runStartTime_
 
MonitorElementrunStartTimeStamp_
 
int SavePeriod
 
unsigned int secNumLength
 
short int SectionComplete
 
double sectionInstantErrSumEt
 
double sectionInstantErrSumOcc1
 
double sectionInstantErrSumOcc2
 
double sectionInstantNorm
 
double sectionInstantSumEt
 
double sectionInstantSumOcc1
 
double sectionInstantSumOcc2
 
MonitorElementSet1Above [36]
 
unsigned int set1AboveIndex
 
MonitorElementSet1Below [36]
 
unsigned int set1BelowIndex
 
MonitorElementSet1Between [36]
 
unsigned int set1BetweenIndex
 
MonitorElementSet2Above [36]
 
unsigned int set2AboveIndex
 
MonitorElementSet2Below [36]
 
unsigned int set2BelowIndex
 
MonitorElementSet2Between [36]
 
unsigned int set2BetweenIndex
 
std::string Style
 
std::string subSystemName_
 
MonitorElementSumAllOccSet1
 
MonitorElementSumAllOccSet2
 
unsigned int totalNibbles_ [36]
 
unsigned int TriggerBX
 
MonitorElementworkingDir_
 DQM "name" of the job (eg, Hcal or DT) More...
 
double XMAX
 
double XMIN
 

Additional Inherited Members

- 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 Member Functions inherited from DQMEDAnalyzer
uint64_t meId () const
 
- Protected Attributes inherited from DQMEDAnalyzer
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 
unsigned int streamId_
 

Detailed Description

Description: DQM Source for HLX histograms

Implementation: <Notes on="" implementation>="">

Definition at line 47 of file HLXMonitor.h.

Member Typedef Documentation

◆ LUMI_SECTION

Definition at line 49 of file HLXMonitor.h.

◆ TCPReceiver

Definition at line 50 of file HLXMonitor.h.

Constructor & Destructor Documentation

◆ HLXMonitor()

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

Definition at line 17 of file HLXMonitor.cc.

17  {
18  NUM_HLX = iConfig.getUntrackedParameter<unsigned int>("numHlx", 36);
19  NUM_BUNCHES = iConfig.getUntrackedParameter<unsigned int>("numBunches", 3564);
20  MAX_LS = iConfig.getUntrackedParameter<unsigned int>("maximumNumLS", 480);
21  listenPort = iConfig.getUntrackedParameter<unsigned int>("SourcePort", 51001);
22  OutputFilePrefix = iConfig.getUntrackedParameter<std::string>("outputFile", "lumi");
23  OutputDir = iConfig.getUntrackedParameter<std::string>("outputDir", " data");
24  SavePeriod = iConfig.getUntrackedParameter<unsigned int>("SavePeriod", 10);
25  NBINS = iConfig.getUntrackedParameter<unsigned int>("NBINS",
26  297); // 12 BX per bin
27  XMIN = iConfig.getUntrackedParameter<double>("XMIN", 0);
28  XMAX = iConfig.getUntrackedParameter<double>("XMAX", 3564);
29  Style = iConfig.getUntrackedParameter<std::string>("Style", "BX");
30  AquireMode = iConfig.getUntrackedParameter<unsigned int>("AquireMode", 0);
31  Accumulate = iConfig.getUntrackedParameter<bool>("Accumulate", true); // all
32  TriggerBX = iConfig.getUntrackedParameter<unsigned int>("TriggerBX", 50);
33  MinLSBeforeSave = iConfig.getUntrackedParameter<unsigned int>("MinLSBeforeSave", 1);
34  reconnTime = iConfig.getUntrackedParameter<unsigned int>("ReconnectionTime", 5);
35  DistribIP1 = iConfig.getUntrackedParameter<std::string>("PrimaryHLXDAQIP", "vmepcs2f17-18");
36  DistribIP2 = iConfig.getUntrackedParameter<std::string>("SecondaryHLXDAQIP", "vmepcs2f17-19");
37 
38  eventInfoFolderHLX_ = iConfig.getUntrackedParameter<std::string>("eventInfoFolderHLX", "EventInfoHLX");
39  eventInfoFolder_ = iConfig.getUntrackedParameter<std::string>("eventInfoFolder", "EventInfo");
40  subSystemName_ = iConfig.getUntrackedParameter<std::string>("subSystemName", "HLX");
41 
42  // Set the lumi section counter
43  lsBinOld = 0;
44  previousSection = 0;
45  lumiSectionCount = 0;
53 
54  // HLX Config info
55  set1BelowIndex = 0;
56  set1BetweenIndex = 1;
57  set1AboveIndex = 2;
58  set2BelowIndex = 3;
59  set2BetweenIndex = 4;
60  set2AboveIndex = 5;
61 
62  runNumLength = 9;
63  secNumLength = 8;
64 
65  if (NUM_HLX > 36)
66  NUM_HLX = 36;
67 
68  if (NUM_BUNCHES > 3564)
69  NUM_BUNCHES = 3564;
70 
71  if (XMAX <= XMIN) {
72  XMIN = 0;
73  if (XMAX <= 0)
74  XMAX = 3564;
75  }
76 
77  if ((Style == "History") || (NBINS == 0)) {
78  NBINS = (unsigned int)(XMAX - XMIN);
79  }
80 
81  monitorName_ = iConfig.getUntrackedParameter<std::string>("monitorName", "HLX");
82  // cout << "Monitor name = " << monitorName_ << endl;
83  prescaleEvt_ = iConfig.getUntrackedParameter<int>("prescaleEvt", -1);
84  // cout << "===>DQM event prescale = " << prescaleEvt_ << " events "<< endl;
85 
86  unsigned int HLXHFMapTemp[] = {31, 32, 33, 34, 35, 18, // s2f07 hf-
87  13, 14, 15, 16, 17, 0, // s2f07 hf+
88  25, 26, 27, 28, 29, 30, // s2f05 hf-
89  7, 8, 9, 10, 11, 12, // s2f05 hf+
90  19, 20, 21, 22, 23, 24, // s2f02 hf-
91  1, 2, 3, 4, 5, 6}; // s2f02 hf+
92 
93  currentRunEnded_ = true;
94  runNumber_ = 0;
95  expectedNibbles_ = 0;
96 
97  for (int iHLX = 0; iHLX < 36; ++iHLX) {
98  HLXHFMap[iHLX] = HLXHFMapTemp[iHLX];
99  // std::cout << "At " << iHLX << " Wedge " << HLXHFMap[iHLX] << std::endl;
100  totalNibbles_[iHLX] = 0;
101  }
102 
103  num4NibblePerLS_ = 16.0;
104 
105  connectHLXTCP(); // this was originally done in beginJob()
106 }

References Accumulate, AquireMode, connectHLXTCP(), currentRunEnded_, DistribIP1, DistribIP2, eventInfoFolder_, eventInfoFolderHLX_, expectedNibbles_, edm::ParameterSet::getUntrackedParameter(), HLXHFMap, createfilelist::int, listenPort, lsBinOld, lumiSectionCount, MAX_LS, MinLSBeforeSave, monitorName_, NBINS, num4NibblePerLS_, NUM_BUNCHES, NUM_HLX, OutputDir, OutputFilePrefix, prescaleEvt_, previousSection, reconnTime, runNumber_, runNumLength, SavePeriod, secNumLength, sectionInstantErrSumEt, sectionInstantErrSumOcc1, sectionInstantErrSumOcc2, sectionInstantNorm, sectionInstantSumEt, sectionInstantSumOcc1, sectionInstantSumOcc2, set1AboveIndex, set1BelowIndex, set1BetweenIndex, set2AboveIndex, set2BelowIndex, set2BetweenIndex, AlCaHLTBitMon_QueryRunRegistry::string, subSystemName_, totalNibbles_, TriggerBX, XMAX, and XMIN.

◆ ~HLXMonitor()

HLXMonitor::~HLXMonitor ( )
override

Definition at line 108 of file HLXMonitor.cc.

108  {
109  HLXTCP.Disconnect();
110  EndRun();
111 }

References HCAL_HLX::TCPReceiver::Disconnect(), EndRun(), and HLXTCP.

Member Function Documentation

◆ analyze()

void HLXMonitor::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
overrideprivatevirtual

Reimplemented from DQMEDAnalyzer.

Definition at line 837 of file HLXMonitor.cc.

837  {
838  using namespace edm;
839 
840  while (HLXTCP.IsConnected() == false) {
842  if (HLXTCP.Connect() != 1) {
843  std::cout << "Failed to connect to " << DistribIP1 << "." << std::endl;
844  sleep(1);
845  std::cout << "Trying " << DistribIP2 << std::endl;
847  if (HLXTCP.Connect() == 1)
848  break;
849  std::cout << "Failed to connect to " << DistribIP2 << "." << std::endl;
850  std::cout << " Reconnect in " << reconnTime << " seconds." << std::endl;
851  sleep(reconnTime);
852  }
853  }
854  if (HLXTCP.IsConnected() == true) {
855  std::cout << "Successfully connected." << std::endl;
856  }
857 
859  // If this is the first time through, set the runNumber ...
861  if (!currentRunEnded_ && runNumber_ != 0) {
862  EndRun();
863  }
865  currentRunEnded_ = false;
866  // std::cout << "Run number is: " << runNumber_ << std::endl;
867  timeval startruntime;
868  gettimeofday(&startruntime, nullptr);
869  runStartTimeStamp_->Fill(getUTCtime(&startruntime));
870  }
871 
872  // Fill the monitoring histograms
877 
878  cout << "Run: " << lumiSection.hdr.runNumber << " Section: " << lumiSection.hdr.sectionNumber
879  << " Orbit: " << lumiSection.hdr.startOrbit << endl;
880  cout << "Et Lumi: " << lumiSection.lumiSummary.InstantETLumi << endl;
881  cout << "Occ Lumi 1: " << lumiSection.lumiSummary.InstantOccLumi[0] << endl;
882  cout << "Occ Lumi 2: " << lumiSection.lumiSummary.InstantOccLumi[1] << endl;
883  } else {
884  HLXTCP.Disconnect();
885  EndRun();
886  }
887 }

References HCAL_HLX::TCPReceiver::Connect(), gather_cfg::cout, currentRunEnded_, HCAL_HLX::TCPReceiver::Disconnect(), DistribIP1, DistribIP2, EndRun(), dqm::impl::MonitorElement::Fill(), FillEventInfo(), FillHistograms(), FillHistoHFCompare(), FillReportSummary(), getUTCtime(), HCAL_HLX::LUMI_SECTION::hdr, HLXTCP, iEvent, HCAL_HLX::LUMI_SUMMARY::InstantETLumi, HCAL_HLX::LUMI_SUMMARY::InstantOccLumi, HCAL_HLX::TCPReceiver::IsConnected(), lumiSection, HCAL_HLX::LUMI_SECTION::lumiSummary, HCAL_HLX::TCPReceiver::ReceiveLumiSection(), reconnTime, HCAL_HLX::LUMI_SECTION_HEADER::runNumber, runNumber_, runStartTimeStamp_, HCAL_HLX::LUMI_SECTION_HEADER::sectionNumber, HCAL_HLX::TCPReceiver::SetIP(), and HCAL_HLX::LUMI_SECTION_HEADER::startOrbit.

◆ bookHistograms()

void HLXMonitor::bookHistograms ( DQMStore::IBooker iBooker,
edm::Run const &  ,
edm::EventSetup const &   
)
overrideprivatevirtual

Implements DQMEDAnalyzer.

Definition at line 141 of file HLXMonitor.cc.

141  {
142  SetupHists(iBooker);
143  SetupEventInfo(iBooker);
144 }

References SetupEventInfo(), and SetupHists().

◆ connectHLXTCP()

void HLXMonitor::connectHLXTCP ( )
private

Definition at line 114 of file HLXMonitor.cc.

114  {
116  int errorCode = HLXTCP.SetPort(listenPort);
117  cout << "SetPort: " << listenPort << " Success: " << errorCode << endl;
118  errorCode = HLXTCP.SetMode(AquireMode);
119  cout << "AquireMode: " << AquireMode << " Success: " << errorCode << endl;
120 
121  while (HLXTCP.IsConnected() == false) {
123  if (HLXTCP.Connect() != 1) {
124  std::cout << "Failed to connect to " << DistribIP1 << "." << std::endl;
125  sleep(1);
126  std::cout << "Trying " << DistribIP2 << std::endl;
128  if (HLXTCP.Connect() == 1)
129  break;
130  std::cout << "Failed to connect to " << DistribIP2 << "." << std::endl;
131  std::cout << " Reconnect in " << reconnTime << " seconds." << std::endl;
132  sleep(reconnTime);
133  }
134  }
135  if (HLXTCP.IsConnected() == true) {
136  std::cout << "Successfully connected." << std::endl;
137  }
138 }

References AquireMode, HCAL_HLX::TCPReceiver::Connect(), gather_cfg::cout, DistribIP1, DistribIP2, HLXTCP, HCAL_HLX::TCPReceiver::IsConnected(), listenPort, reconnTime, HCAL_HLX::TCPReceiver::SetIP(), HCAL_HLX::TCPReceiver::SetMode(), and HCAL_HLX::TCPReceiver::SetPort().

Referenced by HLXMonitor().

◆ EndRun()

void HLXMonitor::EndRun ( )
private

Definition at line 889 of file HLXMonitor.cc.

889  {
891 
892  // Do some things that should be done at the end of the run ...
893  expectedNibbles_ = 0;
894  for (unsigned int iHLX = 0; iHLX < NUM_HLX; ++iHLX)
895  totalNibbles_[iHLX] = 0;
896 
897  std::cout << "** Here in end run **" << std::endl;
898  runNumber_ = 0;
899  currentRunEnded_ = true;
906  sectionInstantNorm = 0;
907  lsBinOld = 0;
908  lumiSectionCount = 0;
909  previousSection = 0;
910 }

References gather_cfg::cout, currentRunEnded_, expectedNibbles_, FillReportSummary(), lsBinOld, lumiSectionCount, NUM_HLX, previousSection, runNumber_, sectionInstantErrSumEt, sectionInstantErrSumOcc1, sectionInstantErrSumOcc2, sectionInstantNorm, sectionInstantSumEt, sectionInstantSumOcc1, sectionInstantSumOcc2, and totalNibbles_.

Referenced by analyze(), and ~HLXMonitor().

◆ FillEventInfo()

void HLXMonitor::FillEventInfo ( const LUMI_SECTION section,
const edm::Event e 
)
private

Definition at line 1385 of file HLXMonitor.cc.

1385  {
1386  // New run .. set the run number and fill run summaries ...
1387  // std::cout << "Run number " << runNumber_ << " Section hdr run number "
1388  // << section.hdr.runNumber << std::endl;
1389 
1390  runId_->Fill(section.hdr.runNumber);
1391  lumisecId_->Fill((int)(section.hdr.sectionNumber / num4NibblePerLS_) + 1);
1392 
1393  // Update the total nibbles & the expected number
1394  expectedNibbles_ += section.hdr.numOrbits / 4096;
1395  for (unsigned int iHLX = 0; iHLX < NUM_HLX; ++iHLX) {
1396  unsigned int iWedge = HLXHFMap[iHLX] + 1;
1397  totalNibbles_[iWedge - 1] += section.occupancy[iHLX].hdr.numNibbles;
1398  }
1399 
1400  eventId_->Fill(e.id().event());
1401  eventTimeStamp_->Fill(e.time().value() / (double)0xffffffff);
1402 
1403  pEvent_++;
1404  evtRateCount_++;
1406 
1408  gettimeofday(&currentTime_, nullptr);
1411 
1413  if (time >= (evtRateWindow_ * 60.0)) {
1415  evtRateCount_ = 0;
1417  }
1418 }

References currentTime_, MillePedeFileConverter_cfg::e, eventId_, eventTimeStamp_, evtRateCount_, evtRateWindow_, expectedNibbles_, dqm::impl::MonitorElement::Fill(), getUTCtime(), HLXHFMap, lastAvgTime_, lastUpdateTime_, lumisecId_, num4NibblePerLS_, NUM_HLX, pEvent_, processEventRate_, processEvents_, processLatency_, processTimeStamp_, runId_, hgcalPlots::section, ntuplemaker::time, and totalNibbles_.

Referenced by analyze().

◆ FillHistograms()

void HLXMonitor::FillHistograms ( const LUMI_SECTION section)
private

Definition at line 912 of file HLXMonitor.cc.

912  {
913  // Check for missing data
914  if (previousSection != (section.hdr.sectionNumber - 1)) {
915  double weight = (double)(section.hdr.sectionNumber - previousSection - 1);
916  // std::cout << "Filling missing data! " << weight << std::endl;
918  }
919  previousSection = section.hdr.sectionNumber;
920 
921  int lsBin = int(lumiSectionCount / num4NibblePerLS_);
922  int lsBinBX = int(lumiSectionCount / num4NibblePerLS_);
923  HistAvgLumiEtSum->Fill(lsBin, section.lumiSummary.InstantETLumi);
924  HistAvgLumiOccSet1->Fill(lsBin, section.lumiSummary.InstantOccLumi[0]);
925  HistAvgLumiOccSet2->Fill(lsBin, section.lumiSummary.InstantOccLumi[1]);
926 
927  int fillBin = lumiSectionCount + 1;
928  if (fillBin > 128) {
929  // If we are already more than 2 LS's in, move everything back by one bin
930  // and fill the last bin with the new value.
931  for (int iBin = 1; iBin < 128; ++iBin) {
938  }
939  fillBin = 128;
940  }
941 
942  RecentInstantLumiEtSum->setBinContent(fillBin, section.lumiSummary.InstantETLumi);
943  RecentInstantLumiEtSum->setBinError(fillBin, section.lumiSummary.InstantETLumiErr);
944  RecentInstantLumiOccSet1->setBinContent(fillBin, section.lumiSummary.InstantOccLumi[0]);
945  RecentInstantLumiOccSet1->setBinError(fillBin, section.lumiSummary.InstantOccLumiErr[0]);
946  RecentInstantLumiOccSet2->setBinContent(fillBin, section.lumiSummary.InstantOccLumi[1]);
947  RecentInstantLumiOccSet2->setBinError(fillBin, section.lumiSummary.InstantOccLumiErr[1]);
948 
949  double recentOldBinContent = RecentIntegratedLumiEtSum->getBinContent(fillBin - 1);
950  if (fillBin == 1)
951  recentOldBinContent = 0;
952  double recentNewBinContent = recentOldBinContent + section.lumiSummary.InstantETLumi;
953  RecentIntegratedLumiEtSum->setBinContent(fillBin, recentNewBinContent);
954  recentOldBinContent = RecentIntegratedLumiOccSet1->getBinContent(fillBin - 1);
955  if (fillBin == 1)
956  recentOldBinContent = 0;
957  recentNewBinContent = recentOldBinContent + section.lumiSummary.InstantOccLumi[0];
958  RecentIntegratedLumiOccSet1->setBinContent(fillBin, recentNewBinContent);
959  recentOldBinContent = RecentIntegratedLumiOccSet2->getBinContent(fillBin - 1);
960  if (fillBin == 1)
961  recentOldBinContent = 0;
962  recentNewBinContent = recentOldBinContent + section.lumiSummary.InstantOccLumi[0];
963  RecentIntegratedLumiOccSet2->setBinContent(fillBin, recentNewBinContent);
964 
965  double recentOldBinError = RecentIntegratedLumiEtSum->getBinError(fillBin - 1);
966  if (fillBin == 1)
967  recentOldBinError = 0;
968  double recentNewBinError = sqrt(recentOldBinError * recentOldBinError +
969  section.lumiSummary.InstantETLumiErr * section.lumiSummary.InstantETLumiErr);
970  RecentIntegratedLumiEtSum->setBinError(fillBin, recentNewBinError);
971  recentOldBinError = RecentIntegratedLumiOccSet1->getBinError(fillBin - 1);
972  if (fillBin == 1)
973  recentOldBinError = 0;
974  recentNewBinError = sqrt(recentOldBinError * recentOldBinError +
975  section.lumiSummary.InstantOccLumiErr[0] * section.lumiSummary.InstantOccLumiErr[0]);
976  RecentIntegratedLumiOccSet1->setBinError(fillBin, recentNewBinError);
977  recentOldBinError = RecentIntegratedLumiOccSet2->getBinError(fillBin - 1);
978  if (fillBin == 1)
979  recentOldBinError = 0;
980  recentNewBinError = sqrt(recentOldBinError * recentOldBinError +
981  section.lumiSummary.InstantOccLumiErr[1] * section.lumiSummary.InstantOccLumiErr[1]);
982  RecentIntegratedLumiOccSet2->setBinError(fillBin, recentNewBinError);
983 
984  if (lsBinOld != lsBin) {
991 
992  double etDenom = fabs(sectionInstantSumEt);
993  if (etDenom < 1e-10)
994  etDenom = 1e-10;
995  double occ1Denom = fabs(sectionInstantSumOcc1);
996  if (occ1Denom < 1e-10)
997  occ1Denom = 1e-10;
998  double occ2Denom = fabs(sectionInstantSumOcc2);
999  if (occ2Denom < 1e-10)
1000  occ2Denom = 1e-10;
1001  double etError = 100.0 * sqrt(sectionInstantErrSumEt) / etDenom;
1002  double occ1Error = 100.0 * sqrt(sectionInstantErrSumOcc1) / occ1Denom;
1003  double occ2Error = 100.0 * sqrt(sectionInstantErrSumOcc2) / occ2Denom;
1007 
1008  double histOldBinContent = HistIntegratedLumiEtSum->getBinContent(lsBinOld);
1009  if (lsBinOld == 0)
1010  histOldBinContent = 0;
1011  double histNewBinContent = histOldBinContent + sectionInstantSumEt;
1012  HistIntegratedLumiEtSum->setBinContent(lsBin, histNewBinContent);
1013  histOldBinContent = HistIntegratedLumiOccSet1->getBinContent(lsBinOld);
1014  if (lsBinOld == 0)
1015  histOldBinContent = 0;
1016  histNewBinContent = histOldBinContent + sectionInstantSumOcc1;
1017  HistIntegratedLumiOccSet1->setBinContent(lsBin, histNewBinContent);
1018  histOldBinContent = HistIntegratedLumiOccSet2->getBinContent(lsBinOld);
1019  if (lsBinOld == 0)
1020  histOldBinContent = 0;
1021  histNewBinContent = histOldBinContent + sectionInstantSumOcc2;
1022  HistIntegratedLumiOccSet2->setBinContent(lsBin, histNewBinContent);
1023 
1024  double histOldBinError = HistIntegratedLumiEtSum->getBinError(lsBinOld);
1025  if (lsBinOld == 0)
1026  histOldBinError = 0;
1027  double histNewBinError = sqrt(histOldBinError * histOldBinError + sectionInstantErrSumEt);
1028  HistIntegratedLumiEtSum->setBinError(lsBin, histNewBinError);
1029  histOldBinError = HistIntegratedLumiOccSet1->getBinError(lsBinOld);
1030  if (lsBinOld == 0)
1031  histOldBinError = 0;
1032  histNewBinError = sqrt(histOldBinError * histOldBinError + sectionInstantErrSumOcc1);
1033  HistIntegratedLumiOccSet1->setBinError(lsBin, histNewBinError);
1034  histOldBinError = HistIntegratedLumiOccSet2->getBinError(lsBinOld);
1035  if (lsBinOld == 0)
1036  histOldBinError = 0;
1037  histNewBinError = sqrt(histOldBinError * histOldBinError + sectionInstantErrSumOcc2);
1038  HistIntegratedLumiOccSet2->setBinError(lsBin, histNewBinError);
1039 
1040  sectionInstantSumEt = 0;
1046  sectionInstantNorm = 0;
1047  lsBinOld = lsBin;
1048  }
1049 
1050  sectionInstantSumEt += section.lumiSummary.InstantETLumi;
1051  sectionInstantErrSumEt += section.lumiSummary.InstantETLumiErr * section.lumiSummary.InstantETLumiErr;
1052  sectionInstantSumOcc1 += section.lumiSummary.InstantOccLumi[0];
1053  sectionInstantErrSumOcc1 += section.lumiSummary.InstantOccLumiErr[0] * section.lumiSummary.InstantOccLumiErr[0];
1054  sectionInstantSumOcc2 += section.lumiSummary.InstantOccLumi[1];
1055  sectionInstantErrSumOcc2 += section.lumiSummary.InstantOccLumiErr[1] * section.lumiSummary.InstantOccLumiErr[1];
1057 
1058  for (int iHLX = 0; iHLX < (int)NUM_HLX; ++iHLX) {
1059  unsigned int utotal1 = 0;
1060  unsigned int utotal2 = 0;
1061  unsigned int iWedge = HLXHFMap[iHLX];
1062  if (section.occupancy[iHLX].hdr.numNibbles != 0) {
1063  // Don't include the last one hundred BX in the average.
1064  for (unsigned int iBX = 0; iBX < NUM_BUNCHES; ++iBX) {
1065  // Normalize to number of towers
1066  unsigned int norm[2] = {0, 0};
1067  norm[0] += section.occupancy[iHLX].data[set1BelowIndex][iBX];
1068  norm[0] += section.occupancy[iHLX].data[set1BetweenIndex][iBX];
1069  norm[0] += section.occupancy[iHLX].data[set1AboveIndex][iBX];
1070  if (norm[0] == 0)
1071  norm[0] = 1;
1072  norm[1] += section.occupancy[iHLX].data[set2BelowIndex][iBX];
1073  norm[1] += section.occupancy[iHLX].data[set2BetweenIndex][iBX];
1074  norm[1] += section.occupancy[iHLX].data[set2AboveIndex][iBX];
1075  if (norm[1] == 0)
1076  norm[1] = 1;
1077 
1078  double normEt = section.etSum[iHLX].data[iBX] / (double)(norm[0] + norm[1]);
1079  double normOccSet1Below = (double)section.occupancy[iHLX].data[set1BelowIndex][iBX] / (double)norm[0];
1080  double normOccSet1Between = (double)section.occupancy[iHLX].data[set1BetweenIndex][iBX] / (double)norm[0];
1081  double normOccSet1Above = (double)section.occupancy[iHLX].data[set1AboveIndex][iBX] / (double)norm[0];
1082  double normOccSet2Below = (double)section.occupancy[iHLX].data[set2BelowIndex][iBX] / (double)norm[1];
1083  double normOccSet2Between = (double)section.occupancy[iHLX].data[set2BetweenIndex][iBX] / (double)norm[1];
1084  double normOccSet2Above = (double)section.occupancy[iHLX].data[set2AboveIndex][iBX] / (double)norm[1];
1085 
1086  // Averages & check sum
1087  if (iBX < NUM_BUNCHES - 100) {
1088  AvgEtSum->Fill(iWedge, normEt);
1089 
1090  AvgOccBelowSet1->Fill(iWedge, normOccSet1Below);
1091  AvgOccBetweenSet1->Fill(iWedge, normOccSet1Between);
1092  AvgOccAboveSet1->Fill(iWedge, normOccSet1Above);
1093 
1094  AvgOccBelowSet2->Fill(iWedge, normOccSet2Below);
1095  AvgOccBetweenSet2->Fill(iWedge, normOccSet2Between);
1096  AvgOccAboveSet2->Fill(iWedge, normOccSet2Above);
1097 
1098  if (iWedge < 18) {
1099  HistAvgEtSumHFP->Fill(lsBin, normEt);
1100  HistAvgOccBelowSet1HFP->Fill(lsBin, normOccSet1Below);
1101  HistAvgOccBetweenSet1HFP->Fill(lsBin, normOccSet1Between);
1102  HistAvgOccAboveSet1HFP->Fill(lsBin, normOccSet1Above);
1103  HistAvgOccBelowSet2HFP->Fill(lsBin, normOccSet2Below);
1104  HistAvgOccBetweenSet2HFP->Fill(lsBin, normOccSet2Between);
1105  HistAvgOccAboveSet2HFP->Fill(lsBin, normOccSet2Above);
1106 
1107  if (iBX >= (XMIN - 1) && iBX <= (XMAX - 1))
1108  BXvsTimeAvgEtSumHFP->Fill(lsBinBX, iBX, normEt / (num4NibblePerLS_ * 18.0 * 12.0));
1109  } else {
1110  HistAvgEtSumHFM->Fill(lsBin, normEt);
1111  HistAvgOccBelowSet1HFM->Fill(lsBin, normOccSet1Below);
1112  HistAvgOccBetweenSet1HFM->Fill(lsBin, normOccSet1Between);
1113  HistAvgOccAboveSet1HFM->Fill(lsBin, normOccSet1Above);
1114  HistAvgOccBelowSet2HFM->Fill(lsBin, normOccSet2Below);
1115  HistAvgOccBetweenSet2HFM->Fill(lsBin, normOccSet2Between);
1116  HistAvgOccAboveSet2HFM->Fill(lsBin, normOccSet2Above);
1117 
1118  if (iBX >= (XMIN - 1) && iBX <= (XMAX - 1))
1119  BXvsTimeAvgEtSumHFM->Fill(lsBinBX, iBX, normEt / (num4NibblePerLS_ * 18.0 * 12.0));
1120  }
1121 
1122  utotal1 += section.occupancy[iHLX].data[set1BelowIndex][iBX];
1123  utotal1 += section.occupancy[iHLX].data[set1BetweenIndex][iBX];
1124  utotal1 += section.occupancy[iHLX].data[set1AboveIndex][iBX];
1125 
1126  utotal2 += section.occupancy[iHLX].data[set2BelowIndex][iBX];
1127  utotal2 += section.occupancy[iHLX].data[set2BetweenIndex][iBX];
1128  utotal2 += section.occupancy[iHLX].data[set2AboveIndex][iBX];
1129  }
1130 
1131  if (Style == "BX") {
1132  // Get the correct bin ...
1133  TH1F *Set1BelowHist = Set1Below[iWedge]->getTH1F();
1134  int iBin = Set1BelowHist->FindBin((float)iBX);
1135 
1136  // Adjust the old bin content to make the new, unnormalize and
1137  // renormalize
1138  if (lumiSectionCount > 0) {
1139  double oldNormOccSet1Below = (Set1Below[iWedge]->getBinContent(iBin)) * (double)(lumiSectionCount);
1140  normOccSet1Below += oldNormOccSet1Below;
1141  normOccSet1Below /= (double)(lumiSectionCount + 1);
1142  double oldNormOccSet2Below = (Set2Below[iWedge]->getBinContent(iBin)) * (double)(lumiSectionCount);
1143  normOccSet2Below += oldNormOccSet2Below;
1144  normOccSet2Below /= (double)(lumiSectionCount + 1);
1145 
1146  double oldNormOccSet1Between = (Set1Between[iWedge]->getBinContent(iBin)) * (double)(lumiSectionCount);
1147  normOccSet1Between += oldNormOccSet1Between;
1148  normOccSet1Between /= (double)(lumiSectionCount + 1);
1149  double oldNormOccSet2Between = (Set2Between[iWedge]->getBinContent(iBin)) * (double)(lumiSectionCount);
1150  normOccSet2Between += oldNormOccSet2Between;
1151  normOccSet2Between /= (double)(lumiSectionCount + 1);
1152 
1153  double oldNormOccSet1Above = (Set1Above[iWedge]->getBinContent(iBin)) * (double)(lumiSectionCount);
1154  normOccSet1Above += oldNormOccSet1Above;
1155  normOccSet1Above /= (double)(lumiSectionCount + 1);
1156  double oldNormOccSet2Above = (Set2Above[iWedge]->getBinContent(iBin)) * (double)(lumiSectionCount);
1157  normOccSet2Above += oldNormOccSet2Above;
1158  normOccSet2Above /= (double)(lumiSectionCount + 1);
1159 
1160  double oldNormEt = ETSum[iWedge]->getBinContent(iBin) * (double)(lumiSectionCount);
1161  normEt += oldNormEt;
1162  normEt /= (double)(lumiSectionCount + 1);
1163  }
1164  Set1Below[iWedge]->setBinContent(iBin, normOccSet1Below);
1165  Set1Between[iWedge]->setBinContent(iBin, normOccSet1Between);
1166  Set1Above[iWedge]->setBinContent(iBin, normOccSet1Above);
1167  Set2Below[iWedge]->setBinContent(iBin, normOccSet2Below);
1168  Set2Between[iWedge]->setBinContent(iBin, normOccSet2Between);
1169  Set2Above[iWedge]->setBinContent(iBin, normOccSet2Above);
1170  ETSum[iWedge]->setBinContent(iBin, normEt);
1171  } else if (Style == "Dist") {
1172  Set1Below[iWedge]->Fill(normOccSet1Below);
1173  Set1Between[iWedge]->Fill(normOccSet1Between);
1174  Set1Above[iWedge]->Fill(normOccSet1Above);
1175  Set2Below[iWedge]->Fill(normOccSet2Below);
1176  Set2Between[iWedge]->Fill(normOccSet2Between);
1177  Set2Above[iWedge]->Fill(normOccSet2Above);
1178  ETSum[iWedge]->Fill(normEt);
1179  }
1180  }
1181 
1182  // Get the number of towers per wedge per BX (assuming non-zero numbers)
1183  double total1 = 0;
1184  double total2 = 0;
1185  if ((NUM_BUNCHES - 100) > 0) {
1186  total1 = (double)utotal1 / (double)(NUM_BUNCHES - 100);
1187  total2 = (double)utotal2 / (double)(NUM_BUNCHES - 100);
1188  }
1189  if (section.hdr.numOrbits > 0) {
1190  total1 = total1 / (double)section.hdr.numOrbits;
1191  total2 = total2 / (double)section.hdr.numOrbits;
1192  }
1193 
1194  SumAllOccSet1->Fill(iWedge, total1);
1195  SumAllOccSet2->Fill(iWedge, total2);
1196  }
1197  }
1198 
1199  double max[4] = {-1000.0, -1000.0, -1000.0, -1000.0};
1200  int bxmax[4] = {-1, -1, -1, -1};
1201  for (unsigned int iBX = 0; iBX < NUM_BUNCHES; ++iBX) {
1202  LumiAvgEtSum->Fill(iBX, section.lumiDetail.ETLumi[iBX]);
1203  LumiAvgOccSet1->Fill(iBX, section.lumiDetail.OccLumi[0][iBX]);
1204  LumiAvgOccSet2->Fill(iBX, section.lumiDetail.OccLumi[1][iBX]);
1205 
1206  if (section.lumiDetail.OccLumi[0][iBX] > max[0]) {
1207  max[3] = max[2];
1208  bxmax[3] = bxmax[2];
1209  max[2] = max[1];
1210  bxmax[2] = bxmax[1];
1211  max[1] = max[0];
1212  bxmax[1] = bxmax[0];
1213  max[0] = section.lumiDetail.OccLumi[0][iBX];
1214  bxmax[0] = iBX;
1215  } else if (section.lumiDetail.OccLumi[0][iBX] > max[1]) {
1216  max[3] = max[2];
1217  bxmax[3] = bxmax[2];
1218  max[2] = max[1];
1219  bxmax[2] = bxmax[1];
1220  max[1] = section.lumiDetail.OccLumi[0][iBX];
1221  bxmax[1] = iBX;
1222  } else if (section.lumiDetail.OccLumi[0][iBX] > max[2]) {
1223  max[3] = max[2];
1224  bxmax[3] = bxmax[2];
1225  max[2] = section.lumiDetail.OccLumi[0][iBX];
1226  bxmax[2] = iBX;
1227  } else if (section.lumiDetail.OccLumi[0][iBX] > max[3]) {
1228  max[3] = section.lumiDetail.OccLumi[0][iBX];
1229  bxmax[3] = iBX;
1230  }
1231 
1232  int iBin = iBX - (int)XMIN + 1;
1233  if (iBin <= int(XMAX - XMIN) && iBin >= 1) {
1234  LumiInstantEtSum->setBinContent(iBin, section.lumiDetail.ETLumi[iBX]);
1235  LumiInstantOccSet1->setBinContent(iBin, section.lumiDetail.OccLumi[0][iBX]);
1236  LumiInstantOccSet2->setBinContent(iBin, section.lumiDetail.OccLumi[1][iBX]);
1237  LumiInstantEtSum->setBinError(iBin, section.lumiDetail.ETLumiErr[iBX]);
1238  LumiInstantOccSet1->setBinError(iBin, section.lumiDetail.OccLumiErr[0][iBX]);
1239  LumiInstantOccSet2->setBinError(iBin, section.lumiDetail.OccLumiErr[1][iBX]);
1240 
1241  double oldBinContent = LumiIntegratedEtSum->getBinContent(iBin);
1242  if (lumiSectionCount == 0)
1243  oldBinContent = 0;
1244  double newBinContent = oldBinContent + section.lumiDetail.ETLumi[iBX];
1245  LumiIntegratedEtSum->setBinContent(iBin, newBinContent);
1246  oldBinContent = LumiIntegratedOccSet1->getBinContent(iBin);
1247  if (lumiSectionCount == 0)
1248  oldBinContent = 0;
1249  newBinContent = oldBinContent + section.lumiDetail.OccLumi[0][iBX];
1250  LumiIntegratedOccSet1->setBinContent(iBin, newBinContent);
1251  oldBinContent = LumiIntegratedOccSet2->getBinContent(iBin);
1252  if (lumiSectionCount == 0)
1253  oldBinContent = 0;
1254  newBinContent = oldBinContent + section.lumiDetail.OccLumi[1][iBX];
1255  LumiIntegratedOccSet2->setBinContent(iBin, newBinContent);
1256 
1257  double oldBinError = LumiIntegratedEtSum->getBinError(iBin);
1258  if (lumiSectionCount == 0)
1259  oldBinError = 0;
1260  double newBinError =
1261  sqrt(oldBinError * oldBinError + section.lumiDetail.ETLumiErr[iBX] * section.lumiDetail.ETLumiErr[iBX]);
1262  LumiIntegratedEtSum->setBinError(iBin, newBinError);
1263  oldBinError = LumiIntegratedOccSet1->getBinError(iBin);
1264  if (lumiSectionCount == 0)
1265  oldBinError = 0;
1266  newBinError = sqrt(oldBinError * oldBinError +
1267  section.lumiDetail.OccLumiErr[0][iBX] * section.lumiDetail.OccLumiErr[0][iBX]);
1268  LumiIntegratedOccSet1->setBinError(iBin, newBinError);
1269  oldBinError = LumiIntegratedOccSet1->getBinError(iBin);
1270  if (lumiSectionCount == 0)
1271  oldBinError = 0;
1272  newBinError = sqrt(oldBinError * oldBinError +
1273  section.lumiDetail.OccLumiErr[1][iBX] * section.lumiDetail.OccLumiErr[1][iBX]);
1274  LumiIntegratedOccSet2->setBinError(iBin, newBinError);
1275  }
1276  }
1277 
1278  // Now fill the maximum hists, but ordered by BX, so that
1279  // collision BX's or satellite BX's will always appear in the
1280  // same histogram.
1281  int flag = 1;
1282  for (int iM = 0; (iM < 4) && flag; ++iM) {
1283  flag = 0;
1284  for (int iN = 0; iN < 3; ++iN) {
1285  if (bxmax[iN + 1] < bxmax[iN]) {
1286  int tmp = bxmax[iN];
1287  bxmax[iN] = bxmax[iN + 1];
1288  bxmax[iN + 1] = tmp;
1289 
1290  double tmp2 = max[iN];
1291  max[iN] = max[iN + 1];
1292  max[iN + 1] = tmp2;
1293  flag = 1;
1294  }
1295  }
1296  }
1297 
1298  // 0.9e1 = Conversion constant for occ1 at 900GeV COM.
1299  MaxInstLumiBX1->Fill(max[0] * 0.9e1);
1300  MaxInstLumiBXNum1->Fill(bxmax[0]);
1301  MaxInstLumiBX2->Fill(max[1] * 0.9e1);
1302  MaxInstLumiBXNum2->Fill(bxmax[1]);
1303  MaxInstLumiBX3->Fill(max[2] * 0.9e1);
1304  MaxInstLumiBXNum3->Fill(bxmax[2]);
1305  MaxInstLumiBX4->Fill(max[3] * 0.9e1);
1306  MaxInstLumiBXNum4->Fill(bxmax[3]);
1307 
1308  TH1F *tmpHist = MaxInstLumiBX1->getTH1F();
1309  double minX = tmpHist->GetBinLowEdge(1);
1310  double maxX = tmpHist->GetBinLowEdge(tmpHist->GetNbinsX() + 1);
1311 
1312  int inum4NibblePerLS = (int)num4NibblePerLS_;
1313  if (lumiSectionCount % inum4NibblePerLS == 0) {
1314  double mean1 = MaxInstLumiBX1->getMean();
1315  double rms1 = MaxInstLumiBX1->getRMS();
1316  if (rms1 > 0 && mean1 - 5 * rms1 > minX && mean1 + 5 * rms1 < maxX)
1317  MaxInstLumiBX1->setAxisRange(mean1 - 5 * rms1, mean1 + 5 * rms1);
1318 
1319  double mean2 = MaxInstLumiBX2->getMean();
1320  double rms2 = MaxInstLumiBX2->getRMS();
1321  if (rms2 > 0 && mean2 - 5 * rms2 > minX && mean2 + 5 * rms2 < maxX)
1322  MaxInstLumiBX2->setAxisRange(mean2 - 5 * rms2, mean2 + 5 * rms2);
1323 
1324  double mean3 = MaxInstLumiBX3->getMean();
1325  double rms3 = MaxInstLumiBX3->getRMS();
1326  if (rms3 > 0 && mean3 - 5 * rms3 > minX && mean3 + 5 * rms3 < maxX)
1327  MaxInstLumiBX3->setAxisRange(mean3 - 5 * rms3, mean3 + 5 * rms3);
1328 
1329  double mean4 = MaxInstLumiBX4->getMean();
1330  double rms4 = MaxInstLumiBX4->getRMS();
1331  if (rms4 > 0 && mean4 - 5 * rms4 > minX && mean4 + 5 * rms4 < maxX)
1332  MaxInstLumiBX4->setAxisRange(mean4 - 5 * rms4, mean4 + 5 * rms4);
1333  }
1334 
1335  // Add one to the section count (usually short sections)
1336  ++lumiSectionCount;
1337 }

References AvgEtSum, AvgOccAboveSet1, AvgOccAboveSet2, AvgOccBelowSet1, AvgOccBelowSet2, AvgOccBetweenSet1, AvgOccBetweenSet2, BXvsTimeAvgEtSumHFM, BXvsTimeAvgEtSumHFP, MillePedeFileConverter_cfg::e, StorageManager_cfg::e1, ETSum, dqm::impl::MonitorElement::Fill(), RemoveAddSevLevel::flag, dqm::impl::MonitorElement::getBinContent(), dqm::impl::MonitorElement::getBinError(), dqm::impl::MonitorElement::getMean(), dqm::impl::MonitorElement::getRMS(), dqm::impl::MonitorElement::getTH1F(), HistAvgEtSumHFM, HistAvgEtSumHFP, HistAvgLumiEtSum, HistAvgLumiOccSet1, HistAvgLumiOccSet2, HistAvgOccAboveSet1HFM, HistAvgOccAboveSet1HFP, HistAvgOccAboveSet2HFM, HistAvgOccAboveSet2HFP, HistAvgOccBelowSet1HFM, HistAvgOccBelowSet1HFP, HistAvgOccBelowSet2HFM, HistAvgOccBelowSet2HFP, HistAvgOccBetweenSet1HFM, HistAvgOccBetweenSet1HFP, HistAvgOccBetweenSet2HFM, HistAvgOccBetweenSet2HFP, HistInstantLumiEtSum, HistInstantLumiEtSumError, HistInstantLumiOccSet1, HistInstantLumiOccSet1Error, HistInstantLumiOccSet2, HistInstantLumiOccSet2Error, HistIntegratedLumiEtSum, HistIntegratedLumiOccSet1, HistIntegratedLumiOccSet2, HLXHFMap, createfilelist::int, lsBinOld, LumiAvgEtSum, LumiAvgOccSet1, LumiAvgOccSet2, LumiInstantEtSum, LumiInstantOccSet1, LumiInstantOccSet2, LumiIntegratedEtSum, LumiIntegratedOccSet1, LumiIntegratedOccSet2, lumiSectionCount, SiStripPI::max, MaxInstLumiBX1, MaxInstLumiBX2, MaxInstLumiBX3, MaxInstLumiBX4, MaxInstLumiBXNum1, MaxInstLumiBXNum2, MaxInstLumiBXNum3, MaxInstLumiBXNum4, HGVHistoProducerAlgoBlock_cfi::maxX, HGVHistoProducerAlgoBlock_cfi::minX, MissingDQMDataCheck, num4NibblePerLS_, NUM_BUNCHES, NUM_HLX, previousSection, RecentInstantLumiEtSum, RecentInstantLumiOccSet1, RecentInstantLumiOccSet2, RecentIntegratedLumiEtSum, RecentIntegratedLumiOccSet1, RecentIntegratedLumiOccSet2, hgcalPlots::section, sectionInstantErrSumEt, sectionInstantErrSumOcc1, sectionInstantErrSumOcc2, sectionInstantNorm, sectionInstantSumEt, sectionInstantSumOcc1, sectionInstantSumOcc2, Set1Above, set1AboveIndex, Set1Below, set1BelowIndex, Set1Between, set1BetweenIndex, Set2Above, set2AboveIndex, Set2Below, set2BelowIndex, Set2Between, set2BetweenIndex, dqm::impl::MonitorElement::setAxisRange(), dqm::impl::MonitorElement::setBinContent(), dqm::impl::MonitorElement::setBinError(), mathSSE::sqrt(), SumAllOccSet1, SumAllOccSet2, createJobs::tmp, XMAX, and XMIN.

Referenced by analyze().

◆ FillHistoHFCompare()

void HLXMonitor::FillHistoHFCompare ( const LUMI_SECTION section)
private

Definition at line 1339 of file HLXMonitor.cc.

1339  {
1340  for (unsigned int iHLX = 0; iHLX < NUM_HLX; ++iHLX) {
1341  unsigned int iWedge = HLXHFMap[iHLX];
1342 
1343  if (section.occupancy[iHLX].hdr.numNibbles != 0) {
1344  float nActvTwrsSet1 = section.occupancy[iHLX].data[set1AboveIndex][TriggerBX] +
1345  section.occupancy[iHLX].data[set1BetweenIndex][TriggerBX] +
1346  section.occupancy[iHLX].data[set1BelowIndex][TriggerBX];
1347 
1348  float nActvTwrsSet2 = section.occupancy[iHLX].data[set2AboveIndex][TriggerBX] +
1349  section.occupancy[iHLX].data[set2BetweenIndex][TriggerBX] +
1350  section.occupancy[iHLX].data[set2BelowIndex][TriggerBX];
1351 
1352  float total = nActvTwrsSet1 + nActvTwrsSet2;
1353 
1354  if (total > 0) {
1355  float tempData = section.etSum[iHLX].data[TriggerBX] / total;
1356  // cout << "Filling HFCompare Et sum " << tempData << endl;
1357  HFCompareEtSum->Fill(iWedge, tempData);
1358  }
1359 
1360  if (nActvTwrsSet1 > 0) {
1361  float tempData = (float)section.occupancy[iHLX].data[set1BelowIndex][TriggerBX] / nActvTwrsSet1;
1362  HFCompareOccBelowSet1->Fill(iWedge, tempData);
1363 
1364  tempData = (float)section.occupancy[iHLX].data[set1BetweenIndex][TriggerBX] / nActvTwrsSet1;
1365  HFCompareOccBetweenSet1->Fill(iWedge, tempData);
1366 
1367  tempData = (float)section.occupancy[iHLX].data[set1AboveIndex][TriggerBX] / nActvTwrsSet1;
1368  HFCompareOccAboveSet1->Fill(iWedge, tempData);
1369  }
1370 
1371  if (nActvTwrsSet2 > 0) {
1372  float tempData = (float)section.occupancy[iHLX].data[set2BelowIndex][TriggerBX] / nActvTwrsSet2;
1373  HFCompareOccBelowSet2->Fill(iWedge, tempData);
1374 
1375  tempData = (float)section.occupancy[iHLX].data[set2BetweenIndex][TriggerBX] / nActvTwrsSet2;
1376  HFCompareOccBetweenSet2->Fill(iWedge, tempData);
1377 
1378  tempData = (float)section.occupancy[iHLX].data[set2AboveIndex][TriggerBX] / nActvTwrsSet2;
1379  HFCompareOccAboveSet2->Fill(iWedge, tempData);
1380  }
1381  }
1382  }
1383 }

References dqm::impl::MonitorElement::Fill(), dqmMemoryStats::float, HFCompareEtSum, HFCompareOccAboveSet1, HFCompareOccAboveSet2, HFCompareOccBelowSet1, HFCompareOccBelowSet2, HFCompareOccBetweenSet1, HFCompareOccBetweenSet2, HLXHFMap, NUM_HLX, hgcalPlots::section, set1AboveIndex, set1BelowIndex, set1BetweenIndex, set2AboveIndex, set2BelowIndex, set2BetweenIndex, dqmMemoryStats::total, and TriggerBX.

Referenced by analyze().

◆ FillReportSummary()

void HLXMonitor::FillReportSummary ( )
private

Definition at line 1420 of file HLXMonitor.cc.

1420  {
1421  // Run summary - Loop over the HLX's and fill the map,
1422  // also calculate the overall quality.
1423  float overall = 0.0;
1424  for (unsigned int iHLX = 0; iHLX < NUM_HLX; ++iHLX) {
1425  unsigned int iWedge = HLXHFMap[iHLX] + 1;
1426  unsigned int iEta = 2;
1427  float frac = 0.0;
1428  if (expectedNibbles_ > 0)
1429  frac = (float)totalNibbles_[iWedge - 1] / (float)expectedNibbles_;
1430  if (iWedge >= 19) {
1431  iEta = 1;
1432  iWedge -= 18;
1433  }
1435  overall += frac;
1436  }
1437 
1438  overall /= (float)NUM_HLX;
1439  if (overall > 1.0)
1440  overall = 0.0;
1441  // std::cout << "Filling report summary! Main. " << overall << std::endl;
1442  reportSummary_->Fill(overall);
1443 }

References expectedNibbles_, dqm::impl::MonitorElement::Fill(), dqmMemoryStats::float, DivergingColor::frac, HLXHFMap, L1TowerCalibrationProducer_cfi::iEta, NUM_HLX, reportSummary_, reportSummaryMap_, dqm::impl::MonitorElement::setBinContent(), and totalNibbles_.

Referenced by analyze(), and EndRun().

◆ getUTCtime()

double HLXMonitor::getUTCtime ( timeval *  a,
timeval *  b = nullptr 
)
private

Definition at line 1445 of file HLXMonitor.cc.

1445  {
1446  double deltaT = (*a).tv_sec * 1000.0 + (*a).tv_usec / 1000.0;
1447  if (b != nullptr)
1448  deltaT = (*b).tv_sec * 1000.0 + (*b).tv_usec / 1000.0 - deltaT;
1449  return deltaT / 1000.0;
1450 }

References b.

Referenced by analyze(), FillEventInfo(), and SetupEventInfo().

◆ SetupEventInfo()

void HLXMonitor::SetupEventInfo ( DQMStore::IBooker iBooker)
private

Definition at line 759 of file HLXMonitor.cc.

759  {
760  using std::string;
761 
762  string currentfolder = subSystemName_ + "/" + eventInfoFolderHLX_;
763  // cout << "currentfolder " << currentfolder << endl;
764 
765  iBooker.setCurrentFolder(currentfolder);
766 
767  pEvent_ = 0;
768  evtRateCount_ = 0;
769  gettimeofday(&currentTime_, nullptr);
771  evtRateWindow_ = 0.5;
772 
773  // Event specific contents
774  runId_ = iBooker.bookInt("iRun");
775  lumisecId_ = iBooker.bookInt("iLumiSection");
776 
777  eventId_ = iBooker.bookInt("iEvent");
778  eventId_->Fill(-1);
779  eventTimeStamp_ = iBooker.bookFloat("eventTimeStamp");
780 
781  iBooker.setCurrentFolder(currentfolder);
782  // Process specific contents
783  processTimeStamp_ = iBooker.bookFloat("processTimeStamp");
785  processLatency_ = iBooker.bookFloat("processLatency");
786  processTimeStamp_->Fill(-1);
787  processEvents_ = iBooker.bookInt("processedEvents");
789  processEventRate_ = iBooker.bookFloat("processEventRate");
790  processEventRate_->Fill(-1);
791  nUpdates_ = iBooker.bookInt("processUpdates");
792  nUpdates_->Fill(-1);
793 
794  // Static Contents
795  processId_ = iBooker.bookInt("processID");
796  processId_->Fill(gSystem->GetPid());
797  processStartTimeStamp_ = iBooker.bookFloat("processStartTimeStamp");
799  runStartTimeStamp_ = iBooker.bookFloat("runStartTimeStamp");
800  hostName_ = iBooker.bookString("hostName", gSystem->HostName());
801  processName_ = iBooker.bookString("processName", subSystemName_);
802  workingDir_ = iBooker.bookString("workingDir", gSystem->pwd());
803  cmsswVer_ = iBooker.bookString("CMSSW_Version", edm::getReleaseVersion());
804 
805  // Go to the standard EventInfo folder (in the case online case where this
806  // is different).
807  currentfolder = subSystemName_ + "/" + eventInfoFolder_;
808  iBooker.setCurrentFolder(currentfolder);
809 
810  reportSummary_ = iBooker.bookFloat("reportSummary");
811  reportSummaryMap_ = iBooker.book2D("reportSummaryMap", "reportSummaryMap", 18, 0., 18., 2, -1.5, 1.5);
812 
813  currentfolder = subSystemName_ + "/" + eventInfoFolderHLX_;
814  iBooker.setCurrentFolder(currentfolder);
815 
816  TH2F *summaryHist = reportSummaryMap_->getTH2F();
817  summaryHist->GetYaxis()->SetBinLabel(1, "HF-");
818  summaryHist->GetYaxis()->SetBinLabel(2, "HF+");
819  summaryHist->GetXaxis()->SetTitle("Wedge #");
820 
821  // Fill the report summary objects with default values, since these will only
822  // be filled at the change of run.
823  reportSummary_->Fill(1.0);
824 
825  for (unsigned int iHLX = 0; iHLX < NUM_HLX; ++iHLX) {
826  unsigned int iWedge = HLXHFMap[iHLX] + 1;
827  unsigned int iEta = 2;
828  if (iWedge >= 19) {
829  iEta = 1;
830  iWedge -= 18;
831  }
832  reportSummaryMap_->setBinContent(iWedge, iEta, 1.0);
833  }
834 }

References dqm::implementation::IBooker::book2D(), dqm::implementation::IBooker::bookFloat(), dqm::implementation::IBooker::bookInt(), dqm::implementation::IBooker::bookString(), cmsswVer_, currentTime_, eventId_, eventInfoFolder_, eventInfoFolderHLX_, eventTimeStamp_, evtRateCount_, evtRateWindow_, dqm::impl::MonitorElement::Fill(), edm::getReleaseVersion(), dqm::impl::MonitorElement::getTH2F(), getUTCtime(), HLXHFMap, hostName_, L1TowerCalibrationProducer_cfi::iEta, lastAvgTime_, lumisecId_, NUM_HLX, nUpdates_, pEvent_, processEventRate_, processEvents_, processId_, processLatency_, processName_, processStartTimeStamp_, processTimeStamp_, reportSummary_, reportSummaryMap_, runId_, runStartTimeStamp_, dqm::impl::MonitorElement::setBinContent(), dqm::implementation::NavigatorBase::setCurrentFolder(), AlCaHLTBitMon_QueryRunRegistry::string, subSystemName_, and workingDir_.

Referenced by bookHistograms().

◆ SetupHists()

void HLXMonitor::SetupHists ( DQMStore::IBooker iBooker)
private

Definition at line 146 of file HLXMonitor.cc.

146  {
147  iBooker.setCurrentFolder(monitorName_ + "/HFPlus");
148 
149  for (unsigned int iWedge = 0; iWedge < 18 && iWedge < NUM_HLX; ++iWedge) {
150  std::ostringstream tempStreamer;
151  tempStreamer << std::dec << std::setw(2) << std::setfill('0') << (iWedge + 1);
152 
153  std::ostringstream wedgeNum;
154  wedgeNum << std::dec << (iWedge % 18) + 1;
155 
156  iBooker.setCurrentFolder(monitorName_ + "/HFPlus/Wedge" + tempStreamer.str());
157 
158  Set1Below[iWedge] =
159  iBooker.book1D("Set1_Below", "HF+ Wedge " + wedgeNum.str() + ": Below Threshold 1 - Set 1", NBINS, XMIN, XMAX);
160  Set1Between[iWedge] = iBooker.book1D(
161  "Set1_Between", "HF+ Wedge " + wedgeNum.str() + ": Between Threshold 1 & 2 - Set 1", NBINS, XMIN, XMAX);
162  Set1Above[iWedge] =
163  iBooker.book1D("Set1_Above", "HF+ Wedge " + wedgeNum.str() + ": Above Threshold 2 - Set 1", NBINS, XMIN, XMAX);
164  Set2Below[iWedge] =
165  iBooker.book1D("Set2_Below", "HF+ Wedge " + wedgeNum.str() + ": Below Threshold 1 - Set 2", NBINS, XMIN, XMAX);
166  Set2Between[iWedge] = iBooker.book1D(
167  "Set2_Between", "HF+ Wedge " + wedgeNum.str() + ": Between Threshold 1 & 2 - Set 2", NBINS, XMIN, XMAX);
168  Set2Above[iWedge] =
169  iBooker.book1D("Set2_Above", "HF+ Wedge " + wedgeNum.str() + ": Above Threshold 2 - Set 2", NBINS, XMIN, XMAX);
170  ETSum[iWedge] = iBooker.book1D("ETSum", "HF+ Wedge " + wedgeNum.str() + ": Transverse Energy", NBINS, XMIN, XMAX);
171  }
172 
173  if (NUM_HLX > 17) {
174  iBooker.setCurrentFolder(monitorName_ + "/HFMinus");
175 
176  for (unsigned int iWedge = 18; iWedge < NUM_HLX; ++iWedge) {
177  std::ostringstream tempStreamer;
178  tempStreamer << std::dec << std::setw(2) << std::setfill('0') << (iWedge + 1);
179 
180  std::ostringstream wedgeNum;
181  wedgeNum << std::dec << (iWedge % 18) + 1;
182 
183  iBooker.setCurrentFolder(monitorName_ + "/HFMinus/Wedge" + tempStreamer.str());
184  Set1Below[iWedge] = iBooker.book1D(
185  "Set1_Below", "HF- Wedge " + wedgeNum.str() + ": Below Threshold 1 - Set 1", NBINS, XMIN, XMAX);
186  Set1Between[iWedge] = iBooker.book1D(
187  "Set1_Between", "HF- Wedge " + wedgeNum.str() + ": Between Threshold 1 & 2 - Set 1", NBINS, XMIN, XMAX);
188  Set1Above[iWedge] = iBooker.book1D(
189  "Set1_Above", "HF- Wedge " + wedgeNum.str() + ": Above Threshold 2 - Set 1", NBINS, XMIN, XMAX);
190  Set2Below[iWedge] = iBooker.book1D(
191  "Set2_Below", "HF- Wedge " + wedgeNum.str() + ": Below Threshold 1 - Set 2", NBINS, XMIN, XMAX);
192  Set2Between[iWedge] = iBooker.book1D(
193  "Set2_Between", "HF- Wedge " + wedgeNum.str() + ": Between Threshold 1 & 2 - Set 2", NBINS, XMIN, XMAX);
194  Set2Above[iWedge] = iBooker.book1D(
195  "Set2_Above", "HF- Wedge " + wedgeNum.str() + ": Above Threshold 2 - Set 2", NBINS, XMIN, XMAX);
196  ETSum[iWedge] = iBooker.book1D("ETSum", "HF- Wedge " + wedgeNum.str() + ": Transverse Energy", NBINS, XMIN, XMAX);
197  }
198  }
199 
200  if (Style == "BX") {
201  OccXAxisTitle = "Bunch Crossing";
202  OccYAxisTitle = "Tower Occupancy";
203  EtXAxisTitle = "Bunch Crossing";
204  EtYAxisTitle = "E_{T} Sum";
205  } else if (Style == "Distribution") {
206  OccXAxisTitle = "Tower Occupancy";
207  OccYAxisTitle = "Count";
208  EtXAxisTitle = "E_{T} Sum";
209  EtYAxisTitle = "Count";
210  }
211 
212  for (unsigned int iWedge = 0; iWedge < NUM_HLX; ++iWedge) {
213  Set1Below[iWedge]->setAxisTitle(OccXAxisTitle, 1);
214  Set1Below[iWedge]->setAxisTitle(OccYAxisTitle, 2);
217  Set1Above[iWedge]->setAxisTitle(OccXAxisTitle, 1);
218  Set1Above[iWedge]->setAxisTitle(OccYAxisTitle, 2);
219  Set2Below[iWedge]->setAxisTitle(OccXAxisTitle, 1);
220  Set2Below[iWedge]->setAxisTitle(OccYAxisTitle, 2);
223  Set2Above[iWedge]->setAxisTitle(OccXAxisTitle, 1);
224  Set2Above[iWedge]->setAxisTitle(OccYAxisTitle, 2);
225  ETSum[iWedge]->setAxisTitle(EtXAxisTitle, 1);
226  ETSum[iWedge]->setAxisTitle(EtYAxisTitle, 2);
227  }
228 
229  // Comparison Histograms
230 
231  iBooker.setCurrentFolder(monitorName_ + "/HFCompare");
232 
233  std::string CompXTitle = "HF Wedge";
234  std::string CompEtSumYTitle = "E_{T} Sum per active tower";
235  std::string CompOccYTitle = "Occupancy per active tower";
236 
237  HFCompareEtSum = iBooker.book1D("HFCompareEtSum", "E_{T} Sum", NUM_HLX, 0, NUM_HLX);
238  HFCompareEtSum->setAxisTitle(CompXTitle, 1);
239  HFCompareEtSum->setAxisTitle(CompEtSumYTitle, 2);
240 
242  iBooker.book1D("HFCompareOccBelowSet1", "Occupancy Below Threshold 1 - Set 1", NUM_HLX, 0, NUM_HLX);
243  HFCompareOccBelowSet1->setAxisTitle(CompXTitle, 1);
244  HFCompareOccBelowSet1->setAxisTitle(CompOccYTitle, 2);
245 
247  iBooker.book1D("HFCompareOccBetweenSet1", "Occupancy Between Threshold 1 & 2 - Set 1", NUM_HLX, 0, NUM_HLX);
248  HFCompareOccBetweenSet1->setAxisTitle(CompXTitle, 1);
249  HFCompareOccBetweenSet1->setAxisTitle(CompOccYTitle, 2);
250 
252  iBooker.book1D("HFCompareOccAboveSet1", "Occupancy Above Threshold 2 - Set 1", NUM_HLX, 0, NUM_HLX);
253  HFCompareOccAboveSet1->setAxisTitle(CompXTitle, 1);
254  HFCompareOccAboveSet1->setAxisTitle(CompOccYTitle, 2);
255 
257  iBooker.book1D("HFCompareOccBelowSet2", "Occupancy Below Threshold 1 - Set 2", NUM_HLX, 0, NUM_HLX);
258  HFCompareOccBelowSet2->setAxisTitle(CompXTitle, 1);
259  HFCompareOccBelowSet2->setAxisTitle(CompOccYTitle, 2);
260 
262  iBooker.book1D("HFCompareOccBetweenSet2", "Occupancy Between Threshold 1 & 2 - Set 2", NUM_HLX, 0, NUM_HLX);
263  HFCompareOccBetweenSet2->setAxisTitle(CompXTitle, 1);
264  HFCompareOccBetweenSet2->setAxisTitle(CompOccYTitle, 2);
265 
267  iBooker.book1D("HFCompareOccAboveSet2", "Occupancy Above Threshold 2 - Set 2", NUM_HLX, 0, NUM_HLX);
268  HFCompareOccAboveSet2->setAxisTitle(CompXTitle, 1);
269  HFCompareOccAboveSet2->setAxisTitle(CompOccYTitle, 2);
270 
271  // Average Histograms
272 
273  iBooker.setCurrentFolder(monitorName_ + "/Average");
274 
275  int OccBins = 10000; // This does absolutely nothing.
276  double OccMin = 0;
277  double OccMax = 0; // If min and max are zero, no bounds on the data are set.
278 
279  int EtSumBins = 10000; // This does absolutely nothing. The Variable is not
280  // used in the function.
281  double EtSumMin = 0;
282  double EtSumMax = 0; // If min and max are zero, no bounds on the data are set.
283 
284  std::string errorOpt = "i";
285 
286  std::string AvgXTitle = "HF Wedge";
287  std::string AvgEtSumYTitle = "Average E_{T} Sum";
288  std::string AvgOccYTitle = "Average Tower Occupancy";
289 
290  AvgEtSum = iBooker.bookProfile("AvgEtSum", "Average E_{T} Sum", NUM_HLX, 0, NUM_HLX, EtSumBins, EtSumMin, EtSumMax);
291  AvgEtSum->setAxisTitle(AvgXTitle, 1);
292  AvgEtSum->setAxisTitle(AvgEtSumYTitle, 2);
293 
294  AvgOccBelowSet1 = iBooker.bookProfile("AvgOccBelowSet1",
295  "Average Occupancy Below Threshold 1 - Set1",
296  NUM_HLX,
297  0,
298  NUM_HLX,
299  OccBins,
300  OccMin,
301  OccMax,
302  errorOpt.c_str());
303  AvgOccBelowSet1->setAxisTitle(AvgXTitle, 1);
304  AvgOccBelowSet1->setAxisTitle(AvgOccYTitle, 2);
305 
306  AvgOccBetweenSet1 = iBooker.bookProfile("AvgOccBetweenSet1",
307  "Average Occupancy Between Threhold 1 & 2 - Set1",
308  NUM_HLX,
309  0,
310  NUM_HLX,
311  OccBins,
312  OccMin,
313  OccMax,
314  errorOpt.c_str());
315  AvgOccBetweenSet1->setAxisTitle(AvgXTitle, 1);
316  AvgOccBetweenSet1->setAxisTitle(AvgOccYTitle, 2);
317 
318  AvgOccAboveSet1 = iBooker.bookProfile("AvgOccAboveSet1",
319  "Average Occupancy Above Threshold 2 - Set1",
320  NUM_HLX,
321  0,
322  NUM_HLX,
323  OccBins,
324  OccMin,
325  OccMax,
326  errorOpt.c_str());
327  AvgOccAboveSet1->setAxisTitle(AvgXTitle, 1);
328  AvgOccAboveSet1->setAxisTitle(AvgOccYTitle, 2);
329 
330  AvgOccBelowSet2 = iBooker.bookProfile("AvgOccBelowSet2",
331  "Average Occupancy Below Threshold 1 - Set2",
332  NUM_HLX,
333  0,
334  NUM_HLX,
335  OccBins,
336  OccMin,
337  OccMax,
338  errorOpt.c_str());
339  AvgOccBelowSet2->setAxisTitle(AvgXTitle, 1);
340  AvgOccBelowSet2->setAxisTitle(AvgOccYTitle, 2);
341 
342  AvgOccBetweenSet2 = iBooker.bookProfile("AvgOccBetweenSet2",
343  "Average Occupancy Between Threshold 1 & 2 - Set2",
344  NUM_HLX,
345  0,
346  NUM_HLX,
347  OccBins,
348  OccMin,
349  OccMax,
350  errorOpt.c_str());
351  AvgOccBetweenSet2->setAxisTitle(AvgXTitle, 1);
352  AvgOccBetweenSet2->setAxisTitle(AvgOccYTitle, 2);
353 
354  AvgOccAboveSet2 = iBooker.bookProfile("AvgOccAboveSet2",
355  "Average Occupancy Above Threshold 2 - Set2",
356  NUM_HLX,
357  0,
358  NUM_HLX,
359  OccBins,
360  OccMin,
361  OccMax,
362  errorOpt.c_str());
363  AvgOccAboveSet2->setAxisTitle(AvgXTitle, 1);
364  AvgOccAboveSet2->setAxisTitle(AvgOccYTitle, 2);
365 
366  // Luminosity Histograms
367  iBooker.setCurrentFolder(monitorName_ + "/Luminosity");
368 
369  std::string LumiXTitle = "Bunch Crossing";
370  std::string LumiEtSumYTitle = "Luminosity: E_{T} Sum";
371  std::string LumiOccYTitle = "Luminosity: Occupancy";
372 
373  LumiAvgEtSum = iBooker.bookProfile(
374  "LumiAvgEtSum", "Average Luminosity ", int(XMAX - XMIN), XMIN, XMAX, EtSumBins, EtSumMin, EtSumMax);
375  LumiAvgEtSum->setAxisTitle(LumiXTitle, 1);
376  LumiAvgEtSum->setAxisTitle(LumiEtSumYTitle, 2);
377 
378  LumiAvgOccSet1 = iBooker.bookProfile(
379  "LumiAvgOccSet1", "Average Luminosity - Set 1", int(XMAX - XMIN), XMIN, XMAX, OccBins, OccMax, OccMin);
380  LumiAvgOccSet1->setAxisTitle(LumiXTitle, 1);
381  LumiAvgOccSet1->setAxisTitle(LumiOccYTitle, 2);
382 
383  LumiAvgOccSet2 = iBooker.bookProfile(
384  "LumiAvgOccSet2", "Average Luminosity - Set 2", int(XMAX - XMIN), XMIN, XMAX, OccBins, OccMax, OccMin);
385  LumiAvgOccSet2->setAxisTitle(LumiXTitle, 1);
386  LumiAvgOccSet2->setAxisTitle(LumiOccYTitle, 2);
387 
388  LumiInstantEtSum = iBooker.book1D("LumiInstantEtSum", "Instantaneous Luminosity ", int(XMAX - XMIN), XMIN, XMAX);
389  LumiInstantEtSum->setAxisTitle(LumiXTitle, 1);
390  LumiInstantEtSum->setAxisTitle(LumiEtSumYTitle, 2);
391 
393  iBooker.book1D("LumiInstantOccSet1", "Instantaneous Luminosity - Set 1", int(XMAX - XMIN), XMIN, XMAX);
394  LumiInstantOccSet1->setAxisTitle(LumiXTitle, 1);
395  LumiInstantOccSet1->setAxisTitle(LumiOccYTitle, 2);
396 
398  iBooker.book1D("LumiInstantOccSet2", "Instantaneous Luminosity - Set 2", int(XMAX - XMIN), XMIN, XMAX);
399  LumiInstantOccSet2->setAxisTitle(LumiXTitle, 1);
400  LumiInstantOccSet2->setAxisTitle(LumiOccYTitle, 2);
401 
402  LumiIntegratedEtSum = iBooker.book1D("LumiIntegratedEtSum", "Integrated Luminosity ", int(XMAX - XMIN), XMIN, XMAX);
403  LumiIntegratedEtSum->setAxisTitle(LumiXTitle, 1);
404  LumiIntegratedEtSum->setAxisTitle(LumiEtSumYTitle, 2);
405 
407  iBooker.book1D("LumiIntegratedOccSet1", "Integrated Luminosity - Set 1", int(XMAX - XMIN), XMIN, XMAX);
408  LumiIntegratedOccSet1->setAxisTitle(LumiXTitle, 1);
409  LumiIntegratedOccSet1->setAxisTitle(LumiOccYTitle, 2);
410 
412  iBooker.book1D("LumiIntegratedOccSet2", "Integrated Luminosity - Set 2", int(XMAX - XMIN), XMIN, XMAX);
413  LumiIntegratedOccSet2->setAxisTitle(LumiXTitle, 1);
414  LumiIntegratedOccSet2->setAxisTitle(LumiOccYTitle, 2);
415 
416  // Sanity check sum histograms
417  iBooker.setCurrentFolder(monitorName_ + "/CheckSums");
418 
419  std::string sumXTitle = "HF Wedge";
420  std::string sumYTitle = "Occupancy Sum (Below+Above+Between)";
421 
422  SumAllOccSet1 =
423  iBooker.bookProfile("SumAllOccSet1", "Occupancy Check - Set 1", NUM_HLX, 0, NUM_HLX, OccBins, OccMax, OccMin);
424  SumAllOccSet1->setAxisTitle(sumXTitle, 1);
425  SumAllOccSet1->setAxisTitle(sumYTitle, 2);
426 
427  SumAllOccSet2 =
428  iBooker.bookProfile("SumAllOccSet2", "Occupancy Check - Set 2", NUM_HLX, 0, NUM_HLX, OccBins, OccMax, OccMin);
429  SumAllOccSet2->setAxisTitle(sumXTitle, 1);
430  SumAllOccSet2->setAxisTitle(sumYTitle, 2);
431 
432  MissingDQMDataCheck = iBooker.book1D("MissingDQMDataCheck", "Missing Data Count", 1, 0, 1);
434  MissingDQMDataCheck->setAxisTitle("Number Missing Nibbles", 2);
435 
436  // Signal & Background monitoring histograms
437  iBooker.setCurrentFolder(monitorName_ + "/SigBkgLevels");
438 
439  MaxInstLumiBX1 = iBooker.book1D("MaxInstLumiBX1", "Max Instantaneous Luminosity BX: 1st", 10000, -1e-5, 0.01);
440  MaxInstLumiBX1->setAxisTitle("Max Inst. L (10^{30}cm^{-2}s^{-1})", 1);
441  MaxInstLumiBX1->setAxisTitle("Entries", 2);
442  MaxInstLumiBX2 = iBooker.book1D("MaxInstLumiBX2", "Max Instantaneous Luminosity BX: 2nd", 10000, -1e-5, 0.01);
443  MaxInstLumiBX2->setAxisTitle("Max Inst. L (10^{30}cm^{-2}s^{-1})", 1);
444  MaxInstLumiBX2->setAxisTitle("Entries", 2);
445  MaxInstLumiBX3 = iBooker.book1D("MaxInstLumiBX3", "Max Instantaneous Luminosity BX: 3rd", 10000, -1e-5, 0.01);
446  MaxInstLumiBX3->setAxisTitle("Max Inst. L (10^{30}cm^{-2}s^{-1})", 1);
447  MaxInstLumiBX3->setAxisTitle("Entries", 2);
448  MaxInstLumiBX4 = iBooker.book1D("MaxInstLumiBX4", "Max Instantaneous Luminosity BX: 4th", 10000, -1e-5, 0.01);
449  MaxInstLumiBX4->setAxisTitle("Max Inst. L (10^{30}cm^{-2}s^{-1})", 1);
450  MaxInstLumiBX4->setAxisTitle("Entries", 2);
451 
452  MaxInstLumiBXNum1 = iBooker.book1D("MaxInstLumiBXNum1", "BX Number of Max: 1st", 3564, 0, 3564);
454  MaxInstLumiBXNum1->setAxisTitle("Num Time Max", 2);
455  MaxInstLumiBXNum2 = iBooker.book1D("MaxInstLumiBXNum2", "BX Number of Max: 2nd", 3564, 0, 3564);
457  MaxInstLumiBXNum2->setAxisTitle("Num Time Max", 2);
458  MaxInstLumiBXNum3 = iBooker.book1D("MaxInstLumiBXNum3", "BX Number of Max: 3rd", 3564, 0, 3564);
460  MaxInstLumiBXNum3->setAxisTitle("Num Time Max", 2);
461  MaxInstLumiBXNum4 = iBooker.book1D("MaxInstLumiBXNum4", "BX Number of Max: 4th", 3564, 0, 3564);
463  MaxInstLumiBXNum4->setAxisTitle("Num Time Max", 2);
464 
465  // History histograms
466  iBooker.setCurrentFolder(monitorName_ + "/HistoryRaw");
467 
468  std::string HistXTitle = "Time (LS)";
469  std::string RecentHistXTitle = "Time (LS/16)";
470  std::string HistEtSumYTitle = "Average E_{T} Sum";
471  std::string HistOccYTitle = "Average Occupancy";
472  std::string HistLumiYTitle = "Luminosity";
473  std::string HistLumiErrorYTitle = "Luminosity Error (%)";
474  std::string BXvsTimeXTitle = "Time (LS)";
475  std::string BXvsTimeYTitle = "BX";
476 
477  // Et Sum histories
478  HistAvgEtSumHFP = iBooker.bookProfile(
479  "HistAvgEtSumHFP", "Average Et Sum: HF+", MAX_LS, 0.5, (double)MAX_LS + 0.5, EtSumBins, EtSumMin, EtSumMax);
480  HistAvgEtSumHFP->setAxisTitle(HistXTitle, 1);
481  HistAvgEtSumHFP->setAxisTitle(HistEtSumYTitle, 2);
482 
483  HistAvgEtSumHFM = iBooker.bookProfile(
484  "HistAvgEtSumHFM", "Average Et Sum: HF-", MAX_LS, 0.5, (double)MAX_LS + 0.5, EtSumBins, EtSumMin, EtSumMax);
485  HistAvgEtSumHFM->setAxisTitle(HistXTitle, 1);
486  HistAvgEtSumHFM->setAxisTitle(HistEtSumYTitle, 2);
487 
488  // Tower Occupancy Histories
489  HistAvgOccBelowSet1HFP = iBooker.bookProfile("HistAvgOccBelowSet1HFP",
490  "Average Occ Set1Below: HF+",
491  MAX_LS,
492  0.5,
493  (double)MAX_LS + 0.5,
494  OccBins,
495  OccMin,
496  OccMax);
497  HistAvgOccBelowSet1HFP->setAxisTitle(HistXTitle, 1);
498  HistAvgOccBelowSet1HFP->setAxisTitle(HistOccYTitle, 2);
499 
500  HistAvgOccBelowSet1HFM = iBooker.bookProfile("HistAvgOccBelowSet1HFM",
501  "Average Occ Set1Below: HF-",
502  MAX_LS,
503  0.5,
504  (double)MAX_LS + 0.5,
505  OccBins,
506  OccMin,
507  OccMax);
508  HistAvgOccBelowSet1HFM->setAxisTitle(HistXTitle, 1);
509  HistAvgOccBelowSet1HFM->setAxisTitle(HistOccYTitle, 2);
510 
511  HistAvgOccBetweenSet1HFP = iBooker.bookProfile("HistAvgOccBetweenSet1HFP",
512  "Average Occ Set1Between: HF+",
513  MAX_LS,
514  0.5,
515  (double)MAX_LS + 0.5,
516  OccBins,
517  OccMin,
518  OccMax);
519  HistAvgOccBetweenSet1HFP->setAxisTitle(HistXTitle, 1);
520  HistAvgOccBetweenSet1HFP->setAxisTitle(HistOccYTitle, 2);
521 
522  HistAvgOccBetweenSet1HFM = iBooker.bookProfile("HistAvgOccBetweenSet1HFM",
523  "Average Occ Set1Between: HF-",
524  MAX_LS,
525  0.5,
526  (double)MAX_LS + 0.5,
527  OccBins,
528  OccMin,
529  OccMax);
530  HistAvgOccBetweenSet1HFM->setAxisTitle(HistXTitle, 1);
531  HistAvgOccBetweenSet1HFM->setAxisTitle(HistOccYTitle, 2);
532 
533  HistAvgOccAboveSet1HFP = iBooker.bookProfile("HistAvgOccAboveSet1HFP",
534  "Average Occ Set1Above: HF+",
535  MAX_LS,
536  0.5,
537  (double)MAX_LS + 0.5,
538  OccBins,
539  OccMin,
540  OccMax);
541  HistAvgOccAboveSet1HFP->setAxisTitle(HistXTitle, 1);
542  HistAvgOccAboveSet1HFP->setAxisTitle(HistOccYTitle, 2);
543 
544  HistAvgOccAboveSet1HFM = iBooker.bookProfile("HistAvgOccAboveSet1HFM",
545  "Average Occ Set1Above: HF-",
546  MAX_LS,
547  0.5,
548  (double)MAX_LS + 0.5,
549  OccBins,
550  OccMin,
551  OccMax);
552  HistAvgOccAboveSet1HFM->setAxisTitle(HistXTitle, 1);
553  HistAvgOccAboveSet1HFM->setAxisTitle(HistOccYTitle, 2);
554 
555  HistAvgOccBelowSet2HFP = iBooker.bookProfile("HistAvgOccBelowSet2HFP",
556  "Average Occ Set2Below: HF+",
557  MAX_LS,
558  0.5,
559  (double)MAX_LS + 0.5,
560  OccBins,
561  OccMin,
562  OccMax);
563  HistAvgOccBelowSet2HFP->setAxisTitle(HistXTitle, 1);
564  HistAvgOccBelowSet2HFP->setAxisTitle(HistOccYTitle, 2);
565 
566  HistAvgOccBelowSet2HFM = iBooker.bookProfile("HistAvgOccBelowSet2HFM",
567  "Average Occ Set2Below: HF-",
568  MAX_LS,
569  0.5,
570  (double)MAX_LS + 0.5,
571  OccBins,
572  OccMin,
573  OccMax);
574  HistAvgOccBelowSet2HFM->setAxisTitle(HistXTitle, 1);
575  HistAvgOccBelowSet2HFM->setAxisTitle(HistOccYTitle, 2);
576 
577  HistAvgOccBetweenSet2HFP = iBooker.bookProfile("HistAvgOccBetweenSet2HFP",
578  "Average Occ Set2Between: HF+",
579  MAX_LS,
580  0.5,
581  (double)MAX_LS + 0.5,
582  OccBins,
583  OccMin,
584  OccMax);
585  HistAvgOccBetweenSet2HFP->setAxisTitle(HistXTitle, 1);
586  HistAvgOccBetweenSet2HFP->setAxisTitle(HistOccYTitle, 2);
587 
588  HistAvgOccBetweenSet2HFM = iBooker.bookProfile("HistAvgOccBetweenSet2HFM",
589  "Average Occ Set2Between: HF-",
590  MAX_LS,
591  0.5,
592  (double)MAX_LS + 0.5,
593  OccBins,
594  OccMin,
595  OccMax);
596  HistAvgOccBetweenSet2HFM->setAxisTitle(HistXTitle, 1);
597  HistAvgOccBetweenSet2HFM->setAxisTitle(HistOccYTitle, 2);
598 
599  HistAvgOccAboveSet2HFP = iBooker.bookProfile("HistAvgOccAboveSet2HFP",
600  "Average Occ Set2Above: HF+",
601  MAX_LS,
602  0.5,
603  (double)MAX_LS + 0.5,
604  OccBins,
605  OccMin,
606  OccMax);
607  HistAvgOccAboveSet2HFP->setAxisTitle(HistXTitle, 1);
608  HistAvgOccAboveSet2HFP->setAxisTitle(HistOccYTitle, 2);
609 
610  HistAvgOccAboveSet2HFM = iBooker.bookProfile("HistAvgOccAboveSet2HFM",
611  "Average Occ Set2Above: HF-",
612  MAX_LS,
613  0.5,
614  (double)MAX_LS + 0.5,
615  OccBins,
616  OccMin,
617  OccMax);
618  HistAvgOccAboveSet2HFM->setAxisTitle(HistXTitle, 1);
619  HistAvgOccAboveSet2HFM->setAxisTitle(HistOccYTitle, 2);
620 
621  // Et Sum histories
622  BXvsTimeAvgEtSumHFP = iBooker.book2D("BXvsTimeAvgEtSumHFP",
623  "Average Et Sum: HF+",
624  MAX_LS,
625  0.5,
626  (double)MAX_LS + 0.5,
627  NBINS,
628  (double)XMIN,
629  (double)XMAX);
630  BXvsTimeAvgEtSumHFP->setAxisTitle(BXvsTimeXTitle, 1);
631  BXvsTimeAvgEtSumHFP->setAxisTitle(BXvsTimeYTitle, 2);
632 
633  BXvsTimeAvgEtSumHFM = iBooker.book2D("BXvsTimeAvgEtSumHFM",
634  "Average Et Sum: HF-",
635  MAX_LS,
636  0.5,
637  (double)MAX_LS + 0.5,
638  NBINS,
639  (double)XMIN,
640  (double)XMAX);
641  BXvsTimeAvgEtSumHFM->setAxisTitle(BXvsTimeXTitle, 1);
642  BXvsTimeAvgEtSumHFM->setAxisTitle(BXvsTimeYTitle, 2);
643 
644  iBooker.setCurrentFolder(monitorName_ + "/HistoryLumi");
645 
646  // Lumi Histories
647  HistAvgLumiEtSum = iBooker.bookProfile("HistAvgLumiEtSum",
648  "Average Instant Luminosity: Et Sum",
649  MAX_LS,
650  0.5,
651  (double)MAX_LS + 0.5,
652  EtSumBins,
653  EtSumMin,
654  EtSumMax);
655  HistAvgLumiEtSum->setAxisTitle(HistXTitle, 1);
656  HistAvgLumiEtSum->setAxisTitle(HistLumiYTitle, 2);
657 
658  HistAvgLumiOccSet1 = iBooker.bookProfile("HistAvgLumiOccSet1",
659  "Average Instant Luminosity: Occ Set1",
660  MAX_LS,
661  0.5,
662  (double)MAX_LS + 0.5,
663  OccBins,
664  OccMin,
665  OccMax);
666  HistAvgLumiOccSet1->setAxisTitle(HistXTitle, 1);
667  HistAvgLumiOccSet1->setAxisTitle(HistLumiYTitle, 2);
668 
669  HistAvgLumiOccSet2 = iBooker.bookProfile("HistAvgLumiOccSet2",
670  "Average Instant Luminosity: Occ Set2",
671  MAX_LS,
672  0.5,
673  (double)MAX_LS + 0.5,
674  OccBins,
675  OccMin,
676  OccMax);
677  HistAvgLumiOccSet2->setAxisTitle(HistXTitle, 1);
678  HistAvgLumiOccSet2->setAxisTitle(HistLumiYTitle, 2);
679 
681  iBooker.book1D("HistInstantLumiEtSum", "Instant Luminosity: Et Sum", MAX_LS, 0.5, (double)MAX_LS + 0.5);
682  HistInstantLumiEtSum->setAxisTitle(HistXTitle, 1);
683  HistInstantLumiEtSum->setAxisTitle(HistLumiYTitle, 2);
684 
686  iBooker.book1D("HistInstantLumiOccSet1", "Instant Luminosity: Occ Set1", MAX_LS, 0.5, (double)MAX_LS + 0.5);
687  HistInstantLumiOccSet1->setAxisTitle(HistXTitle, 1);
688  HistInstantLumiOccSet1->setAxisTitle(HistLumiYTitle, 2);
689 
691  iBooker.book1D("HistInstantLumiOccSet2", "Instant Luminosity: Occ Set2", MAX_LS, 0.5, (double)MAX_LS + 0.5);
692  HistInstantLumiOccSet2->setAxisTitle(HistXTitle, 1);
693  HistInstantLumiOccSet2->setAxisTitle(HistLumiYTitle, 2);
694 
696  iBooker.book1D("HistInstantLumiEtSumError", "Luminosity Error: Et Sum", MAX_LS, 0.5, (double)MAX_LS + 0.5);
697  HistInstantLumiEtSumError->setAxisTitle(HistXTitle, 1);
698  HistInstantLumiEtSumError->setAxisTitle(HistLumiErrorYTitle, 2);
699 
701  iBooker.book1D("HistInstantLumiOccSet1Error", "Luminosity Error: Occ Set1", MAX_LS, 0.5, (double)MAX_LS + 0.5);
703  HistInstantLumiOccSet1Error->setAxisTitle(HistLumiErrorYTitle, 2);
704 
706  iBooker.book1D("HistInstantLumiOccSet2Error", "Luminosity Error: Occ Set2", MAX_LS, 0.5, (double)MAX_LS + 0.5);
708  HistInstantLumiOccSet2Error->setAxisTitle(HistLumiErrorYTitle, 2);
709 
711  iBooker.book1D("HistIntegratedLumiEtSum", "Integrated Luminosity: Et Sum", MAX_LS, 0.5, (double)MAX_LS + 0.5);
712  HistIntegratedLumiEtSum->setAxisTitle(HistXTitle, 1);
713  HistIntegratedLumiEtSum->setAxisTitle(HistLumiYTitle, 2);
714 
716  iBooker.book1D("HistIntegratedLumiOccSet1", "Integrated Luminosity: Occ Set1", MAX_LS, 0.5, (double)MAX_LS + 0.5);
717  HistIntegratedLumiOccSet1->setAxisTitle(HistXTitle, 1);
718  HistIntegratedLumiOccSet1->setAxisTitle(HistLumiYTitle, 2);
719 
721  iBooker.book1D("HistIntegratedLumiOccSet2", "Integrated Luminosity: Occ Set2", MAX_LS, 0.5, (double)MAX_LS + 0.5);
722  HistIntegratedLumiOccSet2->setAxisTitle(HistXTitle, 1);
723  HistIntegratedLumiOccSet2->setAxisTitle(HistLumiYTitle, 2);
724 
725  iBooker.setCurrentFolder(monitorName_ + "/RecentHistoryLumi");
726 
727  // Lumi Recent Histories (past 128 short sections)
729  iBooker.book1D("RecentInstantLumiEtSum", "Instant Luminosity: Et Sum", 128, 0.5, (double)128 + 0.5);
730  RecentInstantLumiEtSum->setAxisTitle(RecentHistXTitle, 1);
731  RecentInstantLumiEtSum->setAxisTitle(HistLumiYTitle, 2);
732 
734  iBooker.book1D("RecentInstantLumiOccSet1", "Instant Luminosity: Occ Set1", 128, 0.5, (double)128 + 0.5);
735  RecentInstantLumiOccSet1->setAxisTitle(RecentHistXTitle, 1);
736  RecentInstantLumiOccSet1->setAxisTitle(HistLumiYTitle, 2);
737 
739  iBooker.book1D("RecentInstantLumiOccSet2", "Instant Luminosity: Occ Set2", 128, 0.5, (double)128 + 0.5);
740  RecentInstantLumiOccSet2->setAxisTitle(RecentHistXTitle, 1);
741  RecentInstantLumiOccSet2->setAxisTitle(HistLumiYTitle, 2);
742 
744  iBooker.book1D("RecentIntegratedLumiEtSum", "Integrated Luminosity: Et Sum", 128, 0.5, (double)128 + 0.5);
745  RecentIntegratedLumiEtSum->setAxisTitle(RecentHistXTitle, 1);
746  RecentIntegratedLumiEtSum->setAxisTitle(HistLumiYTitle, 2);
747 
749  iBooker.book1D("RecentIntegratedLumiOccSet1", "Integrated Luminosity: Occ Set1", 128, 0.5, (double)128 + 0.5);
750  RecentIntegratedLumiOccSet1->setAxisTitle(RecentHistXTitle, 1);
751  RecentIntegratedLumiOccSet1->setAxisTitle(HistLumiYTitle, 2);
752 
754  iBooker.book1D("RecentIntegratedLumiOccSet2", "Integrated Luminosity: Occ Set2", 128, 0.5, (double)128 + 0.5);
755  RecentIntegratedLumiOccSet2->setAxisTitle(RecentHistXTitle, 1);
756  RecentIntegratedLumiOccSet2->setAxisTitle(HistLumiYTitle, 2);
757 }

References AvgEtSum, AvgOccAboveSet1, AvgOccAboveSet2, AvgOccBelowSet1, AvgOccBelowSet2, AvgOccBetweenSet1, AvgOccBetweenSet2, dqm::implementation::IBooker::book1D(), dqm::implementation::IBooker::book2D(), dqm::implementation::IBooker::bookProfile(), BXvsTimeAvgEtSumHFM, BXvsTimeAvgEtSumHFP, TauDecayModes::dec, MillePedeFileConverter_cfg::e, ETSum, EtXAxisTitle, EtYAxisTitle, HFCompareEtSum, HFCompareOccAboveSet1, HFCompareOccAboveSet2, HFCompareOccBelowSet1, HFCompareOccBelowSet2, HFCompareOccBetweenSet1, HFCompareOccBetweenSet2, HistAvgEtSumHFM, HistAvgEtSumHFP, HistAvgLumiEtSum, HistAvgLumiOccSet1, HistAvgLumiOccSet2, HistAvgOccAboveSet1HFM, HistAvgOccAboveSet1HFP, HistAvgOccAboveSet2HFM, HistAvgOccAboveSet2HFP, HistAvgOccBelowSet1HFM, HistAvgOccBelowSet1HFP, HistAvgOccBelowSet2HFM, HistAvgOccBelowSet2HFP, HistAvgOccBetweenSet1HFM, HistAvgOccBetweenSet1HFP, HistAvgOccBetweenSet2HFM, HistAvgOccBetweenSet2HFP, HistInstantLumiEtSum, HistInstantLumiEtSumError, HistInstantLumiOccSet1, HistInstantLumiOccSet1Error, HistInstantLumiOccSet2, HistInstantLumiOccSet2Error, HistIntegratedLumiEtSum, HistIntegratedLumiOccSet1, HistIntegratedLumiOccSet2, LumiAvgEtSum, LumiAvgOccSet1, LumiAvgOccSet2, LumiInstantEtSum, LumiInstantOccSet1, LumiInstantOccSet2, LumiIntegratedEtSum, LumiIntegratedOccSet1, LumiIntegratedOccSet2, MAX_LS, MaxInstLumiBX1, MaxInstLumiBX2, MaxInstLumiBX3, MaxInstLumiBX4, MaxInstLumiBXNum1, MaxInstLumiBXNum2, MaxInstLumiBXNum3, MaxInstLumiBXNum4, MissingDQMDataCheck, monitorName_, NBINS, NUM_HLX, OccXAxisTitle, OccYAxisTitle, RecentInstantLumiEtSum, RecentInstantLumiOccSet1, RecentInstantLumiOccSet2, RecentIntegratedLumiEtSum, RecentIntegratedLumiOccSet1, RecentIntegratedLumiOccSet2, Set1Above, Set1Below, Set1Between, Set2Above, Set2Below, Set2Between, dqm::impl::MonitorElement::setAxisTitle(), dqm::implementation::NavigatorBase::setCurrentFolder(), AlCaHLTBitMon_QueryRunRegistry::string, SumAllOccSet1, SumAllOccSet2, XMAX, and XMIN.

Referenced by bookHistograms().

Member Data Documentation

◆ Accumulate

bool HLXMonitor::Accumulate
private

Definition at line 210 of file HLXMonitor.h.

Referenced by HLXMonitor().

◆ AquireMode

unsigned int HLXMonitor::AquireMode
private

Definition at line 218 of file HLXMonitor.h.

Referenced by connectHLXTCP(), and HLXMonitor().

◆ AvgEtSum

MonitorElement* HLXMonitor::AvgEtSum
private

Definition at line 91 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ AvgOccAboveSet1

MonitorElement* HLXMonitor::AvgOccAboveSet1
private

Definition at line 94 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ AvgOccAboveSet2

MonitorElement* HLXMonitor::AvgOccAboveSet2
private

Definition at line 97 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ AvgOccBelowSet1

MonitorElement* HLXMonitor::AvgOccBelowSet1
private

Definition at line 92 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ AvgOccBelowSet2

MonitorElement* HLXMonitor::AvgOccBelowSet2
private

Definition at line 95 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ AvgOccBetweenSet1

MonitorElement* HLXMonitor::AvgOccBetweenSet1
private

Definition at line 93 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ AvgOccBetweenSet2

MonitorElement* HLXMonitor::AvgOccBetweenSet2
private

Definition at line 96 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ BXvsTimeAvgEtSumHFM

MonitorElement* HLXMonitor::BXvsTimeAvgEtSumHFM
private

Definition at line 142 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ BXvsTimeAvgEtSumHFP

MonitorElement* HLXMonitor::BXvsTimeAvgEtSumHFP
private

Definition at line 141 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ cmsswVer_

MonitorElement* HLXMonitor::cmsswVer_
private

Current working directory of the job.

Definition at line 189 of file HLXMonitor.h.

Referenced by SetupEventInfo().

◆ counter

unsigned int HLXMonitor::counter
private

Definition at line 202 of file HLXMonitor.h.

Referenced by counter.Counters::__getitem__().

◆ currentRunEnded_

bool HLXMonitor::currentRunEnded_
private

Definition at line 250 of file HLXMonitor.h.

Referenced by analyze(), EndRun(), and HLXMonitor().

◆ currentTime_

timeval HLXMonitor::currentTime_
private

Definition at line 269 of file HLXMonitor.h.

Referenced by FillEventInfo(), and SetupEventInfo().

◆ DistribIP1

std::string HLXMonitor::DistribIP1
private

Definition at line 226 of file HLXMonitor.h.

Referenced by analyze(), connectHLXTCP(), and HLXMonitor().

◆ DistribIP2

std::string HLXMonitor::DistribIP2
private

Definition at line 227 of file HLXMonitor.h.

Referenced by analyze(), connectHLXTCP(), and HLXMonitor().

◆ dqmPatch_

MonitorElement* HLXMonitor::dqmPatch_
private

CMSSW version run for this job.

Definition at line 190 of file HLXMonitor.h.

◆ errSummary_

MonitorElement* HLXMonitor::errSummary_
private

DQM patch version for this job.

Definition at line 191 of file HLXMonitor.h.

◆ errSummaryEtaPhi_

MonitorElement* HLXMonitor::errSummaryEtaPhi_
private

Subdetector-specific error summary (float)

Definition at line 192 of file HLXMonitor.h.

◆ errSummarySegment_

MonitorElement* HLXMonitor::errSummarySegment_[10]
private

Subdetector-specific etaPhi summary (float)

Definition at line 193 of file HLXMonitor.h.

◆ ETSum

MonitorElement* HLXMonitor::ETSum[36]
private

Definition at line 81 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ EtXAxisTitle

std::string HLXMonitor::EtXAxisTitle
private

Definition at line 245 of file HLXMonitor.h.

Referenced by SetupHists().

◆ EtYAxisTitle

std::string HLXMonitor::EtYAxisTitle
private

Definition at line 246 of file HLXMonitor.h.

Referenced by SetupHists().

◆ eventId_

MonitorElement* HLXMonitor::eventId_
private

UTC time of the run start.

Definition at line 171 of file HLXMonitor.h.

Referenced by FillEventInfo(), and SetupEventInfo().

◆ eventInfoFolder_

std::string HLXMonitor::eventInfoFolder_
private

Definition at line 237 of file HLXMonitor.h.

Referenced by HLXMonitor(), and SetupEventInfo().

◆ eventInfoFolderHLX_

std::string HLXMonitor::eventInfoFolderHLX_
private

Definition at line 236 of file HLXMonitor.h.

Referenced by HLXMonitor(), and SetupEventInfo().

◆ eventTimeStamp_

MonitorElement* HLXMonitor::eventTimeStamp_
private

Definition at line 173 of file HLXMonitor.h.

Referenced by FillEventInfo(), and SetupEventInfo().

◆ evtRateCount_

int HLXMonitor::evtRateCount_
private

Definition at line 272 of file HLXMonitor.h.

Referenced by FillEventInfo(), and SetupEventInfo().

◆ evtRateWindow_

float HLXMonitor::evtRateWindow_
private

Definition at line 271 of file HLXMonitor.h.

Referenced by FillEventInfo(), and SetupEventInfo().

◆ expectedNibbles_

unsigned int HLXMonitor::expectedNibbles_
private

Definition at line 252 of file HLXMonitor.h.

Referenced by EndRun(), FillEventInfo(), FillReportSummary(), and HLXMonitor().

◆ HFCompareEtSum

MonitorElement* HLXMonitor::HFCompareEtSum
private

Definition at line 83 of file HLXMonitor.h.

Referenced by FillHistoHFCompare(), and SetupHists().

◆ HFCompareOccAboveSet1

MonitorElement* HLXMonitor::HFCompareOccAboveSet1
private

Definition at line 86 of file HLXMonitor.h.

Referenced by FillHistoHFCompare(), and SetupHists().

◆ HFCompareOccAboveSet2

MonitorElement* HLXMonitor::HFCompareOccAboveSet2
private

Definition at line 89 of file HLXMonitor.h.

Referenced by FillHistoHFCompare(), and SetupHists().

◆ HFCompareOccBelowSet1

MonitorElement* HLXMonitor::HFCompareOccBelowSet1
private

Definition at line 84 of file HLXMonitor.h.

Referenced by FillHistoHFCompare(), and SetupHists().

◆ HFCompareOccBelowSet2

MonitorElement* HLXMonitor::HFCompareOccBelowSet2
private

Definition at line 87 of file HLXMonitor.h.

Referenced by FillHistoHFCompare(), and SetupHists().

◆ HFCompareOccBetweenSet1

MonitorElement* HLXMonitor::HFCompareOccBetweenSet1
private

Definition at line 85 of file HLXMonitor.h.

Referenced by FillHistoHFCompare(), and SetupHists().

◆ HFCompareOccBetweenSet2

MonitorElement* HLXMonitor::HFCompareOccBetweenSet2
private

Definition at line 88 of file HLXMonitor.h.

Referenced by FillHistoHFCompare(), and SetupHists().

◆ HistAvgEtSumHFM

MonitorElement* HLXMonitor::HistAvgEtSumHFM
private

Definition at line 128 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistAvgEtSumHFP

MonitorElement* HLXMonitor::HistAvgEtSumHFP
private

Definition at line 127 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistAvgLumiEtSum

MonitorElement* HLXMonitor::HistAvgLumiEtSum
private

Definition at line 144 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistAvgLumiOccSet1

MonitorElement* HLXMonitor::HistAvgLumiOccSet1
private

Definition at line 145 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistAvgLumiOccSet2

MonitorElement* HLXMonitor::HistAvgLumiOccSet2
private

Definition at line 146 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistAvgOccAboveSet1HFM

MonitorElement* HLXMonitor::HistAvgOccAboveSet1HFM
private

Definition at line 134 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistAvgOccAboveSet1HFP

MonitorElement* HLXMonitor::HistAvgOccAboveSet1HFP
private

Definition at line 133 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistAvgOccAboveSet2HFM

MonitorElement* HLXMonitor::HistAvgOccAboveSet2HFM
private

Definition at line 140 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistAvgOccAboveSet2HFP

MonitorElement* HLXMonitor::HistAvgOccAboveSet2HFP
private

Definition at line 139 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistAvgOccBelowSet1HFM

MonitorElement* HLXMonitor::HistAvgOccBelowSet1HFM
private

Definition at line 130 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistAvgOccBelowSet1HFP

MonitorElement* HLXMonitor::HistAvgOccBelowSet1HFP
private

Definition at line 129 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistAvgOccBelowSet2HFM

MonitorElement* HLXMonitor::HistAvgOccBelowSet2HFM
private

Definition at line 136 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistAvgOccBelowSet2HFP

MonitorElement* HLXMonitor::HistAvgOccBelowSet2HFP
private

Definition at line 135 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistAvgOccBetweenSet1HFM

MonitorElement* HLXMonitor::HistAvgOccBetweenSet1HFM
private

Definition at line 132 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistAvgOccBetweenSet1HFP

MonitorElement* HLXMonitor::HistAvgOccBetweenSet1HFP
private

Definition at line 131 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistAvgOccBetweenSet2HFM

MonitorElement* HLXMonitor::HistAvgOccBetweenSet2HFM
private

Definition at line 138 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistAvgOccBetweenSet2HFP

MonitorElement* HLXMonitor::HistAvgOccBetweenSet2HFP
private

Definition at line 137 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistInstantLumiEtSum

MonitorElement* HLXMonitor::HistInstantLumiEtSum
private

Definition at line 147 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistInstantLumiEtSumError

MonitorElement* HLXMonitor::HistInstantLumiEtSumError
private

Definition at line 150 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistInstantLumiOccSet1

MonitorElement* HLXMonitor::HistInstantLumiOccSet1
private

Definition at line 148 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistInstantLumiOccSet1Error

MonitorElement* HLXMonitor::HistInstantLumiOccSet1Error
private

Definition at line 151 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistInstantLumiOccSet2

MonitorElement* HLXMonitor::HistInstantLumiOccSet2
private

Definition at line 149 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistInstantLumiOccSet2Error

MonitorElement* HLXMonitor::HistInstantLumiOccSet2Error
private

Definition at line 152 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistIntegratedLumiEtSum

MonitorElement* HLXMonitor::HistIntegratedLumiEtSum
private

Definition at line 153 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistIntegratedLumiOccSet1

MonitorElement* HLXMonitor::HistIntegratedLumiOccSet1
private

Definition at line 154 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HistIntegratedLumiOccSet2

MonitorElement* HLXMonitor::HistIntegratedLumiOccSet2
private

Definition at line 155 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ HLXHFMap

unsigned int HLXMonitor::HLXHFMap[36]
private

◆ HLXTCP

TCPReceiver HLXMonitor::HLXTCP
private

Definition at line 73 of file HLXMonitor.h.

Referenced by analyze(), connectHLXTCP(), and ~HLXMonitor().

◆ hostName_

MonitorElement* HLXMonitor::hostName_
private

of event processed so far

Definition at line 186 of file HLXMonitor.h.

Referenced by SetupEventInfo().

◆ lastAvgTime_

timeval HLXMonitor::lastAvgTime_
private

Definition at line 269 of file HLXMonitor.h.

Referenced by FillEventInfo(), and SetupEventInfo().

◆ lastUpdateTime_

timeval HLXMonitor::lastUpdateTime_
private

Definition at line 269 of file HLXMonitor.h.

Referenced by FillEventInfo().

◆ listenPort

int HLXMonitor::listenPort
private

Definition at line 207 of file HLXMonitor.h.

Referenced by connectHLXTCP(), and HLXMonitor().

◆ lsBinOld

int HLXMonitor::lsBinOld
private

Definition at line 259 of file HLXMonitor.h.

Referenced by EndRun(), FillHistograms(), and HLXMonitor().

◆ LumiAvgEtSum

MonitorElement* HLXMonitor::LumiAvgEtSum
private

Definition at line 100 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ LumiAvgOccSet1

MonitorElement* HLXMonitor::LumiAvgOccSet1
private

Definition at line 101 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ LumiAvgOccSet2

MonitorElement* HLXMonitor::LumiAvgOccSet2
private

Definition at line 102 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ LumiInstantEtSum

MonitorElement* HLXMonitor::LumiInstantEtSum
private

Definition at line 103 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ LumiInstantOccSet1

MonitorElement* HLXMonitor::LumiInstantOccSet1
private

Definition at line 104 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ LumiInstantOccSet2

MonitorElement* HLXMonitor::LumiInstantOccSet2
private

Definition at line 105 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ LumiIntegratedEtSum

MonitorElement* HLXMonitor::LumiIntegratedEtSum
private

Definition at line 106 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ LumiIntegratedOccSet1

MonitorElement* HLXMonitor::LumiIntegratedOccSet1
private

Definition at line 107 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ LumiIntegratedOccSet2

MonitorElement* HLXMonitor::LumiIntegratedOccSet2
private

Definition at line 108 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ lumisecId_

MonitorElement* HLXMonitor::lumisecId_
private

Definition at line 172 of file HLXMonitor.h.

Referenced by FillEventInfo(), and SetupEventInfo().

◆ lumiSection

HCAL_HLX::LUMI_SECTION HLXMonitor::lumiSection
private

Definition at line 248 of file HLXMonitor.h.

Referenced by analyze().

◆ lumiSectionCount

unsigned int HLXMonitor::lumiSectionCount
private

Definition at line 258 of file HLXMonitor.h.

Referenced by EndRun(), FillHistograms(), and HLXMonitor().

◆ MAX_LS

unsigned int HLXMonitor::MAX_LS
private

Definition at line 217 of file HLXMonitor.h.

Referenced by HLXMonitor(), and SetupHists().

◆ MaxInstLumiBX1

MonitorElement* HLXMonitor::MaxInstLumiBX1
private

Definition at line 116 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ MaxInstLumiBX2

MonitorElement* HLXMonitor::MaxInstLumiBX2
private

Definition at line 117 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ MaxInstLumiBX3

MonitorElement* HLXMonitor::MaxInstLumiBX3
private

Definition at line 118 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ MaxInstLumiBX4

MonitorElement* HLXMonitor::MaxInstLumiBX4
private

Definition at line 119 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ MaxInstLumiBXNum1

MonitorElement* HLXMonitor::MaxInstLumiBXNum1
private

Definition at line 121 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ MaxInstLumiBXNum2

MonitorElement* HLXMonitor::MaxInstLumiBXNum2
private

Definition at line 122 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ MaxInstLumiBXNum3

MonitorElement* HLXMonitor::MaxInstLumiBXNum3
private

Definition at line 123 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ MaxInstLumiBXNum4

MonitorElement* HLXMonitor::MaxInstLumiBXNum4
private

Definition at line 124 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ MinLSBeforeSave

unsigned int HLXMonitor::MinLSBeforeSave
private

Definition at line 220 of file HLXMonitor.h.

Referenced by HLXMonitor().

◆ MissingDQMDataCheck

MonitorElement* HLXMonitor::MissingDQMDataCheck
private

Definition at line 113 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ monitorName_

std::string HLXMonitor::monitorName_
private

Definition at line 222 of file HLXMonitor.h.

Referenced by HLXMonitor(), and SetupHists().

◆ NBINS

unsigned int HLXMonitor::NBINS
private

Definition at line 209 of file HLXMonitor.h.

Referenced by HLXMonitor(), and SetupHists().

◆ num4NibblePerLS_

double HLXMonitor::num4NibblePerLS_
private

Definition at line 276 of file HLXMonitor.h.

Referenced by FillEventInfo(), FillHistograms(), and HLXMonitor().

◆ NUM_BUNCHES

unsigned int HLXMonitor::NUM_BUNCHES
private

Definition at line 216 of file HLXMonitor.h.

Referenced by FillHistograms(), and HLXMonitor().

◆ NUM_HLX

unsigned int HLXMonitor::NUM_HLX
private

◆ numActiveTowersSet1

unsigned int HLXMonitor::numActiveTowersSet1
private

Definition at line 199 of file HLXMonitor.h.

◆ numActiveTowersSet2

unsigned int HLXMonitor::numActiveTowersSet2
private

Definition at line 200 of file HLXMonitor.h.

◆ nUpdates_

MonitorElement* HLXMonitor::nUpdates_
private

These MEs are either static or updated upon each analyze() call.

Definition at line 178 of file HLXMonitor.h.

Referenced by SetupEventInfo().

◆ OccXAxisTitle

std::string HLXMonitor::OccXAxisTitle
private

Definition at line 243 of file HLXMonitor.h.

Referenced by SetupHists().

◆ OccYAxisTitle

std::string HLXMonitor::OccYAxisTitle
private

Definition at line 244 of file HLXMonitor.h.

Referenced by SetupHists().

◆ OutputDir

std::string HLXMonitor::OutputDir
private

Definition at line 212 of file HLXMonitor.h.

Referenced by HLXMonitor().

◆ OutputFilePrefix

std::string HLXMonitor::OutputFilePrefix
private

Definition at line 211 of file HLXMonitor.h.

Referenced by HLXMonitor().

◆ pEvent_

int HLXMonitor::pEvent_
private

Definition at line 273 of file HLXMonitor.h.

Referenced by FillEventInfo(), and SetupEventInfo().

◆ prescaleEvt_

int HLXMonitor::prescaleEvt_
private

Definition at line 223 of file HLXMonitor.h.

Referenced by HLXMonitor().

◆ previousSection

unsigned int HLXMonitor::previousSection
private

Definition at line 257 of file HLXMonitor.h.

Referenced by EndRun(), FillHistograms(), and HLXMonitor().

◆ processEventRate_

MonitorElement* HLXMonitor::processEventRate_
private

Time elapsed since the last event.

Definition at line 183 of file HLXMonitor.h.

Referenced by FillEventInfo(), and SetupEventInfo().

◆ processEvents_

MonitorElement* HLXMonitor::processEvents_
private

Avg # of events in programmable window (default: 5 min)

Definition at line 185 of file HLXMonitor.h.

Referenced by FillEventInfo(), and SetupEventInfo().

◆ processId_

MonitorElement* HLXMonitor::processId_
private

Number of collector updates (TBD)

Definition at line 179 of file HLXMonitor.h.

Referenced by SetupEventInfo().

◆ processLatency_

MonitorElement* HLXMonitor::processLatency_
private

The UTC time of the last event.

Definition at line 182 of file HLXMonitor.h.

Referenced by FillEventInfo(), and SetupEventInfo().

◆ processName_

MonitorElement* HLXMonitor::processName_
private

Hostname of the local machine.

Definition at line 187 of file HLXMonitor.h.

Referenced by SetupEventInfo().

◆ processStartTimeStamp_

MonitorElement* HLXMonitor::processStartTimeStamp_
private

The PID associated with this job.

Definition at line 180 of file HLXMonitor.h.

Referenced by SetupEventInfo().

◆ processTimeStamp_

MonitorElement* HLXMonitor::processTimeStamp_
private

The UTC time of the first event processed.

Definition at line 181 of file HLXMonitor.h.

Referenced by FillEventInfo(), and SetupEventInfo().

◆ rData

unsigned char* HLXMonitor::rData
private

Definition at line 203 of file HLXMonitor.h.

◆ RecentInstantLumiEtSum

MonitorElement* HLXMonitor::RecentInstantLumiEtSum
private

Definition at line 157 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ RecentInstantLumiOccSet1

MonitorElement* HLXMonitor::RecentInstantLumiOccSet1
private

Definition at line 158 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ RecentInstantLumiOccSet2

MonitorElement* HLXMonitor::RecentInstantLumiOccSet2
private

Definition at line 159 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ RecentIntegratedLumiEtSum

MonitorElement* HLXMonitor::RecentIntegratedLumiEtSum
private

Definition at line 160 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ RecentIntegratedLumiOccSet1

MonitorElement* HLXMonitor::RecentIntegratedLumiOccSet1
private

Definition at line 161 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ RecentIntegratedLumiOccSet2

MonitorElement* HLXMonitor::RecentIntegratedLumiOccSet2
private

Definition at line 162 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ reconnTime

unsigned int HLXMonitor::reconnTime
private

Definition at line 225 of file HLXMonitor.h.

Referenced by analyze(), connectHLXTCP(), and HLXMonitor().

◆ reportSummary_

MonitorElement* HLXMonitor::reportSummary_
private

Definition at line 196 of file HLXMonitor.h.

Referenced by FillReportSummary(), and SetupEventInfo().

◆ reportSummaryMap_

MonitorElement* HLXMonitor::reportSummaryMap_
private

Definition at line 197 of file HLXMonitor.h.

Referenced by FillReportSummary(), and SetupEventInfo().

◆ runId_

MonitorElement* HLXMonitor::runId_
private

These MEs are filled with the info from the most recent event by the module

Definition at line 169 of file HLXMonitor.h.

Referenced by FillEventInfo(), and SetupEventInfo().

◆ runNumber_

unsigned int HLXMonitor::runNumber_
private

Definition at line 251 of file HLXMonitor.h.

Referenced by analyze(), EndRun(), and HLXMonitor().

◆ runNumLength

unsigned int HLXMonitor::runNumLength
private

Definition at line 240 of file HLXMonitor.h.

Referenced by HLXMonitor().

◆ runStartTime_

timeval HLXMonitor::runStartTime_
private

Definition at line 270 of file HLXMonitor.h.

◆ runStartTimeStamp_

MonitorElement* HLXMonitor::runStartTimeStamp_
private

Definition at line 170 of file HLXMonitor.h.

Referenced by analyze(), and SetupEventInfo().

◆ SavePeriod

int HLXMonitor::SavePeriod
private

Definition at line 214 of file HLXMonitor.h.

Referenced by HLXMonitor().

◆ secNumLength

unsigned int HLXMonitor::secNumLength
private

Definition at line 241 of file HLXMonitor.h.

Referenced by HLXMonitor().

◆ SectionComplete

short int HLXMonitor::SectionComplete
private

Definition at line 204 of file HLXMonitor.h.

◆ sectionInstantErrSumEt

double HLXMonitor::sectionInstantErrSumEt
private

Definition at line 261 of file HLXMonitor.h.

Referenced by EndRun(), FillHistograms(), and HLXMonitor().

◆ sectionInstantErrSumOcc1

double HLXMonitor::sectionInstantErrSumOcc1
private

Definition at line 263 of file HLXMonitor.h.

Referenced by EndRun(), FillHistograms(), and HLXMonitor().

◆ sectionInstantErrSumOcc2

double HLXMonitor::sectionInstantErrSumOcc2
private

Definition at line 265 of file HLXMonitor.h.

Referenced by EndRun(), FillHistograms(), and HLXMonitor().

◆ sectionInstantNorm

double HLXMonitor::sectionInstantNorm
private

Definition at line 266 of file HLXMonitor.h.

Referenced by EndRun(), FillHistograms(), and HLXMonitor().

◆ sectionInstantSumEt

double HLXMonitor::sectionInstantSumEt
private

Definition at line 260 of file HLXMonitor.h.

Referenced by EndRun(), FillHistograms(), and HLXMonitor().

◆ sectionInstantSumOcc1

double HLXMonitor::sectionInstantSumOcc1
private

Definition at line 262 of file HLXMonitor.h.

Referenced by EndRun(), FillHistograms(), and HLXMonitor().

◆ sectionInstantSumOcc2

double HLXMonitor::sectionInstantSumOcc2
private

Definition at line 264 of file HLXMonitor.h.

Referenced by EndRun(), FillHistograms(), and HLXMonitor().

◆ Set1Above

MonitorElement* HLXMonitor::Set1Above[36]
private

Definition at line 77 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ set1AboveIndex

unsigned int HLXMonitor::set1AboveIndex
private

Definition at line 231 of file HLXMonitor.h.

Referenced by FillHistograms(), FillHistoHFCompare(), and HLXMonitor().

◆ Set1Below

MonitorElement* HLXMonitor::Set1Below[36]
private

Definition at line 75 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ set1BelowIndex

unsigned int HLXMonitor::set1BelowIndex
private

Definition at line 229 of file HLXMonitor.h.

Referenced by FillHistograms(), FillHistoHFCompare(), and HLXMonitor().

◆ Set1Between

MonitorElement* HLXMonitor::Set1Between[36]
private

Definition at line 76 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ set1BetweenIndex

unsigned int HLXMonitor::set1BetweenIndex
private

Definition at line 230 of file HLXMonitor.h.

Referenced by FillHistograms(), FillHistoHFCompare(), and HLXMonitor().

◆ Set2Above

MonitorElement* HLXMonitor::Set2Above[36]
private

Definition at line 80 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ set2AboveIndex

unsigned int HLXMonitor::set2AboveIndex
private

Definition at line 234 of file HLXMonitor.h.

Referenced by FillHistograms(), FillHistoHFCompare(), and HLXMonitor().

◆ Set2Below

MonitorElement* HLXMonitor::Set2Below[36]
private

Definition at line 78 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ set2BelowIndex

unsigned int HLXMonitor::set2BelowIndex
private

Definition at line 232 of file HLXMonitor.h.

Referenced by FillHistograms(), FillHistoHFCompare(), and HLXMonitor().

◆ Set2Between

MonitorElement* HLXMonitor::Set2Between[36]
private

Definition at line 79 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ set2BetweenIndex

unsigned int HLXMonitor::set2BetweenIndex
private

Definition at line 233 of file HLXMonitor.h.

Referenced by FillHistograms(), FillHistoHFCompare(), and HLXMonitor().

◆ Style

std::string HLXMonitor::Style
private

Definition at line 213 of file HLXMonitor.h.

◆ subSystemName_

std::string HLXMonitor::subSystemName_
private

Definition at line 238 of file HLXMonitor.h.

Referenced by HLXMonitor(), and SetupEventInfo().

◆ SumAllOccSet1

MonitorElement* HLXMonitor::SumAllOccSet1
private

Definition at line 111 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ SumAllOccSet2

MonitorElement* HLXMonitor::SumAllOccSet2
private

Definition at line 112 of file HLXMonitor.h.

Referenced by FillHistograms(), and SetupHists().

◆ totalNibbles_

unsigned int HLXMonitor::totalNibbles_[36]
private

Definition at line 253 of file HLXMonitor.h.

Referenced by EndRun(), FillEventInfo(), FillReportSummary(), and HLXMonitor().

◆ TriggerBX

unsigned int HLXMonitor::TriggerBX
private

Definition at line 219 of file HLXMonitor.h.

Referenced by FillHistoHFCompare(), and HLXMonitor().

◆ workingDir_

MonitorElement* HLXMonitor::workingDir_
private

DQM "name" of the job (eg, Hcal or DT)

Definition at line 188 of file HLXMonitor.h.

Referenced by SetupEventInfo().

◆ XMAX

double HLXMonitor::XMAX
private

Definition at line 208 of file HLXMonitor.h.

Referenced by FillHistograms(), HLXMonitor(), and SetupHists().

◆ XMIN

double HLXMonitor::XMIN
private

Definition at line 208 of file HLXMonitor.h.

Referenced by FillHistograms(), HLXMonitor(), and SetupHists().

HLXMonitor::RecentInstantLumiOccSet2
MonitorElement * RecentInstantLumiOccSet2
Definition: HLXMonitor.h:159
HLXMonitor::Set2Above
MonitorElement * Set2Above[36]
Definition: HLXMonitor.h:80
HLXMonitor::eventId_
MonitorElement * eventId_
UTC time of the run start.
Definition: HLXMonitor.h:171
HLXMonitor::listenPort
int listenPort
Definition: HLXMonitor.h:207
HCAL_HLX::TCPReceiver::Connect
int Connect()
Definition: TCPReceiver.cc:229
HLXMonitor::processId_
MonitorElement * processId_
Number of collector updates (TBD)
Definition: HLXMonitor.h:179
HLXMonitor::HLXTCP
TCPReceiver HLXTCP
Definition: HLXMonitor.h:73
HCAL_HLX::LUMI_SUMMARY::InstantOccLumi
float InstantOccLumi[2]
Definition: LumiRawDataStructures.h:142
HLXMonitor::HistAvgOccBelowSet2HFP
MonitorElement * HistAvgOccBelowSet2HFP
Definition: HLXMonitor.h:135
dqmMemoryStats.float
float
Definition: dqmMemoryStats.py:127
HLXMonitor::HFCompareEtSum
MonitorElement * HFCompareEtSum
Definition: HLXMonitor.h:83
HLXMonitor::processEvents_
MonitorElement * processEvents_
Definition: HLXMonitor.h:185
dqm::implementation::IBooker::bookFloat
MonitorElement * bookFloat(TString const &name, FUNC onbooking=NOOP())
Definition: DQMStore.h:80
HLXMonitor::previousSection
unsigned int previousSection
Definition: HLXMonitor.h:257
HLXMonitor::HistInstantLumiEtSum
MonitorElement * HistInstantLumiEtSum
Definition: HLXMonitor.h:147
HLXMonitor::AquireMode
unsigned int AquireMode
Definition: HLXMonitor.h:218
HLXMonitor::eventInfoFolderHLX_
std::string eventInfoFolderHLX_
Definition: HLXMonitor.h:236
HLXMonitor::sectionInstantSumOcc1
double sectionInstantSumOcc1
Definition: HLXMonitor.h:262
HLXMonitor::set1BelowIndex
unsigned int set1BelowIndex
Definition: HLXMonitor.h:229
HLXMonitor::Set1Above
MonitorElement * Set1Above[36]
Definition: HLXMonitor.h:77
HLXMonitor::set2BetweenIndex
unsigned int set2BetweenIndex
Definition: HLXMonitor.h:233
HLXMonitor::eventInfoFolder_
std::string eventInfoFolder_
Definition: HLXMonitor.h:237
HLXMonitor::sectionInstantSumOcc2
double sectionInstantSumOcc2
Definition: HLXMonitor.h:264
HCAL_HLX::LUMI_SUMMARY::InstantETLumi
float InstantETLumi
Definition: LumiRawDataStructures.h:137
HLXMonitor::AvgOccBelowSet2
MonitorElement * AvgOccBelowSet2
Definition: HLXMonitor.h:95
HLXMonitor::MAX_LS
unsigned int MAX_LS
Definition: HLXMonitor.h:217
edm
HLT enums.
Definition: AlignableModifier.h:19
HLXMonitor::AvgOccAboveSet1
MonitorElement * AvgOccAboveSet1
Definition: HLXMonitor.h:94
HLXMonitor::LumiAvgOccSet1
MonitorElement * LumiAvgOccSet1
Definition: HLXMonitor.h:101
HLXMonitor::HistInstantLumiOccSet1Error
MonitorElement * HistInstantLumiOccSet1Error
Definition: HLXMonitor.h:151
gather_cfg.cout
cout
Definition: gather_cfg.py:144
HLXMonitor::workingDir_
MonitorElement * workingDir_
DQM "name" of the job (eg, Hcal or DT)
Definition: HLXMonitor.h:188
HLXMonitor::HFCompareOccBelowSet1
MonitorElement * HFCompareOccBelowSet1
Definition: HLXMonitor.h:84
HLXMonitor::OccXAxisTitle
std::string OccXAxisTitle
Definition: HLXMonitor.h:243
HLXMonitor::NBINS
unsigned int NBINS
Definition: HLXMonitor.h:209
dqm::implementation::NavigatorBase::setCurrentFolder
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:32
HLXMonitor::Set1Between
MonitorElement * Set1Between[36]
Definition: HLXMonitor.h:76
HLXMonitor::MaxInstLumiBXNum2
MonitorElement * MaxInstLumiBXNum2
Definition: HLXMonitor.h:122
HLXMonitor::MaxInstLumiBX2
MonitorElement * MaxInstLumiBX2
Definition: HLXMonitor.h:117
HLXMonitor::lastUpdateTime_
timeval lastUpdateTime_
Definition: HLXMonitor.h:269
HLXMonitor::HFCompareOccBelowSet2
MonitorElement * HFCompareOccBelowSet2
Definition: HLXMonitor.h:87
HLXMonitor::FillHistograms
void FillHistograms(const LUMI_SECTION &)
Definition: HLXMonitor.cc:912
HCAL_HLX::TCPReceiver::ReceiveLumiSection
int ReceiveLumiSection(HCAL_HLX::LUMI_SECTION &localSection)
Definition: TCPReceiver.cc:87
HLXMonitor::SetupEventInfo
void SetupEventInfo(DQMStore::IBooker &)
Definition: HLXMonitor.cc:759
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
HLXMonitor::connectHLXTCP
void connectHLXTCP()
Definition: HLXMonitor.cc:114
HLXMonitor::nUpdates_
MonitorElement * nUpdates_
These MEs are either static or updated upon each analyze() call.
Definition: HLXMonitor.h:178
HLXMonitor::DistribIP1
std::string DistribIP1
Definition: HLXMonitor.h:226
HLXMonitor::lumiSection
HCAL_HLX::LUMI_SECTION lumiSection
Definition: HLXMonitor.h:248
HLXMonitor::LumiAvgEtSum
MonitorElement * LumiAvgEtSum
Definition: HLXMonitor.h:100
createJobs.tmp
tmp
align.sh
Definition: createJobs.py:716
HLXMonitor::NUM_BUNCHES
unsigned int NUM_BUNCHES
Definition: HLXMonitor.h:216
HGVHistoProducerAlgoBlock_cfi.minX
minX
Definition: HGVHistoProducerAlgoBlock_cfi.py:153
HLXMonitor::Set2Between
MonitorElement * Set2Between[36]
Definition: HLXMonitor.h:79
HLXMonitor::HistAvgLumiOccSet1
MonitorElement * HistAvgLumiOccSet1
Definition: HLXMonitor.h:145
HLXMonitor::OutputDir
std::string OutputDir
Definition: HLXMonitor.h:212
HLXMonitor::MaxInstLumiBX4
MonitorElement * MaxInstLumiBX4
Definition: HLXMonitor.h:119
HLXMonitor::SumAllOccSet2
MonitorElement * SumAllOccSet2
Definition: HLXMonitor.h:112
HLXMonitor::EtXAxisTitle
std::string EtXAxisTitle
Definition: HLXMonitor.h:245
HLXMonitor::HistAvgLumiOccSet2
MonitorElement * HistAvgLumiOccSet2
Definition: HLXMonitor.h:146
HLXMonitor::HistIntegratedLumiEtSum
MonitorElement * HistIntegratedLumiEtSum
Definition: HLXMonitor.h:153
HLXMonitor::HistAvgOccBelowSet2HFM
MonitorElement * HistAvgOccBelowSet2HFM
Definition: HLXMonitor.h:136
HLXMonitor::EndRun
void EndRun()
Definition: HLXMonitor.cc:889
dqm::impl::MonitorElement::getTH2F
virtual TH2F * getTH2F()
Definition: MonitorElement.cc:992
HLXMonitor::LumiIntegratedEtSum
MonitorElement * LumiIntegratedEtSum
Definition: HLXMonitor.h:106
HLXMonitor::FillHistoHFCompare
void FillHistoHFCompare(const LUMI_SECTION &)
Definition: HLXMonitor.cc:1339
HLXMonitor::MaxInstLumiBX3
MonitorElement * MaxInstLumiBX3
Definition: HLXMonitor.h:118
HCAL_HLX::TCPReceiver::IsConnected
bool IsConnected()
Definition: TCPReceiver.cc:172
DivergingColor.frac
float frac
Definition: DivergingColor.py:175
HLXMonitor::MaxInstLumiBXNum4
MonitorElement * MaxInstLumiBXNum4
Definition: HLXMonitor.h:124
HLXMonitor::HistAvgEtSumHFM
MonitorElement * HistAvgEtSumHFM
Definition: HLXMonitor.h:128
HLXMonitor::HistAvgOccAboveSet2HFP
MonitorElement * HistAvgOccAboveSet2HFP
Definition: HLXMonitor.h:139
HLXMonitor::runNumLength
unsigned int runNumLength
Definition: HLXMonitor.h:240
HLXMonitor::processTimeStamp_
MonitorElement * processTimeStamp_
The UTC time of the first event processed.
Definition: HLXMonitor.h:181
HLXMonitor::FillReportSummary
void FillReportSummary()
Definition: HLXMonitor.cc:1420
HLXMonitor::HistAvgOccAboveSet1HFP
MonitorElement * HistAvgOccAboveSet1HFP
Definition: HLXMonitor.h:133
HLXMonitor::processStartTimeStamp_
MonitorElement * processStartTimeStamp_
The PID associated with this job.
Definition: HLXMonitor.h:180
HLXMonitor::SetupHists
void SetupHists(DQMStore::IBooker &)
Definition: HLXMonitor.cc:146
HLXMonitor::HLXHFMap
unsigned int HLXHFMap[36]
Definition: HLXMonitor.h:255
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
dqm::impl::MonitorElement::Fill
void Fill(long long x)
Definition: MonitorElement.h:290
HLXMonitor::expectedNibbles_
unsigned int expectedNibbles_
Definition: HLXMonitor.h:252
dqm::implementation::IBooker::bookProfile
MonitorElement * bookProfile(TString const &name, TString const &title, int nchX, double lowX, double highX, int, double lowY, double highY, char const *option="s", FUNC onbooking=NOOP())
Definition: DQMStore.h:322
HLXMonitor::LumiAvgOccSet2
MonitorElement * LumiAvgOccSet2
Definition: HLXMonitor.h:102
HLXMonitor::cmsswVer_
MonitorElement * cmsswVer_
Current working directory of the job.
Definition: HLXMonitor.h:189
dqm::impl::MonitorElement::getRMS
virtual double getRMS(int axis=1) const
get RMS of histogram along x, y or z axis (axis=1, 2, 3 respectively)
Definition: MonitorElement.cc:562
dqm::impl::MonitorElement::getTH1F
virtual TH1F * getTH1F()
Definition: MonitorElement.cc:974
HLXMonitor::processName_
MonitorElement * processName_
Hostname of the local machine.
Definition: HLXMonitor.h:187
HLXMonitor::LumiInstantOccSet2
MonitorElement * LumiInstantOccSet2
Definition: HLXMonitor.h:105
b
double b
Definition: hdecay.h:118
HCAL_HLX::TCPReceiver::SetIP
void SetIP(std::string IP)
Definition: TCPReceiver.cc:219
HLXMonitor::HFCompareOccBetweenSet2
MonitorElement * HFCompareOccBetweenSet2
Definition: HLXMonitor.h:88
HLXMonitor::lastAvgTime_
timeval lastAvgTime_
Definition: HLXMonitor.h:269
HLXMonitor::SavePeriod
int SavePeriod
Definition: HLXMonitor.h:214
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
dqm::impl::MonitorElement::setAxisRange
virtual void setAxisRange(double xmin, double xmax, int axis=1)
set x-, y- or z-axis range (axis=1, 2, 3 respectively)
Definition: MonitorElement.cc:794
HLXMonitor::LumiIntegratedOccSet2
MonitorElement * LumiIntegratedOccSet2
Definition: HLXMonitor.h:108
HLXMonitor::LumiInstantEtSum
MonitorElement * LumiInstantEtSum
Definition: HLXMonitor.h:103
HLXMonitor::HFCompareOccBetweenSet1
MonitorElement * HFCompareOccBetweenSet1
Definition: HLXMonitor.h:85
HLXMonitor::currentTime_
timeval currentTime_
Definition: HLXMonitor.h:269
HLXMonitor::MaxInstLumiBXNum1
MonitorElement * MaxInstLumiBXNum1
Definition: HLXMonitor.h:121
HLXMonitor::OccYAxisTitle
std::string OccYAxisTitle
Definition: HLXMonitor.h:244
HCAL_HLX::TCPReceiver::SetPort
int SetPort(unsigned short int)
Definition: TCPReceiver.cc:179
HLXMonitor::num4NibblePerLS_
double num4NibblePerLS_
Definition: HLXMonitor.h:276
HLXMonitor::LumiIntegratedOccSet1
MonitorElement * LumiIntegratedOccSet1
Definition: HLXMonitor.h:107
dqm::implementation::IBooker::bookString
MonitorElement * bookString(TString const &name, TString const &value, FUNC onbooking=NOOP())
Definition: DQMStore.h:87
SiStripPI::max
Definition: SiStripPayloadInspectorHelper.h:169
HLXMonitor::runId_
MonitorElement * runId_
Definition: HLXMonitor.h:169
HLXMonitor::processEventRate_
MonitorElement * processEventRate_
Time elapsed since the last event.
Definition: HLXMonitor.h:183
HCAL_HLX::TCPReceiver::SetMode
int SetMode(unsigned char)
Definition: TCPReceiver.cc:199
HLXMonitor::Set1Below
MonitorElement * Set1Below[36]
Definition: HLXMonitor.h:75
HLXMonitor::lsBinOld
int lsBinOld
Definition: HLXMonitor.h:259
HLXMonitor::MissingDQMDataCheck
MonitorElement * MissingDQMDataCheck
Definition: HLXMonitor.h:113
Style
Definition: Style.py:1
HLXMonitor::lumiSectionCount
unsigned int lumiSectionCount
Definition: HLXMonitor.h:258
StorageManager_cfg.e1
e1
Definition: StorageManager_cfg.py:16
dqm::implementation::IBooker::bookInt
MonitorElement * bookInt(TString const &name, FUNC onbooking=NOOP())
Definition: DQMStore.h:73
HLXMonitor::LumiInstantOccSet1
MonitorElement * LumiInstantOccSet1
Definition: HLXMonitor.h:104
createfilelist.int
int
Definition: createfilelist.py:10
iEvent
int iEvent
Definition: GenABIO.cc:224
HLXMonitor::evtRateWindow_
float evtRateWindow_
Definition: HLXMonitor.h:271
HLXMonitor::OutputFilePrefix
std::string OutputFilePrefix
Definition: HLXMonitor.h:211
HLXMonitor::sectionInstantErrSumEt
double sectionInstantErrSumEt
Definition: HLXMonitor.h:261
HLXMonitor::AvgOccBetweenSet1
MonitorElement * AvgOccBetweenSet1
Definition: HLXMonitor.h:93
HLXMonitor::HistAvgOccBetweenSet1HFP
MonitorElement * HistAvgOccBetweenSet1HFP
Definition: HLXMonitor.h:131
HLXMonitor::MaxInstLumiBX1
MonitorElement * MaxInstLumiBX1
Definition: HLXMonitor.h:116
HLXMonitor::sectionInstantSumEt
double sectionInstantSumEt
Definition: HLXMonitor.h:260
HLXMonitor::reportSummaryMap_
MonitorElement * reportSummaryMap_
Definition: HLXMonitor.h:197
HLXMonitor::set2AboveIndex
unsigned int set2AboveIndex
Definition: HLXMonitor.h:234
HLXMonitor::processLatency_
MonitorElement * processLatency_
The UTC time of the last event.
Definition: HLXMonitor.h:182
HLXMonitor::HFCompareOccAboveSet2
MonitorElement * HFCompareOccAboveSet2
Definition: HLXMonitor.h:89
HLXMonitor::HistInstantLumiOccSet1
MonitorElement * HistInstantLumiOccSet1
Definition: HLXMonitor.h:148
HCAL_HLX::LUMI_SECTION::hdr
LUMI_SECTION_HEADER hdr
Definition: LumiRawDataStructures.h:286
HLXMonitor::RecentInstantLumiEtSum
MonitorElement * RecentInstantLumiEtSum
Definition: HLXMonitor.h:157
HLXMonitor::XMIN
double XMIN
Definition: HLXMonitor.h:208
HLXMonitor::reportSummary_
MonitorElement * reportSummary_
Definition: HLXMonitor.h:196
HLXMonitor::HistAvgOccBetweenSet2HFP
MonitorElement * HistAvgOccBetweenSet2HFP
Definition: HLXMonitor.h:137
HLXMonitor::EtYAxisTitle
std::string EtYAxisTitle
Definition: HLXMonitor.h:246
HLXMonitor::set1AboveIndex
unsigned int set1AboveIndex
Definition: HLXMonitor.h:231
HLXMonitor::lumisecId_
MonitorElement * lumisecId_
Definition: HLXMonitor.h:172
HLXMonitor::reconnTime
unsigned int reconnTime
Definition: HLXMonitor.h:225
HCAL_HLX::LUMI_SECTION_HEADER::sectionNumber
uint32_t sectionNumber
Definition: LumiRawDataStructures.h:254
HCAL_HLX::TCPReceiver::Disconnect
int Disconnect()
Definition: TCPReceiver.cc:283
HLXMonitor::HistInstantLumiEtSumError
MonitorElement * HistInstantLumiEtSumError
Definition: HLXMonitor.h:150
HLXMonitor::DistribIP2
std::string DistribIP2
Definition: HLXMonitor.h:227
HLXMonitor::set1BetweenIndex
unsigned int set1BetweenIndex
Definition: HLXMonitor.h:230
HLXMonitor::RecentIntegratedLumiEtSum
MonitorElement * RecentIntegratedLumiEtSum
Definition: HLXMonitor.h:160
HLXMonitor::set2BelowIndex
unsigned int set2BelowIndex
Definition: HLXMonitor.h:232
dqm::impl::MonitorElement::setBinContent
virtual void setBinContent(int binx, double content)
set content of bin (1-D)
Definition: MonitorElement.cc:691
HLXMonitor::HistIntegratedLumiOccSet1
MonitorElement * HistIntegratedLumiOccSet1
Definition: HLXMonitor.h:154
HLXMonitor::HistIntegratedLumiOccSet2
MonitorElement * HistIntegratedLumiOccSet2
Definition: HLXMonitor.h:155
HLXMonitor::RecentInstantLumiOccSet1
MonitorElement * RecentInstantLumiOccSet1
Definition: HLXMonitor.h:158
HLXMonitor::SumAllOccSet1
MonitorElement * SumAllOccSet1
Definition: HLXMonitor.h:111
HLXMonitor::HFCompareOccAboveSet1
MonitorElement * HFCompareOccAboveSet1
Definition: HLXMonitor.h:86
HLXMonitor::AvgOccBetweenSet2
MonitorElement * AvgOccBetweenSet2
Definition: HLXMonitor.h:96
HLXMonitor::HistAvgOccBelowSet1HFP
MonitorElement * HistAvgOccBelowSet1HFP
Definition: HLXMonitor.h:129
HLXMonitor::AvgOccAboveSet2
MonitorElement * AvgOccAboveSet2
Definition: HLXMonitor.h:97
HLXMonitor::totalNibbles_
unsigned int totalNibbles_[36]
Definition: HLXMonitor.h:253
HLXMonitor::RecentIntegratedLumiOccSet2
MonitorElement * RecentIntegratedLumiOccSet2
Definition: HLXMonitor.h:162
HLXMonitor::getUTCtime
double getUTCtime(timeval *a, timeval *b=nullptr)
Definition: HLXMonitor.cc:1445
HLXMonitor::pEvent_
int pEvent_
Definition: HLXMonitor.h:273
HLXMonitor::hostName_
MonitorElement * hostName_
Definition: HLXMonitor.h:186
HLXMonitor::HistAvgEtSumHFP
MonitorElement * HistAvgEtSumHFP
Definition: HLXMonitor.h:127
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
HLXMonitor::runStartTimeStamp_
MonitorElement * runStartTimeStamp_
Definition: HLXMonitor.h:170
edm::getReleaseVersion
std::string getReleaseVersion()
Definition: GetReleaseVersion.cc:7
HLXMonitor::ETSum
MonitorElement * ETSum[36]
Definition: HLXMonitor.h:81
HLXMonitor::secNumLength
unsigned int secNumLength
Definition: HLXMonitor.h:241
hgcalPlots.section
section
Definition: hgcalPlots.py:2049
HLXMonitor::Set2Below
MonitorElement * Set2Below[36]
Definition: HLXMonitor.h:78
dqm::impl::MonitorElement::setBinError
virtual void setBinError(int binx, double error)
set uncertainty on content of bin (1-D)
Definition: MonitorElement.cc:709
HLXMonitor::XMAX
double XMAX
Definition: HLXMonitor.h:208
dqm::impl::MonitorElement::getMean
virtual double getMean(int axis=1) const
get mean value of histogram along x, y or z axis (axis=1, 2, 3 respectively)
Definition: MonitorElement.cc:549
HLXMonitor::NUM_HLX
unsigned int NUM_HLX
Definition: HLXMonitor.h:215
HLXMonitor::BXvsTimeAvgEtSumHFM
MonitorElement * BXvsTimeAvgEtSumHFM
Definition: HLXMonitor.h:142
HLXMonitor::HistInstantLumiOccSet2Error
MonitorElement * HistInstantLumiOccSet2Error
Definition: HLXMonitor.h:152
HLXMonitor::monitorName_
std::string monitorName_
Definition: HLXMonitor.h:222
HCAL_HLX::LUMI_SECTION_HEADER::startOrbit
uint32_t startOrbit
Definition: LumiRawDataStructures.h:256
HLXMonitor::AvgEtSum
MonitorElement * AvgEtSum
Definition: HLXMonitor.h:91
HLXMonitor::HistAvgOccBetweenSet2HFM
MonitorElement * HistAvgOccBetweenSet2HFM
Definition: HLXMonitor.h:138
dqmMemoryStats.total
total
Definition: dqmMemoryStats.py:152
HLXMonitor::prescaleEvt_
int prescaleEvt_
Definition: HLXMonitor.h:223
HLXMonitor::HistAvgOccAboveSet2HFM
MonitorElement * HistAvgOccAboveSet2HFM
Definition: HLXMonitor.h:140
L1TowerCalibrationProducer_cfi.iEta
iEta
Definition: L1TowerCalibrationProducer_cfi.py:60
HCAL_HLX::LUMI_SECTION::lumiSummary
LUMI_SUMMARY lumiSummary
Definition: LumiRawDataStructures.h:287
HLXMonitor::AvgOccBelowSet1
MonitorElement * AvgOccBelowSet1
Definition: HLXMonitor.h:92
HLXMonitor::HistAvgOccAboveSet1HFM
MonitorElement * HistAvgOccAboveSet1HFM
Definition: HLXMonitor.h:134
HLXMonitor::BXvsTimeAvgEtSumHFP
MonitorElement * BXvsTimeAvgEtSumHFP
Definition: HLXMonitor.h:141
HLXMonitor::HistAvgOccBetweenSet1HFM
MonitorElement * HistAvgOccBetweenSet1HFM
Definition: HLXMonitor.h:132
dqm::impl::MonitorElement::getBinError
virtual double getBinError(int binx) const
get uncertainty on content of bin (1-D) - See TH1::GetBinError for details
Definition: MonitorElement.cc:610
HLXMonitor::MinLSBeforeSave
unsigned int MinLSBeforeSave
Definition: HLXMonitor.h:220
HLXMonitor::HistAvgOccBelowSet1HFM
MonitorElement * HistAvgOccBelowSet1HFM
Definition: HLXMonitor.h:130
ntuplemaker.time
time
Definition: ntuplemaker.py:310
HLXMonitor::HistAvgLumiEtSum
MonitorElement * HistAvgLumiEtSum
Definition: HLXMonitor.h:144
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:800
dqm::impl::MonitorElement::getBinContent
virtual double getBinContent(int binx) const
get content of bin (1-D)
Definition: MonitorElement.cc:592
TauDecayModes.dec
dec
Definition: TauDecayModes.py:143
HLXMonitor::sectionInstantErrSumOcc2
double sectionInstantErrSumOcc2
Definition: HLXMonitor.h:265
HCAL_HLX::LUMI_SECTION_HEADER::runNumber
uint32_t runNumber
Definition: LumiRawDataStructures.h:253
HLXMonitor::runNumber_
unsigned int runNumber_
Definition: HLXMonitor.h:251
weight
Definition: weight.py:1
HLXMonitor::sectionInstantNorm
double sectionInstantNorm
Definition: HLXMonitor.h:266
HLXMonitor::MaxInstLumiBXNum3
MonitorElement * MaxInstLumiBXNum3
Definition: HLXMonitor.h:123
HLXMonitor::Accumulate
bool Accumulate
Definition: HLXMonitor.h:210
HLXMonitor::evtRateCount_
int evtRateCount_
Definition: HLXMonitor.h:272
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
HLXMonitor::sectionInstantErrSumOcc1
double sectionInstantErrSumOcc1
Definition: HLXMonitor.h:263
HLXMonitor::subSystemName_
std::string subSystemName_
Definition: HLXMonitor.h:238
RemoveAddSevLevel.flag
flag
Definition: RemoveAddSevLevel.py:116
HLXMonitor::currentRunEnded_
bool currentRunEnded_
Definition: HLXMonitor.h:250
HGVHistoProducerAlgoBlock_cfi.maxX
maxX
Definition: HGVHistoProducerAlgoBlock_cfi.py:154
HLXMonitor::RecentIntegratedLumiOccSet1
MonitorElement * RecentIntegratedLumiOccSet1
Definition: HLXMonitor.h:161
HLXMonitor::eventTimeStamp_
MonitorElement * eventTimeStamp_
Definition: HLXMonitor.h:173
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
HLXMonitor::HistInstantLumiOccSet2
MonitorElement * HistInstantLumiOccSet2
Definition: HLXMonitor.h:149
HLXMonitor::FillEventInfo
void FillEventInfo(const LUMI_SECTION &, const edm::Event &e)
Definition: HLXMonitor.cc:1385
HLXMonitor::TriggerBX
unsigned int TriggerBX
Definition: HLXMonitor.h:219