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.8 by loizides, Wed Sep 10 03:33:26 2008 UTC vs.
Revision 1.15 by loizides, Wed Feb 18 15:38:54 2009 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 MITANA_DATATREE_JET_H
# Line 29 | Line 29 | namespace mithep
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() {}
32  
33 <      FourVector            Mom()                             const { return fMom; }
34 <      Double_t              Charge()                          const { return 0; }
35 <      Double_t              MaxEInEmTowers()                  const { return fMaxEInEmTowers; }
36 <      Double_t              MaxEInHadTowers()                 const { return fMaxEInHadTowers; }
37 <      Double_t              HadEnergyInHO()                   const { return fHadEnergyInHO; }
38 <      Double_t              HadEnergyInHB()                   const { return fHadEnergyInHB; }
39 <      Double_t              HadEnergyInHF()                   const { return fHadEnergyInHF; }
40 <      Double_t              HadEnergyInHE()                   const { return fHadEnergyInHE; }
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 <      const CaloTower      *Tower(UInt_t i)                   const { return fTowers.At(i); }
47 <      Double_t              TowersArea()                      const { return fTowersArea; }
48 <      UShort_t              N()                               const { return fN; }
49 <      UShort_t              N60()                             const { return fN60; }
50 <      UShort_t              N90()                             const { return fN90; }
51 <      UInt_t                NTowers()                         const { return fTowers.GetEntries(); }
52 <      Int_t                 MatchedMCFlavor()                 const { return fMatchedMCFlavor; }
53 <      Double_t JetProbabilityBJetTagsDisc()                   const
54 <      { return fJetProbabilityBJetTagsDisc;             }
55 <      Double_t JetBProbabilityBJetTagsDisc()                  const
56 <      { return fJetBProbabilityBJetTagsDisc;            }
57 <      Double_t SimpleSecondaryVertexBJetTagsDisc()            const
58 <      { return fSimpleSecondaryVertexBJetTagsDisc;      }
59 <      Double_t CombinedSecondaryVertexBJetTagsDisc()          const
60 <      { return fCombinedSecondaryVertexBJetTagsDisc;    }
61 <      Double_t CombinedSecondaryVertexMVABJetTagsDisc()       const
62 <      { return fCombinedSecondaryVertexMVABJetTagsDisc; }
63 <      Double_t ImpactParameterMVABJetTagsDisc()               const
64 <      { return fImpactParameterMVABJetTagsDisc;         }
65 <      Double_t TrackCountingHighEffBJetTagsDisc()             const
66 <      { return fTrackCountingHighEffBJetTagsDisc;       }
67 <      Double_t TrackCountingHighPurBJetTagsDisc()             const
68 <      { return fTrackCountingHighPurBJetTagsDisc;       }
69 <      Double_t SoftMuonBJetTagsDisc()                         const
70 <      { return fSoftMuonBJetTagsDisc;                   }
71 <      Double_t SoftMuonNoIPBJetTagsDisc()                     const
72 <      { return fSoftMuonNoIPBJetTagsDisc;               }
73 <      Double_t SoftElectronBJetTagsDisc()                     const
74 <      { return fSoftElectronBJetTagsDisc;               }
75 <      void                  AddTower(CaloTower *tower)         { fTowers.Add(tower);      }
76 <      void                  SetMaxEInEmTowers(Double_t val)    { fMaxEInEmTowers   = val;   }
77 <      void                  SetMaxEInHadTowers(Double_t val)   { fMaxEInHadTowers  = val;   }
78 <      void                  SetHadEnergyInHO(Double_t val)     { fHadEnergyInHO    = val;   }
79 <      void                  SetHadEnergyInHB(Double_t val)     { fHadEnergyInHB    = val;   }
80 <      void                  SetHadEnergyInHF(Double_t val)     { fHadEnergyInHF    = val;   }
81 <      void                  SetHadEnergyInHE(Double_t val)     { fHadEnergyInHE    = val;   }
82 <      void                  SetEmEnergyInEB(Double_t val)      { fEmEnergyInEB     = val;   }
83 <      void                  SetEmEnergyInEE(Double_t val)      { fEmEnergyInEE     = val;   }
84 <      void                  SetEmEnergyInHF(Double_t val)      { fEmEnergyInHF     = val;   }
85 <      void                  SetEnergyFractionH(Double_t val)   { fEnergyFractionH  = val;   }
86 <      void                  SetEnergyFractionEm(Double_t val)  { fEnergyFractionEm = val;   }
87 <      void                  SetTowersArea(Double_t val)        { fTowersArea       = val;   }
88 <      void                  SetN(UShort_t n)                   { fN = n;                    }
89 <      void                  SetN60(UShort_t n)                 { fN60 = n;                  }
90 <      void                  SetN90(UShort_t n)                 { fN90 = n;                  }
91 <      void                  SetMatchedMCFlavor(Int_t flavor)   { fMatchedMCFlavor = flavor; }
92 <      void       SetJetProbabilityBJetTagsDisc ( Double_t d )  { fJetProbabilityBJetTagsDisc = d;  }
93 <      void       SetJetBProbabilityBJetTagsDisc ( Double_t d ) { fJetBProbabilityBJetTagsDisc = d; }
94 <      void       SetSimpleSecondaryVertexBJetTagsDisc ( Double_t d )
95 <                                                   { fSimpleSecondaryVertexBJetTagsDisc = d;       }
96 <      void       SetCombinedSecondaryVertexBJetTagsDisc ( Double_t d )
97 <                                                   { fCombinedSecondaryVertexBJetTagsDisc = d;     }
98 <      void       SetCombinedSecondaryVertexMVABJetTagsDisc ( Double_t d )
99 <                                                   { fCombinedSecondaryVertexMVABJetTagsDisc = d;  }
100 <      void       SetImpactParameterMVABJetTagsDisc ( Double_t d )
101 <                                                   {   fImpactParameterMVABJetTagsDisc = d;        }
102 <      void       SetTrackCountingHighEffBJetTagsDisc ( Double_t d )
103 <                                                   { fTrackCountingHighEffBJetTagsDisc = d;        }
104 <      void       SetTrackCountingHighPurBJetTagsDisc ( Double_t d )
105 <                                                   { fTrackCountingHighPurBJetTagsDisc = d;        }
106 <      void       SetSoftMuonBJetTagsDisc ( Double_t d )        { fSoftMuonBJetTagsDisc = d;        }
107 <      void       SetSoftMuonNoIPBJetTagsDisc ( Double_t d )    { fSoftMuonNoIPBJetTagsDisc = d;    }
108 <      void       SetSoftElectronBJetTagsDisc ( Double_t d )    { fSoftElectronBJetTagsDisc = d;    }
109 <      
33 >      Double_t   Alpha()                       const { return fAlpha;                     }
34 >      Double_t   Beta()                        const { return fBeta;                      }
35 >      Double_t   CombinedSecondaryVertexBJetTagsDisc()          const
36 >                   { return fCombinedSecondaryVertexBJetTagsDisc;    }
37 >      Double_t   CombinedSecondaryVertexMVABJetTagsDisc()       const
38 >                   { return fCombinedSecondaryVertexMVABJetTagsDisc; }
39 >      Double_t   EmEnergyInEB()                const { return fEmEnergyInEB;              }
40 >      Double_t   EmEnergyInEE()                const { return fEmEnergyInEE;              }
41 >      Double_t   EmEnergyInHF()                const { return fEmEnergyInHF;              }
42 >      Double_t   EnergyFractionH()             const { return fEnergyFractionH;           }
43 >      Double_t   EnergyFractionEm()            const { return fEnergyFractionEm;          }
44 >      Double_t   HadEnergyInHO()               const { return fHadEnergyInHO;             }
45 >      Double_t   HadEnergyInHB()               const { return fHadEnergyInHB;             }
46 >      Double_t   HadEnergyInHF()               const { return fHadEnergyInHF;             }
47 >      Double_t   HadEnergyInHE()               const { return fHadEnergyInHE;             }
48 >      Bool_t     HasTower(const CaloTower *t)  const { return fTowers.HasObject(t);       }
49 >      Double_t   ImpactParameterMVABJetTagsDisc()               const
50 >                   { return fImpactParameterMVABJetTagsDisc;         }
51 >      Double_t   JetProbabilityBJetTagsDisc()                   const
52 >                   { return fJetProbabilityBJetTagsDisc;             }
53 >      Double_t   JetBProbabilityBJetTagsDisc()                  const
54 >                   { return fJetBProbabilityBJetTagsDisc;            }
55 >      Int_t      MatchedMCFlavor()             const { return fMatchedMCFlavor;           }
56 >      Double_t   MaxEInEmTowers()              const { return fMaxEInEmTowers;            }
57 >      Double_t   MaxEInHadTowers()             const { return fMaxEInHadTowers;           }
58 >      UShort_t   N()                           const { return fN;                         }
59 >      UShort_t   N60()                         const { return fN60;                       }
60 >      UShort_t   N90()                         const { return fN90;                       }
61 >      UInt_t     NTowers()                     const { return fTowers.GetEntries();       }
62 >      Double_t   L2RelativeCorrectionScale()   const { return fL2RelativeCorrectionScale; }
63 >      Double_t   L3AbsoluteCorrectionScale()   const { return fL3AbsoluteCorrectionScale; }
64 >      Double_t   L4EMFCorrectionScale()        const { return fL4EMFCorrectionScale;      }
65 >      Double_t   L5FlavorCorrectionScale()     const { return fL5FlavorCorrectionScale;   }
66 >      Double_t   L7PartonCorrectionScale()     const { return fL7PartonCorrectionScale;   }
67 >      EObjType   ObjType()                     const { return kJet;                       }      
68 >      Double_t   SimpleSecondaryVertexBJetTagsDisc()            const
69 >                   { return fSimpleSecondaryVertexBJetTagsDisc; }
70 >      Double_t   SoftMuonBJetTagsDisc()                         const
71 >                   { return fSoftMuonBJetTagsDisc;              }
72 >      Double_t   SoftMuonNoIPBJetTagsDisc()                     const
73 >                   { return fSoftMuonNoIPBJetTagsDisc;          }
74 >      Double_t   SoftElectronBJetTagsDisc()                     const
75 >                   { return fSoftElectronBJetTagsDisc;          }
76 >      Double_t   TrackCountingHighEffBJetTagsDisc()             const
77 >                   { return fTrackCountingHighEffBJetTagsDisc;  }
78 >      Double_t   TrackCountingHighPurBJetTagsDisc()             const
79 >                   { return fTrackCountingHighPurBJetTagsDisc;  }
80 >      const CaloTower  
81 >                *Tower(UInt_t i)               const { return fTowers.At(i);           }
82 >      Double_t   TowersArea()                  const { return fTowersArea;             }
83 >      void       AddTower(const CaloTower *tower)  { fTowers.Add(tower);               }
84 >      void       SetAlpha(Double_t val)            { fAlpha            = val;          }
85 >      void       SetBeta(Double_t val)             { fBeta             = val;          }
86 >      void       SetCombinedSecondaryVertexBJetTagsDisc(Double_t d)
87 >                                                   { fCombinedSecondaryVertexBJetTagsDisc = d;    }
88 >      void       SetCombinedSecondaryVertexMVABJetTagsDisc(Double_t d)
89 >                                                   { fCombinedSecondaryVertexMVABJetTagsDisc = d; }
90 >      void       SetEmEnergyInEB(Double_t val)     { fEmEnergyInEB     = val;          }
91 >      void       SetEmEnergyInEE(Double_t val)     { fEmEnergyInEE     = val;          }
92 >      void       SetEmEnergyInHF(Double_t val)     { fEmEnergyInHF     = val;          }
93 >      void       SetEnergyFractionH(Double_t val)  { fEnergyFractionH  = val;          }
94 >      void       SetEnergyFractionEm(Double_t val) { fEnergyFractionEm = val;          }
95 >      void       SetHadEnergyInHO(Double_t val)    { fHadEnergyInHO    = val;          }
96 >      void       SetHadEnergyInHB(Double_t val)    { fHadEnergyInHB    = val;          }
97 >      void       SetHadEnergyInHF(Double_t val)    { fHadEnergyInHF    = val;          }
98 >      void       SetHadEnergyInHE(Double_t val)    { fHadEnergyInHE    = val;          }
99 >      void       SetImpactParameterMVABJetTagsDisc (Double_t d)
100 >                                                   { fImpactParameterMVABJetTagsDisc = d;        }
101 >      void       SetJetProbabilityBJetTagsDisc(Double_t d)  { fJetProbabilityBJetTagsDisc = d;   }
102 >      void       SetJetBProbabilityBJetTagsDisc(Double_t d) { fJetBProbabilityBJetTagsDisc = d;  }
103 >      void       SetMom(const FourVector &mom)     { fMom              = mom;          }
104 >      void       SetN(UShort_t n)                  { fN                = n;            }
105 >      void       SetN60(UShort_t n)                { fN60              = n;            }
106 >      void       SetN90(UShort_t n)                { fN90              = n;            }
107 >      void       SetMatchedMCFlavor(Int_t flavor)  { fMatchedMCFlavor = flavor;        }
108 >      void       SetMaxEInEmTowers(Double_t val)   { fMaxEInEmTowers   = val;          }
109 >      void       SetMaxEInHadTowers(Double_t val)  { fMaxEInHadTowers  = val;          }
110 >      void       SetL2RelativeCorrectionScale(Double_t s )   { fL2RelativeCorrectionScale = s;   }
111 >      void       SetL3AbsoluteCorrectionScale(Double_t s )   { fL3AbsoluteCorrectionScale = s;   }
112 >      void       SetL4EMFCorrectionScale(Double_t s )        { fL4EMFCorrectionScale = s;        }
113 >      void       SetL5FlavorCorrectionScale(Double_t s )     { fL5FlavorCorrectionScale = s;     }
114 >      void       SetL7PartonCorrectionScale(Double_t s )     { fL7PartonCorrectionScale = s;     }
115 >      void       SetSimpleSecondaryVertexBJetTagsDisc(Double_t d)
116 >                                                   { fSimpleSecondaryVertexBJetTagsDisc = d;     }
117 >      void       SetSoftMuonBJetTagsDisc(Double_t d)         { fSoftMuonBJetTagsDisc = d;        }
118 >      void       SetSoftMuonNoIPBJetTagsDisc(Double_t d)     { fSoftMuonNoIPBJetTagsDisc = d;    }
119 >      void       SetSoftElectronBJetTagsDisc(Double_t d)     { fSoftElectronBJetTagsDisc = d;    }
120 >      void       SetTowersArea(Double_t val)       { fTowersArea       = val;          }
121 >      void       SetTrackCountingHighEffBJetTagsDisc(Double_t d)
122 >                                                   { fTrackCountingHighEffBJetTagsDisc = d;      }
123 >      void       SetTrackCountingHighPurBJetTagsDisc(Double_t d)
124 >                                                   { fTrackCountingHighPurBJetTagsDisc = d;      }
125 >
126      protected:
127 +      void       GetMom()                      const;
128 +
129        FourVector fMom;                    //four momentum of jet
130        Double_t   fMaxEInEmTowers;         //maximum energy in EM towers
131        Double_t   fMaxEInHadTowers;        //maximum energy in HCAL towers
# Line 125 | Line 142 | namespace mithep
142        UShort_t   fN;                      //number of constituents
143        UShort_t   fN60;                    //number constituents with 60% of total energy
144        UShort_t   fN90;                    //number constituents with 90% of total energy
145 +      Double_t   fAlpha;                  //jet vertex association alpha variable
146 +      Double_t   fBeta;                   //jet vertex association beta variable
147        Int_t      fMatchedMCFlavor;        //pdgID of the quark flavor that the jet matched to
148 <      Double_t   fJetProbabilityBJetTagsDisc;              //Discriminants for various b-tagging
149 <      Double_t   fJetBProbabilityBJetTagsDisc;             //algorithms
150 <      Double_t   fSimpleSecondaryVertexBJetTagsDisc;
151 <      Double_t   fCombinedSecondaryVertexBJetTagsDisc;
152 <      Double_t   fCombinedSecondaryVertexMVABJetTagsDisc;
153 <      Double_t   fImpactParameterMVABJetTagsDisc;
154 <      Double_t   fTrackCountingHighEffBJetTagsDisc;
155 <      Double_t   fTrackCountingHighPurBJetTagsDisc;
156 <      Double_t   fSoftMuonBJetTagsDisc;
157 <      Double_t   fSoftMuonNoIPBJetTagsDisc;
158 <      Double_t   fSoftElectronBJetTagsDisc;
159 <
160 <      RefArray<CaloTower> fTowers;        //||CaloTowers in this jet
148 >      Double_t   fJetProbabilityBJetTagsDisc;              //Discriminants for b-tagging algos
149 >      Double_t   fJetBProbabilityBJetTagsDisc;             //
150 >      Double_t   fSimpleSecondaryVertexBJetTagsDisc;       //
151 >      Double_t   fCombinedSecondaryVertexBJetTagsDisc;     //
152 >      Double_t   fCombinedSecondaryVertexMVABJetTagsDisc;  //
153 >      Double_t   fImpactParameterMVABJetTagsDisc;          //
154 >      Double_t   fTrackCountingHighEffBJetTagsDisc;        //
155 >      Double_t   fTrackCountingHighPurBJetTagsDisc;        //
156 >      Double_t   fSoftMuonBJetTagsDisc;                    //
157 >      Double_t   fSoftMuonNoIPBJetTagsDisc;                //
158 >      Double_t   fSoftElectronBJetTagsDisc;                //
159 >      Double_t   fL2RelativeCorrectionScale;               //
160 >      Double_t   fL3AbsoluteCorrectionScale;               //
161 >      Double_t   fL4EMFCorrectionScale;                    //
162 >      Double_t   fL5FlavorCorrectionScale;                 //
163 >      Double_t   fL7PartonCorrectionScale;                 //
164 >      RefArray<CaloTower,1024> fTowers;                    //calo towers assigned to this jet
165  
166      ClassDef(Jet, 1) // Jet class
167    };
168   }
169 +
170 + //--------------------------------------------------------------------------------------------------
171 + inline void mithep::Jet::GetMom() const
172 + {
173 +  // Get momentum values from stored values.
174 +
175 +  fCachedMom.SetCoordinates(fMom.Pt(),fMom.Eta(),fMom.Phi(),fMom.M());
176 + }
177   #endif

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines