CMS 3D CMS Logo

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

#include <L1TMuonDQMOffline.h>

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

Public Types

enum  Control {
  kCtrlTagPt, kCtrlTagEta, kCtrlTagPhi, kCtrlProbePt,
  kCtrlProbeEta, kCtrlProbePhi, kCtrlTagProbeDr, kCtrlTagHltDr,
  kCtrlMuonGmtDeltaR, kCtrlNTightVsAll, kCtrlNProbesVsTight
}
 
enum  EffType { kEffPt, kEffPhi, kEffEta, kEffVtx }
 
enum  EtaRegion {
  kEtaRegionAll, kEtaRegionBmtf, kEtaRegionOmtf, kEtaRegionEmtf,
  kEtaRegionOut
}
 
enum  QualLevel { kQualAll, kQualOpen, kQualDouble, kQualSingle }
 
enum  ResType {
  kResPt, kRes1OverPt, kResQOverPt, kResPhi,
  kResEta, kResCh
}
 
- 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

 L1TMuonDQMOffline (const edm::ParameterSet &ps)
 
 ~L1TMuonDQMOffline () 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
 
 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 hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndRuns () const final
 

Protected Member Functions

void analyze (const edm::Event &e, const edm::EventSetup &c) override
 
virtual void bookControlHistos (DQMStore::IBooker &)
 
virtual void bookEfficiencyHistos (DQMStore::IBooker &ibooker)
 
void bookHistograms (DQMStore::IBooker &ibooker, const edm::Run &run, const edm::EventSetup &iSetup) override
 
virtual void bookResolutionHistos (DQMStore::IBooker &ibooker)
 
void dqmBeginRun (const edm::Run &run, const edm::EventSetup &iSetup) override
 
- Protected Member Functions inherited from DQMEDAnalyzer
uint64_t meId () const
 

Private Types

typedef std::tuple< EffType, int, EtaRegionm_histoKeyEffDenVarType
 
typedef std::pair< int, QualLevelm_histoKeyEffNumEtaType
 
typedef std::tuple< EffType, int, EtaRegion, QualLevelm_histoKeyEffNumVarType
 
typedef std::tuple< ResType, EtaRegion, QualLevelm_histoKeyResType
 

Private Member Functions

std::vector< float > getHistBinsEff (EffType eff)
 
std::tuple< int, double, double > getHistBinsRes (ResType res)
 
void getMuonGmtPairs (edm::Handle< l1t::MuonBxCollection > &gmtCands)
 
const unsigned int getNVertices (edm::Handle< reco::VertexCollection > &vertex)
 
const reco::Vertex getPrimaryVertex (edm::Handle< reco::VertexCollection > &vertex, edm::Handle< reco::BeamSpot > &beamSpot)
 
void getProbeMuons (edm::Handle< edm::TriggerResults > &trigResults, edm::Handle< trigger::TriggerEvent > &trigEvent)
 
void getTightMuons (edm::Handle< reco::MuonCollection > &muons, const reco::Vertex &vertex)
 
double matchHlt (edm::Handle< trigger::TriggerEvent > &triggerEvent, const reco::Muon *mu)
 

Private Attributes

edm::EDGetTokenT< reco::BeamSpotm_BsInputTag
 
std::map< Control, MonitorElement * > m_ControlHistos
 
std::vector< std::pair< int, QualLevel > > m_cuts
 
std::vector< edm::ParameterSetm_cutsVPSet
 
std::map< int, MonitorElement * > m_EfficiencyDenEtaHistos
 
std::map< EtaRegion, MonitorElement * > m_EfficiencyDenPtHistos
 
std::map< std::tuple< EffType, int, EtaRegion >, MonitorElement * > m_EfficiencyDenVarHistos
 
std::map< std::pair< int, QualLevel >, MonitorElement * > m_EfficiencyNumEtaHistos
 
std::map< std::tuple< EffType, int, EtaRegion, QualLevel >, MonitorElement * > m_EfficiencyNumVarHistos
 
std::map< EffType, std::string > m_effLabelStrings
 
std::map< EffType, std::string > m_effStrings
 
const std::vector< EffTypem_effTypes
 
std::vector< double > m_effVsEtaBins
 
std::vector< double > m_effVsPhiBins
 
std::vector< double > m_effVsPtBins
 
std::vector< double > m_effVsVtxBins
 
const std::vector< EtaRegionm_etaRegions
 
std::map< EtaRegion, std::string > m_etaStrings
 
edm::EDGetTokenT< l1t::MuonBxCollectionm_GmtInputTag
 
std::string m_HistFolder
 
HLTConfigProvider m_hltConfig
 
BXVector< l1t::Muonm_L1tL1tMuons
 
std::vector< l1t::MuonBxCollectionm_L1tMuons
 
float m_maxGmtMuonDR
 
float m_maxHltMuonDR
 
float m_minTagProbeDR
 
std::vector< MuonGmtPairm_MuonGmtPairs
 
edm::EDGetTokenT< reco::MuonCollectionm_MuonInputTag
 
std::vector< const reco::Muon * > m_ProbeMuons
 
PropagateToMuon m_propagator
 
const std::vector< QualLevelm_qualLevelsRes
 
std::map< QualLevel, std::string > m_qualStrings
 
std::vector< reco::MuonCollectionm_RecoMuons
 
std::vector< reco::Muonm_RecoRecoMuons
 
double m_recoToL1PtCutFactor
 
std::map< ResType, std::string > m_resLabelStrings
 
std::map< std::tuple< ResType, EtaRegion, QualLevel >, MonitorElement * > m_ResolutionHistos
 
std::map< ResType, std::string > m_resStrings
 
const std::vector< ResTypem_resTypes
 
double m_TagPtCut
 
std::vector< const reco::Muon * > m_TightMuons
 
std::vector< int > m_trigIndices
 
edm::EDGetTokenT< trigger::TriggerEventm_trigInputTag
 
std::vector< std::string > m_trigNames
 
std::string m_trigProcess
 
edm::EDGetTokenT< edm::TriggerResultsm_trigProcess_token
 
bool m_useAtVtxCoord
 
bool m_verbose
 
edm::EDGetTokenT< reco::VertexCollectionm_VtxInputTag
 

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 Attributes inherited from DQMEDAnalyzer
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 
unsigned int streamId_
 

Detailed Description

Definition at line 62 of file L1TMuonDQMOffline.h.

Member Typedef Documentation

◆ m_histoKeyEffDenVarType

Definition at line 118 of file L1TMuonDQMOffline.h.

◆ m_histoKeyEffNumEtaType

typedef std::pair<int, QualLevel> L1TMuonDQMOffline::m_histoKeyEffNumEtaType
private

Definition at line 116 of file L1TMuonDQMOffline.h.

◆ m_histoKeyEffNumVarType

Definition at line 115 of file L1TMuonDQMOffline.h.

◆ m_histoKeyResType

Definition at line 113 of file L1TMuonDQMOffline.h.

Member Enumeration Documentation

◆ Control

Enumerator
kCtrlTagPt 
kCtrlTagEta 
kCtrlTagPhi 
kCtrlProbePt 
kCtrlProbeEta 
kCtrlProbePhi 
kCtrlTagProbeDr 
kCtrlTagHltDr 
kCtrlMuonGmtDeltaR 
kCtrlNTightVsAll 
kCtrlNProbesVsTight 

Definition at line 64 of file L1TMuonDQMOffline.h.

◆ EffType

Enumerator
kEffPt 
kEffPhi 
kEffEta 
kEffVtx 

Definition at line 77 of file L1TMuonDQMOffline.h.

◆ EtaRegion

Enumerator
kEtaRegionAll 
kEtaRegionBmtf 
kEtaRegionOmtf 
kEtaRegionEmtf 
kEtaRegionOut 

Definition at line 79 of file L1TMuonDQMOffline.h.

◆ QualLevel

Enumerator
kQualAll 
kQualOpen 
kQualDouble 
kQualSingle 

Definition at line 80 of file L1TMuonDQMOffline.h.

◆ ResType

Enumerator
kResPt 
kRes1OverPt 
kResQOverPt 
kResPhi 
kResEta 
kResCh 

Definition at line 78 of file L1TMuonDQMOffline.h.

Constructor & Destructor Documentation

◆ L1TMuonDQMOffline()

L1TMuonDQMOffline::L1TMuonDQMOffline ( const edm::ParameterSet ps)

Definition at line 110 of file L1TMuonDQMOffline.cc.

