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.41 by sixie, Fri Jan 27 11:48:23 2012 UTC vs.
Revision 1.55 by mingyang, Sat Feb 23 14:52:11 2013 UTC

# Line 25 | Line 25
25   #include "MitPhysics/Utils/interface/IsolationTools.h"
26   #include "MitAna/DataTree/interface/PileupEnergyDensityCol.h"
27  
28 + #include "MitPhysics/Utils/interface/RhoUtilities.h"
29 +
30   namespace mithep
31   {
32    class MuonIDMod : public BaseMod
# Line 46 | Line 48 | namespace mithep
48        Double_t           GetTrackIsoCut()               const { return fTrackIsolationCut;  }
49        Bool_t             PassMuonMVA_BDTG_IdIso(const Muon *mu, const Vertex *vertex,
50                                                  const PileupEnergyDensityCol *PileupEnergyDensity) const;
51 +      Bool_t             PassMuonIsoRingsV0_BDTG_Iso(const Muon *mu, const Vertex *vertex,
52 +                                                     const PileupEnergyDensityCol *PileupEnergyDensity) const;
53 +      Bool_t             PassMuonIsoDeltaR(const Muon *mu, const Vertex *vertex,
54 +                                           const PileupEnergyDensityCol *PileupEnergyDensity) const;
55        void               SetPrintMVADebugInfo(Bool_t b)       { fPrintMVADebugInfo = b;     }
56        void               SetApplyD0Cut(Bool_t b)              { fApplyD0Cut        = b;     }
57        void               SetApplyDZCut(Bool_t b)              { fApplyDZCut        = b;     }
# Line 69 | Line 75 | namespace mithep
75        void               SetPtMin(Double_t pt)                { fMuonPtMin         = pt;    }
76        void               SetTrackIsoCut(Double_t cut)         { fTrackIsolationCut = cut;   }
77        void               SetIntRadius(Double_t dr)            { fIntRadius = dr;            }
78 <      void               SetMuonMVAWeightsSubdet0Pt10To14p5(TString s)  
79 <                         { fMuonMVAWeights_Subdet0Pt10To14p5  = s; }
80 <      void               SetMuonMVAWeightsSubdet1Pt10To14p5(TString s)  
81 <                         { fMuonMVAWeights_Subdet1Pt10To14p5  = s; }
82 <      void               SetMuonMVAWeightsSubdet0Pt14p5To20(TString s)  
83 <                         { fMuonMVAWeights_Subdet0Pt14p5To20  = s; }
84 <      void               SetMuonMVAWeightsSubdet1Pt14p5To20(TString s)
79 <                         { fMuonMVAWeights_Subdet1Pt14p5To20 = s; }
80 <      void               SetMuonMVAWeightsSubdet0Pt20ToInf(TString s)
81 <                         { fMuonMVAWeights_Subdet0Pt20ToInf = s; }
82 <      void               SetMuonMVAWeightsSubdet1Pt20ToInf(TString s)
83 <                         { fMuonMVAWeights_Subdet1Pt20ToInf = s; }
78 >      void               SetPFNoPileUpName(const char *n)     { fPFNoPileUpName  = n;       }
79 >      void               SetPFPileUpName(const char *n)       { fPFPileUpName  = n;         }
80 >      void               SetRhoType(RhoUtilities::RhoType type)
81 >        { fTheRhoType = type; };
82 >
83 >      void               SetVertexName(const char* name) { fVertexName = name; }
84 >      void               SetPVName(const char *n)             { fPVName = n;                }
85  
86        enum EMuIdType {
87          kIdUndef = 0,       //not defined
88          kWMuId,             //"WMuId"
89          kZMuId,             //"ZMuId"
90          kTight,             //"Tight"
91 +        kmuonPOG2012CutBasedIDTight,             //"muonPOG2012CutBasedIDTight"
92          kLoose,             //"Loose"
93          kWWMuIdV1,          //"WWMuIdV1"
94          kWWMuIdV2,          //"WWMuIdV2"
95          kWWMuIdV3,          //"WWMuIdV3"
96 +        kWWMuIdV4,          //"WWMuIdV4"
97          kNoId,              //"NoId"        
98          kCustomId,          //"Custom"
99          kMVAID_BDTG_IDIso   //"BDTG ID + Iso03, Iso04 Combined"
# Line 101 | Line 104 | namespace mithep
104          kTrackCaloCombined,                 //"TrackCaloCombined"
105          kTrackCaloSliding,                  //"TrackCaloSliding"
106          kTrackCaloSlidingNoCorrection,      //"TrackCaloSlidingNoCorrection"
107 <        kCombinedRelativeConeAreaCorrected, //"CombinedRelativeConeAreaCorrected"
108 <        kCombinedRelativeEffectiveAreaCorrected,
107 >        kCombinedRelativeConeAreaCorrected, //"CombinedRelativeConeAreaCorrected"        
108 >        kCombinedRelativeEffectiveAreaCorrected,
109          kCustomIso,                         //"Custom"
110          kPFIso,                             //"PFIso"
111 <        kPFIsoEffectiveAreaCorrected,       //"PFIso with EffectiveArea Pileup Correction"
111 >        kPFRadialIso,                       //"PFRadialIso"
112 >        kPFIsoBetaPUCorrected,              //"PFISo with PUcorrection using delta Beta
113 >        kPFIsoEffectiveAreaCorrected,       //"PFIso with EffectiveArea Pileup Correction"
114          kPFIsoNoL,                          //"PFIsoNoL"
115          kNoIso,                             //"NoIso"
116 <        kMVAIso_BDTG_IDIso                  //"BDTG ID + Iso03, Iso04 Combined"
116 >        kMVAIso_BDTG_IDIso,                 //"BDTG ID + Iso03, Iso04 Combined"
117 >        kIsoRingsV0_BDTG_Iso,               //"BDTG Iso Rings"
118 >        kIsoDeltaR                          //"BGDT Iso dR"              
119        };
120        enum EMuClassType {
121          kClassUndef = 0,    //not defined
# Line 118 | Line 125 | namespace mithep
125          kSta,               //"Standalone"
126          kTrackerMuon,       //"TrackerMuon"
127          kCaloMuon,          //"CaloMuon"
128 <        kTrackerBased       //"TrackerMuon or CaloMuon"
129 <
128 >        kTrackerBased,      //"TrackerMuon or CaloMuon"
129 >        kGlobalOnly         //"GlobalOnly"
130        };
131  
132      protected:
133        void               Process();
134        void               SlaveBegin();
135 +      void               Terminate();
136  
137        Bool_t             fPrintMVADebugInfo;   //print MVA debug information
138        TString            fMuonBranchName;      //name of muon collection (input)
# Line 135 | Line 143 | namespace mithep
143        TString            fBeamSpotName;        //name of beamspot collection
144        TString            fTrackName;           //name of track collection
145        TString            fPFCandidatesName;    //name of pfcandidates collection
146 +      TString            fPFNoPileUpName;  //name of pfnpu collection
147 +      TString            fPFPileUpName;    //name of pfpu collection
148        TString            fMuonIDType;          //type of muon id scheme we impose
149        TString            fMuonIsoType;         //type of muon isolations scheme we impose
150        TString            fMuonClassType;       //type of muon class we impose
# Line 158 | Line 168 | namespace mithep
168        const BeamSpotCol *fBeamSpot;            //!beamspot branch
169        const TrackCol    *fTracks;              //!track branch    
170        const PFCandidateCol *fPFCandidates;     //!pfcandidate branch
171 +      const PFCandidateCol *fPFNoPileUpCands;  //!pfnpu collection
172 +      const PFCandidateCol *fPFPileUpCands;    //!pfpu collection
173        Double_t           fIntRadius;           //!min IntRadius cut in pf isolation
174        MuonCol            *fNonIsolatedMuons;    //!pointer to old muon collection
175        ElectronCol        *fNonIsolatedElectrons;//!pointer to old electron collection
# Line 165 | Line 177 | namespace mithep
177        const PileupEnergyDensityCol *fPileupEnergyDensity;
178        MuonTools          *fMuonTools;           // interface to tools for muon ID
179        MuonIDMVA          *fMuonIDMVA;           // helper class for MuonMVA
180 <      TString             fMuonMVAWeights_Subdet0Pt10To14p5;
169 <      TString             fMuonMVAWeights_Subdet1Pt10To14p5;
170 <      TString             fMuonMVAWeights_Subdet0Pt14p5To20;
171 <      TString             fMuonMVAWeights_Subdet1Pt14p5To20;
172 <      TString             fMuonMVAWeights_Subdet0Pt20ToInf;
173 <      TString             fMuonMVAWeights_Subdet1Pt20ToInf;
180 >      TString             fPVName;
181  
182 +      RhoUtilities::RhoType fTheRhoType;
183 +      
184      ClassDef(MuonIDMod, 1) // Muon identification module
185    };
186   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines