27 jetCollectionTag_ (conf.getUntrackedParameter<edm::InputTag>(
"jetCollectionTag")),
29 widejetsCollectionTag_ (conf.getUntrackedParameter<edm::InputTag>(
"widejetsCollectionTag")),
30 metCollectionTag_ (conf.getUntrackedParameter<edm::InputTag>(
"metCollectionTag")),
31 metCleanCollectionTag_ (conf.getUntrackedParameter<edm::InputTag>(
"metCleanCollectionTag")),
32 numwidejets_ (conf.getParameter<unsigned int>(
"numwidejets")),
33 etawidejets_ (conf.getParameter<double>(
"etawidejets")),
34 ptwidejets_ (conf.getParameter<double>(
"ptwidejets")),
35 detawidejets_ (conf.getParameter<double>(
"detawidejets")),
36 dphiwidejets_ (conf.getParameter<double>(
"dphiwidejets")),
37 maxEMfraction_ (conf.getParameter<double>(
"maxEMfraction")),
38 maxHADfraction_ (conf.getParameter<double>(
"maxHADfraction")),
39 HLTpathMain_ (triggerExpression::
parse( conf.getParameter<std::
string>(
"HLTpathMain") )),
40 HLTpathMonitor_ (triggerExpression::
parse( conf.getParameter<std::
string>(
"HLTpathMonitor") )),
41 triggerConfiguration_ (conf.
getParameterSet(
"triggerConfiguration"),consumesCollector())
76 for(reco::CaloJetCollection::const_iterator it = calojets_handle->begin(); it != calojets_handle->end(); ++it)
98 TLorentzVector wdijet;
101 double DeltaEtaJJWide = -1;
102 double DeltaPhiJJWide = -1;
104 if( widejets_handle->size() >= 2 )
106 wj1.SetPtEtaPhiM(widejets_handle->at(0).pt(),
107 widejets_handle->at(0).eta(),
108 widejets_handle->at(0).phi(),
109 widejets_handle->at(0).mass()
111 wj2.SetPtEtaPhiM(widejets_handle->at(1).pt(),
112 widejets_handle->at(1).eta(),
113 widejets_handle->at(1).phi(),
114 widejets_handle->at(1).mass()
119 MJJWide = wdijet.M();
120 DeltaEtaJJWide = fabs(wj1.Eta()-wj2.Eta());
121 DeltaPhiJJWide = fabs(wj1.DeltaPhi(wj2));
140 if( calomet_handle.isValid() && calometClean_handle.isValid() )
148 m_metDiff->
Fill( (calomet_handle->front()).
pt() - (calometClean_handle->front()).
pt() );
151 else if( calomet_handle.isValid() && !calometClean_handle.isValid() )
156 else if( !calomet_handle.isValid() && calometClean_handle.isValid() )
162 bool pass_nocut=
false;
163 bool pass_twowidejets=
false;
164 bool pass_etaptcuts=
false;
165 bool pass_deta=
false;
166 bool pass_JetIDtwojets=
true;
167 bool pass_dphi=
false;
168 bool pass_metFilter=
true;
170 bool pass_deta_L4=
false;
171 bool pass_deta_L3=
false;
172 bool pass_deta_L2=
false;
174 bool pass_fullsel_NOdeta=
false;
175 bool pass_fullsel_detaL4=
false;
176 bool pass_fullsel_detaL3=
false;
177 bool pass_fullsel_detaL2=
false;
178 bool pass_fullsel=
false;
187 pass_twowidejets=
true;
207 if( DeltaEtaJJWide < 4.0 )
210 if( DeltaEtaJJWide < 3.0 )
213 if( DeltaEtaJJWide < 2.0 )
223 reco::CaloJetCollection::const_iterator thisJet = calojets_handle->begin();
226 pass_JetIDtwojets=
false;
232 pass_JetIDtwojets=
false;
236 if( calomet_handle.isValid() && calometClean_handle.isValid() )
238 if( fabs ( (calomet_handle->front()).
pt() - (calometClean_handle->front()).
pt() ) > 0.1 )
239 pass_metFilter=
false;
243 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_JetIDtwojets && pass_dphi && pass_metFilter )
244 pass_fullsel_NOdeta=
true;
247 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_JetIDtwojets && pass_dphi && pass_metFilter && pass_deta_L4 )
248 pass_fullsel_detaL4=
true;
249 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_JetIDtwojets && pass_dphi && pass_metFilter && pass_deta_L3 )
250 pass_fullsel_detaL3=
true;
251 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_JetIDtwojets && pass_dphi && pass_metFilter && pass_deta_L2 )
252 pass_fullsel_detaL2=
true;
255 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_deta && pass_JetIDtwojets && pass_dphi && pass_metFilter )
263 if( pass_nocut && pass_twowidejets )
265 if( pass_nocut && pass_twowidejets && pass_etaptcuts )
267 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_deta )
269 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_deta && pass_JetIDtwojets )
271 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_deta && pass_JetIDtwojets && pass_dphi )
288 if( pass_nocut && pass_twowidejets && pass_etaptcuts && pass_deta )
295 if( pass_fullsel_NOdeta )
300 if( DeltaEtaJJWide >= 0.0 && DeltaEtaJJWide < 0.5 )
302 if( DeltaEtaJJWide >= 0.5 && DeltaEtaJJWide < 1.0 )
304 if( DeltaEtaJJWide >= 1.0 && DeltaEtaJJWide < 1.5 )
306 if( DeltaEtaJJWide >= 1.5 && DeltaEtaJJWide < 2.0 )
308 if( DeltaEtaJJWide >= 2.0 && DeltaEtaJJWide < 2.5 )
310 if( DeltaEtaJJWide >= 2.5 && DeltaEtaJJWide < 3.0 )
312 if( DeltaEtaJJWide >= 3.0 )
329 int HLTpathMain_fired = -1;
330 int HLTpathMonitor_fired = -1;
357 if( pass_fullsel_NOdeta && HLTpathMonitor_fired == 1 )
362 if( HLTpathMain_fired == 1)
369 if( pass_fullsel_detaL4 && HLTpathMonitor_fired == 1 )
374 if( HLTpathMain_fired == 1)
381 if( pass_fullsel_detaL3 && HLTpathMonitor_fired == 1 )
386 if( HLTpathMain_fired == 1)
393 if( pass_fullsel_detaL2 && HLTpathMonitor_fired == 1 )
398 if( HLTpathMain_fired == 1)
405 if( pass_fullsel && HLTpathMonitor_fired == 1 )
410 if( HLTpathMain_fired == 1)
427 const int N_mass_bins=83;
428 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};
446 "M_{jj} WideJets (final selection)",
448 "M_{jj} WideJets [GeV]",
453 "M_{jj} WideJets (final selection)",
454 N_mass_bins, massBins,
455 "M_{jj} WideJets [GeV]",
460 "M_{jj} WideJets (final selection, without noise filters)",
462 "M_{jj} WideJets [GeV]",
467 "M_{jj} WideJets (final selection, without noise filters)",
468 N_mass_bins, massBins,
469 "M_{jj} WideJets [GeV]",
474 "M_{jj} WideJets (0.0<=#Delta#eta<0.5)",
476 "M_{jj} WideJets [GeV]",
481 "M_{jj} WideJets (0.5<=#Delta#eta<1.0)",
483 "M_{jj} WideJets [GeV]",
488 "M_{jj} WideJets (1.0<=#Delta#eta<1.5)",
490 "M_{jj} WideJets [GeV]",
495 "M_{jj} WideJets (1.5<=#Delta#eta<2.0)",
497 "M_{jj} WideJets [GeV]",
502 "M_{jj} WideJets (2.0<=#Delta#eta<2.5)",
504 "M_{jj} WideJets [GeV]",
509 "M_{jj} WideJets (2.5<=#Delta#eta<3.0)",
511 "M_{jj} WideJets [GeV]",
516 "M_{jj} WideJets (#Delta#eta>=3.0)",
518 "M_{jj} WideJets [GeV]",
523 "HLT Efficiency Studies (no deta cut)",
525 "M_{jj} WideJets [GeV]",
530 "HLT Efficiency Studies (no deta cut)",
532 "M_{jj} WideJets [GeV]",
537 "HLT Efficiency Studies (deta cut < 4.0)",
539 "M_{jj} WideJets [GeV]",
544 "HLT Efficiency Studies (deta cut < 4.0)",
546 "M_{jj} WideJets [GeV]",
551 "HLT Efficiency Studies (deta cut < 3.0)",
553 "M_{jj} WideJets [GeV]",
558 "HLT Efficiency Studies (deta cut < 3.0)",
560 "M_{jj} WideJets [GeV]",
565 "HLT Efficiency Studies (deta cut < 2.0)",
567 "M_{jj} WideJets [GeV]",
572 "HLT Efficiency Studies (deta cut < 2.0)",
574 "M_{jj} WideJets [GeV]",
579 "HLT Efficiency Studies (default deta cut)",
581 "M_{jj} WideJets [GeV]",
586 "HLT Efficiency Studies (default deta cut)",
588 "M_{jj} WideJets [GeV]",
593 "#Delta#eta_{jj} WideJets (final selection)",
595 "#Delta#eta_{jj} WideJets",
600 "#Delta#eta_{jj} WideJets (final selection except #Delta#eta cut)",
602 "#Delta#eta_{jj} WideJets",
607 "#Delta#phi_{jj} WideJets (final selection)",
609 "#Delta#phi_{jj} WideJets [rad.]",
638 "HAD Energy Fraction",
645 "EM Energy Fraction",
659 "met - metcleaned [GeV]",
689 "HT (final selection)",
698 "#Delta#eta_{jj} vs M_{jj} WideJets",
701 "M_{jj} WideJets [GeV]",
702 "#Delta#eta_{jj} WideJets");
705 "#Delta#eta_{jj} vs M_{jj} WideJets",
708 "M_{jj} WideJets [GeV]",
709 "#Delta#eta_{jj} WideJets");
MonitorElement * m_HT_finalSel
MonitorElement * m_MjjWide_num_NOdeta
T getUntrackedParameter(std::string const &, T const &) const
MonitorElement * m_MjjWide_num_detaL4
MonitorElement * m_MjjWide_den_detaL3
virtual void endRun(edm::Run const &, edm::EventSetup const &)
MonitorElement * bookH2withSumw2(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_HT_inclusive
MonitorElement * m_MjjWide_den_NOdeta
bool configurationUpdated() const
MonitorElement * m_MjjWide_num_detaL2
unsigned int numwidejets_
Evaluator * parse(const T &text)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
MonitorElement * m_selJets_towersArea
MonitorElement * bookH1withSumw2(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_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 * bookH1withSumw2BinArray(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")
MonitorElement * m_MjjWide_num
virtual void analyze(const edm::Event &, const edm::EventSetup &)
MonitorElement * m_selJets_pt
virtual void beginRun(const edm::Run &, const edm::EventSetup &)
MonitorElement * m_MjjWide_finalSel_varbin
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
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
bool setEvent(const edm::Event &event, const edm::EventSetup &setup)
MonitorElement * m_MjjWide_deta_1p5_2p0
MonitorElement * m_MjjWide_finalSel_WithoutNoiseFilter_varbin
MonitorElement * m_DetajjWide_finalSel
MonitorElement * m_MjjWide_finalSel
MonitorElement * m_MjjWide_den_detaL4
edm::EDGetTokenT< std::vector< math::PtEtaPhiMLorentzVector > > widejetsCollectionTagToken_
MonitorElement * m_DetajjWide
virtual ~DiJetVarAnalyzer()
MonitorElement * m_selJets_hadEnergyFraction
MonitorElement * m_metCases