116  m_effStrings({{kEffPt, "pt"}, {kEffPhi, "phi"}, {kEffEta, "eta"}, {kEffVtx, "vtx"}}),
117  m_effLabelStrings({{kEffPt, "p_{T} (GeV)"}, {kEffPhi, "#phi"}, {kEffEta, "#eta"}, {kEffVtx, "# vertices"}}),
118  m_resStrings({{kResPt, "pt"},
119  {kRes1OverPt, "1overpt"},
120  {kResQOverPt, "qoverpt"},
121  {kResPhi, "phi"},
122  {kResEta, "eta"},
123  {kResCh, "charge"}}),
124  m_resLabelStrings({{kResPt, "(p_{T}^{L1} - p_{T}^{reco})/p_{T}^{reco}"},
125  {kRes1OverPt, "(p_{T}^{reco} - p_{T}^{L1})/p_{T}^{L1}"},
126  {kResQOverPt, "(q^{L1}*q^{reco}*p_{T}^{reco} - p_{T}^{L1})/p_{T}^{L1}"},
127  {kResPhi, "#phi_{L1} - #phi_{reco}"},
128  {kResEta, "#eta_{L1} - #eta_{reco}"},
129  {kResCh, "charge^{L1} - charge^{reco}"}}),
130  m_etaStrings({{kEtaRegionAll, "etaMin0_etaMax2p4"},
131  {kEtaRegionBmtf, "etaMin0_etaMax0p83"},
132  {kEtaRegionOmtf, "etaMin0p83_etaMax1p24"},
133  {kEtaRegionEmtf, "etaMin1p24_etaMax2p4"}}),
135  {{kQualAll, "qualAll"}, {kQualOpen, "qualOpen"}, {kQualDouble, "qualDouble"}, {kQualSingle, "qualSingle"}}),
136  m_verbose(ps.getUntrackedParameter<bool>("verbose")),
137  m_HistFolder(ps.getUntrackedParameter<string>("histFolder")),
138  m_TagPtCut(ps.getUntrackedParameter<double>("tagPtCut")),
139  m_recoToL1PtCutFactor(ps.getUntrackedParameter<double>("recoToL1PtCutFactor")),
140  m_cutsVPSet(ps.getUntrackedParameter<std::vector<edm::ParameterSet>>("cuts")),
141  m_MuonInputTag(consumes<reco::MuonCollection>(ps.getUntrackedParameter<InputTag>("muonInputTag"))),
142  m_GmtInputTag(consumes<l1t::MuonBxCollection>(ps.getUntrackedParameter<InputTag>("gmtInputTag"))),
143  m_VtxInputTag(consumes<VertexCollection>(ps.getUntrackedParameter<InputTag>("vtxInputTag"))),
144  m_BsInputTag(consumes<BeamSpot>(ps.getUntrackedParameter<InputTag>("bsInputTag"))),
145  m_trigInputTag(consumes<trigger::TriggerEvent>(ps.getUntrackedParameter<InputTag>("trigInputTag"))),
146  m_trigProcess(ps.getUntrackedParameter<string>("trigProcess")),
147  m_trigProcess_token(consumes<edm::TriggerResults>(ps.getUntrackedParameter<InputTag>("trigProcess_token"))),
148  m_trigNames(ps.getUntrackedParameter<vector<string>>("triggerNames")),
149  m_effVsPtBins(ps.getUntrackedParameter<std::vector<double>>("efficiencyVsPtBins")),
150  m_effVsPhiBins(ps.getUntrackedParameter<std::vector<double>>("efficiencyVsPhiBins")),
151  m_effVsEtaBins(ps.getUntrackedParameter<std::vector<double>>("efficiencyVsEtaBins")),
152  m_effVsVtxBins(ps.getUntrackedParameter<std::vector<double>>("efficiencyVsVtxBins")),
153  m_useAtVtxCoord(ps.getUntrackedParameter<bool>("useL1AtVtxCoord")),
154  m_maxGmtMuonDR(0.3),
155  m_minTagProbeDR(0.5),
156  m_maxHltMuonDR(0.1) {
157  if (m_verbose)
158  cout << "[L1TMuonDQMOffline:] ____________ Storage initialization ____________ " << endl;
159 
160  for (const auto& cutsPSet : m_cutsVPSet) {
161  const auto qCut = cutsPSet.getUntrackedParameter<int>("qualCut");
162  QualLevel qLevel = kQualAll;
163  if (qCut > 11) {
164  qLevel = kQualSingle;
165  } else if (qCut > 7) {
166  qLevel = kQualDouble;
167  } else if (qCut > 3) {
168  qLevel = kQualOpen;
169  }
170  m_cuts.emplace_back(std::make_pair(cutsPSet.getUntrackedParameter<int>("ptCut"), qLevel));
171  }
172 }

References kEffEta, kEffPhi, kEffPt, and kEffVtx.

◆ ~L1TMuonDQMOffline()

L1TMuonDQMOffline::~L1TMuonDQMOffline ( )
override

Definition at line 175 of file L1TMuonDQMOffline.cc.

175 {}

Member Function Documentation

◆ analyze()

void L1TMuonDQMOffline::analyze ( const edm::Event e,
const edm::EventSetup c 
)
overrideprotectedvirtual

Reimplemented from DQMEDAnalyzer.

Definition at line 213 of file L1TMuonDQMOffline.cc.

213  {
215  iEvent.getByToken(m_MuonInputTag, muons);
217  iEvent.getByToken(m_BsInputTag, beamSpot);
219  iEvent.getByToken(m_VtxInputTag, vertex);
221  iEvent.getByToken(m_GmtInputTag, gmtCands);
222  Handle<edm::TriggerResults> trigResults;
223  iEvent.getByToken(m_trigProcess_token, trigResults);
225  iEvent.getByToken(m_trigInputTag, trigEvent);
226 
227  const auto nVtx = getNVertices(vertex);
229 
231  getProbeMuons(trigResults, trigEvent); // CB add flag to run on orthogonal datasets (no T&P)
232 
233  getMuonGmtPairs(gmtCands);
234 
235  if (m_verbose)
236  cout << "[L1TMuonDQMOffline:] Computing efficiencies" << endl;
237 
238  vector<MuonGmtPair>::const_iterator muonGmtPairsIt = m_MuonGmtPairs.begin();
239  vector<MuonGmtPair>::const_iterator muonGmtPairsEnd = m_MuonGmtPairs.end();
240 
241  // To fill once for global eta and once for TF eta region of the L1T muon.
242  // The second entry is a placeholder and will be replaced by the TF eta region of the L1T muon.
243  std::array<EtaRegion, 2> regsToFill{{kEtaRegionAll, kEtaRegionAll}};
244 
245  for (; muonGmtPairsIt != muonGmtPairsEnd; ++muonGmtPairsIt) {
246  // Fill the resolution histograms
247  if ((muonGmtPairsIt->etaRegion() != kEtaRegionOut) && (muonGmtPairsIt->gmtPt() > 0)) {
248  regsToFill[1] = muonGmtPairsIt->etaRegion();
250  for (const auto var : m_resTypes) {
251  const auto varToFill = muonGmtPairsIt->getDeltaVar(var);
252  std::get<0>(histoKeyRes) = var;
253  // Fill for the global eta and for TF eta region that the probe muon is in
254  for (const auto regToFill : regsToFill) {
255  std::get<1>(histoKeyRes) = regToFill;
256  for (const auto qualLevel : m_qualLevelsRes) {
257  // This assumes that the qualLevel enum has increasing qualities
258  // HW quality levels can be 0, 4, 8, or 12
259  int qualCut = qualLevel * 4;
260  if (muonGmtPairsIt->gmtQual() >= qualCut) {
261  std::get<2>(histoKeyRes) = qualLevel;
262  m_ResolutionHistos[histoKeyRes]->Fill(varToFill);
263  }
264  }
265  }
266  }
267  }
268 
269  // Fill the efficiency numerator and denominator histograms
270  if (muonGmtPairsIt->etaRegion() != kEtaRegionOut) {
271  unsigned int cutsCounter = 0;
272  for (const auto& cut : m_cuts) {
273  const auto gmtPtCut = cut.first;
274  const auto qualLevel = cut.second;
275  const bool gmtAboveCut = (muonGmtPairsIt->gmtPt() > gmtPtCut);
276 
277  // default keys
278  m_histoKeyEffDenVarType histoKeyEffDenVar = {kEffPt, gmtPtCut, kEtaRegionAll};
279  m_histoKeyEffNumVarType histoKeyEffNumVar = {kEffPt, gmtPtCut, kEtaRegionAll, qualLevel};
280 
281  regsToFill[1] = muonGmtPairsIt->etaRegion();
282  for (const auto var : m_effTypes) {
283  if (var != kEffPt) {
284  if (muonGmtPairsIt->pt() < m_recoToL1PtCutFactor * gmtPtCut)
285  break; // efficiency at plateau
286  }
287  double varToFill;
288  if (var == kEffVtx) {
289  varToFill = static_cast<double>(nVtx);
290  } else {
291  varToFill = muonGmtPairsIt->getVar(var);
292  }
293  // Fill denominators
294  if (var == kEffEta) {
295  m_EfficiencyDenEtaHistos[gmtPtCut]->Fill(varToFill);
296  } else {
297  std::get<0>(histoKeyEffDenVar) = var;
298  // Fill for the global eta and for TF eta region that the probe muon is in
299  for (const auto regToFill : regsToFill) {
300  if (var == kEffPt) {
301  if (cutsCounter == 0) {
302  m_EfficiencyDenPtHistos[regToFill]->Fill(varToFill);
303  }
304  } else {
305  std::get<2>(histoKeyEffDenVar) = regToFill;
306  m_EfficiencyDenVarHistos[histoKeyEffDenVar]->Fill(varToFill);
307  }
308  }
309  }
310  // Fill numerators
311  std::get<0>(histoKeyEffNumVar) = var;
312  // This assumes that the qualLevel enum has increasing qualities
313  if (gmtAboveCut && muonGmtPairsIt->gmtQual() >= qualLevel * 4) {
314  if (var == kEffEta) {
315  m_histoKeyEffNumEtaType histoKeyEffNumEta = {gmtPtCut, qualLevel};
316  m_EfficiencyNumEtaHistos[histoKeyEffNumEta]->Fill(varToFill);
317  } else {
318  std::get<3>(histoKeyEffNumVar) = qualLevel;
319  // Fill for the global eta and for TF eta region that the probe muon is in
320  for (const auto regToFill : regsToFill) {
321  std::get<2>(histoKeyEffNumVar) = regToFill;
322  m_EfficiencyNumVarHistos[histoKeyEffNumVar]->Fill(varToFill);
323  }
324  }
325  }
326  }
327  ++cutsCounter;
328  }
329  }
330  }
331 
332  if (m_verbose)
333  cout << "[L1TMuonDQMOffline:] Computation finished" << endl;
334 }

References pwdgSkimBPark_cfi::beamSpot, gather_cfg::cout, TkAlMuonSelectors_cfi::cut, getMuonGmtPairs(), getNVertices(), getPrimaryVertex(), getProbeMuons(), getTightMuons(), iEvent, kEffEta, kEffPt, kEffVtx, kEtaRegionAll, kEtaRegionOut, kQualAll, kResPt, m_BsInputTag, m_cuts, m_EfficiencyDenEtaHistos, m_EfficiencyDenPtHistos, m_EfficiencyDenVarHistos, m_EfficiencyNumEtaHistos, m_EfficiencyNumVarHistos, m_effTypes, m_GmtInputTag, m_MuonGmtPairs, m_MuonInputTag, m_qualLevelsRes, m_recoToL1PtCutFactor, m_ResolutionHistos, m_resTypes, m_trigInputTag, m_trigProcess_token, m_verbose, m_VtxInputTag, PDWG_BPHSkim_cff::muons, BeamMonitor_cff::primaryVertex, L1TMuonDQMOffline_cfi::qualCut, B2GTnPMonitor_cfi::trigEvent, trigObjTnPSource_cfi::var, and bphysicsOniaDQM_cfi::vertex.

◆ bookControlHistos()

void L1TMuonDQMOffline::bookControlHistos ( DQMStore::IBooker ibooker)
protectedvirtual

Definition at line 337 of file L1TMuonDQMOffline.cc.

337  {
338  if (m_verbose)
339  cout << "[L1TMuonDQMOffline:] Booking Control Plot Histos" << endl;
340 
341  ibooker.setCurrentFolder(m_HistFolder + "/control_variables");
342 
343  m_ControlHistos[kCtrlMuonGmtDeltaR] = ibooker.book1D("MuonGmtDeltaR", "MuonGmtDeltaR; #DeltaR", 50, 0., 0.5);
345  ibooker.book2D("NTightVsAll", "NTightVsAll; # muons; # tight muons", 20, -0.5, 19.5, 16, -0.5, 15.5);
347  ibooker.book2D("NProbesVsTight", "NProbesVsTight; # tight muons; # probe muons", 8, -0.5, 7.5, 8, -0.5, 7.5);
348 
349  m_ControlHistos[kCtrlTagPt] = ibooker.book1D("TagMuonPt", "TagMuonPt; p_{T}", 50, 0., 100.);
350  m_ControlHistos[kCtrlTagPhi] = ibooker.book1D("TagMuonPhi", "TagMuonPhi; #phi", 66, -3.3, 3.3);
351  m_ControlHistos[kCtrlTagEta] = ibooker.book1D("TagMuonEta", "TagMuonEta; #eta", 50, -2.5, 2.5);
352 
353  m_ControlHistos[kCtrlProbePt] = ibooker.book1D("ProbeMuonPt", "ProbeMuonPt; p_{T}", 50, 0., 100.);
354  m_ControlHistos[kCtrlProbePhi] = ibooker.book1D("ProbeMuonPhi", "ProbeMuonPhi; #phi", 66, -3.3, 3.3);
355  m_ControlHistos[kCtrlProbeEta] = ibooker.book1D("ProbeMuonEta", "ProbeMuonEta; #eta", 50, -2.5, 2.5);
356 
358  ibooker.book1D("TagMuonProbeMuonDeltaR", "TagMuonProbeMuonDeltaR; #DeltaR", 50, 0., 5.0);
359  m_ControlHistos[kCtrlTagHltDr] = ibooker.book1D("TagMuonHltDeltaR", "TagMuonHltDeltaR;#DeltaR", 55, 0., 0.11);
360 }

References dqm::implementation::IBooker::book1D(), dqm::implementation::IBooker::book2D(), gather_cfg::cout, kCtrlMuonGmtDeltaR, kCtrlNProbesVsTight, kCtrlNTightVsAll, kCtrlProbeEta, kCtrlProbePhi, kCtrlProbePt, kCtrlTagEta, kCtrlTagHltDr, kCtrlTagPhi, kCtrlTagProbeDr, kCtrlTagPt, m_ControlHistos, m_HistFolder, m_verbose, and dqm::implementation::NavigatorBase::setCurrentFolder().

Referenced by bookHistograms().

◆ bookEfficiencyHistos()

void L1TMuonDQMOffline::bookEfficiencyHistos ( DQMStore::IBooker ibooker)
protectedvirtual

Definition at line 363 of file L1TMuonDQMOffline.cc.

363  {
364  ibooker.setCurrentFolder(m_HistFolder + "/numerators_and_denominators");
365 
366  for (const auto var : m_effTypes) {
367  auto histBins = getHistBinsEff(var);
368  // histograms for eta variable get a special treatment
369  if (var == kEffEta) {
370  for (const auto& cut : m_cuts) {
371  const auto gmtPtCut = cut.first;
372  const auto qualLevel = cut.second;
373  std::string name = "effDen_" + m_effStrings[var] + "_" + std::to_string(gmtPtCut);
374  m_EfficiencyDenEtaHistos[gmtPtCut] =
375  ibooker.book1D(name, name + ";" + m_effLabelStrings[var], histBins.size() - 1, &histBins[0]);
376  name = "effNum_" + m_effStrings[var] + "_" + std::to_string(gmtPtCut) + "_" + m_qualStrings[qualLevel];
377  m_histoKeyEffNumEtaType histoKeyEffNumEta = {gmtPtCut, qualLevel};
378  m_EfficiencyNumEtaHistos[histoKeyEffNumEta] =
379  ibooker.book1D(name, name + ";" + m_effLabelStrings[var], histBins.size() - 1, &histBins[0]);
380  }
381  } else {
382  for (const auto etaReg : m_etaRegions) {
383  // denominator histograms for pt variable get a special treatment
384  if (var == kEffPt) {
385  std::string name = "effDen_" + m_effStrings[var] + "_" + m_etaStrings[etaReg];
386  m_EfficiencyDenPtHistos[etaReg] =
387  ibooker.book1D(name, name + ";" + m_effLabelStrings[var], histBins.size() - 1, &histBins[0]);
388  } else {
389  for (const auto& cut : m_cuts) {
390  const int gmtPtCut = cut.first;
391  std::string name =
392  "effDen_" + m_effStrings[var] + "_" + std::to_string(gmtPtCut) + "_" + m_etaStrings[etaReg];
393  m_histoKeyEffDenVarType histoKeyEffDenVar = {var, gmtPtCut, etaReg};
394  m_EfficiencyDenVarHistos[histoKeyEffDenVar] =
395  ibooker.book1D(name, name + ";" + m_effLabelStrings[var], histBins.size() - 1, &histBins[0]);
396  }
397  }
398  for (const auto& cut : m_cuts) {
399  const auto gmtPtCut = cut.first;
400  const auto qualLevel = cut.second;
401  std::string name = "effNum_" + m_effStrings[var] + "_" + std::to_string(gmtPtCut) + "_" +
402  m_etaStrings[etaReg] + "_" + m_qualStrings[qualLevel];
403  m_histoKeyEffNumVarType histoKeyEffNum = {var, gmtPtCut, etaReg, qualLevel};
404  m_EfficiencyNumVarHistos[histoKeyEffNum] =
405  ibooker.book1D(name, name + ";" + m_effLabelStrings[var], histBins.size() - 1, &histBins[0]);
406  }
407  }
408  }
409  }
410 }

References dqm::implementation::IBooker::book1D(), TkAlMuonSelectors_cfi::cut, getHistBinsEff(), kEffEta, kEffPt, m_cuts, m_EfficiencyDenEtaHistos, m_EfficiencyDenPtHistos, m_EfficiencyDenVarHistos, m_EfficiencyNumEtaHistos, m_EfficiencyNumVarHistos, m_effLabelStrings, m_effStrings, m_effTypes, m_etaRegions, m_etaStrings, m_HistFolder, m_qualStrings, Skims_PA_cff::name, dqm::implementation::NavigatorBase::setCurrentFolder(), AlCaHLTBitMon_QueryRunRegistry::string, and trigObjTnPSource_cfi::var.

Referenced by bookHistograms().

◆ bookHistograms()

void L1TMuonDQMOffline::bookHistograms ( DQMStore::IBooker ibooker,
const edm::Run run,
const edm::EventSetup iSetup 
)
overrideprotectedvirtual

Implements DQMEDAnalyzer.

Definition at line 186 of file L1TMuonDQMOffline.cc.

186  {
187  //book histos
188  bookControlHistos(ibooker);
189  bookEfficiencyHistos(ibooker);
190  bookResolutionHistos(ibooker);
191 
192  vector<string>::const_iterator trigNamesIt = m_trigNames.begin();
193  vector<string>::const_iterator trigNamesEnd = m_trigNames.end();
194 
195  for (; trigNamesIt != trigNamesEnd; ++trigNamesIt) {
196  TString tNameTmp = TString(*trigNamesIt); // use TString as it handles regex
197  TRegexp tNamePattern = TRegexp(tNameTmp, true);
198  int tIndex = -1;
199 
200  for (unsigned ipath = 0; ipath < m_hltConfig.size(); ++ipath) {
201  TString tmpName = TString(m_hltConfig.triggerName(ipath));
202  if (tmpName.Contains(tNamePattern)) {
203  tIndex = int(ipath);
204  m_trigIndices.push_back(tIndex);
205  }
206  }
207  if (tIndex < 0 && m_verbose)
208  cout << "[L1TMuonDQMOffline:] Warning: Could not find trigger " << (*trigNamesIt) << endl;
209  }
210 }

References bookControlHistos(), bookEfficiencyHistos(), bookResolutionHistos(), gather_cfg::cout, createfilelist::int, m_hltConfig, m_trigIndices, m_trigNames, m_verbose, HLTConfigProvider::size(), and HLTConfigProvider::triggerName().

◆ bookResolutionHistos()

void L1TMuonDQMOffline::bookResolutionHistos ( DQMStore::IBooker ibooker)
protectedvirtual

Definition at line 412 of file L1TMuonDQMOffline.cc.

412  {
413  if (m_verbose)
414  cout << "[L1TMuonOffline:] Booking Resolution Plot Histos" << endl;
415  ibooker.setCurrentFolder(m_HistFolder + "/resolution");
416 
417  for (const auto var : m_resTypes) {
418  auto nbins = std::get<0>(getHistBinsRes(var));
419  auto xmin = std::get<1>(getHistBinsRes(var));
420  auto xmax = std::get<2>(getHistBinsRes(var));
421  for (const auto etaReg : m_etaRegions) {
422  for (const auto qualLevel : m_qualLevelsRes) {
423  m_histoKeyResType histoKeyRes = {var, etaReg, qualLevel};
424  std::string name =
425  "resolution_" + m_resStrings[var] + "_" + m_etaStrings[etaReg] + "_" + m_qualStrings[qualLevel];
426  m_ResolutionHistos[histoKeyRes] = ibooker.book1D(name, name + ";" + m_resLabelStrings[var], nbins, xmin, xmax);
427  }
428  }
429  }
430 }

References dqm::implementation::IBooker::book1D(), gather_cfg::cout, getHistBinsRes(), m_etaRegions, m_etaStrings, m_HistFolder, m_qualLevelsRes, m_qualStrings, m_resLabelStrings, m_ResolutionHistos, m_resStrings, m_resTypes, m_verbose, Skims_PA_cff::name, LaserClient_cfi::nbins, dqm::implementation::NavigatorBase::setCurrentFolder(), AlCaHLTBitMon_QueryRunRegistry::string, trigObjTnPSource_cfi::var, TrackerOfflineValidation_Dqm_cff::xmax, and TrackerOfflineValidation_Dqm_cff::xmin.

Referenced by bookHistograms().

◆ dqmBeginRun()

void L1TMuonDQMOffline::dqmBeginRun ( const edm::Run run,
const edm::EventSetup iSetup 
)
overrideprotectedvirtual

Reimplemented from DQMEDAnalyzer.

Definition at line 177 of file L1TMuonDQMOffline.cc.

177  {
178  if (m_verbose)
179  cout << "[L1TMuonDQMOffline:] Called beginRun." << endl;
180  bool changed = true;
181  m_hltConfig.init(run, iSetup, m_trigProcess, changed);
182  m_propagator.init(iSetup);
183 }

References gather_cfg::cout, PropagateToMuon::init(), HLTConfigProvider::init(), m_hltConfig, m_propagator, m_trigProcess, m_verbose, and writedatasetfile::run.

◆ getHistBinsEff()

std::vector< float > L1TMuonDQMOffline::getHistBinsEff ( EffType  eff)
private

Definition at line 617 of file L1TMuonDQMOffline.cc.

617  {
618  if (eff == kEffPt) {
619  std::vector<float> effVsPtBins(m_effVsPtBins.begin(), m_effVsPtBins.end());
620  return effVsPtBins;
621  }
622  if (eff == kEffPhi) {
623  std::vector<float> effVsPhiBins(m_effVsPhiBins.begin(), m_effVsPhiBins.end());
624  return effVsPhiBins;
625  }
626  if (eff == kEffEta) {
627  std::vector<float> effVsEtaBins(m_effVsEtaBins.begin(), m_effVsEtaBins.end());
628  return effVsEtaBins;
629  }
630  if (eff == kEffVtx) {
631  std::vector<float> effVsVtxBins(m_effVsVtxBins.begin(), m_effVsVtxBins.end());
632  return effVsVtxBins;
633  }
634  return {0., 1.};
635 }

References L1TMuonDQMOffline_cfi::effVsEtaBins, L1TMuonDQMOffline_cfi::effVsPhiBins, L1TMuonDQMOffline_cfi::effVsPtBins, L1TMuonDQMOffline_cfi::effVsVtxBins, kEffEta, kEffPhi, kEffPt, kEffVtx, m_effVsEtaBins, m_effVsPhiBins, m_effVsPtBins, and m_effVsVtxBins.

Referenced by bookEfficiencyHistos().

◆ getHistBinsRes()

std::tuple< int, double, double > L1TMuonDQMOffline::getHistBinsRes ( ResType  res)
private

Definition at line 637 of file L1TMuonDQMOffline.cc.

637  {
638  if (res == kResPt)
639  return {50, -2., 2.};
640  if (res == kRes1OverPt)
641  return {50, -2., 2.};
642  if (res == kResQOverPt)
643  return {50, -2., 2.};
644  if (res == kResPhi)
645  return {96, -0.2, 0.2};
646  if (res == kResEta)
647  return {100, -0.1, 0.1};
648  if (res == kResCh)
649  return {5, -2, 3};
650  return {1, 0, 1};
651 }

References kRes1OverPt, kResCh, kResEta, kResPhi, kResPt, and kResQOverPt.

Referenced by bookResolutionHistos().

◆ getMuonGmtPairs()

void L1TMuonDQMOffline::getMuonGmtPairs ( edm::Handle< l1t::MuonBxCollection > &  gmtCands)
private

Definition at line 555 of file L1TMuonDQMOffline.cc.

555  {
556  m_MuonGmtPairs.clear();
557  if (m_verbose)
558  cout << "[L1TMuonDQMOffline:] Getting muon GMT pairs" << endl;
559 
560  vector<const reco::Muon*>::const_iterator probeMuIt = m_ProbeMuons.begin();
561  vector<const reco::Muon*>::const_iterator probeMuEnd = m_ProbeMuons.end();
562 
564  l1t::MuonBxCollection::const_iterator gmtEnd = gmtCands->end(0);
565 
566  for (; probeMuIt != probeMuEnd; ++probeMuIt) {
567  MuonGmtPair pairBestCand((*probeMuIt), nullptr, m_propagator, m_useAtVtxCoord);
568 
569  // Fill the control histograms with the probe muon kinematic variables used
570  m_ControlHistos[kCtrlProbeEta]->Fill(pairBestCand.getVar(L1TMuonDQMOffline::kEffEta));
571  m_ControlHistos[kCtrlProbePhi]->Fill(pairBestCand.getVar(L1TMuonDQMOffline::kEffPhi));
572  m_ControlHistos[kCtrlProbePt]->Fill(pairBestCand.getVar(L1TMuonDQMOffline::kEffPt));
573 
574  gmtIt = gmtCands->begin(0); // use only on L1T muons from BX 0
575 
576  for (; gmtIt != gmtEnd; ++gmtIt) {
577  MuonGmtPair pairTmpCand((*probeMuIt), &(*gmtIt), m_propagator, m_useAtVtxCoord);
578 
579  if ((pairTmpCand.dR() < m_maxGmtMuonDR) && (pairTmpCand.dR() < pairBestCand.dR())) {
580  pairBestCand = pairTmpCand;
581  }
582  }
583  m_MuonGmtPairs.push_back(pairBestCand);
584  m_ControlHistos[kCtrlMuonGmtDeltaR]->Fill(pairBestCand.dR());
585  }
586 }

References BXVector< T >::begin(), gather_cfg::cout, MuonGmtPair::dR(), BXVector< T >::end(), MuonGmtPair::getVar(), kCtrlMuonGmtDeltaR, kCtrlProbeEta, kCtrlProbePhi, kCtrlProbePt, kEffEta, kEffPhi, kEffPt, m_ControlHistos, m_maxGmtMuonDR, m_MuonGmtPairs, m_ProbeMuons, m_propagator, m_useAtVtxCoord, and m_verbose.

Referenced by analyze().

◆ getNVertices()

const unsigned int L1TMuonDQMOffline::getNVertices ( edm::Handle< reco::VertexCollection > &  vertex)
private

Definition at line 433 of file L1TMuonDQMOffline.cc.

433  {
434  unsigned int nVtx = 0;
435 
436  if (vertex.isValid()) {
437  for (const auto& vertexIt : *vertex) {
438  if (vertexIt.isValid() && !vertexIt.isFake()) {
439  ++nVtx;
440  }
441  }
442  }
443  return nVtx;
444 }

References bphysicsOniaDQM_cfi::vertex.

Referenced by analyze().

◆ getPrimaryVertex()

const reco::Vertex L1TMuonDQMOffline::getPrimaryVertex ( edm::Handle< reco::VertexCollection > &  vertex,
edm::Handle< reco::BeamSpot > &  beamSpot 
)
private

Definition at line 447 of file L1TMuonDQMOffline.cc.

