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

Comparing UserCode/MitPhysics/Mods/interface/MuonIDMod.h (file contents):
Revision 1.35 by sixie, Fri Jul 22 14:36:29 2011 UTC vs.
Revision 1.38 by sixie, Sat Dec 31 23:20:16 2011 UTC

# Line 21 | Line 21
21   #include "MitAna/DataTree/interface/TrackFwd.h"
22   #include "MitAna/DataTree/interface/PFCandidateFwd.h"
23   #include "MitPhysics/Utils/interface/MuonTools.h"
24 + #include "MitPhysics/Utils/interface/MuonIDMVA.h"
25   #include "MitPhysics/Utils/interface/IsolationTools.h"
26   #include "MitAna/DataTree/interface/PileupEnergyDensityCol.h"
27  
# Line 43 | Line 44 | namespace mithep
44        const char        *GetOutputName()                const { return GetCleanMuonsName(); }  
45        Double_t           GetPtMin()                     const { return fMuonPtMin;          }
46        Double_t           GetTrackIsoCut()               const { return fTrackIsolationCut;  }
47 +      Bool_t             PassMuonMVA_BDTG_IdIso(const Muon *mu, const Vertex *vertex,
48 +                                                Double_t Rho) const;
49        void               SetApplyD0Cut(Bool_t b)              { fApplyD0Cut        = b;     }
50        void               SetApplyDZCut(Bool_t b)              { fApplyDZCut        = b;     }
51        void               SetCaloIsoCut(Double_t cut)          { fCaloIsolationCut  = cut;   }
# Line 64 | Line 67 | namespace mithep
67        void               SetOutputName(const char *name)      { SetCleanMuonsName(name);    }  
68        void               SetPtMin(Double_t pt)                { fMuonPtMin         = pt;    }
69        void               SetTrackIsoCut(Double_t cut)         { fTrackIsolationCut = cut;   }
70 +      void               SetIntRadius(Double_t dr)            { fIntRadius = dr;            }
71 +      void               SetMuonMVAWeightsSubdet0Pt10To14p5(TString s)  
72 +                         { fMuonMVAWeights_Subdet0Pt10To14p5  = s; }
73 +      void               SetMuonMVAWeightsSubdet1Pt10To14p5(TString s)  
74 +                         { fMuonMVAWeights_Subdet1Pt10To14p5  = s; }
75 +      void               SetMuonMVAWeightsSubdet0Pt14p5To20(TString s)  
76 +                         { fMuonMVAWeights_Subdet0Pt14p5To20  = s; }
77 +      void               SetMuonMVAWeightsSubdet1Pt14p5To20(TString s)
78 +                         { fMuonMVAWeights_Subdet1Pt14p5To20 = s; }
79 +      void               SetMuonMVAWeightsSubdet0Pt20ToInf(TString s)
80 +                         { fMuonMVAWeights_Subdet0Pt20ToInf = s; }
81 +      void               SetMuonMVAWeightsSubdet1Pt20ToInf(TString s)
82 +                         { fMuonMVAWeights_Subdet1Pt20ToInf = s; }
83  
84        enum EMuIdType {
85          kIdUndef = 0,       //not defined
# Line 73 | Line 89 | namespace mithep
89          kLoose,             //"Loose"
90          kWWMuIdV1,          //"WWMuIdV1"
91          kWWMuIdV2,          //"WWMuIdV2"
92 <        kNoId,              //"NoId"
93 <        kCustomId           //"Custom"
92 >        kWWMuIdV3,          //"WWMuIdV3"
93 >        kNoId,              //"NoId"        
94 >        kCustomId,          //"Custom"
95 >        kMVAID_BDTG_IDIso   //"BDTG ID + Iso03, Iso04 Combined"
96        };
97        enum EMuIsoType {
98          kIsoUndef = 0,                      //"not defined"
# Line 85 | Line 103 | namespace mithep
103          kCombinedRelativeConeAreaCorrected, //"CombinedRelativeConeAreaCorrected"
104          kCustomIso,                         //"Custom"
105          kPFIso,                             //"PFIso"
106 +        kPFIsoEffectiveAreaCorrected,       //"PFIso with EffectiveArea Pileup Correction"
107          kPFIsoNoL,                          //"PFIsoNoL"
108 <        kNoIso                              //"NoIso"
108 >        kNoIso,                             //"NoIso"
109 >        kMVAIso_BDTG_IDIso                  //"BDTG ID + Iso03, Iso04 Combined"
110        };
111        enum EMuClassType {
112          kClassUndef = 0,    //not defined
# Line 97 | Line 117 | namespace mithep
117          kTrackerMuon,       //"TrackerMuon"
118          kCaloMuon,          //"CaloMuon"
119          kTrackerBased       //"TrackerMuon or CaloMuon"
120 +
121        };
122  
123      protected:
# Line 134 | Line 155 | namespace mithep
155        const BeamSpotCol *fBeamSpot;            //!beamspot branch
156        const TrackCol    *fTracks;              //!track branch    
157        const PFCandidateCol *fPFCandidates;     //!pfcandidate branch
158 +      Double_t           fIntRadius;           //!min IntRadius cut in pf isolation
159        MuonCol            *fNonIsolatedMuons;    //!pointer to old muon collection
160        ElectronCol        *fNonIsolatedElectrons;//!pointer to old electron collection
161        TString             fPileupEnergyDensityName;
162        const PileupEnergyDensityCol *fPileupEnergyDensity;
163 +      MuonTools          *fMuonTools;           // interface to tools for muon ID
164 +      MuonIDMVA          *fMuonIDMVA;           // helper class for MuonMVA
165 +      TString             fMuonMVAWeights_Subdet0Pt10To14p5;
166 +      TString             fMuonMVAWeights_Subdet1Pt10To14p5;
167 +      TString             fMuonMVAWeights_Subdet0Pt14p5To20;
168 +      TString             fMuonMVAWeights_Subdet1Pt14p5To20;
169 +      TString             fMuonMVAWeights_Subdet0Pt20ToInf;
170 +      TString             fMuonMVAWeights_Subdet1Pt20ToInf;
171  
172      ClassDef(MuonIDMod, 1) // Muon identification module
173    };

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines