ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/UHHAnalysis/NtupleWriter/Objects/Jet.h
Revision: 1.6
Committed: Thu Jan 31 13:08:51 2013 UTC (12 years, 3 months ago) by rkogler
Content type: text/plain
Branch: MAIN
CVS Tags: v1-00, Feb-15-2013-v1, Feb-14-2013, Feb-07-2013-v1
Changes since 1.5: +7 -0 lines
Log Message:
added vector with jet constituents

File Contents

# Content
1 #ifndef Jet_H
2 #define Jet_H
3
4 #include "Particle.h"
5
6 /**
7 * @short jet class
8 * @author Thomas Peiffer
9 */
10
11 class Jet : public Particle{
12
13 public:
14
15 Jet(){
16 m_nTracks=0;
17 m_jetArea=0;
18 m_pileup=0;
19 m_numberOfDaughters=0;
20 m_neutralEmEnergyFraction=0;
21 m_neutralHadronEnergyFraction=0;
22 m_chargedEmEnergyFraction=0;
23 m_chargedHadronEnergyFraction=0;
24 m_muonEnergyFraction=0;
25 m_photonEnergyFraction=0;
26 m_chargedMultiplicity=0;
27 m_neutralMultiplicity=0;
28 m_muonMultiplicity=0;
29 m_electronMultiplicity=0;
30 m_photonMultiplicity=0;
31 m_btag_simpleSecondaryVertexHighEff=0;
32 m_btag_simpleSecondaryVertexHighPur=0;
33 m_btag_combinedSecondaryVertex=0;
34 m_btag_combinedSecondaryVertexMVA=0;
35 m_btag_jetBProbability=0;
36 m_btag_jetProbability=0;
37 m_JEC_uncertainty=0;
38 m_JEC_factor_raw=0;
39 m_genjet_pt=0;
40 m_genjet_eta=0;
41 m_genjet_phi=0;
42 m_genjet_energy=0;
43 m_genparticles_indices.clear();
44 m_pfconstituents.clear();
45 };
46
47 ~Jet(){
48 };
49
50 LorentzVector genjet_v4() const{
51 LorentzVector v4;
52 v4.SetPt(m_genjet_pt);
53 v4.SetEta(m_genjet_eta);
54 v4.SetPhi(m_genjet_phi);
55 v4.SetE(m_genjet_energy);
56 return v4;
57 };
58
59 std::vector<Particle> pfconstituents() const{return m_pfconstituents;}
60
61 void add_pfconstituents(Particle p){m_pfconstituents.push_back(p);}
62
63 int nTracks() const{return m_nTracks;}
64 float jetArea() const{return m_jetArea;}
65 float pileup() const{return m_pileup;}
66 int numberOfDaughters() const{return m_numberOfDaughters;}
67 float neutralEmEnergyFraction() const{return m_neutralEmEnergyFraction;}
68 float neutralHadronEnergyFraction() const{return m_neutralHadronEnergyFraction;}
69 float chargedEmEnergyFraction() const{return m_chargedEmEnergyFraction;}
70 float chargedHadronEnergyFraction() const{return m_chargedHadronEnergyFraction;}
71 float muonEnergyFraction() const{return m_muonEnergyFraction;}
72 float photonEnergyFraction() const{return m_photonEnergyFraction;}
73 int chargedMultiplicity() const{return m_chargedMultiplicity;}
74 int neutralMultiplicity() const{return m_neutralMultiplicity;}
75 int muonMultiplicity() const{return m_muonMultiplicity;}
76 int electronMultiplicity() const{return m_electronMultiplicity;}
77 int photonMultiplicity() const{return m_photonMultiplicity;}
78 float btag_simpleSecondaryVertexHighEff() const{return m_btag_simpleSecondaryVertexHighEff;}
79 float btag_simpleSecondaryVertexHighPur() const{return m_btag_simpleSecondaryVertexHighPur;}
80 float btag_combinedSecondaryVertex() const{return m_btag_combinedSecondaryVertex;}
81 float btag_combinedSecondaryVertexMVA() const{return m_btag_combinedSecondaryVertexMVA;}
82 float btag_jetBProbability() const{return m_btag_jetBProbability;}
83 float btag_jetProbability() const{return m_btag_jetProbability;}
84 float JEC_uncertainty() const{return m_JEC_uncertainty;}
85 float JEC_factor_raw() const{return m_JEC_factor_raw;}
86 float genjet_pt() const{return m_genjet_pt;}
87 float genjet_eta() const{return m_genjet_eta;}
88 float genjet_phi() const{return m_genjet_phi;}
89 float genjet_energy() const{return m_genjet_energy;}
90 std::vector<unsigned int> genparticles_indices() const{return m_genparticles_indices;}
91
92 void set_nTracks(int x){m_nTracks=x;}
93 void set_jetArea(float x){m_jetArea=x;}
94 void set_pileup(float x){m_pileup=x;}
95 void set_numberOfDaughters(int x){m_numberOfDaughters=x;}
96 void set_neutralEmEnergyFraction(float x){m_neutralEmEnergyFraction=x;}
97 void set_neutralHadronEnergyFraction(float x){m_neutralHadronEnergyFraction=x;}
98 void set_chargedEmEnergyFraction(float x){m_chargedEmEnergyFraction=x;}
99 void set_chargedHadronEnergyFraction(float x){m_chargedHadronEnergyFraction=x;}
100 void set_muonEnergyFraction(float x){m_muonEnergyFraction=x;}
101 void set_photonEnergyFraction(float x){m_photonEnergyFraction=x;}
102 void set_chargedMultiplicity(int x){m_chargedMultiplicity=x;}
103 void set_neutralMultiplicity(int x){m_neutralMultiplicity=x;}
104 void set_muonMultiplicity(int x){m_muonMultiplicity=x;}
105 void set_electronMultiplicity(int x){m_electronMultiplicity=x;}
106 void set_photonMultiplicity(int x){m_photonMultiplicity=x;}
107 void set_btag_simpleSecondaryVertexHighEff(float x){m_btag_simpleSecondaryVertexHighEff=x;}
108 void set_btag_simpleSecondaryVertexHighPur(float x){m_btag_simpleSecondaryVertexHighPur=x;}
109 void set_btag_combinedSecondaryVertex(float x){m_btag_combinedSecondaryVertex=x;}
110 void set_btag_combinedSecondaryVertexMVA(float x){m_btag_combinedSecondaryVertexMVA=x;}
111 void set_btag_jetBProbability(float x){m_btag_jetBProbability=x;}
112 void set_btag_jetProbability(float x){m_btag_jetProbability=x;}
113 void set_JEC_uncertainty(float x){m_JEC_uncertainty=x;}
114 void set_JEC_factor_raw(float x){m_JEC_factor_raw=x;}
115 void set_genjet_pt(float x){m_genjet_pt=x;}
116 void set_genjet_eta(float x){m_genjet_eta=x;}
117 void set_genjet_phi(float x){m_genjet_phi=x;}
118 void set_genjet_energy(float x){m_genjet_energy=x;}
119 void add_genparticles_index(unsigned int x){m_genparticles_indices.push_back(x);}
120
121 bool has_genjet() const{return m_genjet_pt>0;}
122
123 bool pfID(){
124 //pf ID has already been applied when using goodPatJets
125 if(numberOfDaughters()>1
126 && neutralHadronEnergyFraction()<0.99
127 && neutralEmEnergyFraction()<0.99){
128
129 if(fabs(eta())>=2.4)
130 return true;
131
132 if(chargedEmEnergyFraction()<0.99
133 && chargedHadronEnergyFraction()>0
134 && chargedMultiplicity()>0)
135 return true;
136 }
137 return false;
138 }
139
140 private:
141
142 int m_nTracks;
143 float m_jetArea;
144 float m_pileup;
145 int m_numberOfDaughters;
146 float m_neutralEmEnergyFraction;
147 float m_neutralHadronEnergyFraction;
148 float m_chargedEmEnergyFraction;
149 float m_chargedHadronEnergyFraction;
150 float m_muonEnergyFraction;
151 float m_photonEnergyFraction;
152 int m_chargedMultiplicity;
153 int m_neutralMultiplicity;
154 int m_muonMultiplicity;
155 int m_electronMultiplicity;
156 int m_photonMultiplicity;
157 float m_btag_simpleSecondaryVertexHighEff;
158 float m_btag_simpleSecondaryVertexHighPur;
159 float m_btag_combinedSecondaryVertex;
160 float m_btag_combinedSecondaryVertexMVA;
161 float m_btag_jetBProbability;
162 float m_btag_jetProbability;
163 float m_JEC_uncertainty;
164 float m_JEC_factor_raw;
165 float m_genjet_pt;
166 float m_genjet_eta;
167 float m_genjet_phi;
168 float m_genjet_energy;
169
170 std::vector<unsigned int> m_genparticles_indices;
171
172 std::vector<Particle> m_pfconstituents;
173
174 };
175
176 #endif