447  {
448  Vertex::Point posVtx;
449  Vertex::Error errVtx;
450 
451  bool hasPrimaryVertex = false;
452 
453  if (vertex.isValid()) {
454  vector<Vertex>::const_iterator vertexIt = vertex->begin();
455  vector<Vertex>::const_iterator vertexEnd = vertex->end();
456 
457  for (; vertexIt != vertexEnd; ++vertexIt) {
458  if (vertexIt->isValid() && !vertexIt->isFake()) {
459  posVtx = vertexIt->position();
460  errVtx = vertexIt->error();
461  hasPrimaryVertex = true;
462  break;
463  }
464  }
465  }
466 
467  if (!hasPrimaryVertex) {
468  posVtx = beamSpot->position();
469  errVtx(0, 0) = beamSpot->BeamWidthX();
470  errVtx(1, 1) = beamSpot->BeamWidthY();
471  errVtx(2, 2) = beamSpot->sigmaZ();
472  }
473  const Vertex primaryVertex(posVtx, errVtx);
474  return primaryVertex;
475 }

References pwdgSkimBPark_cfi::beamSpot, BeamMonitor_cff::primaryVertex, and bphysicsOniaDQM_cfi::vertex.

Referenced by analyze().

◆ getProbeMuons()

void L1TMuonDQMOffline::getProbeMuons ( edm::Handle< edm::TriggerResults > &  trigResults,
edm::Handle< trigger::TriggerEvent > &  trigEvent 
)
private

Definition at line 494 of file L1TMuonDQMOffline.cc.

495  {
496  if (m_verbose)
497  cout << "[L1TMuonDQMOffline:] getting probe muons" << endl;
498  m_ProbeMuons.clear();
499  std::vector<const reco::Muon*> tagMuonsInHist;
500 
501  tagMuonsInHist.clear();
502 
503  vector<const reco::Muon*>::const_iterator probeCandIt = m_TightMuons.begin();
504  vector<const reco::Muon*>::const_iterator tightMuonsEnd = m_TightMuons.end();
505 
506  for (; probeCandIt != tightMuonsEnd; ++probeCandIt) {
507  bool isProbe = false;
508  vector<const reco::Muon*>::const_iterator tagCandIt = m_TightMuons.begin();
509  float deltar = 0.;
510 
511  for (; tagCandIt != tightMuonsEnd; ++tagCandIt) {
512  bool tagMuonAlreadyInHist = false;
513  bool tagHasTrig = false;
514  float eta = (*tagCandIt)->eta();
515  float phi = (*tagCandIt)->phi();
516  float pt = (*tagCandIt)->pt();
517  float dEta = eta - (*probeCandIt)->eta();
518  float dPhi = phi - (*probeCandIt)->phi();
519  deltar = sqrt(dEta * dEta + dPhi * dPhi);
520 
521  if ((*tagCandIt) == (*probeCandIt) || deltar < m_minTagProbeDR)
522  continue; // CB has a little bias for closed-by muons
523  auto matchHltDeltaR = matchHlt(trigEvent, (*tagCandIt));
524  tagHasTrig = (matchHltDeltaR < m_maxHltMuonDR) && (pt > m_TagPtCut);
525  isProbe |= tagHasTrig;
526  if (tagHasTrig) {
527  if (std::distance(m_TightMuons.begin(), m_TightMuons.end()) > 2) {
528  for (vector<const reco::Muon*>::const_iterator tagMuonsInHistIt = tagMuonsInHist.begin();
529  tagMuonsInHistIt != tagMuonsInHist.end();
530  ++tagMuonsInHistIt) {
531  if ((*tagCandIt) == (*tagMuonsInHistIt)) {
532  tagMuonAlreadyInHist = true;
533  break;
534  }
535  }
536  if (tagMuonAlreadyInHist == false)
537  tagMuonsInHist.push_back((*tagCandIt));
538  }
539  if (tagMuonAlreadyInHist == false) {
542  m_ControlHistos[kCtrlTagPt]->Fill(pt);
544  m_ControlHistos[kCtrlTagHltDr]->Fill(matchHltDeltaR);
545  }
546  }
547  }
548  if (isProbe)
549  m_ProbeMuons.push_back((*probeCandIt));
550  }
552 }

References gather_cfg::cout, HLT_2018_cff::dEta, HLT_2018_cff::distance, HLT_2018_cff::dPhi, PVValHelper::eta, kCtrlNProbesVsTight, kCtrlTagEta, kCtrlTagHltDr, kCtrlTagPhi, kCtrlTagProbeDr, kCtrlTagPt, m_ControlHistos, m_maxHltMuonDR, m_minTagProbeDR, m_ProbeMuons, m_TagPtCut, m_TightMuons, m_verbose, matchHlt(), phi, DiDispStaMuonMonitor_cfi::pt, mathSSE::sqrt(), and B2GTnPMonitor_cfi::trigEvent.

Referenced by analyze().

◆ getTightMuons()

void L1TMuonDQMOffline::getTightMuons ( edm::Handle< reco::MuonCollection > &  muons,
const reco::Vertex vertex 
)
private

Definition at line 478 of file L1TMuonDQMOffline.cc.

478  {
479  if (m_verbose)
480  cout << "[L1TMuonDQMOffline:] Getting tight muons" << endl;
481  m_TightMuons.clear();
482  MuonCollection::const_iterator muonIt = muons->begin();
483  MuonCollection::const_iterator muonEnd = muons->end();
484 
485  for (; muonIt != muonEnd; ++muonIt) {
486  if (muon::isTightMuon((*muonIt), vertex)) {
487  m_TightMuons.push_back(&(*muonIt));
488  }
489  }
490  m_ControlHistos[kCtrlNTightVsAll]->Fill(muons->size(), m_TightMuons.size());
491 }

References gather_cfg::cout, muon::isTightMuon(), kCtrlNTightVsAll, m_ControlHistos, m_TightMuons, m_verbose, PDWG_BPHSkim_cff::muons, and bphysicsOniaDQM_cfi::vertex.

Referenced by analyze().

◆ matchHlt()

double L1TMuonDQMOffline::matchHlt ( edm::Handle< trigger::TriggerEvent > &  triggerEvent,
const reco::Muon mu 
)
private

Definition at line 589 of file L1TMuonDQMOffline.cc.

589  {
590  double matchDeltaR = 9999;
591 
593 
594  vector<int>::const_iterator trigIndexIt = m_trigIndices.begin();
595  vector<int>::const_iterator trigIndexEnd = m_trigIndices.end();
596 
597  for (; trigIndexIt != trigIndexEnd; ++trigIndexIt) {
598  const vector<string> moduleLabels(m_hltConfig.moduleLabels(*trigIndexIt));
599  const unsigned moduleIndex = m_hltConfig.size((*trigIndexIt)) - 2;
600  const unsigned hltFilterIndex = triggerEvent->filterIndex(InputTag(moduleLabels[moduleIndex], "", m_trigProcess));
601 
602  if (hltFilterIndex < triggerEvent->sizeFilters()) {
603  const Keys triggerKeys(triggerEvent->filterKeys(hltFilterIndex));
604  const Vids triggerVids(triggerEvent->filterIds(hltFilterIndex));
605  const unsigned nTriggers = triggerVids.size();
606  for (size_t iTrig = 0; iTrig < nTriggers; ++iTrig) {
607  const TriggerObject trigObject = trigObjs[triggerKeys[iTrig]];
608  double dRtmp = deltaR((*mu), trigObject);
609  if (dRtmp < matchDeltaR)
610  matchDeltaR = dRtmp;
611  }
612  }
613  }
614  return matchDeltaR;
615 }

References PbPb_ZMuSkimMuonDPG_cff::deltaR, HLT_2018_cff::InputTag, m_hltConfig, m_trigIndices, m_trigProcess, HLTConfigProvider::moduleLabels(), amptDefaultParameters_cff::mu, HLTConfigProvider::size(), PDWG_DiPhoton_SD_cff::triggerEvent, and TriggerAnalyzer::trigObjs.

Referenced by getProbeMuons().

Member Data Documentation

◆ m_BsInputTag

edm::EDGetTokenT<reco::BeamSpot> L1TMuonDQMOffline::m_BsInputTag
private

Definition at line 164 of file L1TMuonDQMOffline.h.

Referenced by analyze().

◆ m_ControlHistos

std::map<Control, MonitorElement*> L1TMuonDQMOffline::m_ControlHistos
private

◆ m_cuts

std::vector<std::pair<int, QualLevel> > L1TMuonDQMOffline::m_cuts
private

Definition at line 139 of file L1TMuonDQMOffline.h.

Referenced by analyze(), and bookEfficiencyHistos().

◆ m_cutsVPSet

std::vector<edm::ParameterSet> L1TMuonDQMOffline::m_cutsVPSet
private

Definition at line 160 of file L1TMuonDQMOffline.h.

◆ m_EfficiencyDenEtaHistos

std::map<int, MonitorElement*> L1TMuonDQMOffline::m_EfficiencyDenEtaHistos
private

Definition at line 125 of file L1TMuonDQMOffline.h.

Referenced by analyze(), and bookEfficiencyHistos().

◆ m_EfficiencyDenPtHistos

std::map<EtaRegion, MonitorElement*> L1TMuonDQMOffline::m_EfficiencyDenPtHistos
private

Definition at line 124 of file L1TMuonDQMOffline.h.

Referenced by analyze(), and bookEfficiencyHistos().

◆ m_EfficiencyDenVarHistos

std::map<std::tuple<EffType, int, EtaRegion>, MonitorElement*> L1TMuonDQMOffline::m_EfficiencyDenVarHistos
private

Definition at line 123 of file L1TMuonDQMOffline.h.

Referenced by analyze(), and bookEfficiencyHistos().

◆ m_EfficiencyNumEtaHistos

std::map<std::pair<int, QualLevel>, MonitorElement*> L1TMuonDQMOffline::m_EfficiencyNumEtaHistos
private

Definition at line 122 of file L1TMuonDQMOffline.h.

Referenced by analyze(), and bookEfficiencyHistos().

◆ m_EfficiencyNumVarHistos

std::map<std::tuple<EffType, int, EtaRegion, QualLevel>, MonitorElement*> L1TMuonDQMOffline::m_EfficiencyNumVarHistos
private

Definition at line 121 of file L1TMuonDQMOffline.h.

Referenced by analyze(), and bookEfficiencyHistos().

◆ m_effLabelStrings

std::map<EffType, std::string> L1TMuonDQMOffline::m_effLabelStrings
private

Definition at line 149 of file L1TMuonDQMOffline.h.

Referenced by bookEfficiencyHistos().

◆ m_effStrings

std::map<EffType, std::string> L1TMuonDQMOffline::m_effStrings
private

Definition at line 148 of file L1TMuonDQMOffline.h.

Referenced by bookEfficiencyHistos().

◆ m_effTypes

const std::vector<EffType> L1TMuonDQMOffline::m_effTypes
private

Definition at line 142 of file L1TMuonDQMOffline.h.

Referenced by analyze(), and bookEfficiencyHistos().

◆ m_effVsEtaBins

std::vector<double> L1TMuonDQMOffline::m_effVsEtaBins
private

Definition at line 172 of file L1TMuonDQMOffline.h.

Referenced by getHistBinsEff().

◆ m_effVsPhiBins

std::vector<double> L1TMuonDQMOffline::m_effVsPhiBins
private

Definition at line 171 of file L1TMuonDQMOffline.h.

Referenced by getHistBinsEff().

◆ m_effVsPtBins

std::vector<double> L1TMuonDQMOffline::m_effVsPtBins
private

Definition at line 170 of file L1TMuonDQMOffline.h.

Referenced by getHistBinsEff().

◆ m_effVsVtxBins

std::vector<double> L1TMuonDQMOffline::m_effVsVtxBins
private

Definition at line 173 of file L1TMuonDQMOffline.h.

Referenced by getHistBinsEff().

◆ m_etaRegions

const std::vector<EtaRegion> L1TMuonDQMOffline::m_etaRegions
private

Definition at line 144 of file L1TMuonDQMOffline.h.

Referenced by bookEfficiencyHistos(), and bookResolutionHistos().

◆ m_etaStrings

std::map<EtaRegion, std::string> L1TMuonDQMOffline::m_etaStrings
private

Definition at line 152 of file L1TMuonDQMOffline.h.

Referenced by bookEfficiencyHistos(), and bookResolutionHistos().

◆ m_GmtInputTag

edm::EDGetTokenT<l1t::MuonBxCollection> L1TMuonDQMOffline::m_GmtInputTag
private

Definition at line 162 of file L1TMuonDQMOffline.h.

Referenced by analyze().

◆ m_HistFolder

std::string L1TMuonDQMOffline::m_HistFolder
private

◆ m_hltConfig

HLTConfigProvider L1TMuonDQMOffline::m_hltConfig
private

Definition at line 105 of file L1TMuonDQMOffline.h.

Referenced by bookHistograms(), dqmBeginRun(), and matchHlt().

◆ m_L1tL1tMuons

BXVector<l1t::Muon> L1TMuonDQMOffline::m_L1tL1tMuons
private

Definition at line 137 of file L1TMuonDQMOffline.h.

◆ m_L1tMuons

std::vector<l1t::MuonBxCollection> L1TMuonDQMOffline::m_L1tMuons
private

Definition at line 135 of file L1TMuonDQMOffline.h.

◆ m_maxGmtMuonDR

float L1TMuonDQMOffline::m_maxGmtMuonDR
private

Definition at line 178 of file L1TMuonDQMOffline.h.

Referenced by getMuonGmtPairs().

◆ m_maxHltMuonDR

float L1TMuonDQMOffline::m_maxHltMuonDR
private

Definition at line 180 of file L1TMuonDQMOffline.h.

Referenced by getProbeMuons().

◆ m_minTagProbeDR

float L1TMuonDQMOffline::m_minTagProbeDR
private

Definition at line 179 of file L1TMuonDQMOffline.h.

Referenced by getProbeMuons().

◆ m_MuonGmtPairs

std::vector<MuonGmtPair> L1TMuonDQMOffline::m_MuonGmtPairs
private

Definition at line 132 of file L1TMuonDQMOffline.h.

Referenced by analyze(), and getMuonGmtPairs().

◆ m_MuonInputTag

edm::EDGetTokenT<reco::MuonCollection> L1TMuonDQMOffline::m_MuonInputTag
private

Definition at line 161 of file L1TMuonDQMOffline.h.

Referenced by analyze().

◆ m_ProbeMuons

std::vector<const reco::Muon*> L1TMuonDQMOffline::m_ProbeMuons
private

Definition at line 131 of file L1TMuonDQMOffline.h.

Referenced by getMuonGmtPairs(), and getProbeMuons().

◆ m_propagator

PropagateToMuon L1TMuonDQMOffline::m_propagator
private

Definition at line 107 of file L1TMuonDQMOffline.h.

Referenced by dqmBeginRun(), and getMuonGmtPairs().

◆ m_qualLevelsRes

const std::vector<QualLevel> L1TMuonDQMOffline::m_qualLevelsRes
private

Definition at line 145 of file L1TMuonDQMOffline.h.

Referenced by analyze(), and bookResolutionHistos().

◆ m_qualStrings

std::map<QualLevel, std::string> L1TMuonDQMOffline::m_qualStrings
private

Definition at line 153 of file L1TMuonDQMOffline.h.

Referenced by bookEfficiencyHistos(), and bookResolutionHistos().

◆ m_RecoMuons

std::vector<reco::MuonCollection> L1TMuonDQMOffline::m_RecoMuons
private

Definition at line 134 of file L1TMuonDQMOffline.h.

◆ m_RecoRecoMuons

std::vector<reco::Muon> L1TMuonDQMOffline::m_RecoRecoMuons
private

Definition at line 136 of file L1TMuonDQMOffline.h.

◆ m_recoToL1PtCutFactor

double L1TMuonDQMOffline::m_recoToL1PtCutFactor
private

Definition at line 159 of file L1TMuonDQMOffline.h.

Referenced by analyze().

◆ m_resLabelStrings

std::map<ResType, std::string> L1TMuonDQMOffline::m_resLabelStrings
private

Definition at line 151 of file L1TMuonDQMOffline.h.

Referenced by bookResolutionHistos().

◆ m_ResolutionHistos

std::map<std::tuple<ResType, EtaRegion, QualLevel>, MonitorElement*> L1TMuonDQMOffline::m_ResolutionHistos
private

Definition at line 126 of file L1TMuonDQMOffline.h.

Referenced by analyze(), and bookResolutionHistos().

◆ m_resStrings

std::map<ResType, std::string> L1TMuonDQMOffline::m_resStrings
private

Definition at line 150 of file L1TMuonDQMOffline.h.

Referenced by bookResolutionHistos().

◆ m_resTypes

const std::vector<ResType> L1TMuonDQMOffline::m_resTypes
private

Definition at line 143 of file L1TMuonDQMOffline.h.

Referenced by analyze(), and bookResolutionHistos().

◆ m_TagPtCut

double L1TMuonDQMOffline::m_TagPtCut
private

Definition at line 158 of file L1TMuonDQMOffline.h.

Referenced by getProbeMuons().

◆ m_TightMuons

std::vector<const reco::Muon*> L1TMuonDQMOffline::m_TightMuons
private

Definition at line 130 of file L1TMuonDQMOffline.h.

Referenced by getProbeMuons(), and getTightMuons().

◆ m_trigIndices

std::vector<int> L1TMuonDQMOffline::m_trigIndices
private

Definition at line 175 of file L1TMuonDQMOffline.h.

Referenced by bookHistograms(), and matchHlt().

◆ m_trigInputTag

edm::EDGetTokenT<trigger::TriggerEvent> L1TMuonDQMOffline::m_trigInputTag
private

Definition at line 165 of file L1TMuonDQMOffline.h.

Referenced by analyze().

◆ m_trigNames

std::vector<std::string> L1TMuonDQMOffline::m_trigNames
private

Definition at line 169 of file L1TMuonDQMOffline.h.

Referenced by bookHistograms().

◆ m_trigProcess

std::string L1TMuonDQMOffline::m_trigProcess
private

Definition at line 166 of file L1TMuonDQMOffline.h.

Referenced by dqmBeginRun(), and matchHlt().

◆ m_trigProcess_token

edm::EDGetTokenT<edm::TriggerResults> L1TMuonDQMOffline::m_trigProcess_token
private

Definition at line 167 of file L1TMuonDQMOffline.h.

Referenced by analyze().

◆ m_useAtVtxCoord

bool L1TMuonDQMOffline::m_useAtVtxCoord
private

Definition at line 177 of file L1TMuonDQMOffline.h.

Referenced by getMuonGmtPairs().

◆ m_verbose

bool L1TMuonDQMOffline::m_verbose
private

◆ m_VtxInputTag

edm::EDGetTokenT<reco::VertexCollection> L1TMuonDQMOffline::m_VtxInputTag
private

Definition at line 163 of file L1TMuonDQMOffline.h.

Referenced by analyze().

TriggerObject
Definition: TriggerObject.py:1
PDWG_BPHSkim_cff.muons
muons
Definition: PDWG_BPHSkim_cff.py:47
L1TMuonDQMOffline::kCtrlTagEta
Definition: L1TMuonDQMOffline.h:66
L1TMuonDQMOffline::kCtrlNTightVsAll
Definition: L1TMuonDQMOffline.h:74
pwdgSkimBPark_cfi.beamSpot
beamSpot
Definition: pwdgSkimBPark_cfi.py:5
L1TMuonDQMOffline::m_effVsPhiBins
std::vector< double > m_effVsPhiBins
Definition: L1TMuonDQMOffline.h:171
L1TMuonDQMOffline::m_effStrings
std::map< EffType, std::string > m_effStrings
Definition: L1TMuonDQMOffline.h:148
L1TMuonDQMOffline::m_maxHltMuonDR
float m_maxHltMuonDR
Definition: L1TMuonDQMOffline.h:180
TkAlMuonSelectors_cfi.cut
cut
Definition: TkAlMuonSelectors_cfi.py:5
trigger::Vids
std::vector< int > Vids
Definition: TriggerTypeDefs.h:21
L1TMuonDQMOffline::m_etaRegions
const std::vector< EtaRegion > m_etaRegions
Definition: L1TMuonDQMOffline.h:144
L1TMuonDQMOffline::kQualAll
Definition: L1TMuonDQMOffline.h:80
L1TMuonDQMOffline::bookEfficiencyHistos
virtual void bookEfficiencyHistos(DQMStore::IBooker &ibooker)
Definition: L1TMuonDQMOffline.cc:363
DiDispStaMuonMonitor_cfi.pt
pt
Definition: DiDispStaMuonMonitor_cfi.py:39
L1TMuonDQMOffline::m_HistFolder
std::string m_HistFolder
Definition: L1TMuonDQMOffline.h:157
amptDefaultParameters_cff.mu
mu
Definition: amptDefaultParameters_cff.py:16
L1TMuonDQMOffline::m_MuonInputTag
edm::EDGetTokenT< reco::MuonCollection > m_MuonInputTag
Definition: L1TMuonDQMOffline.h:161
TriggerAnalyzer.trigObjs
trigObjs
Definition: TriggerAnalyzer.py:89
PropagateToMuon::init
void init(const edm::EventSetup &iSetup)
Definition: PropagateToMuon.cc:56
L1TMuonDQMOffline::m_ResolutionHistos
std::map< std::tuple< ResType, EtaRegion, QualLevel >, MonitorElement * > m_ResolutionHistos
Definition: L1TMuonDQMOffline.h:126
MuonGmtPair
Definition: L1TMuonDQMOffline.h:186
BXVector::const_iterator
std::vector< T >::const_iterator const_iterator
Definition: BXVector.h:18
L1TMuonDQMOffline::kEffPt
Definition: L1TMuonDQMOffline.h:77
reco::Vertex::Error
math::Error< dimension >::type Error
covariance error matrix (3x3)
Definition: Vertex.h:44
L1TMuonDQMOffline::m_maxGmtMuonDR
float m_maxGmtMuonDR
Definition: L1TMuonDQMOffline.h:178
gather_cfg.cout
cout
Definition: gather_cfg.py:144
L1TMuonDQMOffline::m_histoKeyResType
std::tuple< ResType, EtaRegion, QualLevel > m_histoKeyResType
Definition: L1TMuonDQMOffline.h:113
L1TMuonDQMOffline::kEtaRegionEmtf
Definition: L1TMuonDQMOffline.h:79
L1TMuonDQMOffline::kCtrlTagProbeDr
Definition: L1TMuonDQMOffline.h:71
L1TMuonDQMOffline_cfi.effVsPhiBins
effVsPhiBins
Definition: L1TMuonDQMOffline_cfi.py:18
L1TMuonDQMOffline::m_recoToL1PtCutFactor
double m_recoToL1PtCutFactor
Definition: L1TMuonDQMOffline.h:159
L1TMuonDQMOffline::m_etaStrings
std::map< EtaRegion, std::string > m_etaStrings
Definition: L1TMuonDQMOffline.h:152
L1TMuonDQMOffline::m_histoKeyEffNumVarType
std::tuple< EffType, int, EtaRegion, QualLevel > m_histoKeyEffNumVarType
Definition: L1TMuonDQMOffline.h:115
L1TMuonDQMOffline::m_EfficiencyDenPtHistos
std::map< EtaRegion, MonitorElement * > m_EfficiencyDenPtHistos
Definition: L1TMuonDQMOffline.h:124
HLT_2018_cff.distance
distance
Definition: HLT_2018_cff.py:6417
L1TMuonDQMOffline::kQualSingle
Definition: L1TMuonDQMOffline.h:80
L1TMuonDQMOffline::m_BsInputTag
edm::EDGetTokenT< reco::BeamSpot > m_BsInputTag
Definition: L1TMuonDQMOffline.h:164
L1TMuonDQMOffline::getHistBinsEff
std::vector< float > getHistBinsEff(EffType eff)
Definition: L1TMuonDQMOffline.cc:617
L1TMuonDQMOffline::getNVertices
const unsigned int getNVertices(edm::Handle< reco::VertexCollection > &vertex)
Definition: L1TMuonDQMOffline.cc:433
deltar
Definition: deltar.py:1
L1TMuonDQMOffline::m_trigNames
std::vector< std::string > m_trigNames
Definition: L1TMuonDQMOffline.h:169
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
L1TMuonDQMOffline::kCtrlProbePt
Definition: L1TMuonDQMOffline.h:68
L1TMuonDQMOffline::kEffEta
Definition: L1TMuonDQMOffline.h:77
L1TMuonDQMOffline::kRes1OverPt
Definition: L1TMuonDQMOffline.h:78
L1TMuonDQMOffline::m_ProbeMuons
std::vector< const reco::Muon * > m_ProbeMuons
Definition: L1TMuonDQMOffline.h:131
L1TMuonDQMOffline::m_effVsVtxBins
std::vector< double > m_effVsVtxBins
Definition: L1TMuonDQMOffline.h:173
edm::Handle< reco::MuonCollection >
L1TMuonDQMOffline::m_resLabelStrings
std::map< ResType, std::string > m_resLabelStrings
Definition: L1TMuonDQMOffline.h:151
L1TMuonDQMOffline::bookControlHistos
virtual void bookControlHistos(DQMStore::IBooker &)
Definition: L1TMuonDQMOffline.cc:337
L1TMuonDQMOffline::m_effVsPtBins
std::vector< double > m_effVsPtBins
Definition: L1TMuonDQMOffline.h:170
L1TMuonDQMOffline::m_useAtVtxCoord
bool m_useAtVtxCoord
Definition: L1TMuonDQMOffline.h:177
L1TMuonDQMOffline::QualLevel
QualLevel
Definition: L1TMuonDQMOffline.h:80
HLT_2018_cff.dEta
dEta
Definition: HLT_2018_cff.py:12289
L1TMuonDQMOffline::matchHlt
double matchHlt(edm::Handle< trigger::TriggerEvent > &triggerEvent, const reco::Muon *mu)
Definition: L1TMuonDQMOffline.cc:589
L1TMuonDQMOffline::m_GmtInputTag
edm::EDGetTokenT< l1t::MuonBxCollection > m_GmtInputTag
Definition: L1TMuonDQMOffline.h:162
L1TMuonDQMOffline::m_qualStrings
std::map< QualLevel, std::string > m_qualStrings
Definition: L1TMuonDQMOffline.h:153
L1TMuonDQMOffline::kQualOpen
Definition: L1TMuonDQMOffline.h:80
trigObjTnPSource_cfi.var
var
Definition: trigObjTnPSource_cfi.py:21
L1TMuonDQMOffline::m_trigProcess
std::string m_trigProcess
Definition: L1TMuonDQMOffline.h:166
L1TMuonDQMOffline::kCtrlTagHltDr
Definition: L1TMuonDQMOffline.h:72
BeamMonitor_cff.primaryVertex
primaryVertex
hltOfflineBeamSpot for HLTMON
Definition: BeamMonitor_cff.py:7
HLTConfigProvider::moduleLabels
const std::vector< std::string > & moduleLabels(unsigned int trigger) const
label(s) of module(s) on a trigger path
Definition: HLTConfigProvider.h:75
L1TMuonDQMOffline::kEffVtx
Definition: L1TMuonDQMOffline.h:77
L1TMuonDQMOffline::kCtrlNProbesVsTight
Definition: L1TMuonDQMOffline.h:75
L1TMuonDQMOffline::kEtaRegionBmtf
Definition: L1TMuonDQMOffline.h:79
L1TMuonDQMOffline::getHistBinsRes
std::tuple< int, double, double > getHistBinsRes(ResType res)
Definition: L1TMuonDQMOffline.cc:637
L1TMuonDQMOffline::kCtrlProbeEta
Definition: L1TMuonDQMOffline.h:69
L1TMuonDQMOffline::m_effLabelStrings
std::map< EffType, std::string > m_effLabelStrings
Definition: L1TMuonDQMOffline.h:149
L1TMuonDQMOffline::m_cuts
std::vector< std::pair< int, QualLevel > > m_cuts
Definition: L1TMuonDQMOffline.h:139
PVValHelper::eta
Definition: PVValidationHelpers.h:69
L1TMuonDQMOffline::m_minTagProbeDR
float m_minTagProbeDR
Definition: L1TMuonDQMOffline.h:179
L1TMuonDQMOffline::m_histoKeyEffNumEtaType
std::pair< int, QualLevel > m_histoKeyEffNumEtaType
Definition: L1TMuonDQMOffline.h:116
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
L1TMuonDQMOffline::kCtrlTagPt
Definition: L1TMuonDQMOffline.h:65
HLT_2018_cff.dPhi
dPhi
Definition: HLT_2018_cff.py:12290
L1TMuonDQMOffline::kEtaRegionAll
Definition: L1TMuonDQMOffline.h:79
LaserClient_cfi.nbins
nbins
Definition: LaserClient_cfi.py:51
L1TMuonDQMOffline::m_EfficiencyNumEtaHistos
std::map< std::pair< int, QualLevel >, MonitorElement * > m_EfficiencyNumEtaHistos
Definition: L1TMuonDQMOffline.h:122
L1TMuonDQMOffline::kResCh
Definition: L1TMuonDQMOffline.h:78
L1TMuonDQMOffline::m_cutsVPSet
std::vector< edm::ParameterSet > m_cutsVPSet
Definition: L1TMuonDQMOffline.h:160
BXVector::begin
const_iterator begin(int bx) const
L1TMuonDQMOffline::getProbeMuons
void getProbeMuons(edm::Handle< edm::TriggerResults > &trigResults, edm::Handle< trigger::TriggerEvent > &trigEvent)
Definition: L1TMuonDQMOffline.cc:494
L1TMuonDQMOffline_cfi.effVsVtxBins
effVsVtxBins
Definition: L1TMuonDQMOffline_cfi.py:27
L1TMuonDQMOffline::m_effTypes
const std::vector< EffType > m_effTypes
Definition: L1TMuonDQMOffline.h:142
PbPb_ZMuSkimMuonDPG_cff.deltaR
deltaR
Definition: PbPb_ZMuSkimMuonDPG_cff.py:63
B2GTnPMonitor_cfi.trigEvent
trigEvent
Definition: B2GTnPMonitor_cfi.py:39
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
L1TMuonDQMOffline::m_qualLevelsRes
const std::vector< QualLevel > m_qualLevelsRes
Definition: L1TMuonDQMOffline.h:145
HLTConfigProvider::size
unsigned int size() const
number of trigger paths in trigger table
Definition: HLTConfigProvider.h:62
L1TMuonDQMOffline::m_resStrings
std::map< ResType, std::string > m_resStrings
Definition: L1TMuonDQMOffline.h:150
L1TMuonDQMOffline::m_histoKeyEffDenVarType
std::tuple< EffType, int, EtaRegion > m_histoKeyEffDenVarType
Definition: L1TMuonDQMOffline.h:118
bphysicsOniaDQM_cfi.vertex
vertex
Definition: bphysicsOniaDQM_cfi.py:7
BXVector::end
const_iterator end(int bx) const
HLT_2018_cff.InputTag
InputTag
Definition: HLT_2018_cff.py:79016
L1TMuonDQMOffline::m_EfficiencyDenVarHistos
std::map< std::tuple< EffType, int, EtaRegion >, MonitorElement * > m_EfficiencyDenVarHistos
Definition: L1TMuonDQMOffline.h:123
edm::ParameterSet
Definition: ParameterSet.h:36
L1TMuonDQMOffline::kCtrlTagPhi
Definition: L1TMuonDQMOffline.h:67
muon::isTightMuon
bool isTightMuon(const reco::Muon &, const reco::Vertex &)
Definition: MuonSelectors.cc:895
L1TMuonDQMOffline::m_hltConfig
HLTConfigProvider m_hltConfig
Definition: L1TMuonDQMOffline.h:105
trigger::TriggerObjectCollection
std::vector< TriggerObject > TriggerObjectCollection
collection of trigger physics objects (e.g., all isolated muons)
Definition: TriggerObject.h:75
L1TMuonDQMOffline::kQualDouble
Definition: L1TMuonDQMOffline.h:80
L1TMuonDQMOffline::m_MuonGmtPairs
std::vector< MuonGmtPair > m_MuonGmtPairs
Definition: L1TMuonDQMOffline.h:132
createfilelist.int
int
Definition: createfilelist.py:10
iEvent
int iEvent
Definition: GenABIO.cc:224
trigger::Keys
std::vector< size_type > Keys
Definition: TriggerTypeDefs.h:19
L1TMuonDQMOffline_cfi.qualCut
qualCut
Definition: L1TMuonDQMOffline_cfi.py:34
L1TMuonDQMOffline::kResQOverPt
Definition: L1TMuonDQMOffline.h:78
L1TMuonDQMOffline::kCtrlMuonGmtDeltaR
Definition: L1TMuonDQMOffline.h:73
L1TMuonDQMOffline::m_EfficiencyDenEtaHistos
std::map< int, MonitorElement * > m_EfficiencyDenEtaHistos
Definition: L1TMuonDQMOffline.h:125
L1TMuonDQMOffline::kCtrlProbePhi
Definition: L1TMuonDQMOffline.h:70
PDWG_DiPhoton_SD_cff.triggerEvent
triggerEvent
Definition: PDWG_DiPhoton_SD_cff.py:39
res
Definition: Electron.h:6
L1TMuonDQMOffline::m_trigInputTag
edm::EDGetTokenT< trigger::TriggerEvent > m_trigInputTag
Definition: L1TMuonDQMOffline.h:165
L1TMuonDQMOffline::kEffPhi
Definition: L1TMuonDQMOffline.h:77
L1TMuonDQMOffline::getMuonGmtPairs
void getMuonGmtPairs(edm::Handle< l1t::MuonBxCollection > &gmtCands)
Definition: L1TMuonDQMOffline.cc:555
L1TMuonDQMOffline::m_verbose
bool m_verbose
Definition: L1TMuonDQMOffline.h:156
L1TMuonDQMOffline::m_TightMuons
std::vector< const reco::Muon * > m_TightMuons
Definition: L1TMuonDQMOffline.h:130
L1TMuonDQMOffline::kEtaRegionOmtf
Definition: L1TMuonDQMOffline.h:79
DDAxes::phi
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
reco::Vertex::Point
math::XYZPoint Point
point in the space
Definition: Vertex.h:40
writedatasetfile.run
run
Definition: writedatasetfile.py:27
HLTConfigProvider::init
bool init(const edm::Run &iRun, const edm::EventSetup &iSetup, const std::string &processName, bool &changed)
d'tor
Definition: HLTConfigProvider.cc:36
L1TMuonDQMOffline::kResPt
Definition: L1TMuonDQMOffline.h:78
L1TMuonDQMOffline::getPrimaryVertex
const reco::Vertex getPrimaryVertex(edm::Handle< reco::VertexCollection > &vertex, edm::Handle< reco::BeamSpot > &beamSpot)
Definition: L1TMuonDQMOffline.cc:447
L1TMuonDQMOffline::kEtaRegionOut
Definition: L1TMuonDQMOffline.h:79
TrackerOfflineValidation_Dqm_cff.xmax
xmax
Definition: TrackerOfflineValidation_Dqm_cff.py:11
L1TMuonDQMOffline::kResPhi
Definition: L1TMuonDQMOffline.h:78
L1TMuonDQMOffline_cfi.effVsPtBins
effVsPtBins
Definition: L1TMuonDQMOffline_cfi.py:7
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
L1TMuonDQMOffline::m_EfficiencyNumVarHistos
std::map< std::tuple< EffType, int, EtaRegion, QualLevel >, MonitorElement * > m_EfficiencyNumVarHistos
Definition: L1TMuonDQMOffline.h:121
L1TMuonDQMOffline::getTightMuons
void getTightMuons(edm::Handle< reco::MuonCollection > &muons, const reco::Vertex &vertex)
Definition: L1TMuonDQMOffline.cc:478
L1TMuonDQMOffline::bookResolutionHistos
virtual void bookResolutionHistos(DQMStore::IBooker &ibooker)
Definition: L1TMuonDQMOffline.cc:412
HLTConfigProvider::triggerName
const std::string & triggerName(unsigned int triggerIndex) const
Definition: HLTConfigProvider.h:69
L1TMuonDQMOffline::m_VtxInputTag
edm::EDGetTokenT< reco::VertexCollection > m_VtxInputTag
Definition: L1TMuonDQMOffline.h:163
L1TMuonDQMOffline::kResEta
Definition: L1TMuonDQMOffline.h:78
TrackerOfflineValidation_Dqm_cff.xmin
xmin
Definition: TrackerOfflineValidation_Dqm_cff.py:10
L1TMuonDQMOffline::m_effVsEtaBins
std::vector< double > m_effVsEtaBins
Definition: L1TMuonDQMOffline.h:172
L1TMuonDQMOffline::m_propagator
PropagateToMuon m_propagator
Definition: L1TMuonDQMOffline.h:107
L1TMuonDQMOffline_cfi.effVsEtaBins
effVsEtaBins
Definition: L1TMuonDQMOffline_cfi.py:24
L1TMuonDQMOffline::m_resTypes
const std::vector< ResType > m_resTypes
Definition: L1TMuonDQMOffline.h:143
edm::InputTag
Definition: InputTag.h:15
L1TMuonDQMOffline::m_trigProcess_token
edm::EDGetTokenT< edm::TriggerResults > m_trigProcess_token
Definition: L1TMuonDQMOffline.h:167
reco::Vertex
Definition: Vertex.h:35
L1TMuonDQMOffline::m_TagPtCut
double m_TagPtCut
Definition: L1TMuonDQMOffline.h:158
L1TMuonDQMOffline::m_trigIndices
std::vector< int > m_trigIndices
Definition: L1TMuonDQMOffline.h:175
L1TMuonDQMOffline::m_ControlHistos
std::map< Control, MonitorElement * > m_ControlHistos
Definition: L1TMuonDQMOffline.h:127