CMS 3D CMS Logo

CaloJet.h
Go to the documentation of this file.
1 #ifndef JetReco_CaloJet_h
2 #define JetReco_CaloJet_h
3 
25 
26 namespace reco {
27  class CaloJet : public Jet {
28  public:
31 
32  struct Specific {
34  : mMaxEInEmTowers(0),
36  mHadEnergyInHO(0),
37  mHadEnergyInHB(0),
38  mHadEnergyInHF(0),
39  mHadEnergyInHE(0),
40  mEmEnergyInEB(0),
41  mEmEnergyInEE(0),
42  mEmEnergyInHF(0),
45  mTowersArea(0) {}
46 
70  float mTowersArea;
71  };
72 
74  CaloJet() {}
75 
77  CaloJet(const LorentzVector& fP4,
78  const Point& fVertex,
79  const Specific& fSpecific,
80  const Jet::Constituents& fConstituents);
81 
83  CaloJet(const LorentzVector& fP4, const Point& fVertex, const Specific& fSpecific);
84 
86  CaloJet(const LorentzVector& fP4, const Specific& fSpecific, const Jet::Constituents& fConstituents);
87 
88  ~CaloJet() override{};
89 
91  float maxEInEmTowers() const { return m_specific.mMaxEInEmTowers; }
93  float maxEInHadTowers() const { return m_specific.mMaxEInHadTowers; }
97  float emEnergyFraction() const { return m_specific.mEnergyFractionEm; }
99  float hadEnergyInHB() const { return m_specific.mHadEnergyInHB; }
101  float hadEnergyInHO() const { return m_specific.mHadEnergyInHO; }
103  float hadEnergyInHE() const { return m_specific.mHadEnergyInHE; }
105  float hadEnergyInHF() const { return m_specific.mHadEnergyInHF; }
107  float emEnergyInEB() const { return m_specific.mEmEnergyInEB; }
109  float emEnergyInEE() const { return m_specific.mEmEnergyInEE; }
111  float emEnergyInHF() const { return m_specific.mEmEnergyInHF; }
113  float towersArea() const { return m_specific.mTowersArea; }
115  int n90() const { return nCarrying(0.9); }
117  int n60() const { return nCarrying(0.6); }
118 
120  // float physicsEtaQuick (float fZVertex) const;
122  //float physicsEta (float fZVertex) const {return physicsEtaQuick (fZVertex);}
124  //LorentzVector physicsP4 (float fZVertex) const;
128  LorentzVector detectorP4() const;
129 
131  //float physicsEtaDetailed (float fZVertex) const;
132 
134  //float detectorEta () const {return eta();}
135 
137  virtual CaloTowerPtr getCaloConstituent(unsigned fIndex) const;
139  virtual std::vector<CaloTowerPtr> getCaloConstituents() const;
140 
141  // block accessors
142 
143  const Specific& getSpecific() const { return m_specific; }
144 
146  CaloJet* clone() const override;
147 
149  std::string print() const override;
150 
152  std::vector<CaloTowerDetId> getTowerIndices() const;
153 
154  private:
156  bool overlap(const Candidate&) const override;
157 
158  //Variables specific to to the CaloJet class
160  };
161 } // namespace reco
162 // temporary fix before include_checcker runs globally
163 #include "DataFormats/JetReco/interface/CaloJetCollection.h" //INCLUDECHECKER:SKIP
164 #endif
CaloJetCollection.h
reco::CaloJet
Jets made from CaloTowers.
Definition: CaloJet.h:27
reco::CaloJet::ConstituentTypePtr
CaloTowerPtr ConstituentTypePtr
Definition: CaloJet.h:29
reco::Jet::Constituents
std::vector< Constituent > Constituents
Definition: Jet.h:23
reco::CaloJet::energyFractionHadronic
float energyFractionHadronic() const
Definition: CaloJet.h:95
reco::CaloJet::getCaloConstituent
virtual CaloTowerPtr getCaloConstituent(unsigned fIndex) const
Physics Eta (loop over constituents)
Definition: CaloJet.cc:57
reco::CaloJet::maxEInHadTowers
float maxEInHadTowers() const
Definition: CaloJet.h:93
reco::CaloJet::print
std::string print() const override
Print object.
Definition: CaloJet.cc:89
reco::CaloJet::CaloJet
CaloJet()
Definition: CaloJet.h:74
reco::CaloJet::Specific::mEmEnergyInHF
float mEmEnergyInHF
Em energy in HF.
Definition: CaloJet.h:64
reco::CaloJet::Specific::mEmEnergyInEB
float mEmEnergyInEB
Em energy in EB.
Definition: CaloJet.h:60
reco::CaloJet::Specific::mEnergyFractionEm
float mEnergyFractionEm
Em energy fraction.
Definition: CaloJet.h:68
reco::Jet::nCarrying
int nCarrying(float fFraction) const
return # of constituent carrying fraction of energy
reco::CaloJet::hadEnergyInHF
float hadEnergyInHF() const
Definition: CaloJet.h:105
Jet.h
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:45
reco::CaloJet::hadEnergyInHB
float hadEnergyInHB() const
Definition: CaloJet.h:99
reco::CaloJet::emEnergyInEE
float emEnergyInEE() const
Definition: CaloJet.h:109
reco::CaloJet::physicsP4
LorentzVector physicsP4(const Particle::Point &vertex) const
Physics Eta (use jet Z and kinematics only)
Definition: CaloJet.cc:51
reco::CaloJet::Specific::mEmEnergyInEE
float mEmEnergyInEE
Em energy in EE.
Definition: CaloJet.h:62
reco::CaloJet::Specific::mHadEnergyInHE
float mHadEnergyInHE
Hadronic energy in HE.
Definition: CaloJet.h:58
reco::CaloJet::Specific::mMaxEInHadTowers
float mMaxEInHadTowers
Maximum energy in HCAL towers.
Definition: CaloJet.h:50
reco::CaloJet::n60
int n60() const
Definition: CaloJet.h:117
reco::CaloJet::hadEnergyInHE
float hadEnergyInHE() const
Definition: CaloJet.h:103
Jet
Definition: Jet.py:1
reco::CaloJet::maxEInEmTowers
float maxEInEmTowers() const
Definition: CaloJet.h:91
reco::CaloJet::Specific::mEnergyFractionHadronic
float mEnergyFractionHadronic
Hadronic energy fraction.
Definition: CaloJet.h:66
reco::CaloJet::Specific::mHadEnergyInHB
float mHadEnergyInHB
Hadronic energy in HB.
Definition: CaloJet.h:54
reco::CaloJet::emEnergyInEB
float emEnergyInEB() const
Definition: CaloJet.h:107
reco::CaloJet::hadEnergyInHO
float hadEnergyInHO() const
Definition: CaloJet.h:101
edm::FwdPtr
Definition: FwdPtr.h:40
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
reco::CaloJet::Specific::mHadEnergyInHF
float mHadEnergyInHF
Hadronic energy in HF.
Definition: CaloJet.h:56
reco::CaloJet::Specific::mHadEnergyInHO
float mHadEnergyInHO
Hadronic nergy fraction in HO.
Definition: CaloJet.h:52
Point
Structure Point Contains parameters of Gaussian fits to DMRs.
Definition: DMRtrends.cc:57
reco::CaloJet::~CaloJet
~CaloJet() override
Definition: CaloJet.h:88
reco::CaloJet::n90
int n90() const
Definition: CaloJet.h:115
reco::CaloJet::towersArea
float towersArea() const
Definition: CaloJet.h:113
reco::CaloJet::Specific::mTowersArea
float mTowersArea
Area of contributing CaloTowers.
Definition: CaloJet.h:70
reco::CaloJet::m_specific
Specific m_specific
Definition: CaloJet.h:159
reco::CaloJet::getCaloConstituents
virtual std::vector< CaloTowerPtr > getCaloConstituents() const
get all constituents
Definition: CaloJet.cc:78
reco::CaloJet::detectorP4
LorentzVector detectorP4() const
detector p4 for full 3d vertex correction.
Definition: CaloJet.cc:55
reco::CaloJet::clone
CaloJet * clone() const override
Polymorphic clone.
Definition: CaloJet.cc:85
reco::LeafCandidate::vertex
const Point & vertex() const override
vertex position (overwritten by PF...)
Definition: LeafCandidate.h:165
reco::CaloJet::ConstituentTypeFwdPtr
CaloTowerFwdPtr ConstituentTypeFwdPtr
Definition: CaloJet.h:30
reco::CaloJet::overlap
bool overlap(const Candidate &) const override
Polymorphic overlap.
Definition: CaloJet.cc:87
edm::Ptr
Definition: AssociationVector.h:31
reco::Candidate
Definition: Candidate.h:27
CaloTowerCollection.h
LorentzVector
math::XYZTLorentzVector LorentzVector
Definition: HLTMuonMatchAndPlot.h:49
reco::CaloJet::getTowerIndices
std::vector< CaloTowerDetId > getTowerIndices() const
CaloTowers indexes.
Definition: CaloJet.cc:115
reco::CaloJet::Specific::Specific
Specific()
Definition: CaloJet.h:33
reco::CaloJet::getSpecific
const Specific & getSpecific() const
Definition: CaloJet.h:143
reco::Particle::Point
math::XYZPoint Point
point in the space
Definition: Particle.h:25
reco::CaloJet::Specific::mMaxEInEmTowers
float mMaxEInEmTowers
Maximum energy in EM towers.
Definition: CaloJet.h:48
reco::CaloJet::Specific
Definition: CaloJet.h:32
reco::CaloJet::emEnergyInHF
float emEnergyInHF() const
Definition: CaloJet.h:111
reco::CaloJet::emEnergyFraction
float emEnergyFraction() const
Definition: CaloJet.h:97