ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/DataTree/interface/Jet.h
(Generate patch)

Comparing UserCode/MitAna/DataTree/interface/Jet.h (file contents):
Revision 1.1 by loizides, Mon Jul 7 16:02:25 2008 UTC vs.
Revision 1.12 by loizides, Tue Dec 9 17:47:00 2008 UTC

# Line 3 | Line 3
3   //
4   // Jet
5   //
6 < // Details to be worked out...
6 > // Jet class to hold reconstructed jet information.
7   //
8 < // Authors: C.Loizides
8 > // Authors: S.Xie, C.Loizides
9   //--------------------------------------------------------------------------------------------------
10  
11 < #ifndef DATATREE_JET_H
12 < #define DATATREE_JET_H
11 > #ifndef MITANA_DATATREE_JET_H
12 > #define MITANA_DATATREE_JET_H
13  
14   #include "MitAna/DataTree/interface/Particle.h"
15   #include "MitAna/DataTree/interface/Track.h"
16 + #include "MitAna/DataTree/interface/CaloTower.h"
17  
18   namespace mithep
19   {
20    class Jet : public Particle
21    {
22      public:
23 <      Jet() {}
23 >      Jet() : fMaxEInEmTowers(0), fMaxEInHadTowers(0), fEnergyFractionH(0), fEnergyFractionEm(0),
24 >              fHadEnergyInHB(0), fHadEnergyInHO(0), fHadEnergyInHE(0), fHadEnergyInHF(0),
25 >              fEmEnergyInEB(0), fEmEnergyInEE(0), fEmEnergyInHF(0), fTowersArea(0), fN(0),
26 >              fN60(0), fN90(0), fMatchedMCFlavor(0) {}
27 >      Jet(Double_t px, Double_t py, Double_t pz, Double_t e) : fMom(px,py,pz,e),
28 >              fMaxEInEmTowers(0), fMaxEInHadTowers(0), fEnergyFractionH(0), fEnergyFractionEm(0),
29 >              fHadEnergyInHB(0), fHadEnergyInHO(0), fHadEnergyInHE(0), fHadEnergyInHF(0),
30 >              fEmEnergyInEB(0), fEmEnergyInEE(0), fEmEnergyInHF(0), fTowersArea(0), fN(0),
31 >              fN60(0), fN90(0), fMatchedMCFlavor(0) {}
32        ~Jet() {}
33  
34 +      Double_t   Alpha()                       const { return fAlpha;                     }
35 +      Double_t   Beta()                        const { return fBeta;                      }
36 +      Double_t   Charge()                      const { return 0;                          }
37 +      Double_t   CombinedSecondaryVertexBJetTagsDisc()          const
38 +                   { return fCombinedSecondaryVertexBJetTagsDisc;    }
39 +      Double_t   CombinedSecondaryVertexMVABJetTagsDisc()       const
40 +                   { return fCombinedSecondaryVertexMVABJetTagsDisc; }
41 +      Double_t   EmEnergyInEB()                const { return fEmEnergyInEB;              }
42 +      Double_t   EmEnergyInEE()                const { return fEmEnergyInEE;              }
43 +      Double_t   EmEnergyInHF()                const { return fEmEnergyInHF;              }
44 +      Double_t   EnergyFractionH()             const { return fEnergyFractionH;           }
45 +      Double_t   EnergyFractionEm()            const { return fEnergyFractionEm;          }
46 +      Double_t   HadEnergyInHO()               const { return fHadEnergyInHO;             }
47 +      Double_t   HadEnergyInHB()               const { return fHadEnergyInHB;             }
48 +      Double_t   HadEnergyInHF()               const { return fHadEnergyInHF;             }
49 +      Double_t   HadEnergyInHE()               const { return fHadEnergyInHE;             }
50 +      Double_t   ImpactParameterMVABJetTagsDisc()               const
51 +                   { return fImpactParameterMVABJetTagsDisc;         }
52 +      Double_t   JetProbabilityBJetTagsDisc()                   const
53 +                   { return fJetProbabilityBJetTagsDisc;             }
54 +      Double_t   JetBProbabilityBJetTagsDisc()                  const
55 +                   { return fJetBProbabilityBJetTagsDisc;            }
56 +      Int_t      MatchedMCFlavor()             const { return fMatchedMCFlavor;           }
57 +      Double_t   MaxEInEmTowers()              const { return fMaxEInEmTowers;            }
58 +      Double_t   MaxEInHadTowers()             const { return fMaxEInHadTowers;           }
59 +      FourVector Mom()                         const { return fMom;                       }
60 +      UShort_t   N()                           const { return fN;                         }
61 +      UShort_t   N60()                         const { return fN60;                       }
62 +      UShort_t   N90()                         const { return fN90;                       }
63 +      UInt_t     NTowers()                     const { return fTowers.GetEntries();       }
64 +      Double_t   L2RelativeCorrectionScale()   const { return fL2RelativeCorrectionScale; }
65 +      Double_t   L3AbsoluteCorrectionScale()   const { return fL3AbsoluteCorrectionScale; }
66 +      Double_t   L4EMFCorrectionScale()        const { return fL4EMFCorrectionScale;      }
67 +      Double_t   L5FlavorCorrectionScale()     const { return fL5FlavorCorrectionScale;   }
68 +      Double_t   L7PartonCorrectionScale()     const { return fL7PartonCorrectionScale;   }
69 +      EObjType    ObjType()                    const { return kJet;                       }      
70 +      Double_t   SimpleSecondaryVertexBJetTagsDisc()            const
71 +                   { return fSimpleSecondaryVertexBJetTagsDisc;      }
72 +      Double_t   SoftMuonBJetTagsDisc()                         const
73 +                   { return fSoftMuonBJetTagsDisc;                   }
74 +      Double_t   SoftMuonNoIPBJetTagsDisc()                     const
75 +                   { return fSoftMuonNoIPBJetTagsDisc;               }
76 +      Double_t   SoftElectronBJetTagsDisc()                     const
77 +                   { return fSoftElectronBJetTagsDisc;               }
78 +      Double_t   TrackCountingHighEffBJetTagsDisc()             const
79 +                   { return fTrackCountingHighEffBJetTagsDisc;       }
80 +      Double_t   TrackCountingHighPurBJetTagsDisc()             const
81 +                   { return fTrackCountingHighPurBJetTagsDisc;       }
82 +      const CaloTower  
83 +                *Tower(UInt_t i)               const { return fTowers.At(i);           }
84 +      Double_t   TowersArea()                  const { return fTowersArea;             }
85 +      void       AddTower(const CaloTower *tower)  { fTowers.Add(tower);               }
86 +      void       SetAlpha(Double_t val)            { fAlpha            = val;          }
87 +      void       SetBeta(Double_t val)             { fBeta             = val;          }
88 +      void       SetCombinedSecondaryVertexBJetTagsDisc(Double_t d)
89 +                                                   { fCombinedSecondaryVertexBJetTagsDisc = d;     }
90 +      void       SetCombinedSecondaryVertexMVABJetTagsDisc(Double_t d)
91 +                                                   { fCombinedSecondaryVertexMVABJetTagsDisc = d;  }
92 +      void       SetEmEnergyInEB(Double_t val)     { fEmEnergyInEB     = val;          }
93 +      void       SetEmEnergyInEE(Double_t val)     { fEmEnergyInEE     = val;          }
94 +      void       SetEmEnergyInHF(Double_t val)     { fEmEnergyInHF     = val;          }
95 +      void       SetEnergyFractionH(Double_t val)  { fEnergyFractionH  = val;          }
96 +      void       SetEnergyFractionEm(Double_t val) { fEnergyFractionEm = val;          }
97 +      void       SetHadEnergyInHO(Double_t val)    { fHadEnergyInHO    = val;          }
98 +      void       SetHadEnergyInHB(Double_t val)    { fHadEnergyInHB    = val;          }
99 +      void       SetHadEnergyInHF(Double_t val)    { fHadEnergyInHF    = val;          }
100 +      void       SetHadEnergyInHE(Double_t val)    { fHadEnergyInHE    = val;          }
101 +      void       SetImpactParameterMVABJetTagsDisc (Double_t d)
102 +                                                   {   fImpactParameterMVABJetTagsDisc = d;        }
103 +      void       SetJetProbabilityBJetTagsDisc(Double_t d)  { fJetProbabilityBJetTagsDisc = d;     }
104 +      void       SetJetBProbabilityBJetTagsDisc(Double_t d) { fJetBProbabilityBJetTagsDisc = d;    }
105 +      void       SetN(UShort_t n)                  { fN                = n;            }
106 +      void       SetN60(UShort_t n)                { fN60              = n;            }
107 +      void       SetN90(UShort_t n)                { fN90              = n;            }
108 +      void       SetMatchedMCFlavor(Int_t flavor)  { fMatchedMCFlavor = flavor;        }
109 +      void       SetMaxEInEmTowers(Double_t val)   { fMaxEInEmTowers   = val;          }
110 +      void       SetMaxEInHadTowers(Double_t val)  { fMaxEInHadTowers  = val;          }
111 +      void       SetL2RelativeCorrectionScale(Double_t s )   { fL2RelativeCorrectionScale = s;   }
112 +      void       SetL3AbsoluteCorrectionScale(Double_t s )   { fL3AbsoluteCorrectionScale = s;   }
113 +      void       SetL4EMFCorrectionScale(Double_t s )        { fL4EMFCorrectionScale = s;        }
114 +      void       SetL5FlavorCorrectionScale(Double_t s )     { fL5FlavorCorrectionScale = s;     }
115 +      void       SetL7PartonCorrectionScale(Double_t s )     { fL7PartonCorrectionScale = s;     }
116 +      void       SetSimpleSecondaryVertexBJetTagsDisc(Double_t d)
117 +                                                   { fSimpleSecondaryVertexBJetTagsDisc = d;     }
118 +      void       SetSoftMuonBJetTagsDisc(Double_t d )        { fSoftMuonBJetTagsDisc = d;        }
119 +      void       SetSoftMuonNoIPBJetTagsDisc(Double_t d )    { fSoftMuonNoIPBJetTagsDisc = d;    }
120 +      void       SetSoftElectronBJetTagsDisc(Double_t d )    { fSoftElectronBJetTagsDisc = d;    }
121 +      void       SetTowersArea(Double_t val)       { fTowersArea       = val;          }
122 +      void       SetTrackCountingHighEffBJetTagsDisc( Double_t d)
123 +                                                   { fTrackCountingHighEffBJetTagsDisc = d;      }
124 +      void       SetTrackCountingHighPurBJetTagsDisc(Double_t d)
125 +                                                   { fTrackCountingHighPurBJetTagsDisc = d;      }
126 +
127 +    protected:
128 +      FourVector fMom;                    //four momentum of jet
129 +      Double_t   fMaxEInEmTowers;         //maximum energy in EM towers
130 +      Double_t   fMaxEInHadTowers;        //maximum energy in HCAL towers
131 +      Double_t   fEnergyFractionH;        //hadronic energy fraction
132 +      Double_t   fEnergyFractionEm;       //electromagnetic energy fraction
133 +      Double_t   fHadEnergyInHB;          //hadronic energy in HB
134 +      Double_t   fHadEnergyInHO;          //hadronic energy in HO
135 +      Double_t   fHadEnergyInHE;          //hadronic energy in HE
136 +      Double_t   fHadEnergyInHF;          //hadronic energy in HF
137 +      Double_t   fEmEnergyInEB;           //electromagnetic energy in EB
138 +      Double_t   fEmEnergyInEE;           //electromagnetic energy in EE
139 +      Double_t   fEmEnergyInHF;           //electromagnetic energy extracted from HF
140 +      Double_t   fTowersArea;             //area of contributing towers
141 +      UShort_t   fN;                      //number of constituents
142 +      UShort_t   fN60;                    //number constituents with 60% of total energy
143 +      UShort_t   fN90;                    //number constituents with 90% of total energy
144 +      Double_t   fAlpha;                  //jet vertex association alpha variable
145 +      Double_t   fBeta;                   //jet vertex association beta variable
146 +      Int_t      fMatchedMCFlavor;        //pdgID of the quark flavor that the jet matched to
147 +      Double_t   fJetProbabilityBJetTagsDisc;              //Discriminants for b-tagging algos
148 +      Double_t   fJetBProbabilityBJetTagsDisc;             //
149 +      Double_t   fSimpleSecondaryVertexBJetTagsDisc;       //
150 +      Double_t   fCombinedSecondaryVertexBJetTagsDisc;     //
151 +      Double_t   fCombinedSecondaryVertexMVABJetTagsDisc;  //
152 +      Double_t   fImpactParameterMVABJetTagsDisc;          //
153 +      Double_t   fTrackCountingHighEffBJetTagsDisc;        //
154 +      Double_t   fTrackCountingHighPurBJetTagsDisc;        //
155 +      Double_t   fSoftMuonBJetTagsDisc;                    //
156 +      Double_t   fSoftMuonNoIPBJetTagsDisc;                //
157 +      Double_t   fSoftElectronBJetTagsDisc;                //
158 +      Double_t   fL2RelativeCorrectionScale;               //
159 +      Double_t   fL3AbsoluteCorrectionScale;               //
160 +      Double_t   fL4EMFCorrectionScale;                    //
161 +      Double_t   fL5FlavorCorrectionScale;                 //
162 +      Double_t   fL7PartonCorrectionScale;                 //
163 +      RefArray<CaloTower,1024> fTowers;                    //calo towers assigned to this jet
164 +
165      ClassDef(Jet, 1) // Jet class
166    };
167   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines