ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/Utils/interface/ElectronIDMVA.h
(Generate patch)

Comparing UserCode/MitPhysics/Utils/interface/ElectronIDMVA.h (file contents):
Revision 1.1 by sixie, Sun Sep 25 10:08:11 2011 UTC vs.
Revision 1.7 by sixie, Tue Feb 7 20:53:28 2012 UTC

# Line 16 | Line 16
16   #include "MitAna/DataTree/interface/TrackFwd.h"
17   #include "MitAna/DataTree/interface/Electron.h"
18   #include "MitAna/DataTree/interface/ElectronCol.h"
19 + #include "MitAna/DataTree/interface/PFCandidateCol.h"
20 + #include "MitAna/DataTree/interface/PileupEnergyDensityCol.h"
21   #include "MitCommon/MathTools/interface/MathUtils.h"
20 #include "MitPhysics/ElectronLikelihood/interface/ElectronLikelihood.h"
21 #include "MitPhysics/ElectronLikelihood/interface/LikelihoodSwitches.h"
22 #include "MitPhysics/ElectronLikelihood/interface/LikelihoodMeasurements.h"
23
22  
23   class TRandom3;
24   namespace TMVA {
# Line 33 | Line 31 | namespace mithep {
31        ElectronIDMVA();
32        ~ElectronIDMVA();
33  
34 +      enum MVAType {
35 +        kBaseline = 0,      // SigmaIEtaIEta, DEtaIn, DPhiIn, FBrem, SigmaIPhiIPhi, NBrem, OneOverEMinusOneOverP
36 +        kNoIPInfo,          // kBaseline + EOverP, ESeedClusterOverPout, ESeedClusterOverPIn
37 +        kWithIPInfo,        // kBaseline + d0 , IP3d, IP3dSig
38 +        kIDIsoCombined      // ID variables , PFIso03 , PFIso04
39 +      };
40 +
41 +
42        void     Initialize(TString methodName,
43                            TString Subdet0Pt10To20Weights ,
44                            TString Subdet1Pt10To20Weights ,
# Line 40 | Line 46 | namespace mithep {
46                            TString Subdet0Pt20ToInfWeights,
47                            TString Subdet1Pt20ToInfWeights,
48                            TString Subdet2Pt20ToInfWeights,
49 <                          ElectronLikelihood *LH );
49 >                          ElectronIDMVA::MVAType type );
50        
51        Bool_t   IsInitialized() const { return fIsInitialized; }
52        Double_t MVAValue(const Electron *ele, const Vertex *vertex);
53 <      
53 >      Double_t MVAValue(const Electron *ele, const Vertex *vertex,
54 >                        const PFCandidateCol *PFCands,
55 >                        const PileupEnergyDensityCol *PileupEnergyDensity,
56 >                        Double_t intRadius,
57 >                        Bool_t printDebug = kFALSE);
58 >      Double_t MVAValue(Double_t ElePt , Double_t EleEta,
59 >                        Double_t EleSigmaIEtaIEta,
60 >                        Double_t EleDEtaIn,
61 >                        Double_t EleDPhiIn,
62 >                        Double_t EleHoverE,
63 >                        Double_t EleD0,
64 >                        Double_t EleDZ,
65 >                        Double_t EleFBrem,
66 >                        Double_t EleEOverP,
67 >                        Double_t EleESeedClusterOverPout,
68 >                        Double_t EleSigmaIPhiIPhi,
69 >                        Double_t EleNBrem,
70 >                        Double_t EleOneOverEMinusOneOverP,
71 >                        Double_t EleESeedClusterOverPIn,
72 >                        Double_t EleIP3d,
73 >                        Double_t EleIP3dSig);
74 >      Double_t MVAValue(Double_t ElePt , Double_t EleEta,
75 >                        Double_t PileupEnergyDensity,
76 >                        Double_t EleSigmaIEtaIEta,
77 >                        Double_t EleDEtaIn,
78 >                        Double_t EleDPhiIn,
79 >                        Double_t EleHoverE,
80 >                        Double_t EleD0,
81 >                        Double_t EleDZ,
82 >                        Double_t EleFBrem,
83 >                        Double_t EleEOverP,
84 >                        Double_t EleESeedClusterOverPout,
85 >                        Double_t EleSigmaIPhiIPhi,
86 >                        Double_t EleNBrem,
87 >                        Double_t EleOneOverEMinusOneOverP,
88 >                        Double_t EleESeedClusterOverPIn,
89 >                        Double_t EleIP3d,
90 >                        Double_t EleIP3dSig,
91 >                        Double_t EleGsfTrackChi2OverNdof,
92 >                        Double_t EledEtaCalo,
93 >                        Double_t EledPhiCalo,
94 >                        Double_t EleR9,
95 >                        Double_t EleSCEtaWidth,
96 >                        Double_t EleSCPhiWidth,
97 >                        Double_t EleCovIEtaIPhi,
98 >                        Double_t ElePreShowerOverRaw,
99 >                        Double_t EleChargedIso03,
100 >                        Double_t EleNeutralHadronIso03,
101 >                        Double_t EleGammaIso03,
102 >                        Double_t EleChargedIso04,
103 >                        Double_t EleNeutralHadronIso04,
104 >                        Double_t EleGammaIso04,
105 >                        Bool_t printDebug = kFALSE );
106 >
107 >
108      protected:      
109        TMVA::Reader            *fTMVAReader[6];
110        TString                  fMethodname;
111        
52      ElectronLikelihood       *fLH;                     //Likelihood
112        Bool_t                    fIsInitialized;
113        
114        Float_t                   fMVAVar_EleSigmaIEtaIEta;
# Line 67 | Line 126 | namespace mithep {
126        Float_t                   fMVAVar_EleESeedClusterOverPIn;
127        Float_t                   fMVAVar_EleIP3d;
128        Float_t                   fMVAVar_EleIP3dSig;
129 <      Float_t                   fMVAVar_EleStandardLikelihood;
130 <      
131 <      
129 >      Float_t                   fMVAVar_EleGsfTrackChi2OverNdof;
130 >      Float_t                   fMVAVar_EledEtaCalo;
131 >      Float_t                   fMVAVar_EledPhiCalo;
132 >      Float_t                   fMVAVar_EleR9;
133 >      Float_t                   fMVAVar_EleSCEtaWidth;
134 >      Float_t                   fMVAVar_EleSCPhiWidth;
135 >      Float_t                   fMVAVar_EleCovIEtaIPhi;
136 >      Float_t                   fMVAVar_ElePreShowerOverRaw;
137 >      Float_t                   fMVAVar_EleChargedIso03OverPt;
138 >      Float_t                   fMVAVar_EleNeutralHadronIso03OverPt;
139 >      Float_t                   fMVAVar_EleGammaIso03OverPt;
140 >      Float_t                   fMVAVar_EleChargedIso04OverPt;
141 >      Float_t                   fMVAVar_EleNeutralHadronIso04OverPt;
142 >      Float_t                   fMVAVar_EleGammaIso04OverPt;
143 >        
144      ClassDef(ElectronIDMVA, 0) // Muon tools
145        };
146   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines