# 80X does not contain the latest & greatest PuppiPhoton; need to rerun for all config from PhysicsTools.PatAlgos.slimming.puppiForMET_cff import makePuppiesFromMiniAOD # Creates process.puppiMETSequence which includes 'puppi' and 'puppiForMET' (= EDProducer('PuppiPhoton')) # *UGLY* also runs switchOnVIDPhotonIdProducer and sets up photon id Spring16_V2p2 internally # which loads photonIDValueMapProducer and egmPhotonIDs makePuppiesFromMiniAOD(process, createScheduledSequence=True) # Just renaming puppiSequence = process.puppiMETSequence ### PUPPI JET from PandaProd.Producer.utils.makeJets_cff import makeJets puppiJetSequence = makeJets(process, options.isData, 'AK4PFPuppi', 'puppi', 'Puppi') ### PUPPI MET from PhysicsTools.PatUtils.tools.runMETCorrectionsAndUncertainties import runMetCorAndUncFromMiniAOD # Creates process.fullPatMetSequencePuppi # With metType = 'Puppi', slimmedJetsPuppi is automatically selected as the jet source for type 1 runMetCorAndUncFromMiniAOD(process, isData=options.isData, metType='Puppi', pfCandColl='puppiForMET', recoMetFromPFCs=True, jetFlavor='AK4PFPuppi', postfix='Puppi') # There is a bug in a function used by runMetCorAndUncFromMiniAOD (PhysicsTools.PatAlgos.tools.removeIfInSequence) # The following module is supposed to be removed from the sequence but is not
for idmod in photonIdModules: setupAllVIDIdsInModule(process, idmod, setupVIDPhotonSelection) process.load('PandaProd.Auxiliary.WorstIsolationProducer_cfi') egmIdSequence = cms.Sequence(process.photonIDValueMapProducer + process.egmPhotonIDs + process.electronMVAValueMapProducer + process.egmGsfElectronIDs + process.worstIsolationProducer) ### REMAKE CHS JETS WITH DEEP FLAVOR from PandaProd.Producer.utils.makeJets_cff import makeJets slimmedJetsSequence = makeJets(process, options.isData, 'AK4PFchs', 'pfCHS', 'DeepFlavor') if options.redojec: ### JET RE-CORRECTION from PhysicsTools.PatAlgos.producersLayer1.jetUpdater_cff import updatedPatJetCorrFactors, updatedPatJets jecLevels = ['L1FastJet', 'L2Relative', 'L3Absolute'] if options.isData: jecLevels.append('L2L3Residual') # slimmedJets made from scratch #process.updatedPatJetCorrFactors = updatedPatJetCorrFactors.clone( # src = cms.InputTag('slimmedJets', '', cms.InputTag.skipCurrentProcess()), # levels = cms.vstring(*jecLevels), #) #
# *UGLY* also runs switchOnVIDPhotonIdProducer and sets up photon id Spring16_V2p2 internally # which loads photonIDValueMapProducer and egmPhotonIDs makePuppiesFromMiniAOD(process, createScheduledSequence=True) # Just renaming puppiSequence = process.puppiMETSequence # override photon ID to be consistent process.puppiPhoton.photonId = 'egmPhotonIDs:cutBasedPhotonID-Spring16-V2p2-loose' process.puppiForMET.photonId = 'egmPhotonIDs:cutBasedPhotonID-Spring16-V2p2-loose' ### PUPPI JET from PandaProd.Producer.utils.makeJets_cff import makeJets puppiJetSequence = makeJets(process, options.isData, 'AK4PFPuppi', 'puppi', 'Puppi') ### PUPPI MET # Creates process.fullPatMetSequencePuppi # With metType = 'Puppi', slimmedJetsPuppi is automatically selected as the jet source for type 1 runMetCorAndUncFromMiniAOD(process, isData=options.isData, metType='Puppi', pfCandColl='puppiForMET', recoMetFromPFCs=True, jetFlavor='AK4PFPuppi', postfix='Puppi') # There is a bug in a function used by runMetCorAndUncFromMiniAOD (PhysicsTools.PatAlgos.tools.removeIfInSequence) # The following module is supposed to be removed from the sequence but is not # The bug appears when we don't call the no-postfix version of runMetCor.. first
setupAllVIDIdsInModule( process, 'RecoEgamma.ElectronIdentification.Identification.cutBasedElectronID_Spring15_25ns_V1_cff', setupVIDElectronSelection) egmIdSequence = cms.Sequence(process.photonIDValueMapProducer + process.egmPhotonIDs + process.egmGsfElectronIDs) ### PUPPI process.load('PandaProd.Producer.utils.puppi_cff') from PandaProd.Producer.utils.puppi_cff import puppiSequence ### RECLUSTER PUPPI JET from PandaProd.Producer.utils.makeJets_cff import makeJets puppiJetSequence = makeJets(process, False, 'AK4PFPuppi', 'puppiForMET', 'Puppi') ### JET RE-CORRECTION, TAGGING, AND SLIMMING from PhysicsTools.PatAlgos.producersLayer1.jetUpdater_cff import updatedPatJetCorrFactors, updatedPatJets process.updatedPatJetCorrFactors = updatedPatJetCorrFactors.clone( src=cms.InputTag('slimmedJets', '', cms.InputTag.skipCurrentProcess()), levels=cms.vstring(*jecLevels), ) from RecoJets.JetProducers.QGTagger_cfi import QGTagger process.slimmedJets = updatedPatJets.clone( jetSource=cms.InputTag('slimmedJets', '', cms.InputTag.skipCurrentProcess()), addJetCorrFactors=cms.bool(True),