23 jetCollectionTag_ (conf.getUntrackedParameter<
edm::InputTag>(
"jetCollectionTag")),
24 widejetsCollectionTag_ (conf.getUntrackedParameter<
edm::InputTag>(
"widejetsCollectionTag")),
25 metCollectionTag_ (conf.getUntrackedParameter<
edm::InputTag>(
"metCollectionTag")),
26 metCleanCollectionTag_ (conf.getUntrackedParameter<
edm::InputTag>(
"metCleanCollectionTag")),
27 numwidejets_ (conf.getParameter<unsigned
int>(
"numwidejets")),
28 etawidejets_ (conf.getParameter<double>(
"etawidejets")),
29 ptwidejets_ (conf.getParameter<double>(
"ptwidejets")),
30 detawidejets_ (conf.getParameter<double>(
"detawidejets")),
31 dphiwidejets_ (conf.getParameter<double>(
"dphiwidejets")),
32 maxEMfraction_ (conf.getParameter<double>(
"maxEMfraction")),
33 maxHADfraction_ (conf.getParameter<double>(
"maxHADfraction")),
36 triggerConfiguration_ (conf.
getParameterSet(
"triggerConfiguration"),consumesCollector()) {
50 const int N_mass_bins=83;
51 float massBins[N_mass_bins+1] = {1, 3, 6, 10, 16, 23, 31, 40, 50, 61, 74, 88, 103, 119, 137, 156, 176, 197, 220, 244, 270, 296, 325, 354, 386, 419, 453, 489, 526, 565, 606, 649, 693, 740, 788, 838, 890, 944, 1000, 1058, 1118, 1181, 1246, 1313, 1383, 1455, 1530, 1607, 1687, 1770, 1856, 1945, 2037, 2132, 2231, 2332, 2438, 2546, 2659, 2775, 2895, 3019, 3147, 3279, 3416, 3558, 3704, 3854, 4010, 4171, 4337, 4509, 4686, 4869, 5058, 5253, 5455, 5663, 5877, 6099, 6328, 6564, 6808, 7000};
72 "h1_MjjWide_finalSel",
73 "M_{jj} WideJets (final selection)",
75 "M_{jj} WideJets [GeV]",
81 "h1_MjjWide_finalSel_varbin",
82 "M_{jj} WideJets (final selection)",
83 N_mass_bins, massBins,
84 "M_{jj} WideJets [GeV]",
90 "h1_MjjWide_finalSel_WithoutNoiseFilter",
91 "M_{jj} WideJets (final selection, without noise filters)",
93 "M_{jj} WideJets [GeV]",
99 "h1_MjjWide_finalSel_WithoutNoiseFilter_varbin",
100 "M_{jj} WideJets (final selection, without noise filters)",
101 N_mass_bins, massBins,
102 "M_{jj} WideJets [GeV]",
108 "h1_MjjWide_deta_0p0_0p5",
109 "M_{jj} WideJets (0.0<=#Delta#eta<0.5)",
111 "M_{jj} WideJets [GeV]",
117 "h1_MjjWide_deta_0p5_1p0",
118 "M_{jj} WideJets (0.5<=#Delta#eta<1.0)",
120 "M_{jj} WideJets [GeV]",
126 "h1_MjjWide_deta_1p0_1p5",
127 "M_{jj} WideJets (1.0<=#Delta#eta<1.5)",
129 "M_{jj} WideJets [GeV]",
135 "h1_MjjWide_deta_1p5_2p0",
136 "M_{jj} WideJets (1.5<=#Delta#eta<2.0)",
138 "M_{jj} WideJets [GeV]",
144 "h1_MjjWide_deta_2p0_2p5",
145 "M_{jj} WideJets (2.0<=#Delta#eta<2.5)",
147 "M_{jj} WideJets [GeV]",
153 "h1_MjjWide_deta_2p5_3p0",
154 "M_{jj} WideJets (2.5<=#Delta#eta<3.0)",
156 "M_{jj} WideJets [GeV]",
162 "h1_MjjWide_deta_3p0_inf",
163 "M_{jj} WideJets (#Delta#eta>=3.0)",
165 "M_{jj} WideJets [GeV]",
171 "h1_MjjWide_den_NOdeta",
172 "HLT Efficiency Studies (no deta cut)",
174 "M_{jj} WideJets [GeV]",
180 "h1_MjjWide_num_NOdeta",
181 "HLT Efficiency Studies (no deta cut)",
183 "M_{jj} WideJets [GeV]",
189 "h1_MjjWide_den_detaL4",
190 "HLT Efficiency Studies (deta cut < 4.0)",
192 "M_{jj} WideJets [GeV]",
198 "h1_MjjWide_num_detaL4",
199 "HLT Efficiency Studies (deta cut < 4.0)",
201 "M_{jj} WideJets [GeV]",
207 "h1_MjjWide_den_detaL3",
208 "HLT Efficiency Studies (deta cut < 3.0)",
210 "M_{jj} WideJets [GeV]",
216 "h1_MjjWide_num_detaL3",
217 "HLT Efficiency Studies (deta cut < 3.0)",
219 "M_{jj} WideJets [GeV]",
225 "h1_MjjWide_den_detaL2",
226 "HLT Efficiency Studies (deta cut < 2.0)",
228 "M_{jj} WideJets [GeV]",
234 "h1_MjjWide_num_detaL2",
235 "HLT Efficiency Studies (deta cut < 2.0)",
237 "M_{jj} WideJets [GeV]",
244 "HLT Efficiency Studies (default deta cut)",
246 "M_{jj} WideJets [GeV]",
253 "HLT Efficiency Studies (default deta cut)",
255 "M_{jj} WideJets [GeV]",
261 "h1_DetajjWide_finalSel",
262 "#Delta#eta_{jj} WideJets (final selection)",
264 "#Delta#eta_{jj} WideJets",
271 "#Delta#eta_{jj} WideJets (final selection except #Delta#eta cut)",
273 "#Delta#eta_{jj} WideJets",
279 "h1_DphijjWide_finalSel",
280 "#Delta#phi_{jj} WideJets (final selection)",
282 "#Delta#phi_{jj} WideJets [rad.]",
316 "h1_selJets_hadEnergyFraction",
319 "HAD Energy Fraction",
325 "h1_selJets_emEnergyFraction",
328 "EM Energy Fraction",
334 "h1_selJets_towersArea",
346 "met - metcleaned [GeV]",
364 "h1_metCaseNoMetClean",
383 "HT (final selection)",
392 "h2_DetajjVsMjjWide",
393 "#Delta#eta_{jj} vs M_{jj} WideJets",
396 "M_{jj} WideJets [GeV]",
397 "#Delta#eta_{jj} WideJets");
401 "h2_DetajjVsMjjWide_rebin",
402 "#Delta#eta_{jj} vs M_{jj} WideJets",
405 "M_{jj} WideJets [GeV]",
406 "#Delta#eta_{jj} WideJets");
422 using namespace reco;
430 for(reco::CaloJetCollection::const_iterator it = calojets_handle->begin(); it != calojets_handle->end(); ++it)
451 TLorentzVector wdijet;
454 double DeltaEtaJJWide = -1;
455 double DeltaPhiJJWide = -1;
457 if( widejets_handle->size() >= 2 ) {
458 wj1.SetPtEtaPhiM(widejets_handle->at(0).pt(),
459 widejets_handle->at(0).eta(),
460 widejets_handle->at(0).phi(),
461 widejets_handle->at(0).mass()
463 wj2.SetPtEtaPhiM(widejets_handle->at(1).pt(),
464 widejets_handle->at(1).eta(),
465 widejets_handle->at(1).phi(),
466 widejets_handle->at(1).mass()
469 MJJWide = wdijet.M();
470 DeltaEtaJJWide = fabs(wj1.Eta()-wj2.Eta());
471 DeltaPhiJJWide = fabs(wj1.DeltaPhi(wj2));
482 if( calomet_handle.isValid() && calometClean_handle.
isValid() ) {
489 m_metDiff->
Fill( (calomet_handle->front()).
pt() - (calometClean_handle->front()).
pt() );
492 else if( calomet_handle.isValid() && !calometClean_handle.
isValid() )
497 else if( !calomet_handle.isValid() && calometClean_handle.
isValid() )
503 bool pass_nocut=
false;
504 bool pass_twowidejets=
false;
505 bool pass_etaptcuts=
false;
506 bool pass_deta=
false;
507 bool pass_JetIDtwojets=
true;
508 bool pass_dphi=
false;
509 bool pass_metFilter=
true;
511 bool pass_deta_L4=
false;
512 bool pass_deta_L3=
false;
513 bool pass_deta_L2=
false;
515 bool pass_fullsel_NOdeta=
false;
516 bool pass_fullsel_detaL4=
false;
517 bool pass_fullsel_detaL3=
false;
518 bool pass_fullsel_detaL2=
false;
519 bool pass_fullsel=
false;
527 pass_twowidejets=
true;
546 if( DeltaEtaJJWide < 4.0 )
549 if( DeltaEtaJJWide < 3.0 )
552 if( DeltaEtaJJWide < 2.0 )
559 reco::CaloJetCollection::const_iterator thisJet = calojets_handle->begin();
562 pass_JetIDtwojets=
false;
568 pass_JetIDtwojets=
false;
571 if( calomet_handle.isValid() && calometClean_handle.
isValid() )
573 if( fabs ( (calomet_handle->front()).
pt() - (calometClean_handle->front()).
pt() ) > 0.1 )
574 pass_metFilter=
false;
577 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_JetIDtwojets && pass_dphi && pass_metFilter )
578 pass_fullsel_NOdeta=
true;
580 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_JetIDtwojets && pass_dphi && pass_metFilter && pass_deta_L4 )
581 pass_fullsel_detaL4=
true;
582 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_JetIDtwojets && pass_dphi && pass_metFilter && pass_deta_L3 )
583 pass_fullsel_detaL3=
true;
584 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_JetIDtwojets && pass_dphi && pass_metFilter && pass_deta_L2 )
585 pass_fullsel_detaL2=
true;
587 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_deta && pass_JetIDtwojets && pass_dphi && pass_metFilter )
594 if( pass_nocut && pass_twowidejets )
596 if( pass_nocut && pass_twowidejets && pass_etaptcuts )
598 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_deta )
600 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_deta && pass_JetIDtwojets )
602 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_deta && pass_JetIDtwojets && pass_dphi )
618 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_deta )
624 if( pass_fullsel_NOdeta )
628 if( DeltaEtaJJWide >= 0.0 && DeltaEtaJJWide < 0.5 )
630 if( DeltaEtaJJWide >= 0.5 && DeltaEtaJJWide < 1.0 )
632 if( DeltaEtaJJWide >= 1.0 && DeltaEtaJJWide < 1.5 )
634 if( DeltaEtaJJWide >= 1.5 && DeltaEtaJJWide < 2.0 )
636 if( DeltaEtaJJWide >= 2.0 && DeltaEtaJJWide < 2.5 )
638 if( DeltaEtaJJWide >= 2.5 && DeltaEtaJJWide < 3.0 )
640 if( DeltaEtaJJWide >= 3.0 )
655 int HLTpathMain_fired = -1;
656 int HLTpathMonitor_fired = -1;
681 if( pass_fullsel_NOdeta && HLTpathMonitor_fired == 1 )
686 if( HLTpathMain_fired == 1)
693 if( pass_fullsel_detaL4 && HLTpathMonitor_fired == 1 )
698 if( HLTpathMain_fired == 1)
705 if( pass_fullsel_detaL3 && HLTpathMonitor_fired == 1 )
710 if( HLTpathMain_fired == 1)
717 if( pass_fullsel_detaL2 && HLTpathMonitor_fired == 1 )
722 if( HLTpathMain_fired == 1)
729 if( pass_fullsel && HLTpathMonitor_fired == 1 )
734 if( HLTpathMain_fired == 1)
MonitorElement * m_HT_finalSel
MonitorElement * m_MjjWide_num_NOdeta
T getUntrackedParameter(std::string const &, T const &) const
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
MonitorElement * m_MjjWide_num_detaL4
MonitorElement * m_MjjWide_den_detaL3
MonitorElement * m_HT_inclusive
MonitorElement * m_MjjWide_den_NOdeta
bool configurationUpdated() const
MonitorElement * m_MjjWide_num_detaL2
unsigned int numwidejets_
bool getByToken(EDGetToken token, Handle< PROD > &result) const
MonitorElement * m_selJets_towersArea
void prepareBooking(DQMStore::IBooker &)
MonitorElement * m_metCaseNoMetClean
edm::EDGetTokenT< reco::CaloJetCollection > jetCollectionTagToken_
ParameterSet const & getParameterSet(ParameterSetID const &id)
MonitorElement * m_MjjWide_deta_0p0_0p5
triggerExpression::Evaluator * HLTpathMonitor_
triggerExpression::Data triggerConfiguration_
MonitorElement * m_metDiff
MonitorElement * m_MjjWide_num_detaL3
MonitorElement * m_MjjWide_deta_3p0_inf
MonitorElement * m_MjjWide_deta_1p0_1p5
MonitorElement * m_selJets_emEnergyFraction
DiJetVarAnalyzer(const edm::ParameterSet &)
MonitorElement * m_selJets_phi
MonitorElement * m_MjjWide_num
MonitorElement * m_selJets_pt
MonitorElement * m_MjjWide_finalSel_varbin
MonitorElement * bookH1withSumw2(DQMStore::IBooker &, const std::string &name, const std::string &title, int nchX, double lowX, double highX, const std::string &titleX="", const std::string &titleY="Events", Option_t *option="E1 P")
MonitorElement * m_cutFlow
virtual void init(const Data &data)
MonitorElement * m_MjjWide_finalSel_WithoutNoiseFilter
MonitorElement * m_metVSmetclean
MonitorElement * m_MjjWide_den
edm::EDGetTokenT< reco::CaloMETCollection > metCollectionTagToken_
triggerExpression::Evaluator * HLTpathMain_
MonitorElement * m_DphijjWide_finalSel
MonitorElement * m_MjjWide_deta_0p5_1p0
bool setEvent(const edm::Event &event, const edm::EventSetup &setup)
edm::EDGetTokenT< reco::CaloMETCollection > metCleanCollectionTagToken_
MonitorElement * m_MjjWide_deta_2p0_2p5
MonitorElement * m_MjjWide_den_detaL2
MonitorElement * m_DetajjVsMjjWide_rebin
MonitorElement * m_selJets_eta
MonitorElement * m_MjjWide_deta_2p5_3p0
MonitorElement * m_DetajjVsMjjWide
virtual void analyze(const edm::Event &, const edm::EventSetup &) override
MonitorElement * m_MjjWide_deta_1p5_2p0
MonitorElement * bookH2withSumw2(DQMStore::IBooker &, const std::string &name, const std::string &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, const std::string &titleX="", const std::string &titleY="", Option_t *option="COLZ")
MonitorElement * m_MjjWide_finalSel_WithoutNoiseFilter_varbin
MonitorElement * m_DetajjWide_finalSel
MonitorElement * m_MjjWide_finalSel
MonitorElement * m_MjjWide_den_detaL4
MonitorElement * bookH1withSumw2BinArray(DQMStore::IBooker &, const std::string &name, const std::string &title, int nchX, float *xbinsize, const std::string &titleX="", const std::string &titleY="Events", Option_t *option="E1 P")
edm::EDGetTokenT< std::vector< math::PtEtaPhiMLorentzVector > > widejetsCollectionTagToken_
MonitorElement * m_DetajjWide
virtual ~DiJetVarAnalyzer()
MonitorElement * m_selJets_hadEnergyFraction
MonitorElement * m_metCases