ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/Utils/interface/MVAMet.h
Revision: 1.3
Committed: Wed Apr 4 14:43:11 2012 UTC (13 years ago) by pharris
Content type: text/plain
Branch: MAIN
Changes since 1.2: +44 -12 lines
Log Message:
Added Regression with corrected jets and updated gbr forest

File Contents

# User Rev Content
1 pharris 1.1 //--------------------------------------------------------------------------------------------------
2     // $Id $
3     //
4     // Met Regression
5     //
6     // Authors: P. Harris
7     //--------------------------------------------------------------------------------------------------
8    
9     #ifndef MITPHYSICS_UTILS_MVAMet_H
10     #define MITPHYSICS_UTILS_MVAMet_H
11    
12     #include "MitAna/DataTree/interface/PFJetFwd.h"
13     #include "MitAna/DataTree/interface/VertexFwd.h"
14     #include "MitAna/DataTree/interface/TrackFwd.h"
15     #include "MitAna/DataTree/interface/Met.h"
16     #include "MitAna/DataTree/interface/PFMet.h"
17     #include "MitAna/DataTree/interface/PFMetCol.h"
18     #include "MitAna/DataTree/interface/PFJet.h"
19     #include "MitAna/DataTree/interface/PFJetCol.h"
20     #include "MitAna/DataTree/interface/PFCandidateCol.h"
21     #include "MitAna/DataTree/interface/PileupEnergyDensityCol.h"
22     #include "MitCommon/MathTools/interface/MathUtils.h"
23    
24     #include "MitPhysics/Utils/interface/RecoilTools.h"
25 pharris 1.3 #include "MitPhysics/Utils/interface/GBRForest.h"
26 pharris 1.1
27     class TRandom3;
28    
29     namespace mithep {
30     class MVAMet {
31     public:
32     MVAMet();
33     ~MVAMet();
34     enum MVAType {
35     kBaseline = 0
36     };
37    
38 pharris 1.3 //void setVariables(TMVA::Reader *iReader,bool iScale);
39     //void Initialize( TString iU1MethodName="U1MVA",
40     // TString iPhiMethodName="PhiMVA",
41     // TString iJetMVAFile="$CMSSW_BASE/src/MitPhysics/data/mva_RecoilPhiRegress_baseline.weights.xml",
42     // TString iU1Weights="$CMSSW_BASE/src/MitPhysics/data/mva_RecoilRegress_baseline.weights.xml",
43     // TString iPhiWeights="$CMSSW_BASE/src/MitPhysics/data/mva_JetID.weights.xml",
44     // MVAType iType=kBaseline);
45     void Initialize(
46     TString iJetMVAFile="$CMSSW_BASE/src/MitPhysics/data/mva_RecoilPhiRegress_baseline.weights.xml",
47     TString iU1Weights ="$CMSSW_BASE/src/MitPhysics/data/gbrmet.root",
48     TString iPhiWeights="$CMSSW_BASE/src/MitPhysics/data/gbrmetphi.root",
49     MVAType iType=kBaseline);
50    
51 pharris 1.1 Bool_t IsInitialized() const { return fIsInitialized; }
52 pharris 1.3 Double_t evaluatePhi();
53     Double_t evaluateU1();
54 pharris 1.1 Double_t MVAValue( bool iPhi,
55     Float_t iPFSumEt,
56     Float_t iU ,
57     Float_t iUPhi ,
58     Float_t iTKSumEt,
59     Float_t iTKU ,
60     Float_t iTKUPhi ,
61     Float_t iNPSumEt,
62     Float_t iNPU ,
63     Float_t iNPUPhi ,
64     Float_t iPUSumEt,
65     Float_t iPUMet ,
66     Float_t iPUMetPhi,
67     Float_t iPCSumEt,
68     Float_t iPCU ,
69     Float_t iPCUPhi ,
70     Float_t iJSPt1 ,
71     Float_t iJSEta1 ,
72     Float_t iJSPhi1 ,
73     Float_t iJSPt2 ,
74     Float_t iJSEta2 ,
75     Float_t iJSPhi2 ,
76     Float_t iNJet ,
77     Float_t iNAllJet,
78     Float_t iNPV );
79    
80     Met GetMet( Bool_t iPhi,Float_t iPtVis,Float_t iPhiVis,Float_t iSumEtVis,
81     const PFMet *iMet ,
82     const PFCandidateCol *iCands,const Vertex *iVertex,
83     const PFJetCol *iJets ,
84     FactorizedJetCorrector *iJetCorrector,
85     const PileupEnergyDensityCol *iPileupEnergyDensity,
86     int iNPV,
87     Bool_t printDebug=false);
88    
89 pharris 1.3 Met GetMet( Bool_t iPhi,Float_t iPtVis,Float_t iPhiVis,Float_t iSumEtVis,
90     const PFMet *iMet ,
91     const PFCandidateCol *iCands,const Vertex *iVertex,
92     const PFJetCol *iJets ,
93     int iNPV,
94     Bool_t printDebug=false);
95    
96 pharris 1.1 Met GetMet( Bool_t iPhi,
97     Float_t iPt1,Float_t iPhi1,Float_t iEta1,
98     Float_t iPt2,Float_t iPhi2,Float_t iEta2,
99     const PFMet *iMet ,
100     const PFCandidateCol *iCands,const Vertex *iVertex,
101     const PFJetCol *iJets ,
102     FactorizedJetCorrector *iJetCorrector,
103     const PileupEnergyDensityCol *iPUEnergyDensity,
104     int iNPV,
105     Bool_t printDebug);
106 pharris 1.3
107     Met GetMet( Bool_t iPhi,
108     Float_t iPt1,Float_t iPhi1,Float_t iEta1,
109     Float_t iPt2,Float_t iPhi2,Float_t iEta2,
110     const PFMet *iMet ,
111     const PFCandidateCol *iCands,const Vertex *iVertex,
112     const PFJetCol *iJets ,
113     int iNPV,
114     Bool_t printDebug);
115    
116 pharris 1.1 RecoilTools *fRecoilTools;
117 pharris 1.3
118     protected:
119 pharris 1.1 TString fPhiMethodName;
120     TString fU1MethodName;
121     Bool_t fIsInitialized;
122     MVAType fType;
123    
124     Float_t fU ;
125     Float_t fUPhi ;
126     Float_t fTKSumEt;
127     Float_t fTKU ;
128     Float_t fTKUPhi ;
129     Float_t fNPSumEt;
130     Float_t fNPU ;
131     Float_t fNPUPhi ;
132     Float_t fPUSumEt;
133     Float_t fPUMet ;
134     Float_t fPUMetPhi ;
135     Float_t fPCSumEt;
136     Float_t fPCU ;
137     Float_t fPCUPhi ;
138     Float_t fJSPt1 ;
139     Float_t fJSEta1 ;
140     Float_t fJSPhi1 ;
141     Float_t fJSPt2 ;
142     Float_t fJSEta2 ;
143     Float_t fJSPhi2 ;
144     Float_t fNJet ;
145     Float_t fNAllJet;
146     Float_t fNPV ;
147     Float_t fUPhiMVA;
148 pharris 1.3
149     Float_t* fPhiVals;
150     Float_t* fU1Vals;
151    
152    
153     GBRForest *fPhiReader;
154     GBRForest *fU1Reader;
155     //TMVA::Reader* fPhiReader;
156     //TMVA::Reader* fU1Reader;
157 pharris 1.1 ClassDef(MVAMet,0)
158     };
159     }
160     #endif