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.11 by ceballos, Mon Mar 7 12:46:02 2011 UTC vs.
Revision 1.31 by anlevin, Wed Jun 6 15:05:39 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 >        kMVAID_BDTG_IDHWW2012TrigV0
48        };
49  
50        enum EElIsoType {
51 <        kIsoUndef = 0,            //not defined
52 <        kTrackCalo,               //"TrackCalo"
53 <        kTrackJura,               //"TrackJura"
54 <        kTrackJuraCombined,       //"TrackJuraCombined"
55 <        kTrackJuraSliding,        //"TrackJuraSliding"
56 <        kTrackJuraSlidingNoBeta,  //"TrackJuraSlidingNoBeta"
57 <        kNoIso,                   //"NoIso"
58 <        kPFIso,                   //"PFIso"
59 <        kPFIsoNoL,                //"PFIsoNoL"
60 <        kZeeIso,                  //"ZeeIso"
61 <        kCustomIso,               //"Custom"
51 >        kIsoUndef = 0,                 //"not defined"
52 >        kTrackCalo,                    //"TrackCalo"
53 >        kTrackJura,                    //"TrackJura"
54 >        kTrackJuraCombined,            //"TrackJuraCombined"
55 >        kTrackJuraSliding,             //"TrackJuraSliding"
56 >        kTrackJuraSlidingNoCorrection, //"TrackJuraSlidingNoCorrection"
57 >        kCombinedRelativeConeAreaCorrected, //"CombinedRelativeConeAreaCorrected"
58 >        kNoIso,                        //"NoIso"
59 >        kPFIso,                        //"PFIso"
60 >        kPFIsoNoL,                     //"PFIsoNoL"
61 >        kZeeIso,                       //"ZeeIso"
62 >        kCustomIso,                    //"Custom"
63          kVBTFWorkingPoint95Iso,
64          kVBTFWorkingPoint90Iso,
65          kVBTFWorkingPoint85Iso,
66          kVBTFWorkingPoint80Iso,
67 <        kVBTFWorkingPoint70Iso
67 >        kVBTFWorkingPoint70Iso,
68 >        kMVAIso_BDTG_IDIsoCombined,
69 >        kPFIso_HWW2012TrigV0
70 >      };
71 >
72 >      enum EElectronEffectiveAreaType {
73 >        kEleChargedIso03,
74 >        kEleNeutralHadronIso03,
75 >        kEleGammaAndNeutralHadronIso03,
76 >        kEleGammaIso03,
77 >        kEleGammaIsoVetoEtaStrip03,
78 >        kEleChargedIso04,
79 >        kEleNeutralHadronIso04,
80 >        kEleGammaAndNeutralHadronIso04,
81 >        kEleGammaIso04,
82 >        kEleGammaIsoVetoEtaStrip04,
83 >        kEleNeutralHadronIso007,
84 >        kEleNeutralIso04,
85 >        kEleHoverE,
86 >        kEleHcalDepth1OverEcal,
87 >        kEleHcalDepth2OverEcal,
88 >        kEleGammaIsoDR0p0To0p1,
89 >        kEleGammaIsoDR0p1To0p2,
90 >        kEleGammaIsoDR0p2To0p3,
91 >        kEleGammaIsoDR0p3To0p4,
92 >        kEleGammaIsoDR0p4To0p5,
93 >        kEleNeutralHadronIsoDR0p0To0p1,
94 >        kEleNeutralHadronIsoDR0p1To0p2,
95 >        kEleNeutralHadronIsoDR0p2To0p3,
96 >        kEleNeutralHadronIsoDR0p3To0p4,
97 >        kEleNeutralHadronIsoDR0p4To0p5
98 >      };
99 >      
100 >      enum EElectronEffectiveAreaTarget {
101 >        kEleEANoCorr,
102 >        kEleEAData2011,
103 >                                kEleEAData2012,
104 >        kEleEASummer11MC,
105 >        kEleEAFall11MC
106        };
107  
108        static Bool_t       PassChargeFilter(const Electron *el);
109        static Bool_t       PassConversionFilter(const Electron *el, const DecayParticleCol *conversions,
110 <                                               const BaseVertex *vtx, UInt_t nWrongHitsMax=1, Double_t probMin=1e-6,
111 <                                               Double_t lxyMin = 2.0, Bool_t matchCkf = kFALSE, Bool_t requireArbitratedMerged = kTRUE);
110 >                                               const BaseVertex *vtx, UInt_t nWrongHitsMax=0, Double_t probMin=1e-6,
111 >                                               Double_t lxyMin = 2.0, Bool_t matchCkf = kTRUE, Bool_t requireArbitratedMerged = kFALSE, Double_t trkptMin = -99.);
112        static Bool_t       PassCustomID(const Electron *el, EElIdType idType);
113        static Bool_t       PassCustomIso(const Electron *el, EElIsoType isoType,
114                                          Bool_t useCombineIso = kTRUE);
115 <      static Bool_t       PassD0Cut(const Electron *el, const VertexCol *vertices, Double_t fD0Cut);
115 >      static Bool_t       PassD0Cut(const Electron *el, const VertexCol *vertices, Double_t fD0Cut, Int_t nVertex = 0);
116        static Bool_t       PassD0Cut(const Electron *el, const BeamSpotCol *beamspots, Double_t fD0Cut);
117 +      static Bool_t       PassDZCut(const Electron *el, const VertexCol *vertices, Double_t fDZCut, Int_t nVertex = 0);
118        static Bool_t       PassSpikeRemovalFilter(const Electron *ele);
119        static Bool_t       PassTriggerMatching(const Electron *ele, const TriggerObjectCol *trigobjs);
120        static Int_t        Classify(const Electron *ele);
# Line 74 | Line 122 | namespace mithep {
122                                        const DecayParticleCol *conversions, const Int_t typeCuts,
123                                        Double_t beta = 1.0);
124        static bool         compute_cut(double x, double et, double cut_min, double cut_max, bool gtn=false);
125 +      static Double_t     Likelihood(ElectronLikelihood *LH, const Electron *ele);
126 +      static Double_t     ElectronEffectiveArea(EElectronEffectiveAreaType type, Double_t Eta,
127 +                                                EElectronEffectiveAreaTarget EffectiveAreaTarget = kEleEAData2011);
128 +
129 +      static Bool_t       PassHggLeptonTagID(const Electron *el);
130  
131      ClassDef(ElectronTools, 0) // Muon tools
132    };

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines