ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/UHHAnalysis/NtupleWriter/Objects/Jet.h
(Generate patch)

Comparing UserCode/UHHAnalysis/NtupleWriter/Objects/Jet.h (file contents):
Revision 1.1 by peiffer, Tue May 22 09:32:32 2012 UTC vs.
Revision 1.6 by rkogler, Thu Jan 31 13:08:51 2013 UTC

# Line 3 | Line 3
3  
4   #include "Particle.h"
5  
6 + /**
7 + *  @short jet class
8 + *  @author Thomas Peiffer
9 + */
10  
11   class Jet : public Particle{
12  
# Line 37 | Line 41 | class Jet : public Particle{
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(){
50 >  LorentzVector genjet_v4() const{
51      LorentzVector v4;
52      v4.SetPt(m_genjet_pt);
53      v4.SetEta(m_genjet_eta);
# Line 51 | Line 56 | class Jet : public Particle{
56      return v4;
57    };
58  
59 <  int nTracks(){return m_nTracks;}
60 <  float jetArea(){return m_jetArea;}
61 <  float pileup(){return m_pileup;}
62 <  int numberOfDaughters(){return m_numberOfDaughters;}
63 <  float neutralEmEnergyFraction(){return m_neutralEmEnergyFraction;}
64 <  float neutralHadronEnergyFraction(){return m_neutralHadronEnergyFraction;}
65 <  float chargedEmEnergyFraction(){return m_chargedEmEnergyFraction;}
66 <  float chargedHadronEnergyFraction(){return m_chargedHadronEnergyFraction;}
67 <  float muonEnergyFraction(){return m_muonEnergyFraction;}
68 <  float photonEnergyFraction(){return m_photonEnergyFraction;}
69 <  int chargedMultiplicity(){return m_chargedMultiplicity;}
70 <  int neutralMultiplicity(){return m_neutralMultiplicity;}
71 <  int muonMultiplicity(){return m_muonMultiplicity;}
72 <  int electronMultiplicity(){return m_electronMultiplicity;}
73 <  int photonMultiplicity(){return m_photonMultiplicity;}
74 <  float btag_simpleSecondaryVertexHighEff(){return m_btag_simpleSecondaryVertexHighEff;}
75 <  float btag_simpleSecondaryVertexHighPur(){return m_btag_simpleSecondaryVertexHighPur;}
76 <  float btag_combinedSecondaryVertex(){return m_btag_combinedSecondaryVertex;}
77 <  float btag_combinedSecondaryVertexMVA(){return m_btag_combinedSecondaryVertexMVA;}
78 <  float btag_jetBProbability(){return m_btag_jetBProbability;}
79 <  float btag_jetProbability(){return m_btag_jetProbability;}
80 <  float JEC_uncertainty(){return m_JEC_uncertainty;}
81 <  float JEC_factor_raw(){return m_JEC_factor_raw;}
82 <  float genjet_pt(){return m_genjet_pt;}
83 <  float genjet_eta(){return m_genjet_eta;}
84 <  float genjet_phi(){return m_genjet_phi;}
85 <  float genjet_energy(){return m_genjet_energy;}
86 <  std::vector<unsigned int> genparticles_indices(){return m_genparticles_indices;}
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;}
# Line 109 | Line 118 | class Jet : public Particle{
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;
# Line 141 | Line 169 | class Jet : public Particle{
169  
170    std::vector<unsigned int> m_genparticles_indices;
171  
172 +  std::vector<Particle> m_pfconstituents;
173 +
174   };
175  
176   #endif

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines