ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/devildog/SWonAnalysis3/Thesis/src/TCJet.h
Revision: 1.2
Committed: Thu May 5 00:24:42 2011 UTC (14 years ago) by devildog
Content type: text/plain
Branch: MAIN
Changes since 1.1: +26 -15 lines
Log Message:
Re-inserted b tagging variables and methods

File Contents

# User Rev Content
1 devildog 1.1 /*
2     * File: TCJet.h
3     * Author: Anton A.
4     *
5     * Created on April 30, 2010, 2:49 PM
6     */
7    
8     #ifndef _TCJET_H
9     #define _TCJET_H
10    
11     #include "TObject.h"
12     #include "TLorentzVector.h"
13     #include "TVector2.h"
14    
15     class TCJet : public TObject {
16     private:
17     TLorentzVector _p4;
18     TVector3 _vtx;
19     // TVector3 _assocPV;
20     float _vtxSumPt;
21     unsigned int _vtxIndex;
22    
23     float _jetCorr[8];
24     bool _jetCorrIsSet[8];
25    
26     float _chHadFrac;
27     float _neuHadFrac;
28     float _chEmFrac;
29     float _neuEmFrac;
30    
31     unsigned int _numConstit;
32     unsigned int _numChPart;
33    
34     // b tagging discriminators
35     //Track counting tag with N = 3: trackCountingHighPurBJetTags
36 devildog 1.2 float _bDiscrTrkCountHiPure;
37 devildog 1.1 //Track counting tag with N = 2: trackCountingHighEffBJetTags
38     float _bDiscrTrkCountHiEff;
39     //Simple secondary vertex b tag: simpleSecondaryVertexBJetTags
40 devildog 1.2 float _bDiscrSecVtxSimple;
41     //Combined SV b tag using likelihood ratios: combinedSVBJetTags
42     float _bDiscrSecVtxL;
43     //Combined SV b tag using MVA: combinedSVMVABJetTags
44     float _bDiscrSecVtxMVA;
45    
46     float _vtxSumPtFrac;
47     float _vtxTrackFrac;
48     float _vtxNTracks;
49 devildog 1.1
50     public:
51     TCJet();
52     TCJet(const TCJet& orig);
53     virtual ~TCJet();
54    
55     // "get" methods -----------
56    
57     TLorentzVector P4() const;
58     TVector2 P2() const;
59     float Et() const;
60     float Pt() const;
61    
62     // accessors for corrected jets (the argument is the level of correction)
63     // Note: in this implementation all lower-level corrections will be
64     // applied as well. In the future, add overloaded methods for specifying individual
65     // corrections when/if needed
66     TLorentzVector P4(unsigned int lvl) const;
67     TVector2 P2(unsigned int lvl) const;
68     float Et(unsigned int lvl) const;
69     float Pt(unsigned int lvl) const;
70    
71     float TotalJetCorr(unsigned int lvl) const;
72    
73     float ChHadFrac() const;
74     float NeuHadFrac() const;
75     float ChEmFrac() const;
76     float NeuEmFrac() const;
77    
78     unsigned int NumConstit() const;
79     unsigned int NumChPart() const;
80    
81     TVector3 Vtx() const;
82 devildog 1.2 unsigned int VtxIndex() const;
83     float VtxSumPtFrac() const;
84 devildog 1.1 float VtxSumPt() const;
85 devildog 1.2 float VtxTrackFrac() const;
86     int VtxNTracks() const;
87    
88 devildog 1.1 // TVector3 AssocVtx() const;
89     bool JetCorrIsSet(unsigned int lvl) const;
90     float JetCorr(unsigned int lvl) const;
91    
92     // b tagging discriminators
93 devildog 1.2 float BDiscrTrkCountHiPure() const;
94 devildog 1.1 float BDiscrTrkCountHiEff() const;
95 devildog 1.2 float BDiscrSecVtxSimple() const;
96     float BDiscrSecVtxL() const;
97     float BDiscrSecVtxMVA() const;
98 devildog 1.1
99     // "set" methods ---------
100     void SetP4(TLorentzVector p4);
101     void SetP4(float px, float py, float pz, float e);
102     void SetVtx(float vx, float vy, float vz);
103     void SetVtxSumPt(float vtxSumPt);
104     void SetVtxIndex(unsigned int vtxIndex);
105 devildog 1.2 void SetVtxTrackFrac(float vtxTrackFrac);
106     void SetVtxNTracks(int vtxNTracks);
107     void SetVtxSumPtFrac(float vtxSumPtFrac);
108 devildog 1.1 // void SetAssocVtx(float vx, float vy, float vz);
109    
110     void SetChHadFrac(float c);
111     void SetNeuHadFrac(float n);
112     void SetChEmFrac(float c);
113     void SetNeuEmFrac(float n);
114     void SetNumConstit(unsigned int n);
115     void SetNumChPart(unsigned int n);
116     void SetJetCorr(unsigned int lvl, float corr);
117    
118     // b tagging discriminators
119     // see the corresponding class members for description
120 devildog 1.2 void SetBDiscrTrkCountHiPure(float d);
121 devildog 1.1 void SetBDiscrTrkCountHiEff(float d);
122 devildog 1.2 void SetBDiscrSecVtxSimple(float d);
123     void SetBDiscrSecVtxL(float d);
124     void SetBDiscrSecVtxMVA(float d);
125 devildog 1.1
126    
127     ClassDef(TCJet, 2);
128    
129     };
130    
131     #endif /* _TCJET_H */