New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adapt track-vertex association in PUPPI (v15) [10_6_X] #31214
Conversation
A new Pull Request was created by @ahinzmann for CMSSW_10_6_X. It involves the following packages: CommonTools/PileupAlgos @perrotta, @jpata, @cmsbuild, @santocch, @slava77 can you please review it and eventually sign? Thanks. cms-bot commands are listed here
|
backport of #31174 |
please test |
The tests are being triggered in jenkins.
|
+1 |
Comparison job queued. |
Comparison is ready Comparison Summary:
|
everything is in the UL re-miniAOD workflow |
from PhysicsTools.PatAlgos.tools.helpers import getPatAlgosToolsTask, addToProcessAndTask | ||
task = getPatAlgosToolsTask(process) | ||
from PhysicsTools.PatAlgos.slimming.puppiForMET_cff import makePuppiesFromMiniAOD | ||
makePuppiesFromMiniAOD(process,True) | ||
process.puppi.useExistingWeights = False | ||
process.puppiNoLep.useExistingWeights = False | ||
from PhysicsTools.PatUtils.tools.runMETCorrectionsAndUncertainties import runMetCorAndUncFromMiniAOD | ||
runMetCorAndUncFromMiniAOD(process,isData=(not runOnMC),metType="Puppi",postfix="Puppi",jetFlavor="AK4PFPuppi",recoMetFromPFCs=True,pfCandColl=cms.InputTag("puppiForMET")) | ||
runMetCorAndUncFromMiniAOD(process,isData=(not runOnMC),metType="Puppi",postfix="Puppi",jetFlavor="AK4PFPuppi",recoMetFromPFCs=True) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is this change intended?
it looks unrelated to the change from v14 to v15.
algos = cms.VPSet( | ||
cms.PSet( | ||
etaMin = cms.vdouble(-0.01), # include particles with eta==0 (proper fix is in #31174) | ||
etaMax = cms.vdouble(2.5), | ||
ptMin = cms.vdouble(0.), | ||
MinNeutralPt = cms.vdouble(0.2), | ||
MinNeutralPtSlope = cms.vdouble(0.015), | ||
RMSEtaSF = cms.vdouble(1.0), | ||
MedEtaSF = cms.vdouble(1.0), | ||
EtaMaxExtrap = cms.double(2.0), | ||
puppiAlgos = puppiCentral | ||
), | ||
cms.PSet( | ||
etaMin = cms.vdouble( 2.5, 3.0), | ||
etaMax = cms.vdouble( 3.0, 10.0), | ||
ptMin = cms.vdouble( 0.0, 0.0), | ||
MinNeutralPt = cms.vdouble( 1.7, 2.0), | ||
MinNeutralPtSlope = cms.vdouble(0.08, 0.08), | ||
RMSEtaSF = cms.vdouble(1.20, 0.95), | ||
MedEtaSF = cms.vdouble(0.90, 0.75), | ||
EtaMaxExtrap = cms.double( 2.0), | ||
puppiAlgos = puppiForward | ||
) | ||
) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IIUC, only etaMin needs a change
algos = cms.VPSet( | |
cms.PSet( | |
etaMin = cms.vdouble(-0.01), # include particles with eta==0 (proper fix is in #31174) | |
etaMax = cms.vdouble(2.5), | |
ptMin = cms.vdouble(0.), | |
MinNeutralPt = cms.vdouble(0.2), | |
MinNeutralPtSlope = cms.vdouble(0.015), | |
RMSEtaSF = cms.vdouble(1.0), | |
MedEtaSF = cms.vdouble(1.0), | |
EtaMaxExtrap = cms.double(2.0), | |
puppiAlgos = puppiCentral | |
), | |
cms.PSet( | |
etaMin = cms.vdouble( 2.5, 3.0), | |
etaMax = cms.vdouble( 3.0, 10.0), | |
ptMin = cms.vdouble( 0.0, 0.0), | |
MinNeutralPt = cms.vdouble( 1.7, 2.0), | |
MinNeutralPtSlope = cms.vdouble(0.08, 0.08), | |
RMSEtaSF = cms.vdouble(1.20, 0.95), | |
MedEtaSF = cms.vdouble(0.90, 0.75), | |
EtaMaxExtrap = cms.double( 2.0), | |
puppiAlgos = puppiForward | |
) | |
) | |
algos = { 0 : dict(etaMin = {-0.01}) } # include particles with eta==0 (proper fix is in #31174) |
@cmsbuild please test |
The tests are being triggered in jenkins.
|
+1 |
Comparison job queued. |
Comparison is ready Comparison Summary:
|
+1
|
+1 |
This pull request is fully signed and it will be integrated in one of the next CMSSW_10_6_X IBs (tests are also fine) and once validation in the development release cycle CMSSW_11_2_X is complete. This pull request will now be reviewed by the release team before it's merged. @silviodonato, @dpiparo, @qliphy (and backports should be raised in the release meeting by the corresponding L2) |
+1 |
PR description:
This introduces a change for Era run2_miniAOD_UL (#27889) in the treatment of the track-vertex association for charged particles in PUPPI. The new version is called v15.
The vertex association is adapted to deal with split vertices in high hadronic activity events (more on this here: https://indico.cern.ch/event/944339/contributions/3968152/attachments/2086414/3505127/splitverticesandhighptjets.pdf).
Charged particles associated to one of the leading two pileup vertices by the vertex fit (fromPV=0), but found within dz<0.2 of the primary vertex are treated as coming from the primary vertex.
This reduces MET tails due to particles that are wrongly associated to a PU vertex, when the PV is reconstructed as 2-3 split vertices.
The overall impact on jet response, jet efficiency, fake rate, boosted object tagging is negligible.
Thus JEC and SFs derived with PUPPI v14 are applicable to PUPPI v15.
A summary of the studies is in:
https://indico.cern.ch/event/942994/contributions/3978585/attachments/2088015/3508036/puppiv15summary-1.pdf
An additional check on softdrop mass response for high pT AK8 jets can be found here:
https://indico.cern.ch/event/942994/#7-virtual-impact-of-puppi-tune
In addition rare cases with particle eta==0 that are not treated in PuppiContainer are handled by adapting the eta range start at -0.01. A permanent fix for this is in #31174.
PR validation:
scram b run-tests
runTheMatrix.py -l limited
if this PR is a backport please specify the original PR and why you need to backport that PR:
Backport of #31174