Skip to content
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

Added updateJetCollection() function to jetTools.py and related changes to the PATJetUpdater and the pat::Jet class #12863

Conversation

ferencek
Copy link
Contributor

@ferencek ferencek commented Jan 4, 2016

This PR builds on top of #8288 and adds the updateJetCollection() function to jetTools.py. This function allows, in a user-friendly way, to update the jet energy corrections and re-run existing or add additional b-tag discriminators. It can also be used to add TagInfos to jets. It primarily targets updating pat::Jets stored in MiniAOD. In addition, users can manually add an arbitrary set of additional userFloats.

An example cfg file PhysicsTools/PatAlgos/test/patTuple_updateJets_fromMiniAOD_cfg.py was also added and included in PAT unit tests.

One caveat concerns added TagInfos. They cannot be successfully retrieved from pat::Jets stored in the existing MiniAOD datasets due to a bug in the PATJetSlimmer which was not clearing the tagInfoLabels_ data member of the pat::Jet class when dropping the TagInfos from slimmed jets. This PR therefore also includes a required bugfix for the PATJetSlimmer.

@ahinzmann @imarches @gpetruc @arizzi

@cmsbuild
Copy link
Contributor

cmsbuild commented Jan 4, 2016

A new Pull Request was created by @ferencek (Dinko Ferenček) for CMSSW_8_0_X.

It involves the following packages:

DataFormats/PatCandidates
PhysicsTools/PatAlgos

@cvuosalo, @monttj, @cmsbuild, @slava77, @vadler, @davidlange6 can you please review it and eventually sign? Thanks.
@TaiSakuma, @imarches, @ahinzmann, @acaudron, @mmarionncern, @rappoccio, @jdolen, @nhanvtran, @schoef, @ferencek, @gpetruc, @mariadalfonso, @pvmulder this is something you requested to watch as well.
@slava77, @Degano, @smuzaffar you are the release manager for this.

Following commands in first line of a comment are recognized

  • +1|approve[d]|sign[ed]: L1/L2's to approve it
  • -1|reject[ed]: L1/L2's to reject it
  • assign <category>[,<category>[,...]]: L1/L2's to request signatures from other categories
  • unassign <category>[,<category>[,...]]: L1/L2's to remove signatures from other categories
  • hold: L1/all L2's/release manager to mark it as on hold
  • unhold: L1/user who put this PR on hold
  • merge: L1/release managers to merge this request
  • [@cmsbuild,] please test: L1/L2 and selected users to start jenkins tests
  • [@cmsbuild,] please test with cms-sw/cmsdist#<PR>: L1/L2 and selected users to start jenkins tests using externals from cmsdist

@@ -1,6 +1,6 @@
import FWCore.ParameterSet.Config as cms

patJetsUpdated = cms.EDProducer("PATJetUpdater",
updatedPatJets = cms.EDProducer("PATJetUpdater",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this renaming invisible to users (affects only transient objects)?
If it is not, why change the name?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, with the updateJetCollection() function from jetTools.py, this becomes a transient collection. Also, the new name is more in line with the PAT jet naming convention where user-defined labels and postfixes come after "PatJets" while "updated" is a fixed prefix-type descriptor.

@slava77
Copy link
Contributor

slava77 commented Jan 4, 2016

@cmsbuild please test

@ferencek please update the PR subject line to be more descriptive of changes in the PATJetUpdater and pat::Jet

@cmsbuild
Copy link
Contributor

cmsbuild commented Jan 4, 2016

The tests are being triggered in jenkins.
https://cmssdt.cern.ch/jenkins/job/ib-any-integration/10420/console

@cmsbuild
Copy link
Contributor

cmsbuild commented Jan 4, 2016

@cmsbuild
Copy link
Contributor

cmsbuild commented Jan 4, 2016

@ferencek ferencek changed the title Added updateJetCollection() function to jetTools.py Added updateJetCollection() function to jetTools.py and related changes to the PATJetUpdater and the pat::Jet class Jan 4, 2016
@ferencek
Copy link
Contributor Author

ferencek commented Jan 4, 2016

@slava77, PR subject line updated

@slava77
Copy link
Contributor

slava77 commented Jan 8, 2016

+1

for #12863 b91cf04

  • code changes look OK. They affect only miniAOD part.
  • jenkins tests pass and comparisons with the baseline show no differences in monitored quantities
  • comparisons of miniAOD products (by branch size) show small differences in slimmedJetsPuppi and slimmedJets (changes are expected; no further checks are made to see specific variable changes in my checks)
  • local test of miniAOD from AOD using pu35@25ns ttbar events show no significant change in CPU

davidlange6 added a commit that referenced this pull request Jan 10, 2016
…rovedPATbtagESLoading_from-CMSSW_8_0_0_pre4

Added updateJetCollection() function to jetTools.py and related changes to the PATJetUpdater and the pat::Jet class
@davidlange6 davidlange6 merged commit 0a9cf2f into cms-sw:CMSSW_8_0_X Jan 10, 2016
cmsbuild added a commit that referenced this pull request Jan 10, 2016
…rovedPATbtagESLoading_from-CMSSW_8_0_0_pre4
@ferencek ferencek deleted the UpdatedJetTools-OnTopOfImprovedPATbtagESLoading_from-CMSSW_8_0_0_pre4 branch January 12, 2016 11:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants