CMS 3D CMS Logo

customizePuppiTune_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 def UpdatePuppiTuneV15(process, runOnMC=True):
4  #
5  # Adapt for re-running PUPPI
6  #
7  print("customizePuppiTune_cff::UpdatePuppiTuneV15: Recomputing PUPPI with Tune v15, slimmedJetsPuppi and slimmedMETsPuppi")
8  from PhysicsTools.PatAlgos.tools.helpers import getPatAlgosToolsTask, addToProcessAndTask
9  task = getPatAlgosToolsTask(process)
10  from PhysicsTools.PatAlgos.slimming.puppiForMET_cff import makePuppiesFromMiniAOD
11  makePuppiesFromMiniAOD(process,True)
12  process.puppi.useExistingWeights = False
13  process.puppiNoLep.useExistingWeights = False
14  from PhysicsTools.PatUtils.tools.runMETCorrectionsAndUncertainties import runMetCorAndUncFromMiniAOD
15  runMetCorAndUncFromMiniAOD(process,isData=(not runOnMC),metType="Puppi",postfix="Puppi",jetFlavor="AK4PFPuppi",recoMetFromPFCs=True,pfCandColl=cms.InputTag("puppiForMET"))
16  from PhysicsTools.PatAlgos.patPuppiJetSpecificProducer_cfi import patPuppiJetSpecificProducer
17  addToProcessAndTask('patPuppiJetSpecificProducer', patPuppiJetSpecificProducer.clone(src=cms.InputTag("patJetsPuppi")), process, task)
18  from PhysicsTools.PatAlgos.tools.jetTools import updateJetCollection
19  updateJetCollection(
20  process,
21  labelName = 'PuppiJetSpecific',
22  jetSource = cms.InputTag('patJetsPuppi'),
23  )
24  process.updatedPatJetsPuppiJetSpecific.userData.userFloats.src = ['patPuppiJetSpecificProducer:puppiMultiplicity', 'patPuppiJetSpecificProducer:neutralPuppiMultiplicity', 'patPuppiJetSpecificProducer:neutralHadronPuppiMultiplicity', 'patPuppiJetSpecificProducer:photonPuppiMultiplicity', 'patPuppiJetSpecificProducer:HFHadronPuppiMultiplicity', 'patPuppiJetSpecificProducer:HFEMPuppiMultiplicity' ]
25  addToProcessAndTask('slimmedJetsPuppi', process.updatedPatJetsPuppiJetSpecific.clone(), process, task)
26  del process.updatedPatJetsPuppiJetSpecific
27  process.puppiSequence = cms.Sequence(process.puppiMETSequence+process.fullPatMetSequencePuppi+process.patPuppiJetSpecificProducer+process.slimmedJetsPuppi)
28  #
29  # Adapt for PUPPI tune V15
30  #
31  process.puppi.PtMaxCharged = 20.
32  process.puppi.EtaMinUseDeltaZ = 2.4
33  process.puppi.PtMaxNeutralsStartSlope = 20.
34  process.puppi.NumOfPUVtxsForCharged = 2
35  process.puppi.algos[0].etaMin = [-0.01]
36  process.puppiNoLep.PtMaxCharged = 20.
37  process.puppiNoLep.EtaMinUseDeltaZ = 2.4
38  process.puppiNoLep.PtMaxNeutralsStartSlope = 20.
39  process.puppiNoLep.NumOfPUVtxsForCharged = 2
40  process.puppiNoLep.algos[0].etaMin = [-0.01]
41 
42 def UpdatePuppiTuneV15_MC(process):
43  UpdatePuppiTuneV15(process,runOnMC=True)
44 
46  UpdatePuppiTuneV15(process,runOnMC=False)
def addToProcessAndTask(label, module, process, task)
Definition: helpers.py:29
S & print(S &os, JobReport::InputFile const &f)
Definition: JobReport.cc:66
def UpdatePuppiTuneV15(process, runOnMC=True)
def getPatAlgosToolsTask(process)
Definition: helpers.py:14
def runMetCorAndUncFromMiniAOD(process, metType="PF", jetCollUnskimmed="slimmedJets", photonColl="slimmedPhotons", electronColl="slimmedElectrons", muonColl="slimmedMuons", tauColl="slimmedTaus", pfCandColl="packedPFCandidates", jetFlavor="AK4PFchs", jetCleaning="LepClean", isData=False, manualJetConfig=False, reclusterJets=None, jetSelection="pt>15 && abs(eta)<9.9", recoMetFromPFCs=None, jetCorLabelL3="ak4PFCHSL1FastL2L3Corrector", jetCorLabelRes="ak4PFCHSL1FastL2L3ResidualCorrector", CHS=False, reapplyJEC=True, jecUncFile="", computeMETSignificance=True, fixEE2017=False, fixEE2017Params=None, extractDeepMETs=False, postfix="")
def makePuppiesFromMiniAOD(process, createScheduledSequence=False)