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

Comparing UserCode/UHHAnalysis/NtupleWriter/Objects/TopJet.h (file contents):
Revision 1.2 by peiffer, Wed May 23 09:10:59 2012 UTC vs.
Revision 1.6 by rkogler, Wed Jun 19 13:28:24 2013 UTC

# Line 2 | Line 2
2   #define TopJet_H
3  
4   #include "Jet.h"
5 + #include "TLorentzVector.h"
6 +
7 +
8 + /**
9 + *  @short top-jet class
10 + *  @author Thomas Peiffer
11 + */
12  
13   class TopJet : public Jet{
14   public:
15    TopJet(){
16      m_subjets.clear();
17 +
18 +    // initialize substructure variables to -1
19 +    m_qjets_volatility = -1.;
20 +    m_tau1 = -1.;
21 +    m_tau2 = -1.;
22 +    m_tau3 = -1.;
23 +
24 +    //clear btag variables
25 +    m_subCSV.clear();
26 +    m_subFlavour.clear();
27 +
28 +    //clear track impact parameter tag info
29 +    m_subTrackMomentum.clear();
30 +    m_subTrackEta.clear();
31 +    m_subTrackEtaRel.clear();
32 +    m_subTrackDeltaR.clear();
33 +    m_subTrackSip3dVal.clear();
34 +    m_subTrackSip3dSig.clear();
35 +    m_subTrackSip2dVal.clear();
36 +    m_subTrackSip2dSig.clear();
37 +    m_subTrackDecayLenVal.clear();
38 +    m_subTrackChi2.clear();
39 +    m_subTrackNTotalHits.clear();
40 +    m_subTrackNPixelHits.clear();
41 +    m_subTrackPtRel.clear();
42 +    m_subTrackPPar.clear();
43 +    m_subTrackPtRatio.clear();
44 +    m_subTrackPParRatio.clear();
45 +    m_subTrackJetDistVal.clear();
46 +    m_subTrackJetDistSig.clear();
47 +    m_subTrackGhostTrackDistVal.clear();
48 +    m_subTrackGhostTrackDistSig.clear();
49 +    m_subTrackGhostTrackWeight.clear();
50 +  
51 +    //clear secondary vertex tag info
52 +    m_subFlightDistance2dVal.clear();
53 +    m_subFlightDistance2dSig.clear();
54 +    m_subFlightDistance3dVal.clear();
55 +    m_subFlightDistance3dSig.clear();
56 +    m_subVertexJetDeltaR.clear();
57 +    m_subJetNSecondaryVertices.clear();
58 +    m_subVertexNTracks.clear();
59 +    m_subSecondaryVertex.clear();
60 +    m_subVertexChi2.clear();                                
61 +    m_subVertexNdof.clear();                    
62 +    m_subVertexNormalizedChi2.clear();
63 +    m_subVertexTracksSize.clear();
64 +    //JTC SV variables
65 +    m_subVertexCategoryJTC.clear();
66 +    m_subVertexMassJTC.clear();
67 +    m_subVertexEnergyRatioJTC.clear();
68 +    m_subTrackSip3dSigAboveCharmJTC.clear();
69 +
70 +
71    };
72    ~TopJet(){
73    };
74  
75 +  // substructure getters
76 +  float qjets_volatility(){return m_qjets_volatility;}
77 +  float tau1(){return m_tau1;}
78 +  float tau2(){return m_tau2;}
79 +  float tau3(){return m_tau3;}
80 +
81 +  //btag variables getters
82    std::vector<Particle> subjets() const{return m_subjets;}
83 +  std::vector<float> subCSV() const{return m_subCSV;}
84 +  std::vector<int> subFlavour() const{return m_subFlavour;}
85 +  std::vector<float> btagsub_combinedSecondaryVertex() const{return m_subCSV;}
86 +  std::vector<int> flavorsub() const{return m_subFlavour;}
87 +
88 +  //track impact parameter tag info getters
89 +  std::vector<std::vector<float> > subTrackMomentum() const{return m_subTrackMomentum;}
90 +  std::vector<std::vector<float> > subTrackEta() const{return m_subTrackEta;}
91 +  std::vector<std::vector<float> > subTrackEtaRel() const{return m_subTrackEtaRel;}
92 +  std::vector<std::vector<float> > subTrackDeltaR() const{return m_subTrackDeltaR;}
93 +  std::vector<std::vector<float> > subTrackSip3dVal() const{return m_subTrackSip3dVal;}
94 +  std::vector<std::vector<float> > subTrackSip3dSig() const{return m_subTrackSip3dSig;}
95 +  std::vector<std::vector<float> > subTrackSip2dVal() const{return m_subTrackSip2dVal;}
96 +  std::vector<std::vector<float> > subTrackSip2dSig() const{return m_subTrackSip2dSig;}
97 +  std::vector<std::vector<float> > subTrackDecayLenVal() const{return m_subTrackDecayLenVal;}
98 +  std::vector<std::vector<float> > subTrackChi2() const{return m_subTrackChi2;}
99 +  std::vector<std::vector<float> > subTrackNTotalHits() const{return m_subTrackNTotalHits;}
100 +  std::vector<std::vector<float> > subTrackNPixelHits() const{return m_subTrackNPixelHits;}
101 +  std::vector<std::vector<float> > subTrackPtRel() const{return m_subTrackPtRel;}
102 +  std::vector<std::vector<float> > subTrackPPar() const{return m_subTrackPPar;}
103 +  std::vector<std::vector<float> > subTrackPtRatio() const{return m_subTrackPtRatio;}
104 +  std::vector<std::vector<float> > subTrackPParRatio() const{return m_subTrackPParRatio;}
105 +  std::vector<std::vector<float> > subTrackJetDistVal() const{return m_subTrackJetDistVal;}
106 +  std::vector<std::vector<float> > subTrackJetDistSig() const{return m_subTrackJetDistSig;}
107 +  std::vector<std::vector<float> > subTrackGhostTrackDistVal() const{return m_subTrackGhostTrackDistVal;}
108 +  std::vector<std::vector<float> > subTrackGhostTrackDistSig() const{return m_subTrackGhostTrackDistSig;}
109 +  std::vector<std::vector<float> > subTrackGhostTrackWeight() const{return m_subTrackGhostTrackWeight;}
110 +
111 +  //secondary vertex tag info getters
112 +  std::vector<std::vector<float> > subFlightDistance2dVal() const{return m_subFlightDistance2dVal;}
113 +  std::vector<std::vector<float> > subFlightDistance2dSig() const{return m_subFlightDistance2dSig;}
114 +  std::vector<std::vector<float> > subFlightDistance3dVal() const{return m_subFlightDistance3dVal;}
115 +  std::vector<std::vector<float> > subFlightDistance3dSig() const{return m_subFlightDistance3dSig;}
116 +  std::vector<std::vector<float> > subVertexJetDeltaR() const{return m_subVertexJetDeltaR;}
117 +  std::vector<float> subJetNSecondaryVertices() const{return m_subJetNSecondaryVertices;}
118 +  std::vector<float> subVertexNTracks() const{return m_subVertexNTracks;}
119 +  //std::vector<std::vector< ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double> > > > subSecondaryVertex() const{return m_subSecondaryVertex;}
120 +  std::vector<std::vector<TLorentzVector > > subSecondaryVertex() const{return m_subSecondaryVertex;}
121 +  std::vector<std::vector<float> > subVertexChi2() const{return m_subVertexChi2;}
122 +  std::vector<std::vector<float> > subVertexNdof() const{return m_subVertexNdof;}
123 +  std::vector<std::vector<float> > subVertexNormalizedChi2() const{return m_subVertexNormalizedChi2;}
124 +  std::vector<std::vector<float> > subVertexTracksSize() const{return m_subVertexTracksSize;}
125 +  //JTC SV variables
126 +  std::vector<int> subVertexCategoryJTC() const{return m_subVertexCategoryJTC;}
127 +  std::vector<float> subVertexMassJTC() const{return m_subVertexMassJTC;}
128 +  std::vector<float> subVertexEnergyRatioJTC() const{return m_subVertexEnergyRatioJTC;}
129 +  std::vector<float> subTrackSip3dSigAboveCharmJTC() const{return m_subTrackSip3dSigAboveCharmJTC;}
130 +
131 +  // substructure setters
132 +  void set_qjets_volatility(float x){m_qjets_volatility = x;}
133 +  void set_tau1(float x){m_tau1 = x;}
134 +  void set_tau2(float x){m_tau2 = x;}
135 +  void set_tau3(float x){m_tau3 = x;}
136  
137 +  //btag variables setters
138    void add_subjet(Particle p){m_subjets.push_back(p);}
139 +  void add_subCSV(float discriminant){m_subCSV.push_back(discriminant);}
140 +  void add_subFlavour(int flavour){m_subFlavour.push_back(flavour);}
141 +
142 +  //track impact parameter tag info setters
143 +  void add_subTrackMomentum(std::vector<float> t){ m_subTrackMomentum.push_back(t);}
144 +  void add_subTrackEta(std::vector<float> t){ m_subTrackEta.push_back(t);}
145 +  void add_subTrackEtaRel(std::vector<float> t){ m_subTrackEtaRel.push_back(t);}
146 +  void add_subTrackDeltaR(std::vector<float> t){ m_subTrackDeltaR.push_back(t);}
147 +  void add_subTrackSip3dVal(std::vector<float> t){ m_subTrackSip3dVal.push_back(t);}
148 +  void add_subTrackSip3dSig(std::vector<float> t){ m_subTrackSip3dSig.push_back(t);}
149 +  void add_subTrackSip2dVal(std::vector<float> t){ m_subTrackSip2dVal.push_back(t);}
150 +  void add_subTrackSip2dSig(std::vector<float> t){ m_subTrackSip2dSig.push_back(t);}
151 +  void add_subTrackDecayLenVal(std::vector<float> t){ m_subTrackDecayLenVal.push_back(t);}
152 +  void add_subTrackChi2(std::vector<float> t){ m_subTrackChi2.push_back(t);}
153 +  void add_subTrackNTotalHits(std::vector<float> t){ m_subTrackNTotalHits.push_back(t);}
154 +  void add_subTrackNPixelHits(std::vector<float> t){ m_subTrackNPixelHits.push_back(t);}
155 +  void add_subTrackPtRel(std::vector<float> t){ m_subTrackPtRel.push_back(t);}
156 +  void add_subTrackPPar(std::vector<float> t){ m_subTrackPPar.push_back(t);}
157 +  void add_subTrackPtRatio(std::vector<float> t){ m_subTrackPtRatio.push_back(t);}
158 +  void add_subTrackPParRatio(std::vector<float> t){ m_subTrackPParRatio.push_back(t);}
159 +  void add_subTrackJetDistVal(std::vector<float> t){ m_subTrackJetDistVal.push_back(t);}
160 +  void add_subTrackJetDistSig(std::vector<float> t){ m_subTrackJetDistSig.push_back(t);}
161 +  void add_subTrackGhostTrackDistVal(std::vector<float> t){ m_subTrackGhostTrackDistVal.push_back(t);}
162 +  void add_subTrackGhostTrackDistSig(std::vector<float> t){ m_subTrackGhostTrackDistSig.push_back(t);}
163 +  void add_subTrackGhostTrackWeight(std::vector<float> t){ m_subTrackGhostTrackWeight.push_back(t);}
164 +
165 +  //secondary vertex tag info setters
166 +  void add_subFlightDistance2dVal(std::vector<float> t){ m_subFlightDistance2dVal.push_back(t);}
167 +  void add_subFlightDistance2dSig(std::vector<float> t){ m_subFlightDistance2dSig.push_back(t);}
168 +  void add_subFlightDistance3dVal(std::vector<float> t){ m_subFlightDistance3dVal.push_back(t);}
169 +  void add_subFlightDistance3dSig(std::vector<float> t){ m_subFlightDistance3dSig.push_back(t);}
170 +  void add_subVertexJetDeltaR(std::vector<float> t){ m_subVertexJetDeltaR.push_back(t);}
171 +  void add_subJetNSecondaryVertices(float t){ m_subJetNSecondaryVertices.push_back(t);}
172 +  void add_subVertexNTracks(float t){ m_subVertexNTracks.push_back(t);}
173 +  //void add_subSecondaryVertex(std::vector< ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double> > > t){ m_subSecondaryVertex.push_back(t);}
174 +  void add_subSecondaryVertex(std::vector<TLorentzVector > t){ m_subSecondaryVertex.push_back(t);}
175 +  void add_subVertexChi2(std::vector<float> t){ m_subVertexChi2.push_back(t);}
176 +  void add_subVertexNdof(std::vector<float> t){ m_subVertexNdof.push_back(t);}
177 +  void add_subVertexNormalizedChi2(std::vector<float> t){ m_subVertexNormalizedChi2.push_back(t);}
178 +  void add_subVertexTracksSize(std::vector<float> t){ m_subVertexTracksSize.push_back(t);}
179 +  //JTC SV variables
180 +  void add_subVertexCategoryJTC(int t){ m_subVertexCategoryJTC.push_back(t);}
181 +  void add_subVertexMassJTC(float t){ m_subVertexMassJTC.push_back(t);}
182 +  void add_subVertexEnergyRatioJTC(float t){ m_subVertexEnergyRatioJTC.push_back(t);}
183 +  void add_subTrackSip3dSigAboveCharmJTC(float t){ m_subTrackSip3dSigAboveCharmJTC.push_back(t);}
184 +
185  
186   private:
187    std::vector<Particle> m_subjets;
188  
189 +  // substructure information
190 +  float m_qjets_volatility;
191 +  float m_tau1;
192 +  float m_tau2;
193 +  float m_tau3;
194 +
195 +  //btag variables
196 +  std::vector<float> m_subCSV;
197 +  std::vector<int> m_subFlavour;
198 +
199 +  //track impact parameter tag info
200 +  std::vector<std::vector<float> > m_subTrackMomentum;
201 +  std::vector<std::vector<float> > m_subTrackEta;
202 +  std::vector<std::vector<float> > m_subTrackEtaRel;
203 +  std::vector<std::vector<float> > m_subTrackDeltaR;
204 +  std::vector<std::vector<float> > m_subTrackSip3dVal;
205 +  std::vector<std::vector<float> > m_subTrackSip3dSig;
206 +  std::vector<std::vector<float> > m_subTrackSip2dVal;
207 +  std::vector<std::vector<float> > m_subTrackSip2dSig;
208 +  std::vector<std::vector<float> > m_subTrackDecayLenVal;
209 +  std::vector<std::vector<float> > m_subTrackChi2;
210 +  std::vector<std::vector<float> > m_subTrackNTotalHits;
211 +  std::vector<std::vector<float> > m_subTrackNPixelHits;
212 +  std::vector<std::vector<float> > m_subTrackPtRel;
213 +  std::vector<std::vector<float> > m_subTrackPPar;
214 +  std::vector<std::vector<float> > m_subTrackPtRatio;
215 +  std::vector<std::vector<float> > m_subTrackPParRatio;
216 +  std::vector<std::vector<float> > m_subTrackJetDistVal;
217 +  std::vector<std::vector<float> > m_subTrackJetDistSig;
218 +  std::vector<std::vector<float> > m_subTrackGhostTrackDistVal;
219 +  std::vector<std::vector<float> > m_subTrackGhostTrackDistSig;
220 +  std::vector<std::vector<float> > m_subTrackGhostTrackWeight;
221 +  
222 +  //secondary vertex tag info
223 +  std::vector<std::vector<float> > m_subFlightDistance2dVal;
224 +  std::vector<std::vector<float> > m_subFlightDistance2dSig;
225 +  std::vector<std::vector<float> > m_subFlightDistance3dVal;
226 +  std::vector<std::vector<float> > m_subFlightDistance3dSig;
227 +  std::vector<std::vector<float> > m_subVertexJetDeltaR;
228 +  std::vector<float> m_subJetNSecondaryVertices;
229 +  std::vector<float> m_subVertexNTracks;
230 +
231 +  //std::vector<std::vector< ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double> > > > m_subSecondaryVertex;
232 +  std::vector<std::vector<TLorentzVector> > m_subSecondaryVertex;
233 +  std::vector<std::vector<float> > m_subVertexChi2;                                
234 +  std::vector<std::vector<float> > m_subVertexNdof;                    
235 +  std::vector<std::vector<float> > m_subVertexNormalizedChi2;
236 +  std::vector<std::vector<float> > m_subVertexTracksSize;
237 +  //JTC SV variables
238 +  std::vector<int> m_subVertexCategoryJTC;
239 +  std::vector<float> m_subVertexMassJTC;
240 +  std::vector<float> m_subVertexEnergyRatioJTC;
241 +  std::vector<float> m_subTrackSip3dSigAboveCharmJTC;
242 +
243   };
244  
245   #endif

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines