ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/Utils/interface/MuonIDMVA.h
Revision: 1.5
Committed: Mon Jan 23 20:05:20 2012 UTC (13 years, 3 months ago) by sixie
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_025e, Mit_025d
Changes since 1.4: +36 -2 lines
Log Message:
update muon mva with detector isolation variables

File Contents

# Content
1 //--------------------------------------------------------------------------------------------------
2 // $Id $
3 //
4 // ElectronIDMVA
5 //
6 // Helper Class for Muon Identification MVA
7 //
8 // Authors: S.Xie
9 //--------------------------------------------------------------------------------------------------
10
11 #ifndef MITPHYSICS_UTILS_MuonIDMVA_H
12 #define MITPHYSICS_UTILS_MuonIDMVA_H
13
14 #include "MitAna/DataTree/interface/MuonFwd.h"
15 #include "MitAna/DataTree/interface/VertexFwd.h"
16 #include "MitAna/DataTree/interface/TrackFwd.h"
17 #include "MitAna/DataTree/interface/Muon.h"
18 #include "MitAna/DataTree/interface/MuonCol.h"
19 #include "MitAna/DataTree/interface/PFCandidateCol.h"
20 #include "MitAna/DataTree/interface/PileupEnergyDensityCol.h"
21 #include "MitCommon/MathTools/interface/MathUtils.h"
22 #include "MitPhysics/Utils/interface/MuonTools.h"
23
24 class TRandom3;
25 namespace TMVA {
26 class Reader;
27 }
28
29 namespace mithep {
30 class MuonIDMVA {
31 public:
32 MuonIDMVA();
33 ~MuonIDMVA();
34
35 enum MVAType {
36 kV2,
37 kV3,
38 kV8,
39 kIDIsoCombinedDetIso
40 };
41
42
43 void Initialize(TString methodName,
44 TString Subdet0Pt10To14p5Weights ,
45 TString Subdet1Pt10To14p5Weights ,
46 TString Subdet0Pt14p5To20Weights,
47 TString Subdet1Pt14p5To20Weights,
48 TString Subdet0Pt20ToInfWeights,
49 TString Subdet1Pt20ToInfWeights,
50 MuonIDMVA::MVAType type);
51
52 Bool_t IsInitialized() const { return fIsInitialized; }
53 Double_t MVAValue(const Muon *mu, const Vertex *vertex, MuonTools *fMuonTools,
54 const PFCandidateCol *PFCands,
55 const PileupEnergyDensityCol *PileupEnergyDensity,
56 Bool_t printDebug = kFALSE);
57 Double_t MVAValue( Double_t MuPt , Double_t MuEta,
58 Double_t MuTkNchi2,
59 Double_t MuGlobalNchi2,
60 Double_t MuNValidHits,
61 Double_t MuNTrackerHits,
62 Double_t MuNPixelHits,
63 Double_t MuNMatches,
64 Double_t MuD0,
65 Double_t MuIP3d,
66 Double_t MuIP3dSig,
67 Double_t MuTrkKink,
68 Double_t MuSegmentCompatibility,
69 Double_t MuCaloCompatibility,
70 Double_t MuHadEnergyOverPt,
71 Double_t MuHoEnergyOverPt,
72 Double_t MuEmEnergyOverPt,
73 Double_t MuHadS9EnergyOverPt,
74 Double_t MuHoS9EnergyOverPt,
75 Double_t MuEmS9EnergyOverPt,
76 Double_t MuChargedIso03OverPt,
77 Double_t MuNeutralIso03OverPt,
78 Double_t MuChargedIso04OverPt,
79 Double_t MuNeutralIso04OverPt,
80 Bool_t printDebug = kFALSE
81 );
82 Double_t MVAValue( Double_t MuPt , Double_t MuEta,
83 Double_t MuTkNchi2,
84 Double_t MuGlobalNchi2,
85 Double_t MuNValidHits,
86 Double_t MuNTrackerHits,
87 Double_t MuNPixelHits,
88 Double_t MuNMatches,
89 Double_t MuD0,
90 Double_t MuIP3d,
91 Double_t MuIP3dSig,
92 Double_t MuTrkKink,
93 Double_t MuSegmentCompatibility,
94 Double_t MuCaloCompatibility,
95 Double_t MuHadEnergyOverPt,
96 Double_t MuHoEnergyOverPt,
97 Double_t MuEmEnergyOverPt,
98 Double_t MuHadS9EnergyOverPt,
99 Double_t MuHoS9EnergyOverPt,
100 Double_t MuEmS9EnergyOverPt,
101 Double_t MuTrkIso03OverPt,
102 Double_t MuEMIso03OverPt,
103 Double_t MuHadIso03OverPt,
104 Double_t MuTrkIso05OverPt,
105 Double_t MuEMIso05OverPt,
106 Double_t MuHadIso05OverPt,
107 Bool_t printDebug = kFALSE
108 );
109
110
111 protected:
112 TMVA::Reader *fTMVAReader[6];
113 TString fMethodname;
114
115 Bool_t fIsInitialized;
116
117 Float_t fMVAVar_MuTkNchi2;
118 Float_t fMVAVar_MuGlobalNchi2;
119 Float_t fMVAVar_MuNValidHits;
120 Float_t fMVAVar_MuNTrackerHits;
121 Float_t fMVAVar_MuNPixelHits;
122 Float_t fMVAVar_MuNMatches;
123 Float_t fMVAVar_MuD0;
124 Float_t fMVAVar_MuIP3d;
125 Float_t fMVAVar_MuIP3dSig;
126 Float_t fMVAVar_MuTrkKink;
127 Float_t fMVAVar_MuSegmentCompatibility;
128 Float_t fMVAVar_MuCaloCompatibility;
129 Float_t fMVAVar_MuHadEnergyOverPt;
130 Float_t fMVAVar_MuHoEnergyOverPt;
131 Float_t fMVAVar_MuEmEnergyOverPt;
132 Float_t fMVAVar_MuHadS9EnergyOverPt;
133 Float_t fMVAVar_MuHoS9EnergyOverPt;
134 Float_t fMVAVar_MuEmS9EnergyOverPt;
135 Float_t fMVAVar_MuChargedIso03OverPt;
136 Float_t fMVAVar_MuNeutralIso03OverPt;
137 Float_t fMVAVar_MuChargedIso04OverPt;
138 Float_t fMVAVar_MuNeutralIso04OverPt;
139 Float_t fMVAVar_MuTrkIso03OverPt;
140 Float_t fMVAVar_MuEMIso03OverPt;
141 Float_t fMVAVar_MuHadIso03OverPt;
142 Float_t fMVAVar_MuTrkIso05OverPt;
143 Float_t fMVAVar_MuEMIso05OverPt;
144 Float_t fMVAVar_MuHadIso05OverPt;
145
146
147 ClassDef(MuonIDMVA, 0) // Muon MVA
148 };
149 }
150
151 #endif