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

Comparing UserCode/MitPhysics/Utils/interface/ElectronTools.h (file contents):
Revision 1.10 by ceballos, Wed Feb 23 09:48:19 2011 UTC vs.
Revision 1.33 by sixie, Sun Jul 22 20:33:27 2012 UTC

# Line 17 | Line 17
17   #include "MitAna/DataTree/interface/BeamSpotCol.h"
18   #include "MitAna/DataTree/interface/TriggerObjectCol.h"
19   #include "MitCommon/MathTools/interface/MathUtils.h"
20 + #include "MitPhysics/ElectronLikelihood/interface/ElectronLikelihood.h"
21  
22   namespace mithep {
23    class ElectronTools {
# Line 32 | Line 33 | namespace mithep {
33          kZeeId,             //"ZeeId"
34          kCustomIdLoose,     //"CustomLoose"
35          kCustomIdTight,     //"CustomTight"
36 +        kVBTFWorkingPointFakeableId,
37          kVBTFWorkingPoint95Id,
38          kVBTFWorkingPoint90Id,
39          kVBTFWorkingPoint85Id,
40          kVBTFWorkingPoint80Id,
41 <        kVBTFWorkingPoint70Id
41 >        kVBTFWorkingPointLowPtId,
42 >        kVBTFWorkingPoint70Id,
43 >        kMVAID_BDTG_NoIPInfo,
44 >        kMVAID_BDTG_WithIPInfo,
45 >        kMVAID_BDTG_IDIsoCombined,
46 >        kHggLeptonTagId,
47 >        kHggLeptonTagId2012,
48 >        kMVAID_BDTG_IDHWW2012TrigV0,
49 >        kMVAID_BDTG_IDIsoCombinedHWW2012TrigV4
50        };
51  
52        enum EElIsoType {
53 <        kIsoUndef = 0,      //not defined
54 <        kTrackCalo,         //"TrackCalo"
55 <        kTrackJura,         //"TrackJura"
56 <        kTrackJuraCombined, //"TrackJuraCombined"
57 <        kTrackJuraSliding,  //"TrackJuraSliding"
58 <        kNoIso,             //"NoIso"
59 <        kPFIso,             //"PFIso"
60 <        kPFIsoNoL,          //"PFIsoNoL"
61 <        kZeeIso,            //"ZeeIso"
62 <        kCustomIso,         //"Custom"
53 >        kIsoUndef = 0,                 //"not defined"
54 >        kTrackCalo,                    //"TrackCalo"
55 >        kTrackJura,                    //"TrackJura"
56 >        kTrackJuraCombined,            //"TrackJuraCombined"
57 >        kTrackJuraSliding,             //"TrackJuraSliding"
58 >        kTrackJuraSlidingNoCorrection, //"TrackJuraSlidingNoCorrection"
59 >        kCombinedRelativeConeAreaCorrected, //"CombinedRelativeConeAreaCorrected"
60 >        kNoIso,                        //"NoIso"
61 >        kPFIso,                        //"PFIso"
62 >        kPFIsoNoL,                     //"PFIsoNoL"
63 >        kZeeIso,                       //"ZeeIso"
64 >        kCustomIso,                    //"Custom"
65          kVBTFWorkingPoint95Iso,
66          kVBTFWorkingPoint90Iso,
67          kVBTFWorkingPoint85Iso,
68          kVBTFWorkingPoint80Iso,
69 <        kVBTFWorkingPoint70Iso
69 >        kVBTFWorkingPoint70Iso,
70 >        kMVAIso_BDTG_IDIsoCombined,
71 >        kPFIso_HWW2012TrigV0,
72 >        kPFIso_HggLeptonTag2012,
73 >        kMVAIso_BDTG_IDIsoCombinedHWW2012TrigV4
74 >      };
75 >
76 >      enum EElectronEffectiveAreaType {
77 >        kEleChargedIso03,
78 >        kEleNeutralHadronIso03,
79 >        kEleGammaAndNeutralHadronIso03,
80 >        kEleGammaIso03,
81 >        kEleGammaIsoVetoEtaStrip03,
82 >        kEleChargedIso04,
83 >        kEleNeutralHadronIso04,
84 >        kEleGammaAndNeutralHadronIso04,
85 >        kEleGammaIso04,
86 >        kEleGammaIsoVetoEtaStrip04,
87 >        kEleNeutralHadronIso007,
88 >        kEleNeutralIso04,
89 >        kEleHoverE,
90 >        kEleHcalDepth1OverEcal,
91 >        kEleHcalDepth2OverEcal,
92 >        kEleGammaIsoDR0p0To0p1,
93 >        kEleGammaIsoDR0p1To0p2,
94 >        kEleGammaIsoDR0p2To0p3,
95 >        kEleGammaIsoDR0p3To0p4,
96 >        kEleGammaIsoDR0p4To0p5,
97 >        kEleNeutralHadronIsoDR0p0To0p1,
98 >        kEleNeutralHadronIsoDR0p1To0p2,
99 >        kEleNeutralHadronIsoDR0p2To0p3,
100 >        kEleNeutralHadronIsoDR0p3To0p4,
101 >        kEleNeutralHadronIsoDR0p4To0p5
102 >      };
103 >      
104 >      enum EElectronEffectiveAreaTarget {
105 >        kEleEANoCorr,
106 >        kEleEAData2011,
107 >        kEleEAData2012,
108 >        kEleEASummer11MC,
109 >        kEleEAFall11MC
110        };
111  
112        static Bool_t       PassChargeFilter(const Electron *el);
113        static Bool_t       PassConversionFilter(const Electron *el, const DecayParticleCol *conversions,
114 <                                               const BaseVertex *vtx, UInt_t nWrongHitsMax=1, Double_t probMin=1e-6,
115 <                                               Double_t lxyMin = 2.0, Bool_t matchCkf = kFALSE, Bool_t requireArbitratedMerged = kTRUE);
114 >                                               const BaseVertex *vtx, UInt_t nWrongHitsMax=0, Double_t probMin=1e-6,
115 >                                               Double_t lxyMin = 2.0, Bool_t matchCkf = kTRUE, Bool_t requireArbitratedMerged = kFALSE, Double_t trkptMin = -99.);
116        static Bool_t       PassCustomID(const Electron *el, EElIdType idType);
117        static Bool_t       PassCustomIso(const Electron *el, EElIsoType isoType,
118                                          Bool_t useCombineIso = kTRUE);
119 <      static Bool_t       PassD0Cut(const Electron *el, const VertexCol *vertices, Double_t fD0Cut);
119 >      static Bool_t       PassD0Cut(const Electron *el, const VertexCol *vertices, Double_t fD0Cut, Int_t nVertex = 0);
120        static Bool_t       PassD0Cut(const Electron *el, const BeamSpotCol *beamspots, Double_t fD0Cut);
121 +      static Bool_t       PassDZCut(const Electron *el, const VertexCol *vertices, Double_t fDZCut, Int_t nVertex = 0);
122        static Bool_t       PassSpikeRemovalFilter(const Electron *ele);
123        static Bool_t       PassTriggerMatching(const Electron *ele, const TriggerObjectCol *trigobjs);
124        static Int_t        Classify(const Electron *ele);
# Line 73 | Line 126 | namespace mithep {
126                                        const DecayParticleCol *conversions, const Int_t typeCuts,
127                                        Double_t beta = 1.0);
128        static bool         compute_cut(double x, double et, double cut_min, double cut_max, bool gtn=false);
129 +      static Double_t     Likelihood(ElectronLikelihood *LH, const Electron *ele);
130 +      static Double_t     ElectronEffectiveArea(EElectronEffectiveAreaType type, Double_t Eta,
131 +                                                EElectronEffectiveAreaTarget EffectiveAreaTarget = kEleEAData2011);
132 +
133 +      static Bool_t       PassHggLeptonTagID(const Electron *el);
134 +      static Bool_t       PassHggLeptonTagID2012(const Electron *el);
135  
136      ClassDef(ElectronTools, 0) // Muon tools
137    };

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines