CMS 3D CMS Logo

METMonitor.cc
Go to the documentation of this file.
26 
27 class METMonitor : public DQMEDAnalyzer, public TriggerDQMBase {
28 public:
31 
33  ~METMonitor() throw() override;
34  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
35 
36 protected:
38  void analyze(edm::Event const& iEvent, edm::EventSetup const& iSetup) override;
39 
40 private:
42 
45 
51 
55  edm::EDGetTokenT<reco::MuonCollection> muoToken_;
57 
61 
62  ObjME metME_;
64  ObjME metVsLS_;
65  ObjME metPhiME_;
68 
71 
76 
77  unsigned njets_;
78  unsigned nelectrons_;
79  unsigned nmuons_;
80 
81  static constexpr double MAX_PHI = 3.2;
82  static constexpr int N_PHI = 64;
83  static constexpr MEbinning phi_binning_{N_PHI, -MAX_PHI, MAX_PHI};
84 
85  std::vector<bool> warningPrinted4token_;
86 };
87 
89  : folderName_(iConfig.getParameter<std::string>("FolderName")),
90  requireValidHLTPaths_(iConfig.getParameter<bool>("requireValidHLTPaths")),
91  hltPathsAreValid_(false),
92  metInputTag_(iConfig.getParameter<edm::InputTag>("met")),
93  jetInputTag_(iConfig.getParameter<edm::InputTag>("jets")),
94  eleInputTag_(iConfig.getParameter<edm::InputTag>("electrons")),
95  muoInputTag_(iConfig.getParameter<edm::InputTag>("muons")),
96  vtxInputTag_(iConfig.getParameter<edm::InputTag>("vertices")),
97  metToken_(consumes<reco::PFMETCollection>(metInputTag_)),
98  jetToken_(mayConsume<reco::PFJetCollection>(jetInputTag_)),
99  eleToken_(mayConsume<reco::GsfElectronCollection>(eleInputTag_)),
100  muoToken_(mayConsume<reco::MuonCollection>(muoInputTag_)),
101  vtxToken_(mayConsume<reco::VertexCollection>(vtxInputTag_)),
102  met_variable_binning_(
103  iConfig.getParameter<edm::ParameterSet>("histoPSet").getParameter<std::vector<double> >("metBinning")),
104  met_binning_(getHistoPSet(
105  iConfig.getParameter<edm::ParameterSet>("histoPSet").getParameter<edm::ParameterSet>("metPSet"))),
106  ls_binning_(
107  getHistoPSet(iConfig.getParameter<edm::ParameterSet>("histoPSet").getParameter<edm::ParameterSet>("lsPSet"))),
108  num_genTriggerEventFlag_(new GenericTriggerEventFlag(
109  iConfig.getParameter<edm::ParameterSet>("numGenericTriggerEventPSet"), consumesCollector(), *this)),
110  den_genTriggerEventFlag_(new GenericTriggerEventFlag(
111  iConfig.getParameter<edm::ParameterSet>("denGenericTriggerEventPSet"), consumesCollector(), *this)),
112  metSelection_(iConfig.getParameter<std::string>("metSelection")),
113  jetSelection_(iConfig.getParameter<std::string>("jetSelection")),
114  eleSelection_(iConfig.getParameter<std::string>("eleSelection")),
115  muoSelection_(iConfig.getParameter<std::string>("muoSelection")),
116  njets_(iConfig.getParameter<unsigned>("njets")),
117  nelectrons_(iConfig.getParameter<unsigned>("nelectrons")),
118  nmuons_(iConfig.getParameter<unsigned>("nmuons")) {
119  // this vector has to be alligned to the the number of Tokens accessed by this module
120  warningPrinted4token_.push_back(false); // PFMETCollection
121  warningPrinted4token_.push_back(false); // JetCollection
122  warningPrinted4token_.push_back(false); // GsfElectronCollection
123  warningPrinted4token_.push_back(false); // MuonCollection
124  warningPrinted4token_.push_back(false); // VertexCollection
125 }
126 
129  num_genTriggerEventFlag_.reset();
130  }
132  den_genTriggerEventFlag_.reset();
133  }
134 }
135 
136 void METMonitor::bookHistograms(DQMStore::IBooker& ibooker, edm::Run const& iRun, edm::EventSetup const& iSetup) {
137  // Initialize the GenericTriggerEventFlag
139  num_genTriggerEventFlag_->initRun(iRun, iSetup);
140  }
142  den_genTriggerEventFlag_->initRun(iRun, iSetup);
143  }
144 
145  // check if every HLT path specified in numerator and denominator has a valid match in the HLT Menu
147  den_genTriggerEventFlag_->on() && num_genTriggerEventFlag_->allHLTPathsAreValid() &&
148  den_genTriggerEventFlag_->allHLTPathsAreValid());
149 
150  // if valid HLT paths are required,
151  // create DQM outputs only if all paths are valid
153  return;
154  }
155 
156  std::string histname, histtitle;
157 
158  std::string currentFolder = folderName_;
159  ibooker.setCurrentFolder(currentFolder);
160 
161  histname = "deltaphi_metjet1";
162  histtitle = "DPHI_METJ1";
163  bookME(ibooker, deltaphimetj1ME_, histname, histtitle, phi_binning_.nbins, phi_binning_.xmin, phi_binning_.xmax);
164  setMETitle(deltaphimetj1ME_, "delta phi (met, j1)", "events / 0.1 rad");
165 
166  histname = "deltaphi_jet1jet2";
167  histtitle = "DPHI_J1J2";
168  bookME(ibooker, deltaphij1j2ME_, histname, histtitle, phi_binning_.nbins, phi_binning_.xmin, phi_binning_.xmax);
169  setMETitle(deltaphij1j2ME_, "delta phi (j1, j2)", "events / 0.1 rad");
170 
171  histname = "met";
172  histtitle = "PFMET";
173  bookME(ibooker, metME_, histname, histtitle, met_binning_.nbins, met_binning_.xmin, met_binning_.xmax);
174  setMETitle(metME_, "PF MET [GeV]", "events / [GeV]");
175 
176  histname = "met_variable";
177  histtitle = "PFMET";
178  bookME(ibooker, metME_variableBinning_, histname, histtitle, met_variable_binning_);
179  setMETitle(metME_variableBinning_, "PF MET [GeV]", "events / [GeV]");
180 
181  histname = "metVsLS";
182  histtitle = "PFMET vs LS";
183  bookME(ibooker,
184  metVsLS_,
185  histname,
186  histtitle,
192  setMETitle(metVsLS_, "LS", "PF MET [GeV]");
193 
194  histname = "metPhi";
195  histtitle = "PFMET phi";
196  bookME(ibooker, metPhiME_, histname, histtitle, phi_binning_.nbins, phi_binning_.xmin, phi_binning_.xmax);
197  setMETitle(metPhiME_, "PF MET #phi", "events / 0.1 rad");
198 }
199 
201  // if valid HLT paths are required,
202  // analyze event only if all paths are valid
204  return;
205  }
206 
207  // Filter out events if Trigger Filtering is requested
208  if (den_genTriggerEventFlag_->on() && !den_genTriggerEventFlag_->accept(iEvent, iSetup))
209  return;
210 
212  iEvent.getByToken(metToken_, metHandle);
213  if (!metHandle.isValid()) {
214  if (!warningPrinted4token_[0]) {
215  edm::LogWarning("METMonitor") << "skipping events because the collection " << metInputTag_.label().c_str()
216  << " is not available";
217  warningPrinted4token_[0] = true;
218  }
219  return;
220  }
221  reco::PFMET pfmet = metHandle->front();
222  if (!metSelection_(pfmet))
223  return;
224 
225  float met = pfmet.pt();
226  float phi = pfmet.phi();
227 
228  std::vector<reco::PFJet> jets;
230  iEvent.getByToken(jetToken_, jetHandle);
231  if (jetHandle.isValid()) {
232  if (jetHandle->size() < njets_)
233  return;
234  for (auto const& j : *jetHandle) {
235  if (jetSelection_(j)) {
236  jets.push_back(j);
237  }
238  }
239  } else {
240  if (!warningPrinted4token_[1]) {
241  if (jetInputTag_.label().empty())
242  edm::LogWarning("METMonitor") << "JetCollection not set";
243  else
244  edm::LogWarning("METMonitor") << "skipping events because the collection " << jetInputTag_.label().c_str()
245  << " is not available";
246  warningPrinted4token_[1] = true;
247  }
248  // if Handle is not valid, because the InputTag has been mis-configured, then skip the event
249  if (!jetInputTag_.label().empty())
250  return;
251  }
252  float deltaPhi_met_j1 = 10.0;
253  float deltaPhi_j1_j2 = 10.0;
254 
255  if (!jets.empty())
256  deltaPhi_met_j1 = fabs(deltaPhi(pfmet.phi(), jets[0].phi()));
257  if (jets.size() >= 2)
258  deltaPhi_j1_j2 = fabs(deltaPhi(jets[0].phi(), jets[1].phi()));
259 
260  std::vector<reco::GsfElectron> electrons;
262  iEvent.getByToken(eleToken_, eleHandle);
263  if (eleHandle.isValid()) {
264  if (eleHandle->size() < nelectrons_)
265  return;
266  for (auto const& e : *eleHandle) {
267  if (eleSelection_(e))
268  electrons.push_back(e);
269  }
270  if (electrons.size() < nelectrons_)
271  return;
272  } else {
273  if (!warningPrinted4token_[2]) {
274  warningPrinted4token_[2] = true;
275  if (eleInputTag_.label().empty())
276  edm::LogWarning("METMonitor") << "GsfElectronCollection not set";
277  else
278  edm::LogWarning("METMonitor") << "skipping events because the collection " << eleInputTag_.label().c_str()
279  << " is not available";
280  }
281  if (!eleInputTag_.label().empty())
282  return;
283  }
284 
287  iEvent.getByToken(vtxToken_, vtxHandle);
288  if (vtxHandle.isValid()) {
289  for (auto const& v : *vtxHandle) {
290  bool isFake = v.isFake();
291 
292  if (!isFake) {
293  vtx = v;
294  break;
295  }
296  }
297  } else {
298  if (!warningPrinted4token_[3]) {
299  warningPrinted4token_[3] = true;
300  if (vtxInputTag_.label().empty())
301  edm::LogWarning("METMonitor") << "VertexCollection is not set";
302  else
303  edm::LogWarning("METMonitor") << "skipping events because the collection " << vtxInputTag_.label().c_str()
304  << " is not available";
305  }
306  if (!vtxInputTag_.label().empty())
307  return;
308  }
309 
310  std::vector<reco::Muon> muons;
312  iEvent.getByToken(muoToken_, muoHandle);
313  if (muoHandle.isValid()) {
314  if (muoHandle->size() < nmuons_)
315  return;
316  for (auto const& m : *muoHandle) {
317  bool pass = m.isGlobalMuon() && m.isPFMuon() && m.globalTrack()->normalizedChi2() < 10. &&
318  m.globalTrack()->hitPattern().numberOfValidMuonHits() > 0 && m.numberOfMatchedStations() > 1 &&
319  fabs(m.muonBestTrack()->dxy(vtx.position())) < 0.2 &&
320  fabs(m.muonBestTrack()->dz(vtx.position())) < 0.5 &&
321  m.innerTrack()->hitPattern().numberOfValidPixelHits() > 0 &&
322  m.innerTrack()->hitPattern().trackerLayersWithMeasurement() > 5;
323  if (muoSelection_(m) && pass)
324  muons.push_back(m);
325  }
326  if (muons.size() < nmuons_)
327  return;
328  } else {
329  if (!warningPrinted4token_[4]) {
330  warningPrinted4token_[4] = true;
331  if (muoInputTag_.label().empty())
332  edm::LogWarning("METMonitor") << "MuonCollection not set";
333  else
334  edm::LogWarning("METMonitor") << "skipping events because the collection " << muoInputTag_.label().c_str()
335  << " is not available";
336  }
337  if (!muoInputTag_.label().empty())
338  return;
339  }
340 
341  // filling histograms (denominator)
345  deltaphimetj1ME_.denominator->Fill(deltaPhi_met_j1);
346  deltaphij1j2ME_.denominator->Fill(deltaPhi_j1_j2);
347 
348  const int ls = iEvent.id().luminosityBlock();
350  // applying selection for numerator
351  if (num_genTriggerEventFlag_->on() && !num_genTriggerEventFlag_->accept(iEvent, iSetup))
352  return;
353 
354  // filling histograms (num_genTriggerEventFlag_)
359  deltaphimetj1ME_.numerator->Fill(deltaPhi_met_j1);
360  deltaphij1j2ME_.numerator->Fill(deltaPhi_j1_j2);
361 }
362 
365  desc.add<std::string>("FolderName", "HLT/MET");
366  desc.add<bool>("requireValidHLTPaths", true);
367 
368  desc.add<edm::InputTag>("met", edm::InputTag("pfMet"));
369  desc.add<edm::InputTag>("jets", edm::InputTag("ak4PFJetsCHS"));
370  desc.add<edm::InputTag>("electrons", edm::InputTag("gedGsfElectrons"));
371  desc.add<edm::InputTag>("muons", edm::InputTag("muons"));
372  desc.add<edm::InputTag>("vertices", edm::InputTag("offlinePrimaryVertices"));
373  desc.add<std::string>("metSelection", "pt > 0");
374  desc.add<std::string>("jetSelection", "pt > 0");
375  desc.add<std::string>("eleSelection", "pt > 0");
376  desc.add<std::string>("muoSelection", "pt > 0");
377  desc.add<unsigned>("njets", 0);
378  desc.add<unsigned>("nelectrons", 0);
379  desc.add<unsigned>("nmuons", 0);
380 
382  genericTriggerEventPSet.add<bool>("andOr");
383  genericTriggerEventPSet.add<edm::InputTag>("dcsInputTag", edm::InputTag("scalersRawToDigi"));
384  genericTriggerEventPSet.add<std::vector<int> >("dcsPartitions", {});
385  genericTriggerEventPSet.add<bool>("andOrDcs", false);
386  genericTriggerEventPSet.add<bool>("errorReplyDcs", true);
387  genericTriggerEventPSet.add<std::string>("dbLabel", "");
388  genericTriggerEventPSet.add<bool>("andOrHlt", true);
389  genericTriggerEventPSet.add<edm::InputTag>("hltInputTag", edm::InputTag("TriggerResults::HLT"));
390  genericTriggerEventPSet.add<std::vector<std::string> >("hltPaths", {});
391  genericTriggerEventPSet.add<std::string>("hltDBKey", "");
392  genericTriggerEventPSet.add<bool>("errorReplyHlt", false);
393  genericTriggerEventPSet.add<unsigned int>("verbosityLevel", 1);
394 
395  desc.add<edm::ParameterSetDescription>("numGenericTriggerEventPSet", genericTriggerEventPSet);
396  desc.add<edm::ParameterSetDescription>("denGenericTriggerEventPSet", genericTriggerEventPSet);
397 
402  std::vector<double> bins = {0., 20., 40., 60., 80., 90., 100., 110., 120., 130., 140., 150., 160.,
403  170., 180., 190., 200., 220., 240., 260., 280., 300., 350., 400., 450., 1000.};
404  histoPSet.add<std::vector<double> >("metBinning", bins);
405 
409 
410  desc.add<edm::ParameterSetDescription>("histoPSet", histoPSet);
411 
412  descriptions.add("metMonitoring", desc);
413 }
414 
ConfigurationDescriptions.h
METMonitor::nelectrons_
unsigned nelectrons_
Definition: METMonitor.cc:78
PDWG_BPHSkim_cff.muons
muons
Definition: PDWG_BPHSkim_cff.py:47
eostools.ls
def ls(path, rec=False)
Definition: eostools.py:349
METMonitor::phi_binning_
static constexpr MEbinning phi_binning_
Definition: METMonitor.cc:83
dqm::impl::MonitorElement
Definition: MonitorElement.h:98
METMonitor::jetToken_
edm::EDGetTokenT< reco::PFJetCollection > jetToken_
Definition: METMonitor.cc:53
electrons_cff.bool
bool
Definition: electrons_cff.py:366
Muon.h
MessageLogger.h
TriggerDQMBase::MEbinning
Definition: TriggerDQMBase.h:16
METMonitor::deltaphij1j2ME_
ObjME deltaphij1j2ME_
Definition: METMonitor.cc:67
funct::false
false
Definition: Factorize.h:29
METMonitor::MonitorElement
dqm::reco::MonitorElement MonitorElement
Definition: METMonitor.cc:29
METMonitor::analyze
void analyze(edm::Event const &iEvent, edm::EventSetup const &iSetup) override
Definition: METMonitor.cc:200
METMonitor::metInputTag_
edm::InputTag metInputTag_
Definition: METMonitor.cc:46
METMonitor
Definition: METMonitor.cc:27
edm::Run
Definition: Run.h:45
deltaPhi.h
METMonitor::metToken_
edm::EDGetTokenT< reco::PFMETCollection > metToken_
Definition: METMonitor.cc:52
edm
HLT enums.
Definition: AlignableModifier.h:19
METMonitor::ls_binning_
MEbinning ls_binning_
Definition: METMonitor.cc:60
PFMETCollection
Collection of PF MET.
PFJet.h
METMonitor::metME_
ObjME metME_
Definition: METMonitor.cc:62
METMonitor::muoSelection_
StringCutObjectSelector< reco::Muon, true > muoSelection_
Definition: METMonitor.cc:75
HLT_FULL_cff.InputTag
InputTag
Definition: HLT_FULL_cff.py:89301
PFJetCollection.h
edm::ParameterSetDescription
Definition: ParameterSetDescription.h:52
dqm::implementation::NavigatorBase::setCurrentFolder
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:32
METMonitor::jetInputTag_
edm::InputTag jetInputTag_
Definition: METMonitor.cc:47
METMonitor::folderName_
const std::string folderName_
Definition: METMonitor.cc:41
SiStripSourceConfigTier0_cff.genericTriggerEventPSet
genericTriggerEventPSet
Definition: SiStripSourceConfigTier0_cff.py:96
DQMStore.h
METMonitor::met_variable_binning_
std::vector< double > met_variable_binning_
Definition: METMonitor.cc:58
reco::GsfElectronCollection
std::vector< GsfElectron > GsfElectronCollection
collection of GsfElectron objects
Definition: GsfElectronFwd.h:14
singleTopDQM_cfi.jets
jets
Definition: singleTopDQM_cfi.py:42
PFMETCollection.h
reco::LeafCandidate::pt
double pt() const final
transverse momentum
Definition: LeafCandidate.h:146
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:46
findQualityFiles.v
v
Definition: findQualityFiles.py:179
watchdog.const
const
Definition: watchdog.py:83
edm::Handle< reco::PFMETCollection >
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
Muon
Definition: Muon.py:1
TriggerDQMBase::ObjME::numerator
MonitorElement * numerator
Definition: TriggerDQMBase.h:27
BTaggingMonitor_cfi.met
met
Definition: BTaggingMonitor_cfi.py:84
METMonitor::requireValidHLTPaths_
const bool requireValidHLTPaths_
Definition: METMonitor.cc:43
edm::InputTag::label
std::string const & label() const
Definition: InputTag.h:36
METMonitor::metVsLS_
ObjME metVsLS_
Definition: METMonitor.cc:64
MakerMacros.h
METMonitor::warningPrinted4token_
std::vector< bool > warningPrinted4token_
Definition: METMonitor.cc:85
Track.h
TrackFwd.h
DEFINE_FWK_MODULE
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:16
dqm::legacy::DQMStore
Definition: DQMStore.h:728
LumiMonitor_cff.lsPSet
lsPSet
Definition: LumiMonitor_cff.py:33
edm::ConfigurationDescriptions::add
void add(std::string const &label, ParameterSetDescription const &psetDescription)
Definition: ConfigurationDescriptions.cc:57
SiPixelRawToDigiRegional_cfi.deltaPhi
deltaPhi
Definition: SiPixelRawToDigiRegional_cfi.py:9
TriggerDQMBase.h
TriggerDQMBase::setMETitle
void setMETitle(ObjME &me, const std::string &titleX, const std::string &titleY)
Definition: TriggerDQMBase.cc:3
GenericTriggerEventFlag.h
visualization-live-secondInstance_cfg.m
m
Definition: visualization-live-secondInstance_cfg.py:79
MuonFwd.h
reco::MuonCollection
std::vector< Muon > MuonCollection
collection of Muon objects
Definition: MuonFwd.h:9
TriggerDQMBase::MEbinning::xmax
double xmax
Definition: TriggerDQMBase.h:19
METMonitor::METMonitor
METMonitor(const edm::ParameterSet &)
Definition: METMonitor.cc:88
dqm::impl::MonitorElement::Fill
void Fill(long long x)
Definition: MonitorElement.h:290
METMonitor::N_PHI
static constexpr int N_PHI
Definition: METMonitor.cc:82
METMonitor::den_genTriggerEventFlag_
std::unique_ptr< GenericTriggerEventFlag > den_genTriggerEventFlag_
Definition: METMonitor.cc:70
METMonitor::metSelection_
StringCutObjectSelector< reco::MET, true > metSelection_
Definition: METMonitor.cc:72
Event
TriggerDQMBase::bookME
void bookME(DQMStore::IBooker &, ObjME &me, const std::string &histname, const std::string &histtitle, const uint nbins, const double xmin, const double xmax, const bool bookDen=true)
Definition: TriggerDQMBase.cc:15
METMonitor::bookHistograms
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: METMonitor.cc:136
METMonitor::eleSelection_
StringCutObjectSelector< reco::GsfElectron, true > eleSelection_
Definition: METMonitor.cc:74
METMonitor::hltPathsAreValid_
bool hltPathsAreValid_
Definition: METMonitor.cc:44
ParameterSetDescription.h
GsfElectron.h
TriggerDQMBase
Definition: TriggerDQMBase.h:8
METMonitor::nmuons_
unsigned nmuons_
Definition: METMonitor.cc:79
DQMEDAnalyzer.h
edm::ConfigurationDescriptions
Definition: ConfigurationDescriptions.h:28
METMonitor::DQMStore
dqm::reco::DQMStore DQMStore
Definition: METMonitor.cc:30
DQMEDAnalyzer
Definition: DQMEDAnalyzer.py:1
TriggerDQMBase::fillHistoPSetDescription
static void fillHistoPSetDescription(edm::ParameterSetDescription &pset)
Definition: TriggerDQMBase.cc:108
funct::true
true
Definition: Factorize.h:173
reco::PFMET
Definition: PFMET.h:18
GsfElectronFwd.h
edm::ParameterSet
Definition: ParameterSet.h:47
METMonitor::jetSelection_
StringCutObjectSelector< reco::PFJet, true > jetSelection_
Definition: METMonitor.cc:73
Event.h
ParameterSet
Definition: Functions.h:16
METMonitor::fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: METMonitor.cc:363
GenericTriggerEventFlag
Provides a code based selection for trigger and DCS information in order to have no failing filters i...
Definition: GenericTriggerEventFlag.h:42
METMonitor::muoInputTag_
edm::InputTag muoInputTag_
Definition: METMonitor.cc:49
BTaggingMonitor_cfi.metPSet
metPSet
Definition: BTaggingMonitor_cfi.py:12
PFMET.h
iEvent
int iEvent
Definition: GenABIO.cc:224
LumiMonitor_cff.histoPSet
histoPSet
Definition: LumiMonitor_cff.py:12
trackerHitRTTI::vector
Definition: trackerHitRTTI.h:21
edm::EventSetup
Definition: EventSetup.h:58
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
METMonitor::vtxInputTag_
edm::InputTag vtxInputTag_
Definition: METMonitor.cc:50
cms::cuda::device::unique_ptr
std::unique_ptr< T, impl::DeviceDeleter > unique_ptr
Definition: device_unique_ptr.h:33
VertexFwd.h
DDAxes::phi
submitPVResolutionJobs.desc
string desc
Definition: submitPVResolutionJobs.py:251
std
Definition: JetResolutionObject.h:76
ConfigurationDescriptions
StringCutObjectSelector.h
METMonitor::vtxToken_
edm::EDGetTokenT< reco::VertexCollection > vtxToken_
Definition: METMonitor.cc:56
reco::LeafCandidate::phi
double phi() const final
momentum azimuthal angle
Definition: LeafCandidate.h:148
reco::PFJetCollection
std::vector< PFJet > PFJetCollection
collection of PFJet objects
Definition: PFJetCollection.h:14
extraflags_cff.vtx
vtx
Definition: extraflags_cff.py:19
pwdgSkimBPark_cfi.electrons
electrons
Definition: pwdgSkimBPark_cfi.py:6
Vertex.h
Frameworkfwd.h
StringCutObjectSelector
Definition: StringCutObjectSelector.h:16
TriggerDQMBase::ObjME::denominator
MonitorElement * denominator
Definition: TriggerDQMBase.h:28
l1t::VertexCollection
std::vector< Vertex > VertexCollection
Definition: Vertex.h:12
METMonitor::metPhiME_
ObjME metPhiME_
Definition: METMonitor.cc:65
METMonitor::num_genTriggerEventFlag_
std::unique_ptr< GenericTriggerEventFlag > num_genTriggerEventFlag_
Definition: METMonitor.cc:69
TriggerDQMBase::MEbinning::nbins
uint nbins
Definition: TriggerDQMBase.h:17
TriggerDQMBase::MEbinning::xmin
double xmin
Definition: TriggerDQMBase.h:18
METMonitor::deltaphimetj1ME_
ObjME deltaphimetj1ME_
Definition: METMonitor.cc:66
METMonitor::eleInputTag_
edm::InputTag eleInputTag_
Definition: METMonitor.cc:48
METMonitor::MAX_PHI
static constexpr double MAX_PHI
Definition: METMonitor.cc:81
METMonitor::metME_variableBinning_
ObjME metME_variableBinning_
Definition: METMonitor.cc:63
MET
METMonitor::met_binning_
MEbinning met_binning_
Definition: METMonitor.cc:59
dqm::implementation::IBooker
Definition: DQMStore.h:43
ALCARECOPromptCalibProdSiPixelAli0T_cff.throw
throw
Definition: ALCARECOPromptCalibProdSiPixelAli0T_cff.py:9
METMonitor::~METMonitor
~METMonitor() override
Definition: METMonitor.cc:127
METMonitor::muoToken_
edm::EDGetTokenT< reco::MuonCollection > muoToken_
Definition: METMonitor.cc:55
trigObjTnPSource_cfi.bins
bins
Definition: trigObjTnPSource_cfi.py:20
EventSetup
ParameterSet.h
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
edm::Event
Definition: Event.h:73
edm::Log
Definition: MessageLogger.h:70
TriggerDQMBase::fillHistoLSPSetDescription
static void fillHistoLSPSetDescription(edm::ParameterSetDescription &pset)
Definition: TriggerDQMBase.cc:114
edm::InputTag
Definition: InputTag.h:15
reco::Vertex
Definition: Vertex.h:35
METMonitor::njets_
unsigned njets_
Definition: METMonitor.cc:77
METMonitor::eleToken_
edm::EDGetTokenT< reco::GsfElectronCollection > eleToken_
Definition: METMonitor.cc:54
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37
Run