1 import FWCore.ParameterSet.Config
as cms
15 This is a container class to hold numerical cut values for either
16 the barrel or endcap set of cuts
22 full5x5SigmaIEtaIEtaCut,
74 This is a container class to hold numerical cut values for either
75 the barrel or endcap set of cuts
81 full5x5SigmaIEtaIEtaCut,
141 cutName = cms.string(
"MinPtCut"),
142 minPt = cms.double(cutValue),
143 needsAdditionalProducts = cms.bool(
False),
144 isIgnored = cms.bool(
False)
150 cutName = cms.string(
"GsfEleMinEcalEtCut"),
151 minEt = cms.double(cutValue),
152 needsAdditionalProducts = cms.bool(
False),
153 isIgnored = cms.bool(
False)
159 cutName = cms.string(
"GsfEleSCEtaMultiRangeCut"),
160 useAbsEta = cms.bool(
True),
161 allowedEtaRanges = cms.VPSet(
162 cms.PSet( minEta = cms.double(0.0),
163 maxEta = cms.double(ebMax) ),
164 cms.PSet( minEta = cms.double(eeMin),
165 maxEta = cms.double(2.5) )
167 needsAdditionalProducts = cms.bool(
False),
168 isIgnored = cms.bool(
False)
174 cutName = cms.string(
'GsfEleDEtaInSeedCut'),
175 dEtaInSeedCutValueEB = cms.double( wpEB.dEtaInSeedCut ),
176 dEtaInSeedCutValueEE = cms.double( wpEE.dEtaInSeedCut ),
177 barrelCutOff = cms.double(ebCutOff),
178 needsAdditionalProducts = cms.bool(
False),
179 isIgnored = cms.bool(
False)
185 cutName = cms.string(
'GsfEleDPhiInCut'),
186 dPhiInCutValueEB = cms.double( wpEB.dPhiInCut ),
187 dPhiInCutValueEE = cms.double( wpEE.dPhiInCut ),
188 barrelCutOff = cms.double(ebCutOff),
189 needsAdditionalProducts = cms.bool(
False),
190 isIgnored = cms.bool(
False)
196 cutName = cms.string(
'GsfEleEBEECut'),
197 cutString = cms.string(
"full5x5_sigmaIetaIeta"),
198 cutValueEB = cms.double( wpEB.full5x5SigmaIEtaIEtaCut ),
199 cutValueEE = cms.double( wpEE.full5x5SigmaIEtaIEtaCut ),
200 needsAdditionalProducts = cms.bool(
False),
201 isIgnored = cms.bool(
False)
206 cutName = cms.string(
'GsfEleFull5x5SigmaIEtaIEtaWithSatCut'),
207 maxSigmaIEtaIEtaEB = cms.double( wpEB.full5x5SigmaIEtaIEtaCut ),
208 maxSigmaIEtaIEtaEE = cms.double( wpEE.full5x5SigmaIEtaIEtaCut ),
209 maxNrSatCrysIn5x5EB =cms.int32( 0 ),
210 maxNrSatCrysIn5x5EE =cms.int32( 0 ),
211 needsAdditionalProducts = cms.bool(
False),
213 isIgnored = cms.bool(
False)
218 cutName = cms.string(
'GsfEleFull5x5E2x5OverE5x5Cut'),
220 minE1x5OverE5x5EB = cms.double( wpEB.minE1x5OverE5x5Cut ),
221 minE1x5OverE5x5EE = cms.double( wpEE.minE1x5OverE5x5Cut ),
223 minE2x5OverE5x5EB = cms.double( wpEB.minE2x5OverE5x5Cut ),
224 minE2x5OverE5x5EE = cms.double( wpEE.minE2x5OverE5x5Cut ),
225 needsAdditionalProducts = cms.bool(
False),
226 isIgnored = cms.bool(
False)
231 cutName = cms.string(
'GsfEleFull5x5E2x5OverE5x5WithSatCut'),
233 minE1x5OverE5x5EB = cms.double( wpEB.minE1x5OverE5x5Cut ),
234 minE1x5OverE5x5EE = cms.double( wpEE.minE1x5OverE5x5Cut ),
236 minE2x5OverE5x5EB = cms.double( wpEB.minE2x5OverE5x5Cut ),
237 minE2x5OverE5x5EE = cms.double( wpEE.minE2x5OverE5x5Cut ),
238 maxNrSatCrysIn5x5EB =cms.int32( 0 ),
239 maxNrSatCrysIn5x5EE =cms.int32( 0 ),
240 needsAdditionalProducts = cms.bool(
False),
241 isIgnored = cms.bool(
False)
246 cutName = cms.string(
'GsfEleHadronicOverEMLinearCut'),
250 slopeTermEB = cms.double( wpEB.hOverESlopeTerm ),
251 slopeTermEE = cms.double( wpEE.hOverESlopeTerm ),
252 slopeStartEB = cms.double( wpEB.hOverESlopeStart ),
253 slopeStartEE = cms.double( wpEE.hOverESlopeStart ),
254 constTermEB = cms.double( wpEB.hOverEConstTerm ),
255 constTermEE = cms.double( wpEE.hOverEConstTerm ),
256 needsAdditionalProducts = cms.bool(
False),
257 isIgnored = cms.bool(
False)
263 cutName = cms.string(
'GsfEleTrkPtIsoCut'),
267 slopeTermEB = cms.double( wpEB.trkIsoSlopeTerm ),
268 slopeTermEE = cms.double( wpEE.trkIsoSlopeTerm ),
269 slopeStartEB = cms.double( wpEB.trkIsoSlopeStart ),
270 slopeStartEE = cms.double( wpEE.trkIsoSlopeStart ),
271 constTermEB = cms.double( wpEB.trkIsoConstTerm ),
272 constTermEE = cms.double( wpEE.trkIsoConstTerm ),
273 useHEEPIso = cms.bool(useHEEPIso),
274 needsAdditionalProducts = cms.bool(
False),
275 isIgnored = cms.bool(
False)
280 cutName = cms.string(
'GsfEleTrkPtIsoRhoCut'),
284 slopeTermEB = cms.double( wpEB.trkIsoSlopeTerm ),
285 slopeTermEE = cms.double( wpEE.trkIsoSlopeTerm ),
286 slopeStartEB = cms.double( wpEB.trkIsoSlopeStart ),
287 slopeStartEE = cms.double( wpEE.trkIsoSlopeStart ),
288 constTermEB = cms.double( wpEB.trkIsoConstTerm ),
289 constTermEE = cms.double( wpEE.trkIsoConstTerm ),
290 rhoEtStartEB = cms.double( wpEB.trkIsoRhoCorrStart),
291 rhoEtStartEE = cms.double( wpEE.trkIsoRhoCorrStart),
292 rhoEAEB = cms.double( wpEB.trkIsoEffArea),
293 rhoEAEE = cms.double( wpEE.trkIsoEffArea),
294 rho = cms.InputTag(
"fixedGridRhoFastjetAll"),
295 needsAdditionalProducts = cms.bool(
True),
296 isIgnored = cms.bool(
False)
300 cutName = cms.string(
'GsfEleValueMapIsoRhoCut'),
304 slopeTermEB = cms.double( wpEB.trkIsoSlopeTerm ),
305 slopeTermEE = cms.double( wpEE.trkIsoSlopeTerm ),
306 slopeStartEB = cms.double( wpEB.trkIsoSlopeStart ),
307 slopeStartEE = cms.double( wpEE.trkIsoSlopeStart ),
308 constTermEB = cms.double( wpEB.trkIsoConstTerm ),
309 constTermEE = cms.double( wpEE.trkIsoConstTerm ),
311 rhoEtStartEB = cms.double( 999999.),
312 rhoEtStartEE = cms.double( 999999.),
313 rhoEAEB = cms.double( 0. ),
314 rhoEAEE = cms.double( 0. ),
315 rho = cms.InputTag(
""),
316 value = cms.InputTag(
"heepIDVarValueMaps",
"eleTrkPtIsoNoJetCore"),
317 needsAdditionalProducts = cms.bool(
True),
318 isIgnored = cms.bool(
False)
322 cutName = cms.string(
'GsfEleValueMapIsoRhoCut'),
326 slopeTermEB = cms.double( wpEB.trkIsoSlopeTerm ),
327 slopeTermEE = cms.double( wpEE.trkIsoSlopeTerm ),
328 slopeStartEB = cms.double( wpEB.trkIsoSlopeStart ),
329 slopeStartEE = cms.double( wpEE.trkIsoSlopeStart ),
330 constTermEB = cms.double( wpEB.trkIsoConstTerm ),
331 constTermEE = cms.double( wpEE.trkIsoConstTerm ),
333 rhoEtStartEB = cms.double( 999999.),
334 rhoEtStartEE = cms.double( 999999.),
335 rhoEAEB = cms.double( 0. ),
336 rhoEAEE = cms.double( 0. ),
337 rho = cms.InputTag(
""),
338 value = cms.InputTag(
"heepIDVarValueMaps",
"eleTrkPtIso"),
339 needsAdditionalProducts = cms.bool(
True),
340 isIgnored = cms.bool(
False)
345 cutName = cms.string(
'GsfEleEmHadD1IsoRhoCut'),
346 slopeTermEB = cms.double( wpEB.ehIsoSlopeTerm ),
347 slopeTermEE = cms.double( wpEE.ehIsoSlopeTerm ),
348 slopeStartEB = cms.double( wpEB.ehIsoSlopeStart ),
349 slopeStartEE = cms.double( wpEE.ehIsoSlopeStart ),
350 constTermEB = cms.double( wpEB.ehIsoConstTerm ),
351 constTermEE = cms.double( wpEE.ehIsoConstTerm ),
352 energyType = cms.string( energyType ),
353 rhoConstant = cms.double( wpEB.effAreaForEHIso),
354 rho = cms.InputTag(
"fixedGridRhoFastjetAll"),
355 needsAdditionalProducts = cms.bool(
True),
356 isIgnored = cms.bool(
False)
362 cutName = cms.string(
'GsfEleDxyCut'),
363 dxyCutValueEB = cms.double( wpEB.dxyCut ),
364 dxyCutValueEE = cms.double( wpEE.dxyCut ),
365 vertexSrc = cms.InputTag(
"offlinePrimaryVertices"),
366 vertexSrcMiniAOD = cms.InputTag(
"offlineSlimmedPrimaryVertices"),
367 barrelCutOff = cms.double(ebCutOff),
368 needsAdditionalProducts = cms.bool(
True),
369 isIgnored = cms.bool(
False)
375 cutName = cms.string(
'GsfEleMissingHitsCut'),
376 maxMissingHitsEB = cms.uint32( wpEB.maxMissingHitsCut ),
377 maxMissingHitsEE = cms.uint32( wpEE.maxMissingHitsCut ),
378 barrelCutOff = cms.double(ebCutOff),
379 needsAdditionalProducts = cms.bool(
False),
380 isIgnored = cms.bool(
False)
384 cutName = cms.string(
'GsfEleEcalDrivenCut'),
385 ecalDrivenEB = cms.int32( wpEB.ecalDrivenCut ),
386 ecalDrivenEE = cms.int32( wpEE.ecalDrivenCut ),
387 barrelCutOff = cms.double(ebCutOff),
388 needsAdditionalProducts = cms.bool(
False),
389 isIgnored = cms.bool(
False)
398 This function configures the full cms.PSet for a VID ID and returns it.
399 The inputs: two objects of the type HEEP_WorkingPoint_V1, one
400 containing the cuts for the Barrel (EB) and the other one for the Endcap (EE).
402 parameterSet = cms.PSet(
403 idName = cms.string(
"heepElectronID-HEEPV51"),
423 This function configures the full cms.PSet for a VID ID and returns it.
424 The inputs: two objects of the type HEEP_WorkingPoint_V1, one
425 containing the cuts for the Barrel (EB) and the other one for the Endcap (EE).
427 parameterSet = cms.PSet(
428 idName = cms.string(
"heepElectronID-HEEPV60"),
449 This function configures the full cms.PSet for a VID ID and returns it.
450 The inputs: two objects of the type HEEP_WorkingPoint_V1, one
451 containing the cuts for the Barrel (EB) and the other one for the Endcap (EE).
453 parameterSet = cms.PSet(
454 idName = cms.string(idName),
474 This function configures the full cms.PSet for a VID ID and returns it.
475 The inputs: two objects of the type HEEP_WorkingPoint_V1, one
476 containing the cuts for the Barrel (EB) and the other one for the Endcap (EE).
478 parameterSet = cms.PSet(
479 idName = cms.string(idName),
500 This function configures the full cms.PSet for a VID ID and returns it.
501 The inputs: two objects of the type HEEP_WorkingPoint_V1, one
502 containing the cuts for the Barrel (EB) and the other one for the Endcap (EE).
504 parameterSet = cms.PSet(
505 idName = cms.string(idName),
525 This function configures the full cms.PSet for a VID ID and returns it.
526 The inputs: two objects of the type HEEP_WorkingPoint_V2, one
527 containing the cuts for the Barrel (EB) and the other one for the Endcap (EE).
529 parameterSet = cms.PSet(
530 idName = cms.string(
"heepElectronID-HEEPV61"),
550 seq.associate(newTask)
554 process.load(
"RecoEgamma.ElectronIdentification.heepIdVarValueMapProducer_cfi")
555 newTask.add(process.heepIDVarValueMaps)
557 if useMiniAOD==
False:
558 process.load(
"TrackingTools.TransientTrack.TransientTrackBuilder_cfi")
559 process.load(
"PhysicsTools.PatAlgos.slimming.primaryVertexAssociation_cfi")
560 process.load(
"PhysicsTools.PatAlgos.slimming.offlineSlimmedPrimaryVertices_cfi")
561 process.load(
"PhysicsTools.PatAlgos.slimming.packedPFCandidates_cfi")
563 process.packedCandsForTkIso = packedPFCandidates.clone()
564 process.packedCandsForTkIso.PuppiSrc=cms.InputTag(
"")
565 process.packedCandsForTkIso.PuppiNoLepSrc=cms.InputTag(
"")
567 process.load(
"PhysicsTools.PatAlgos.slimming.lostTracks_cfi")
569 process.lostTracksForTkIso = lostTracks.clone()
570 process.lostTracksForTkIso.packedPFCandidates =cms.InputTag(
"packedCandsForTkIso")
571 newTask.add(process.primaryVertexAssociation,
572 process.offlineSlimmedPrimaryVertices,
573 process.packedCandsForTkIso,
574 process.lostTracksForTkIso)
577 '''currently no additional products are needed to run the HEEP ID so this
578 function simply remains as a placeholder