CMS 3D CMS Logo

HLTJetMETValidation.cc
Go to the documentation of this file.
1 // Migrated to use DQMEDAnalyzer by: Jyothsna Rani Komaragiri, Oct 2014
2 
5 #include "Math/GenVector/VectorUtil.h"
6 
7 using namespace std;
8 using namespace edm;
9 using namespace reco;
10 using namespace l1extra;
11 using namespace trigger;
12 
14  : triggerEventObject_(
15  consumes<TriggerEventWithRefs>(ps.getUntrackedParameter<edm::InputTag>("triggerEventObject"))),
16  PFJetAlgorithm(consumes<PFJetCollection>(ps.getUntrackedParameter<edm::InputTag>("PFJetAlgorithm"))),
17  GenJetAlgorithm(consumes<GenJetCollection>(ps.getUntrackedParameter<edm::InputTag>("GenJetAlgorithm"))),
18  CaloMETColl(consumes<CaloMETCollection>(ps.getUntrackedParameter<edm::InputTag>("CaloMETCollection"))),
19  GenMETColl(consumes<GenMETCollection>(ps.getUntrackedParameter<edm::InputTag>("GenMETCollection"))),
20  HLTriggerResults(consumes<edm::TriggerResults>(ps.getParameter<edm::InputTag>("HLTriggerResults"))),
21  triggerTag_(ps.getUntrackedParameter<std::string>("DQMFolder", "SingleJet")),
22  patternJetTrg_(ps.getUntrackedParameter<std::string>("PatternJetTrg", "")),
23  patternMetTrg_(ps.getUntrackedParameter<std::string>("PatternMetTrg", "")),
24  patternMuTrg_(ps.getUntrackedParameter<std::string>("PatternMuTrg", "")),
25  HLTinit_(false) {
26  evtCnt = 0;
27 }
28 
30 
31 //
32 // member functions
33 //
34 
35 // ------------ method called when starting to processes a run ------------
36 void HLTJetMETValidation::dqmBeginRun(edm::Run const &iRun, edm::EventSetup const &iSetup) {
37  bool foundMuTrg = false;
38  std::string trgMuNm;
39  bool changedConfig = true;
40 
41  //--define search patterns
42  TPRegexp patternJet(patternJetTrg_);
43  TPRegexp patternMet(patternMetTrg_);
44  TPRegexp patternMu(patternMuTrg_);
45 
46  if (!hltConfig_.init(iRun, iSetup, "HLT", changedConfig)) {
47  edm::LogError("HLTJetMETValidation") << "Initialization of HLTConfigProvider failed!!";
48  return;
49  }
50 
51  std::vector<std::string> validTriggerNames = hltConfig_.triggerNames();
52  for (size_t j = 0; j < validTriggerNames.size(); j++) {
53  //---find the muon path
54  if (TString(validTriggerNames[j]).Contains(patternMu)) {
55  // std::cout <<validTriggerNames[j].c_str()<<std::endl;
56  if (!foundMuTrg)
57  trgMuNm = validTriggerNames[j];
58  foundMuTrg = true;
59  }
60  //---find the jet paths
61  if (TString(validTriggerNames[j]).Contains(patternJet)) {
62  hltTrgJet.push_back(validTriggerNames[j]);
63  }
64  //---find the met paths
65  if (TString(validTriggerNames[j]).Contains(patternMet)) {
66  hltTrgMet.push_back(validTriggerNames[j]);
67  }
68  }
69 
70  //----set the denominator paths
71  for (size_t it = 0; it < hltTrgJet.size(); it++) {
72  if (it == 0 && foundMuTrg)
73  hltTrgJetLow.push_back(trgMuNm); //--lowest threshold uses muon path
74  if (it == 0 && !foundMuTrg)
75  hltTrgJetLow.push_back(hltTrgJet[it]); //---if no muon then itself
76  if (it != 0)
77  hltTrgJetLow.push_back(hltTrgJet[it - 1]);
78  // std::cout<<hltTrgJet[it].c_str()<<"
79  // "<<hltTrgJetLow[it].c_str()<<std::endl;
80  }
81  int itm(0), itpm(0), itmh(0), itpmh(0);
82  for (size_t it = 0; it < hltTrgMet.size(); it++) {
83  if (TString(hltTrgMet[it]).Contains("PF")) {
84  if (TString(hltTrgMet[it]).Contains("MHT")) {
85  if (0 == itpmh) {
86  if (foundMuTrg)
87  hltTrgMetLow.push_back(trgMuNm);
88  else
89  hltTrgMetLow.push_back(hltTrgMet[it]);
90  } else
91  hltTrgMetLow.push_back(hltTrgMet[it - 1]);
92  itpmh++;
93  }
94  if (TString(hltTrgMet[it]).Contains("MET")) {
95  if (0 == itpm) {
96  if (foundMuTrg)
97  hltTrgMetLow.push_back(trgMuNm);
98  else
99  hltTrgMetLow.push_back(hltTrgMet[it]);
100  } else
101  hltTrgMetLow.push_back(hltTrgMet[it - 1]);
102  itpm++;
103  }
104  } else {
105  if (TString(hltTrgMet[it]).Contains("MHT")) {
106  if (0 == itmh) {
107  if (foundMuTrg)
108  hltTrgMetLow.push_back(trgMuNm);
109  else
110  hltTrgMetLow.push_back(hltTrgMet[it]);
111  } else
112  hltTrgMetLow.push_back(hltTrgMet[it - 1]);
113  itmh++;
114  }
115  if (TString(hltTrgMet[it]).Contains("MET")) {
116  if (0 == itm) {
117  if (foundMuTrg)
118  hltTrgMetLow.push_back(trgMuNm);
119  else
120  hltTrgMetLow.push_back(hltTrgMet[it]);
121  } else
122  hltTrgMetLow.push_back(hltTrgMet[it - 1]);
123  itm++;
124  }
125  }
126  // std::cout<<hltTrgMet[it].c_str()<<"
127  // "<<hltTrgMetLow[it].c_str()<<std::endl;
128  }
129 }
130 
131 // ------------ method called to book histograms before starting event loop
132 // ------------
134  edm::Run const &iRun,
135  edm::EventSetup const &iSetup) {
136  //----define DQM folders and elements
137  for (size_t it = 0; it < hltTrgJet.size(); it++) {
138  // std::cout<<hltTrgJet[it].c_str()<<"
139  // "<<hltTrgJetLow[it].c_str()<<std::endl;
141  // std::cout << "str = " << triggerTag_+hltTrgJet[it].c_str() << std::endl;
142  // std::cout << "trgPathName = " << trgPathName << std::endl;
143  iBooker.setCurrentFolder(trgPathName);
144  _meHLTJetPt.push_back(iBooker.book1D("_meHLTJetPt", "Single HLT Jet Pt", 100, 0, 500));
145  _meHLTJetPtTrgMC.push_back(iBooker.book1D("_meHLTJetPtTrgMC", "Single HLT Jet Pt - HLT Triggered", 100, 0, 500));
146  _meHLTJetPtTrg.push_back(iBooker.book1D("_meHLTJetPtTrg", "Single HLT Jet Pt - HLT Triggered", 100, 0, 500));
147  _meHLTJetPtTrgLow.push_back(
148  iBooker.book1D("_meHLTJetPtTrgLow", "Single HLT Jet Pt - HLT Triggered Low", 100, 0, 500));
149 
150  _meHLTJetEta.push_back(iBooker.book1D("_meHLTJetEta", "Single HLT Jet Eta", 100, -10, 10));
151  _meHLTJetEtaTrgMC.push_back(
152  iBooker.book1D("_meHLTJetEtaTrgMC", "Single HLT Jet Eta - HLT Triggered", 100, -10, 10));
153  _meHLTJetEtaTrg.push_back(iBooker.book1D("_meHLTJetEtaTrg", "Single HLT Jet Eta - HLT Triggered", 100, -10, 10));
154  _meHLTJetEtaTrgLow.push_back(
155  iBooker.book1D("_meHLTJetEtaTrgLow", "Single HLT Jet Eta - HLT Triggered Low", 100, -10, 10));
156 
157  _meHLTJetPhi.push_back(iBooker.book1D("_meHLTJetPhi", "Single HLT Jet Phi", 100, -4., 4.));
158  _meHLTJetPhiTrgMC.push_back(
159  iBooker.book1D("_meHLTJetPhiTrgMC", "Single HLT Jet Phi - HLT Triggered", 100, -4., 4.));
160  _meHLTJetPhiTrg.push_back(iBooker.book1D("_meHLTJetPhiTrg", "Single HLT Jet Phi - HLT Triggered", 100, -4., 4.));
161  _meHLTJetPhiTrgLow.push_back(
162  iBooker.book1D("_meHLTJetPhiTrgLow", "Single HLT Jet Phi - HLT Triggered Low", 100, -4., 4.));
163 
164  _meGenJetPt.push_back(iBooker.book1D("_meGenJetPt", "Single Generated Jet Pt", 100, 0, 500));
165  _meGenJetPtTrgMC.push_back(
166  iBooker.book1D("_meGenJetPtTrgMC", "Single Generated Jet Pt - HLT Triggered", 100, 0, 500));
167  _meGenJetPtTrg.push_back(iBooker.book1D("_meGenJetPtTrg", "Single Generated Jet Pt - HLT Triggered", 100, 0, 500));
168  _meGenJetPtTrgLow.push_back(
169  iBooker.book1D("_meGenJetPtTrgLow", "Single Generated Jet Pt - HLT Triggered Low", 100, 0, 500));
170 
171  _meGenJetEta.push_back(iBooker.book1D("_meGenJetEta", "Single Generated Jet Eta", 100, -10, 10));
172  _meGenJetEtaTrgMC.push_back(
173  iBooker.book1D("_meGenJetEtaTrgMC", "Single Generated Jet Eta - HLT Triggered", 100, -10, 10));
174  _meGenJetEtaTrg.push_back(
175  iBooker.book1D("_meGenJetEtaTrg", "Single Generated Jet Eta - HLT Triggered", 100, -10, 10));
176  _meGenJetEtaTrgLow.push_back(
177  iBooker.book1D("_meGenJetEtaTrgLow", "Single Generated Jet Eta - HLT Triggered Low", 100, -10, 10));
178 
179  _meGenJetPhi.push_back(iBooker.book1D("_meGenJetPhi", "Single Generated Jet Phi", 100, -4., 4.));
180  _meGenJetPhiTrgMC.push_back(
181  iBooker.book1D("_meGenJetPhiTrgMC", "Single Generated Jet Phi - HLT Triggered", 100, -4., 4.));
182  _meGenJetPhiTrg.push_back(
183  iBooker.book1D("_meGenJetPhiTrg", "Single Generated Jet Phi - HLT Triggered", 100, -4., 4.));
184  _meGenJetPhiTrgLow.push_back(
185  iBooker.book1D("_meGenJetPhiTrgLow", "Single Generated Jet Phi - HLT Triggered Low", 100, -4., 4.));
186  }
187  for (size_t it = 0; it < hltTrgMet.size(); it++) {
188  // std::cout<<hltTrgMet[it].c_str()<<"
189  // "<<hltTrgMetLow[it].c_str()<<std::endl;
191  iBooker.setCurrentFolder(trgPathName);
192  _meHLTMET.push_back(iBooker.book1D("_meHLTMET", "HLT Missing ET", 100, 0, 500));
193  _meHLTMETTrgMC.push_back(iBooker.book1D("_meHLTMETTrgMC", "HLT Missing ET - HLT Triggered", 100, 0, 500));
194  _meHLTMETTrg.push_back(iBooker.book1D("_meHLTMETTrg", "HLT Missing ET - HLT Triggered", 100, 0, 500));
195  _meHLTMETTrgLow.push_back(iBooker.book1D("_meHLTMETTrgLow", "HLT Missing ET - HLT Triggered Low", 100, 0, 500));
196 
197  _meGenMET.push_back(iBooker.book1D("_meGenMET", "Generated Missing ET", 100, 0, 500));
198  _meGenMETTrgMC.push_back(iBooker.book1D("_meGenMETTrgMC", "Generated Missing ET - HLT Triggered", 100, 0, 500));
199  _meGenMETTrg.push_back(iBooker.book1D("_meGenMETTrg", "Generated Missing ET - HLT Triggered", 100, 0, 500));
200  _meGenMETTrgLow.push_back(
201  iBooker.book1D("_meGenMETTrgLow", "Generated Missing ET - HLT Triggered Low", 100, 0, 500));
202  }
203 }
204 
205 // ------------ method called for each event ------------
207  using namespace std;
208  using namespace edm;
209  using namespace reco;
210  using namespace l1extra;
211  using namespace trigger;
212 
213  evtCnt++;
214 
215  // get The triggerEvent
217  iEvent.getByToken(triggerEventObject_, trigEv);
218 
219  // get TriggerResults object
220  bool gotHLT = true;
221  std::vector<bool> myTrigJ;
222  for (size_t it = 0; it < hltTrgJet.size(); it++)
223  myTrigJ.push_back(false);
224  std::vector<bool> myTrigJLow;
225  for (size_t it = 0; it < hltTrgJetLow.size(); it++)
226  myTrigJLow.push_back(false);
227  std::vector<bool> myTrigM;
228  for (size_t it = 0; it < hltTrgMet.size(); it++)
229  myTrigM.push_back(false);
230  std::vector<bool> myTrigMLow;
231  for (size_t it = 0; it < hltTrgMetLow.size(); it++)
232  myTrigMLow.push_back(false);
233 
235  iEvent.getByToken(HLTriggerResults, hltresults);
236  if (!hltresults.isValid()) {
237  // if (evtCnt==1) edm::LogWarning("HLTJetMETValidation") << " -- No
238  // HLTRESULTS";
239  gotHLT = false;
240  }
241 
242  if (gotHLT) {
243  const edm::TriggerNames &triggerNames = iEvent.triggerNames(*hltresults);
245 
246  //---pick-up the jet trigger decisions
247  for (size_t it = 0; it < hltTrgJet.size(); it++) {
248  trig_iter = hltTriggerMap.find(hltTrgJet[it]);
249  if (trig_iter == hltTriggerMap.end()) {
250  // std::cout << "Could not find trigger path with name: " <<
251  // _probefilter.label() << std::endl; if (evtCnt==1)
252  // edm::LogWarning("HLTJetMETValidation") << "Could not find trigger
253  // path with name: " << _probefilter.label();
254  } else {
255  myTrigJ[it] = trig_iter->second;
256  }
257  // std::cout<<hltTrgJet[it].c_str()<<" "<<myTrigJ[it]<<std::endl;
258  }
259  for (size_t it = 0; it < hltTrgJetLow.size(); it++) {
261  if (trig_iter == hltTriggerMap.end()) {
262  // std::cout << "Could not find trigger path with name: " <<
263  // _probefilter.label() << std::endl; if (evtCnt==1)
264  // edm::LogWarning("HLTJetMETValidation") << "Could not find trigger
265  // path with name: " << _probefilter.label();
266  } else {
267  myTrigJLow[it] = trig_iter->second;
268  }
269  // std::cout<<hltTrgJetLow[it].c_str()<<" "<<myTrigJLow[it]<<std::endl;
270  }
271  //---pick-up the met trigger decisions
272  for (size_t it = 0; it < hltTrgMet.size(); it++) {
273  trig_iter = hltTriggerMap.find(hltTrgMet[it]);
274  if (trig_iter == hltTriggerMap.end()) {
275  // std::cout << "Could not find trigger path with name: " <<
276  // _probefilter.label() << std::endl; if (evtCnt==1)
277  // edm::LogWarning("HLTJetMETValidation") << "Could not find trigger
278  // path with name: " << _probefilter.label();
279  } else {
280  myTrigM[it] = trig_iter->second;
281  }
282  // std::cout<<hltTrgMet[it].c_str()<<" "<<myTrigM[it]<<std::endl;
283  }
284  for (size_t it = 0; it < hltTrgMetLow.size(); it++) {
286  if (trig_iter == hltTriggerMap.end()) {
287  // std::cout << "Could not find trigger path with name: " <<
288  // _probefilter.label() << std::endl; if (evtCnt==1)
289  // edm::LogWarning("HLTJetMETValidation") << "Could not find trigger
290  // path with name: " << _probefilter.label();
291  } else {
292  myTrigMLow[it] = trig_iter->second;
293  }
294  // std::cout<<hltTrgMetLow[it].c_str()<<" "<<myTrigMLow[it]<<std::endl;
295  }
296  }
297 
298  // --- Fill histos for PFJet paths ---
299  // HLT jets namely hltAK4PFJets
301  iEvent.getByToken(PFJetAlgorithm, pfJets);
302  double pfJetPt = -1.;
303  double pfJetEta = -999.;
304  double pfJetPhi = -999.;
305 
306  if (pfJets.isValid()) {
307  // Loop over the PFJets and fill some histograms
308  int jetInd = 0;
309  for (PFJetCollection::const_iterator pf = pfJets->begin(); pf != pfJets->end(); ++pf) {
310  // std::cout << "PF JET #" << jetInd << std::endl << pf->print() <<
311  // std::endl;
312  if (jetInd == 0) {
313  pfJetPt = pf->pt();
314  pfJetEta = pf->eta();
315  pfJetPhi = pf->phi();
316  for (size_t it = 0; it < hltTrgJet.size(); it++) {
317  _meHLTJetPt[it]->Fill(pfJetPt);
318  _meHLTJetEta[it]->Fill(pfJetEta);
319  _meHLTJetPhi[it]->Fill(pfJetPhi);
320  if (myTrigJ[it])
321  _meHLTJetPtTrgMC[it]->Fill(pfJetPt);
322  if (myTrigJ[it])
323  _meHLTJetEtaTrgMC[it]->Fill(pfJetEta);
324  if (myTrigJ[it])
325  _meHLTJetPhiTrgMC[it]->Fill(pfJetPhi);
326  if (myTrigJ[it] && myTrigJLow[it])
327  _meHLTJetPtTrg[it]->Fill(pfJetPt);
328  if (myTrigJ[it] && myTrigJLow[it])
329  _meHLTJetEtaTrg[it]->Fill(pfJetEta);
330  if (myTrigJ[it] && myTrigJLow[it])
331  _meHLTJetPhiTrg[it]->Fill(pfJetPhi);
332  if (myTrigJLow[it])
333  _meHLTJetPtTrgLow[it]->Fill(pfJetPt);
334  if (myTrigJLow[it])
335  _meHLTJetEtaTrgLow[it]->Fill(pfJetEta);
336  if (myTrigJLow[it])
337  _meHLTJetPhiTrgLow[it]->Fill(pfJetPhi);
338  }
339  jetInd++;
340  }
341  } // loop over pfjets
342  } else {
343  // std::cout << " -- No PFJets" << std::endl;
344  // if (evtCnt==1) edm::LogWarning("HLTJetMETValidation") << " -- No
345  // PFJets";
346  }
347 
348  // GenJets
350  iEvent.getByToken(GenJetAlgorithm, genJets);
351  double genJetPt = -1.;
352  double genJetEta = -999.;
353  double genJetPhi = -999.;
354 
355  if (genJets.isValid()) {
356  // Loop over the GenJets and fill some histograms
357  int jetInd = 0;
358  for (GenJetCollection::const_iterator gen = genJets->begin(); gen != genJets->end(); ++gen) {
359  if (jetInd == 0) {
360  genJetPt = gen->pt();
361  genJetEta = gen->eta();
362  genJetPhi = gen->phi();
363  for (size_t it = 0; it < hltTrgJet.size(); it++) {
364  _meGenJetPt[it]->Fill(genJetPt);
365  _meGenJetEta[it]->Fill(genJetEta);
366  _meGenJetPhi[it]->Fill(genJetPhi);
367  if (myTrigJ[it])
368  _meGenJetPtTrgMC[it]->Fill(genJetPt);
369  if (myTrigJ[it])
370  _meGenJetEtaTrgMC[it]->Fill(genJetEta);
371  if (myTrigJ[it])
372  _meGenJetPhiTrgMC[it]->Fill(genJetPhi);
373  if (myTrigJ[it] && myTrigJLow[it])
374  _meGenJetPtTrg[it]->Fill(genJetPt);
375  if (myTrigJ[it] && myTrigJLow[it])
376  _meGenJetEtaTrg[it]->Fill(genJetEta);
377  if (myTrigJ[it] && myTrigJLow[it])
378  _meGenJetPhiTrg[it]->Fill(genJetPhi);
379  if (myTrigJLow[it])
380  _meGenJetPtTrgLow[it]->Fill(genJetPt);
381  if (myTrigJLow[it])
382  _meGenJetEtaTrgLow[it]->Fill(genJetEta);
383  if (myTrigJLow[it])
384  _meGenJetPhiTrgLow[it]->Fill(genJetPhi);
385  }
386  jetInd++;
387  }
388  }
389  } else {
390  // std::cout << " -- No GenJets" << std::endl;
391  // if (evtCnt==1) edm::LogWarning("HLTJetMETValidation") << " -- No
392  // GenJets";
393  }
394 
395  // --- Fill histos for PFMET paths ---
396  // HLT MET namely hltmet
398  iEvent.getByToken(CaloMETColl, recmet);
399 
400  double calMet = -1;
401  if (recmet.isValid()) {
402  typedef CaloMETCollection::const_iterator cmiter;
403  // std::cout << "Size of MET collection" << recmet.size() << std::endl;
404  for (cmiter i = recmet->begin(); i != recmet->end(); i++) {
405  calMet = i->pt();
406  for (size_t it = 0; it < hltTrgMet.size(); it++) {
407  _meHLTMET[it]->Fill(calMet);
408  if (myTrigM.size() > it && myTrigM[it])
409  _meHLTMETTrgMC[it]->Fill(calMet);
410  if (myTrigM.size() > it && myTrigMLow.size() > it && myTrigM[it] && myTrigMLow[it])
411  _meHLTMETTrg[it]->Fill(calMet);
412  if (myTrigMLow.size() > it && myTrigMLow[it])
413  _meHLTMETTrgLow[it]->Fill(calMet);
414  }
415  }
416  } else {
417  // std::cout << " -- No MET Collection with name: " << CaloMETColl <<
418  // std::endl; if (evtCnt==1) edm::LogWarning("HLTJetMETValidation") << " --
419  // No MET Collection with name: "<< CaloMETColl;
420  }
421 
423  iEvent.getByToken(GenMETColl, genmet);
424 
425  double genMet = -1;
426  if (genmet.isValid()) {
427  typedef GenMETCollection::const_iterator cmiter;
428  for (cmiter i = genmet->begin(); i != genmet->end(); i++) {
429  genMet = i->pt();
430  for (size_t it = 0; it < hltTrgMet.size(); it++) {
431  _meGenMET[it]->Fill(genMet);
432  if (myTrigM.size() > it && myTrigM[it])
433  _meGenMETTrgMC[it]->Fill(genMet);
434  if (myTrigM.size() > it && myTrigMLow.size() > it && myTrigM[it] && myTrigMLow[it])
435  _meGenMETTrg[it]->Fill(genMet);
436  if (myTrigMLow.size() > it && myTrigMLow[it])
438  }
439  }
440  } else {
441  // std::cout << " -- No GenMET Collection with name: " << GenMETColl <<
442  // std::endl; if (evtCnt==1) edm::LogWarning("HLTJetMETValidation") << " --
443  // No GenMET Collection with name: "<< GenMETColl;
444  }
445 }
446 
448  int ntrigs = hltresults.size();
449  if (!HLTinit_) {
450  HLTinit_ = true;
451 
452  for (int itrig = 0; itrig != ntrigs; ++itrig) {
453  // std::cout << "trigger " << itrig << ": " << trigName << std::endl;
454  }
455  }
456 
457  for (int itrig = 0; itrig != ntrigs; ++itrig) {
458  std::string trigName = triggerNames.triggerName(itrig);
459  bool accept = hltresults.accept(itrig);
460 
461  // if (accept) _triggerResults->Fill(float(itrig));
462 
463  // fill the trigger map
466  if (trig_iter == hltTriggerMap.end())
467  hltTriggerMap.insert(valType(trigName, accept));
468  else
469  trig_iter->second = accept;
470  }
471 }
trigger::TriggerEventWithRefs
Definition: TriggerEventWithRefs.h:27
HLTJetMETValidation::_meHLTJetEtaTrgMC
std::vector< MonitorElement * > _meHLTJetEtaTrgMC
Definition: HLTJetMETValidation.h:82
HLTJetMETValidation::~HLTJetMETValidation
~HLTJetMETValidation() override
Definition: HLTJetMETValidation.cc:29
HLTJetMETValidation::_meHLTJetPt
std::vector< MonitorElement * > _meHLTJetPt
Definition: HLTJetMETValidation.h:77
HLTJetMETValidation::HLTinit_
bool HLTinit_
Definition: HLTJetMETValidation.h:128
mps_fire.i
i
Definition: mps_fire.py:428
HLTJetMETValidation::hltTrgJet
std::vector< std::string > hltTrgJet
Definition: HLTJetMETValidation.h:118
funct::false
false
Definition: Factorize.h:29
HLTBitAnalyser_cfi.hltresults
hltresults
Definition: HLTBitAnalyser_cfi.py:13
HLTJetMETValidation::dqmBeginRun
void dqmBeginRun(edm::Run const &iRun, edm::EventSetup const &iSetup) override
Definition: HLTJetMETValidation.cc:36
reco::GenJetCollection
std::vector< GenJet > GenJetCollection
collection of GenJet objects
Definition: GenJetCollection.h:14
edm::Run
Definition: Run.h:45
HLTJetMETValidation::_meGenJetEtaTrg
std::vector< MonitorElement * > _meGenJetEtaTrg
Definition: HLTJetMETValidation.h:96
HLTJetMETValidation::triggerEventObject_
edm::EDGetTokenT< trigger::TriggerEventWithRefs > triggerEventObject_
InputTag of TriggerEventWithRefs to analyze.
Definition: HLTJetMETValidation.h:67
HLTJetMETValidation::trig_iter
std::map< std::string, bool >::iterator trig_iter
Definition: HLTJetMETValidation.h:126
edm
HLT enums.
Definition: AlignableModifier.h:19
HLTJetMETValidation::_meHLTJetPtTrgLow
std::vector< MonitorElement * > _meHLTJetPtTrgLow
Definition: HLTJetMETValidation.h:80
HLTJetMETValidation::evtCnt
int evtCnt
Definition: HLTJetMETValidation.h:115
dqm::implementation::NavigatorBase::setCurrentFolder
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:32
HLTJetMETValidation::_meHLTJetPhi
std::vector< MonitorElement * > _meHLTJetPhi
Definition: HLTJetMETValidation.h:85
RazorAnalyzer.genmet
genmet
do same things for GEN
Definition: RazorAnalyzer.py:121
HLTJetMETValidation::_meGenJetPhiTrgLow
std::vector< MonitorElement * > _meGenJetPhiTrgLow
Definition: HLTJetMETValidation.h:101
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:45
HLTJetMETValidation::CaloMETColl
edm::EDGetTokenT< reco::CaloMETCollection > CaloMETColl
Definition: HLTJetMETValidation.h:70
edm::Handle
Definition: AssociativeIterator.h:50
HLTJetMETValidation::_meGenJetPhiTrgMC
std::vector< MonitorElement * > _meGenJetPhiTrgMC
Definition: HLTJetMETValidation.h:99
HLTJetMETValidation::_meHLTMETTrgMC
std::vector< MonitorElement * > _meHLTMETTrgMC
Definition: HLTJetMETValidation.h:104
HLTJetMETValidation::_meHLTJetPhiTrgMC
std::vector< MonitorElement * > _meHLTJetPhiTrgMC
Definition: HLTJetMETValidation.h:86
HLTJetMETValidation::patternMetTrg_
std::string patternMetTrg_
Definition: HLTJetMETValidation.h:75
HLTJetMETValidation::_meGenMETTrgLow
std::vector< MonitorElement * > _meGenMETTrgLow
Definition: HLTJetMETValidation.h:110
accept
bool accept(const edm::Event &event, const edm::TriggerResults &triggerTable, const std::string &triggerPath)
Definition: TopDQMHelpers.h:30
HLTJetMETValidation::_meHLTJetPtTrg
std::vector< MonitorElement * > _meHLTJetPtTrg
Definition: HLTJetMETValidation.h:79
HLTJetMETValidation::_meHLTMETTrg
std::vector< MonitorElement * > _meHLTMETTrg
Definition: HLTJetMETValidation.h:105
HLTJetMETValidation::patternJetTrg_
std::string patternJetTrg_
Definition: HLTJetMETValidation.h:75
L1TEGammaOffline_cfi.triggerNames
triggerNames
Definition: L1TEGammaOffline_cfi.py:40
HLTJetMETValidation::HLTJetMETValidation
HLTJetMETValidation(const edm::ParameterSet &)
Definition: HLTJetMETValidation.cc:13
HLTJetMETValidation::_meGenJetPtTrg
std::vector< MonitorElement * > _meGenJetPtTrg
Definition: HLTJetMETValidation.h:92
HLTJetMETValidation::_meGenMETTrgMC
std::vector< MonitorElement * > _meGenMETTrgMC
Definition: HLTJetMETValidation.h:108
HLTJetMETValidation::HLTriggerResults
edm::EDGetTokenT< edm::TriggerResults > HLTriggerResults
Definition: HLTJetMETValidation.h:72
gen
Definition: PythiaDecays.h:13
HLTJetMETValidation::bookHistograms
void bookHistograms(DQMStore::IBooker &, edm::Run const &iRun, edm::EventSetup const &iSetup) override
Definition: HLTJetMETValidation.cc:133
HLTConfigProvider::removeVersion
static const std::string removeVersion(const std::string &trigger)
Definition: HLTConfigProvider.cc:238
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
HLTJetMETValidation::PFJetAlgorithm
edm::EDGetTokenT< reco::PFJetCollection > PFJetAlgorithm
Definition: HLTJetMETValidation.h:68
EgHLTOffTrigSelection_cfi.trigName
trigName
Definition: EgHLTOffTrigSelection_cfi.py:8
HLTJetMETValidation::patternMuTrg_
std::string patternMuTrg_
Definition: HLTJetMETValidation.h:75
HLTJetMETValidation::_meGenJetPt
std::vector< MonitorElement * > _meGenJetPt
Definition: HLTJetMETValidation.h:90
HLTJetMETValidation::hltTrgMet
std::vector< std::string > hltTrgMet
Definition: HLTJetMETValidation.h:120
HLTJetMETValidation::_meHLTMETTrgLow
std::vector< MonitorElement * > _meHLTMETTrgLow
Definition: HLTJetMETValidation.h:106
edm::ParameterSet
Definition: ParameterSet.h:47
HLTJetMETValidation::_meGenMET
std::vector< MonitorElement * > _meGenMET
Definition: HLTJetMETValidation.h:107
SingleJetValidation_cfi.PFJetAlgorithm
PFJetAlgorithm
Definition: SingleJetValidation_cfi.py:16
HLTJetMETValidation::_meHLTJetPhiTrg
std::vector< MonitorElement * > _meHLTJetPhiTrg
Definition: HLTJetMETValidation.h:87
HLTJetMETValidation::_meHLTJetPhiTrgLow
std::vector< MonitorElement * > _meHLTJetPhiTrgLow
Definition: HLTJetMETValidation.h:88
HLTJetMETValidation::_meHLTJetEtaTrgLow
std::vector< MonitorElement * > _meHLTJetEtaTrgLow
Definition: HLTJetMETValidation.h:84
TriggerNames.h
iEvent
int iEvent
Definition: GenABIO.cc:224
ttbarCategorization_cff.genJets
genJets
Definition: ttbarCategorization_cff.py:29
edm::EventSetup
Definition: EventSetup.h:57
HLTJetMETValidation::analyze
void analyze(const edm::Event &, const edm::EventSetup &) override
Definition: HLTJetMETValidation.cc:206
reco::JetExtendedAssociation::value_type
Container::value_type value_type
Definition: JetExtendedAssociation.h:30
HLTJetMETValidation::_meGenJetPhi
std::vector< MonitorElement * > _meGenJetPhi
Definition: HLTJetMETValidation.h:98
edm::LogError
Log< level::Error, false > LogError
Definition: MessageLogger.h:123
HcalObjRepresent::Fill
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
Definition: HcalObjRepresent.h:1053
HLTJetMETValidation::_meGenJetPhiTrg
std::vector< MonitorElement * > _meGenJetPhiTrg
Definition: HLTJetMETValidation.h:100
HLTJetMETValidation::_meHLTJetEta
std::vector< MonitorElement * > _meHLTJetEta
Definition: HLTJetMETValidation.h:81
HepMCValidationHelper::genMet
TLorentzVector genMet(const HepMC::GenEvent *all, double etamin=-9999., double etamax=9999.)
Definition: HepMCValidationHelper.cc:278
HLTJetMETValidation::hltTrgJetLow
std::vector< std::string > hltTrgJetLow
Definition: HLTJetMETValidation.h:119
HLTJetMETValidation::hltTriggerMap
std::map< std::string, bool > hltTriggerMap
Definition: HLTJetMETValidation.h:125
HLTJetMETValidation::_meGenJetPtTrgMC
std::vector< MonitorElement * > _meGenJetPtTrgMC
Definition: HLTJetMETValidation.h:91
HLTJetMETValidation::_meHLTJetPtTrgMC
std::vector< MonitorElement * > _meHLTJetPtTrgMC
Definition: HLTJetMETValidation.h:78
HLTJetMETValidation::_meGenMETTrg
std::vector< MonitorElement * > _meGenMETTrg
Definition: HLTJetMETValidation.h:109
std
Definition: JetResolutionObject.h:76
HLTJetMETValidation::triggerTag_
std::string triggerTag_
Definition: HLTJetMETValidation.h:75
HLTConfigProvider::init
bool init(const edm::Run &iRun, const edm::EventSetup &iSetup, const std::string &processName, bool &changed)
d'tor
Definition: HLTConfigProvider.cc:36
reco::PFJetCollection
std::vector< PFJet > PFJetCollection
collection of PFJet objects
Definition: PFJetCollection.h:14
HLTJetMETValidation::_meGenJetEtaTrgLow
std::vector< MonitorElement * > _meGenJetEtaTrgLow
Definition: HLTJetMETValidation.h:97
HLTJetMETValidation::_meGenJetPtTrgLow
std::vector< MonitorElement * > _meGenJetPtTrgLow
Definition: HLTJetMETValidation.h:93
HLTJetMETValidation::hltConfig_
HLTConfigProvider hltConfig_
Definition: HLTJetMETValidation.h:117
packedPFCandidateRefMixer_cfi.pf
pf
Definition: packedPFCandidateRefMixer_cfi.py:4
edm::TriggerNames
Definition: TriggerNames.h:55
HLTJetMETValidation::_meGenJetEtaTrgMC
std::vector< MonitorElement * > _meGenJetEtaTrgMC
Definition: HLTJetMETValidation.h:95
relval_steps.gen
def gen(fragment, howMuch)
Production test section ####.
Definition: relval_steps.py:509
dqm::implementation::IBooker
Definition: DQMStore.h:43
HLTJetMETValidation::_meHLTMET
std::vector< MonitorElement * > _meHLTMET
Definition: HLTJetMETValidation.h:103
trigger
Definition: HLTPrescaleTableCond.h:8
CaloMETCollection
Collection of Calo MET.
HLTJetMETValidation::_meHLTJetEtaTrg
std::vector< MonitorElement * > _meHLTJetEtaTrg
Definition: HLTJetMETValidation.h:83
HLTJetMETValidation.h
HLTConfigProvider::triggerNames
const std::vector< std::string > & triggerNames() const
names of trigger paths
Definition: HLTConfigProvider.h:69
GenMETCollection
Collection of Gen MET.
HLTJetMETValidation::GenMETColl
edm::EDGetTokenT< reco::GenMETCollection > GenMETColl
Definition: HLTJetMETValidation.h:71
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
l1extra
Definition: L1EmParticle.h:26
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
skim_physdecl_cfg.HLTriggerResults
HLTriggerResults
Definition: skim_physdecl_cfg.py:10
SingleJetValidation_cfi.GenJetAlgorithm
GenJetAlgorithm
Definition: SingleJetValidation_cfi.py:17
edm::Event
Definition: Event.h:73
HLTJetMETValidation::_meGenJetEta
std::vector< MonitorElement * > _meGenJetEta
Definition: HLTJetMETValidation.h:94
HLTJetMETValidation::hltTrgMetLow
std::vector< std::string > hltTrgMetLow
Definition: HLTJetMETValidation.h:121
edm::InputTag
Definition: InputTag.h:15
edm::TriggerResults
Definition: TriggerResults.h:35
HLTJetMETValidation::GenJetAlgorithm
edm::EDGetTokenT< reco::GenJetCollection > GenJetAlgorithm
Definition: HLTJetMETValidation.h:69
pfJetBenchmark_cfi.pfJets
pfJets
Definition: pfJetBenchmark_cfi.py:4
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
HLTJetMETValidation::getHLTResults
void getHLTResults(const edm::TriggerResults &, const edm::TriggerNames &triggerNames)
Definition: HLTJetMETValidation.cc:447