forked from cms-sw/cmssw
-
Notifications
You must be signed in to change notification settings - Fork 30
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #15 from ikrav/egm_id_74X_v0
updates from ilya
- Loading branch information
Showing
4 changed files
with
346 additions
and
105 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
184 changes: 92 additions & 92 deletions
184
RecoEgamma/ElectronIdentification/python/Identification/heepElectronID_HEEPV51_cff.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,98 +1,98 @@ | ||
import FWCore.ParameterSet.Config as cms | ||
|
||
from PhysicsTools.SelectorUtils.centralIDRegistry import central_id_registry | ||
|
||
# Common functions and classes for ID definition are imported here: | ||
from RecoEgamma.ElectronIdentification.Identification.heepElectronID_tools import * | ||
|
||
# | ||
# The HEEP ID cuts V5.1 below are optimized IDs for PHYS14 Scenario PU 20, bx 25ns | ||
# The cut values are taken from the twiki: | ||
# https://twiki.cern.ch/twiki/bin/view/CMS/HEEPElectronIdentificationRun2#Selection_Cuts_HEEP_V5_1 | ||
# (where they may not stay, if a newer version of cuts becomes available for these | ||
# conditions) | ||
# See also the presentation explaining these working points (this will not change): | ||
# [ ... none available for this particular version ... ] | ||
|
||
ebMax = 1.4442 | ||
eeMin = 1.566 | ||
ebCutOff=1.479 | ||
heepElectronID_HEEPV51 = cms.PSet( | ||
idName = cms.string("heepElectronID-HEEPV51"), | ||
cutFlow = cms.VPSet( | ||
cms.PSet( cutName = cms.string("MinPtCut"), #0 | ||
minPt = cms.double(35.0), | ||
needsAdditionalProducts = cms.bool(False), | ||
isIgnored = cms.bool(False) ), | ||
cms.PSet( cutName = cms.string("GsfEleSCEtaMultiRangeCut"),#1 | ||
useAbsEta = cms.bool(True), | ||
allowedEtaRanges = cms.VPSet( | ||
cms.PSet( minEta = cms.double(0.0), | ||
maxEta = cms.double(ebMax) ), | ||
cms.PSet( minEta = cms.double(eeMin), | ||
maxEta = cms.double(2.5) ) | ||
), | ||
needsAdditionalProducts = cms.bool(False), | ||
isIgnored = cms.bool(False)), | ||
cms.PSet( cutName = cms.string('GsfEleDEtaInSeedCut'),#2 | ||
dEtaInSeedCutValueEB = cms.double(0.004), | ||
dEtaInSeedCutValueEE = cms.double(0.006), | ||
barrelCutOff = cms.double(ebCutOff), | ||
needsAdditionalProducts = cms.bool(False), | ||
isIgnored = cms.bool(False)), | ||
cms.PSet( cutName = cms.string('GsfEleDPhiInCut'),#3 | ||
dPhiInCutValueEB = cms.double(0.06), | ||
dPhiInCutValueEE = cms.double(0.06), | ||
barrelCutOff = cms.double(ebCutOff), | ||
needsAdditionalProducts = cms.bool(False), | ||
isIgnored = cms.bool(False)), | ||
cms.PSet( cutName = cms.string('GsfEleFull5x5SigmaIEtaIEtaCut'),#4 | ||
full5x5SigmaIEtaIEtaCutValueEB = cms.double(9999), | ||
full5x5SigmaIEtaIEtaCutValueEE = cms.double(0.03), | ||
barrelCutOff = cms.double(ebCutOff), | ||
needsAdditionalProducts = cms.bool(False), | ||
isIgnored = cms.bool(False)), | ||
cms.PSet( cutName = cms.string('GsfEleFull5x5E2x5OverE5x5Cut'),#5 | ||
minE1x5OverE5x5EB = cms.double(0.83), | ||
minE1x5OverE5x5EE = cms.double(-1), | ||
minE2x5OverE5x5EB = cms.double(0.94), | ||
minE2x5OverE5x5EE = cms.double(-1), | ||
needsAdditionalProducts = cms.bool(False), | ||
isIgnored = cms.bool(False)), | ||
cms.PSet( cutName = cms.string('GsfEleHadronicOverEMLinearCut'),#6 | ||
slopeTermEB = cms.double(0.05), | ||
slopeTermEE = cms.double(0.05), | ||
slopeStartEB = cms.double(0), | ||
slopeStartEE = cms.double(0), | ||
constTermEB = cms.double(2), | ||
constTermEE = cms.double(12.5), | ||
needsAdditionalProducts = cms.bool(False), | ||
isIgnored = cms.bool(False)), | ||
cms.PSet( cutName = cms.string('GsfEleTrkPtIsoCut'),#7 | ||
slopeTermEB = cms.double(0), | ||
slopeTermEE = cms.double(0), | ||
slopeStartEB = cms.double(0), | ||
slopeStartEE = cms.double(0), | ||
constTermEB = cms.double(5), | ||
constTermEE = cms.double(5), | ||
needsAdditionalProducts = cms.bool(False), | ||
isIgnored = cms.bool(False)), | ||
cms.PSet( cutName = cms.string('GsfEleEmHadD1IsoRhoCut'),#8 | ||
slopeTermEB = cms.double(0.03), | ||
slopeTermEE = cms.double(0.03), | ||
slopeStartEB = cms.double(0), | ||
slopeStartEE = cms.double(50), | ||
constTermEB = cms.double(2), | ||
constTermEE = cms.double(2.5), | ||
rhoConstant = cms.double(0.28), | ||
rho = cms.InputTag("fixedGridRhoFastjetAll"), | ||
needsAdditionalProducts = cms.bool(True), | ||
isIgnored = cms.bool(False)), | ||
cms.PSet( cutName = cms.string('GsfEleDxyCut'),#9 | ||
dxyCutValueEB = cms.double(0.02), | ||
dxyCutValueEE = cms.double(0.05), | ||
vertexSrc = cms.InputTag("offlinePrimaryVertices"), | ||
vertexSrcMiniAOD = cms.InputTag("offlineSlimmedPrimaryVertices"), | ||
barrelCutOff = cms.double(ebCutOff), | ||
needsAdditionalProducts = cms.bool(True), | ||
isIgnored = cms.bool(False)), | ||
cms.PSet( cutName = cms.string('GsfEleMissingHitsCut'),#10 | ||
maxMissingHitsEB = cms.uint32(1), | ||
maxMissingHitsEE = cms.uint32(1), | ||
barrelCutOff = cms.double(ebCutOff), | ||
needsAdditionalProducts = cms.bool(False), | ||
isIgnored = cms.bool(False)), | ||
|
||
|
||
# The cut values for the Barrel and Endcap | ||
idName = "heepElectronID-HEEPV51" | ||
WP_HEEP51_EB = HEEP_WorkingPoint_V1( | ||
idName=idName, | ||
dEtaInSeedCut=0.004, | ||
dPhiInCut=0.06, | ||
full5x5SigmaIEtaIEtaCut=9999, | ||
# Two constants for the GsfEleFull5x5E2x5OverE5x5Cut | ||
minE1x5OverE5x5Cut=0.83, | ||
minE2x5OverE5x5Cut=0.94, | ||
# Three constants for the GsfEleHadronicOverEMLinearCut | ||
# cut = constTerm if value < slopeStart | ||
# cut = slopeTerm * (value - slopeStart) + constTerm if value >= slopeStart | ||
hOverESlopeTerm=0.05, | ||
hOverESlopeStart=0.00, | ||
hOverEConstTerm=2.00, | ||
# Three constants for the GsfEleTrkPtIsoCut: | ||
# cut = constTerm if value < slopeStart | ||
# cut = slopeTerm * (value - slopeStart) + constTerm if value >= slopeStart | ||
trkIsoSlopeTerm=0.00, | ||
trkIsoSlopeStart=0.00, | ||
trkIsoConstTerm=5.00, | ||
# Three constants for the GsfEleEmHadD1IsoRhoCut: | ||
# cut = constTerm if value < slopeStart | ||
# cut = slopeTerm * (value - slopeStart) + constTerm if value >= slopeStart | ||
# Also for the same cut, the effective area for the rho correction of the isolation | ||
ehIsoSlopeTerm=0.03, | ||
ehIsoSlopeStart=0.00, | ||
ehIsoConstTerm=2.00, | ||
effAreaForEHIso=0.28, | ||
# other cuts | ||
dxyCut=0.02, | ||
maxMissingHitsCut=1 | ||
) | ||
) | ||
|
||
WP_HEEP51_EE = HEEP_WorkingPoint_V1( | ||
idName=idName, | ||
dEtaInSeedCut=0.006, | ||
dPhiInCut=0.06, | ||
full5x5SigmaIEtaIEtaCut=0.03, | ||
# Two constants for the GsfEleFull5x5E2x5OverE5x5Cut | ||
minE1x5OverE5x5Cut=-1.0, | ||
minE2x5OverE5x5Cut=-1.0, | ||
# Three constants for the GsfEleHadronicOverEMLinearCut | ||
# cut = constTerm if value < slopeStart | ||
# cut = slopeTerm * (value - slopeStart) + constTerm if value >= slopeStart | ||
hOverESlopeTerm=0.05, | ||
hOverESlopeStart=0.00, | ||
hOverEConstTerm=12.5, | ||
# Three constants for the GsfEleTrkPtIsoCut: | ||
# cut = constTerm if value < slopeStart | ||
# cut = slopeTerm * (value - slopeStart) + constTerm if value >= slopeStart | ||
trkIsoSlopeTerm=0.00, | ||
trkIsoSlopeStart=0.00, | ||
trkIsoConstTerm=5.00, | ||
# Three constants for the GsfEleEmHadD1IsoRhoCut: | ||
# cut = constTerm if value < slopeStart | ||
# cut = slopeTerm * (value - slopeStart) + constTerm if value >= slopeStart | ||
# Also for the same cut, the effective area for the rho correction of the isolation | ||
ehIsoSlopeTerm=0.03, | ||
ehIsoSlopeStart=50.0, | ||
ehIsoConstTerm=2.50, | ||
effAreaForEHIso=0.28, | ||
# other cuts | ||
dxyCut=0.05, | ||
maxMissingHitsCut=1 | ||
|
||
) | ||
|
||
# | ||
# Finally, set up VID configuration for all cuts | ||
# | ||
heepElectronID_HEEPV51 = configureHEEPElectronID_V51 ( WP_HEEP51_EB, WP_HEEP51_EE ) | ||
|
||
# | ||
# The MD5 sum numbers below reflect the exact set of cut variables | ||
# and values above. If anything changes, one has to | ||
# 1) comment out the lines below about the registry, | ||
# 2) run "calculateMD5 <this file name> <one of the VID config names just above> | ||
# 3) update the MD5 sum strings below and uncomment the lines again. | ||
# | ||
|
||
central_id_registry.register(heepElectronID_HEEPV51.idName,"d930c34a554f86e6d4e8c247c4737140") |
Oops, something went wrong.