From 407491141abcd7ebaf102ce487ff8484f034cec7 Mon Sep 17 00:00:00 2001 From: lathomasexport Date: Mon, 30 Nov 2020 00:45:40 +0100 Subject: [PATCH 1/2] PUPPI v15 for NANOAOD: bug+crashes fixes --- CommonTools/PileupAlgos/python/Puppi_cff.py | 3 ++- PhysicsTools/NanoAOD/python/nano_cff.py | 10 +++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/CommonTools/PileupAlgos/python/Puppi_cff.py b/CommonTools/PileupAlgos/python/Puppi_cff.py index bb11fae46c55c..a3500d45d8962 100644 --- a/CommonTools/PileupAlgos/python/Puppi_cff.py +++ b/CommonTools/PileupAlgos/python/Puppi_cff.py @@ -119,7 +119,8 @@ ) from Configuration.ProcessModifiers.run2_miniAOD_UL_cff import run2_miniAOD_UL -run2_miniAOD_UL.toModify( +from Configuration.Eras.Modifier_run2_nanoAOD_106Xv1_cff import run2_nanoAOD_106Xv1 +(run2_miniAOD_UL|run2_nanoAOD_106Xv1).toModify( puppi, EtaMinUseDeltaZ = 2.4, PtMaxCharged = 20., diff --git a/PhysicsTools/NanoAOD/python/nano_cff.py b/PhysicsTools/NanoAOD/python/nano_cff.py index 7b3ee97b2dd2a..a98d23cc41309 100644 --- a/PhysicsTools/NanoAOD/python/nano_cff.py +++ b/PhysicsTools/NanoAOD/python/nano_cff.py @@ -224,7 +224,6 @@ def nanoAOD_recalibrateMETs(process,isData): reclusterJets = cms.untracked.bool(False), ) run2_nanoAOD_106Xv1.toModify(nanoAOD_PuppiV15_switch,recoMetFromPFCs=True,reclusterJets=True) - runMetCorAndUncFromMiniAOD(process,isData=isData,metType="Puppi",postfix="Puppi",jetFlavor="AK4PFPuppi", recoMetFromPFCs=bool(nanoAOD_PuppiV15_switch.recoMetFromPFCs), reclusterJets=bool(nanoAOD_PuppiV15_switch.reclusterJets)) if nanoAOD_PuppiV15_switch.reclusterJets: from RecoJets.JetProducers.ak4PFJets_cfi import ak4PFJets from PhysicsTools.PatAlgos.tools.helpers import getPatAlgosToolsTask, addToProcessAndTask @@ -243,11 +242,12 @@ def nanoAOD_recalibrateMETs(process,isData): muSource =cms.InputTag( 'slimmedMuons'), elSource = cms.InputTag('slimmedElectrons'), genParticles= cms.InputTag('prunedGenParticles'), - getJetMCFlavour=False + getJetMCFlavour= not isData ) - - process.patJetsPuppi.addGenPartonMatch = cms.bool(False) - process.patJetsPuppi.addGenJetMatch = cms.bool(False) + process.patJetsPuppi.addGenPartonMatch = cms.bool(not isData) + process.patJetsPuppi.addGenJetMatch = cms.bool(not isData) + + runMetCorAndUncFromMiniAOD(process,isData=isData,metType="Puppi",postfix="Puppi",jetFlavor="AK4PFPuppi", recoMetFromPFCs=bool(nanoAOD_PuppiV15_switch.recoMetFromPFCs), reclusterJets=bool(nanoAOD_PuppiV15_switch.reclusterJets)) process.nanoSequenceCommon.insert(process.nanoSequenceCommon.index(process.jetSequence),cms.Sequence(process.puppiMETSequence+process.fullPatMetSequencePuppi)) return process From dd50beb21fba76079cefac8177836e6795fe8002 Mon Sep 17 00:00:00 2001 From: lathomasexport Date: Mon, 30 Nov 2020 17:29:43 +0100 Subject: [PATCH 2/2] Switching off gen matching for PUPPI jets --- PhysicsTools/NanoAOD/python/nano_cff.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/PhysicsTools/NanoAOD/python/nano_cff.py b/PhysicsTools/NanoAOD/python/nano_cff.py index a98d23cc41309..7e056d63b71a7 100644 --- a/PhysicsTools/NanoAOD/python/nano_cff.py +++ b/PhysicsTools/NanoAOD/python/nano_cff.py @@ -242,10 +242,10 @@ def nanoAOD_recalibrateMETs(process,isData): muSource =cms.InputTag( 'slimmedMuons'), elSource = cms.InputTag('slimmedElectrons'), genParticles= cms.InputTag('prunedGenParticles'), - getJetMCFlavour= not isData + getJetMCFlavour= False ) - process.patJetsPuppi.addGenPartonMatch = cms.bool(not isData) - process.patJetsPuppi.addGenJetMatch = cms.bool(not isData) + process.patJetsPuppi.addGenPartonMatch = cms.bool(False) + process.patJetsPuppi.addGenJetMatch = cms.bool(False) runMetCorAndUncFromMiniAOD(process,isData=isData,metType="Puppi",postfix="Puppi",jetFlavor="AK4PFPuppi", recoMetFromPFCs=bool(nanoAOD_PuppiV15_switch.recoMetFromPFCs), reclusterJets=bool(nanoAOD_PuppiV15_switch.reclusterJets)) process.nanoSequenceCommon.insert(process.nanoSequenceCommon.index(process.jetSequence),cms.Sequence(process.puppiMETSequence+process.fullPatMetSequencePuppi))