ATLAS Offline Software
PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/Root/Jet.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3  */
4 
6 
7 #include <cmath>
8 
9 #include "TopEvent/EventTools.h"
10 
11 namespace top {
12  Jet::Jet(const double ptcut,
13  const double etamax,
14  const double minmass,
15  const bool doJVTCut):
16  m_ptcut(ptcut),
17  m_etamax(etamax),
18  m_masscut(minmass),
19  m_applyJVTCut(doJVTCut),
20  m_appyMassCut(minmass > 0.),
21  m_jvt_tool("JetJvtEfficiencyTool") {
22  top::check(m_jvt_tool.retrieve(),
23  "Failed to retrieve JVT tool");
24  }
25 
26  // This version of the constructor always perform JVT cut
27  Jet::Jet(const double ptcut,
28  const double etamax) : Jet::Jet(ptcut, etamax, -1.0, true) {}
29 
30  // DEPRECIATED - fwdJetSel string now defunct, keeping blank string input for backwards compatibility
31  Jet::Jet(const double ptcut,
32  const double etamax,
33  const std::string) : Jet::Jet(ptcut, etamax, -1.0, true) {}
34 
35  // DEPRECATED - only kept for backward compatibility
36  Jet::Jet(const double ptcut,
37  const double etamax,
38  const double) : Jet::Jet(ptcut, etamax) {}
39 
41  if (m_applyJVTCut) {
42  jet.auxdecor<char>("passJVT") = (m_jvt_tool->passesJvtCut(jet) ? 1 : 0);
43  }
44  //fJVT pass/fail decision already attatched in CP tools
45 
46  if (jet.pt() < m_ptcut) return false;
47 
48  if (std::fabs(jet.eta()) > m_etamax) return false;
49 
50  if (m_appyMassCut) {
51  if (jet.m() < m_masscut) return false;
52  }
53 
54  jet.auxdecor<char>("good") = 1;
55  jet.auxdecor<char>("closeToLepton") = 0;
56 
57  return true;
58  }
59 
60  void Jet::print(std::ostream& os) const {
61  os << "Jet\n"
62  << " * pT > " << m_ptcut << "\n"
63  << " * |eta| < " << m_etamax << "\n";
64  if (m_appyMassCut)
65  os << " * m > " << m_masscut << "\n";
66  }
67 } // namespace top
top
TopConfig A simple configuration that is NOT a singleton.
Definition: AnalysisTrackingHelper.cxx:58
top::Jet::m_ptcut
double m_ptcut
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/TopObjectSelectionTools/Jet.h:82
top::Jet::print
virtual void print(std::ostream &os) const override
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/Root/Jet.cxx:60
top::Jet::m_masscut
double m_masscut
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/TopObjectSelectionTools/Jet.h:89
Jet.h
Pythia8_A14_NNPDF23LO_forMGHT_EvtGen.ptcut
float ptcut
Definition: Pythia8_A14_NNPDF23LO_forMGHT_EvtGen.py:9
top::Jet
A class that performs object cuts on Jets (of any size!).
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/TopObjectSelectionTools/Jet.h:20
EventTools.h
A few functions for doing operations on particles / events. Currently holds code for dR,...
jet
Definition: JetCalibTools_PlotJESFactors.cxx:23
top::Jet::m_etamax
double m_etamax
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/TopObjectSelectionTools/Jet.h:85
top::Jet::passSelection
virtual bool passSelection(const xAOD::Jet &jet) override
Implements the logic to select jets based on pT and eta.
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/Root/Jet.cxx:40
top::Jet::m_applyJVTCut
bool m_applyJVTCut
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/TopObjectSelectionTools/Jet.h:92
top::Jet::m_appyMassCut
bool m_appyMassCut
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/TopObjectSelectionTools/Jet.h:95
top::check
void check(bool thingToCheck, const std::string &usefulFailureMessage)
Print an error message and terminate if thingToCheck is false.
Definition: EventTools.cxx:15
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
top::Jet::m_jvt_tool
ToolHandle< CP::IJetJvtEfficiency > m_jvt_tool
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/TopObjectSelectionTools/Jet.h:97
top::Jet::Jet
Jet(const double ptcut, const double etamax, const double minmass, const bool doJVTCut)
A tool to select some jets on the pT and eta cuts.
Definition: PhysicsAnalysis/TopPhys/xAOD/TopObjectSelectionTools/Root/Jet.cxx:12