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

Comparing UserCode/MitPhysics/Utils/interface/JetIDMVA.h (file contents):
Revision 1.2 by pharris, Wed Apr 4 07:57:00 2012 UTC vs.
Revision 1.10 by pharris, Sat Jan 12 11:49:46 2013 UTC

# Line 21 | Line 21
21   #include "MitAna/DataTree/interface/PileupEnergyDensityCol.h"
22   #include "MitCommon/MathTools/interface/MathUtils.h"
23  
24 + // for Rho definitons
25 + #include "MitPhysics/Utils/interface/RhoUtilities.h"
26 +
27   class TRandom3;
28   namespace TMVA {
29    class Reader;
# Line 33 | Line 36 | namespace mithep {
36        ~JetIDMVA();
37  
38        enum MVAType {
39 <        kBaseline = 0
39 >        kBaseline  = 0,
40 >        k42        = 1,
41 >        k52        = 2,
42 >        kCut       = 3,
43 >        kQGP       = 4,
44 >        k53        = 5,
45 >        k53MET     = 6,
46 >        k53METFull = 7
47        };
48  
49 +      enum CutType {
50 +        kTight     = 0,
51 +        kMedium    = 1,
52 +        kLoose     = 2,
53 +        kMET       = 3
54 +      };
55  
56 <      void     Initialize(TString           iMethodName="JetIDMVA",
57 <                          TString           iWeights="$CMSSW_BASE/src/MitPhysics/data/mva_JetID.weights.xml",
58 <                          JetIDMVA::MVAType iType=kBaseline );
59 <      
56 >      void     Initialize(JetIDMVA::CutType iCutType,
57 >                          TString           iLowPtWeights ="$CMSSW_BASE/src/MitPhysics/data/mva_JetID_lowpt.weights.xml",
58 >                          TString           iHighPtWeights="$CMSSW_BASE/src/MitPhysics/data/mva_JetID_highpt.weights.xml",
59 >                          JetIDMVA::MVAType iType=kBaseline,
60 >                          TString           iCutFileName  ="$CMSSW_BASE/src/MitPhysics/Utils/python/JetIdParams_cfi.py");
61 >    
62        Bool_t   IsInitialized() const { return fIsInitialized; }
63        Double_t MVAValue(    
64                          Float_t iNPV    ,
# Line 49 | Line 67 | namespace mithep {
67                          Float_t iJPhi1  ,
68                          Float_t iJD01   ,
69                          Float_t iJDZ1   ,
70 <                        Float_t iJM1    ,
71 <                        Float_t iNPart1 ,
72 <                        Float_t iLPt1   ,
73 <                        Float_t iLEta1  ,
74 <                        Float_t iLPhi1  ,
75 <                        Float_t iSPt1   ,
76 <                        Float_t iSEta1  ,
77 <                        Float_t iSPhi1  ,
78 <                        Float_t iNEPt1  ,
79 <                        Float_t iNEEta1 ,
80 <                        Float_t iNEPhi1 ,
81 <                        Float_t iEMPt1  ,
64 <                        Float_t iEMEta1 ,
65 <                        Float_t iEMPhi1 ,
66 <                        Float_t iChPt1  ,
67 <                        Float_t iChPhi1 ,
68 <                        Float_t iLFr1   ,
69 <                        Float_t iDRlC1  ,
70 <                        Float_t iDRLS1  ,
71 <                        Float_t iDRM1   ,
72 <                        Float_t iDRMNE1 ,
73 <                        Float_t iDREM1  ,
74 <                        Float_t iDRCH1  
70 >                        Float_t iBeta   ,
71 >                        Float_t iBetaStar,
72 >                        Float_t iNCharged,
73 >                        Float_t iNNeutrals,
74 >                        Float_t iDRMean  ,
75 >                        Float_t iFrac01  ,
76 >                        Float_t iFrac02  ,
77 >                        Float_t iFrac03  ,
78 >                        Float_t iFrac04  ,
79 >                        Float_t iFrac05  ,
80 >                        Float_t iDR2Mean ,
81 >                        Float_t iPtD
82                          );
83 +      //Cut Based
84 +      Bool_t passCut(const PFJet *iJet,const Vertex *iVertex,const VertexCol *iVertices);
85  
86 +      Bool_t passPt(const PFJet *iJet, FactorizedJetCorrector *iJetCorrector=0,
87 +                    const PileupEnergyDensityCol *iPileupEnergyDensity=0,
88 +                    RhoUtilities::RhoType type=RhoUtilities::DEFAULT);
89        //UNcorrected Jets
90 <      Bool_t   pass(const PFJet *iJet,const Vertex *iVertex,
90 >      Bool_t   pass(const PFJet *iJet,const Vertex *iVertex,const VertexCol *iVertices,
91                      FactorizedJetCorrector *iJetCorrector,
92 <                    const PileupEnergyDensityCol *iPileupEnergyDensity);
93 <      
92 >                    const PileupEnergyDensityCol *iPileupEnergyDensity,
93 >                    RhoUtilities::RhoType type = RhoUtilities::DEFAULT);
94 >
95        //Corrected Jets
96 <      Bool_t   pass(const PFJet *iJet,const Vertex *iVertex);
96 >      Bool_t   pass(const PFJet *iJet,const Vertex *iVertex,const VertexCol *iVertices);
97                                          
98        //Uncorrected Jets
99 <      Double_t MVAValue(const PFJet *iJet,const Vertex *iVertex,
99 >      Double_t MVAValue(const PFJet *iJet,const Vertex *iVertex,const VertexCol *iVertices,
100                          FactorizedJetCorrector *iJetCorrector,
101                          const PileupEnergyDensityCol *iPileupEnergyDensity,
102                          Bool_t printDebug=false);
103  
104 +      Double_t* QGValue(const PFJet *iJet,const Vertex *iVertex,const VertexCol *iVertices, //Vertex here is the PV
105 +                        FactorizedJetCorrector *iJetCorrector,
106 +                        const PileupEnergyDensityCol *iPileupEnergyDensity,
107 +                        Bool_t printDebug);
108 +
109        //Corrected Jets
110 <      Double_t MVAValue(const PFJet *iJet,const Vertex *iVertex,
110 >      Double_t MVAValue(const PFJet *iJet,const Vertex *iVertex,const VertexCol *iVertices,
111                          Bool_t printDebug=false);
112  
113  
114        double  correctedPt(const PFJet *iJet, FactorizedJetCorrector *iJetCorrector,
115 <                          const PileupEnergyDensityCol *iPUEnergyDensity);
115 >                          const PileupEnergyDensityCol *iPUEnergyDensity,
116 >                          RhoUtilities::RhoType type = RhoUtilities::DEFAULT,int iId=-1);
117  
118        Float_t                  fJetPtMin;
119 +      Float_t                  fDZCut;
120  
121      protected:      
122        TMVA::Reader            *fReader;
123 <      TString                  fMethodName;
123 >      TMVA::Reader            *fLowPtReader;
124 >      TString                  fLowPtMethodName;
125 >      TString                  fHighPtMethodName;
126        MVAType                  fType;
127 +      CutType                  fCutType;
128        Bool_t                   fIsInitialized;
129 +      Float_t                  fMVACut[4][4]; //Fix the cut array
130 +      Float_t                  fRMSCut[4][4];
131 +      Float_t                  fBetaStarCut[4][4];
132        
133 <      Float_t fNPV;
134 <      Float_t fJPt1;
135 <      Float_t fJEta1;
136 <      Float_t fJPhi1;
137 <      Float_t fJD01 ;
138 <      Float_t fJDZ1 ;
139 <      Float_t fJM1  ;
140 <      Float_t fNPart1;
141 <      Float_t fLPt1 ;
142 <      Float_t fLEta1;
143 <      Float_t fLPhi1;
144 <      Float_t fSPt1 ;
145 <      Float_t fSEta1;
146 <      Float_t fSPhi1;
147 <      Float_t fNEPt1;
148 <      Float_t fNEEta1;
149 <      Float_t fNEPhi1;
150 <      Float_t fEMPt1;
151 <      Float_t fEMEta1;
152 <      Float_t fEMPhi1;
127 <      Float_t fChPt1;
128 <      Float_t fChPhi1;
129 <      Float_t fLFr1 ;
130 <      Float_t fDRLC1;
131 <      Float_t fDRLS1;
132 <      Float_t fDRM1 ;
133 <      Float_t fDRNE1;
134 <      Float_t fDREM1;
135 <      Float_t fDRCH1;
136 <        
133 >      Float_t fNVtx     ;
134 >      Float_t fJPt1     ;
135 >      Float_t fJEta1    ;
136 >      Float_t fJPhi1    ;
137 >      Float_t fJD01     ;
138 >      Float_t fJDZ1     ;
139 >      Float_t fBeta     ;
140 >      Float_t fBetaStar ;
141 >      Float_t fNCharged ;
142 >      Float_t fNNeutrals;
143 >      Float_t fNParticles;
144 >      Float_t fDRMean   ;
145 >      Float_t fPtD      ;
146 >      Float_t fFrac01   ;
147 >      Float_t fFrac02   ;
148 >      Float_t fFrac03   ;
149 >      Float_t fFrac04   ;
150 >      Float_t fFrac05   ;
151 >      Float_t fDR2Mean  ;
152 >
153        ClassDef(JetIDMVA,0)
154          };
155   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines