-
Notifications
You must be signed in to change notification settings - Fork 4.4k
BPHNanoAODs #47469
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
BPHNanoAODs #47469
Conversation
Add PhysicsTools/BPHNano files
cms-bot internal usage |
-code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-47469/43900 Code check has found code style and quality issues which could be resolved by applying following patch(s)
|
assign xpog |
please include how this would be ran within a cmsDriver command ; and this will likely require the |
enable nano |
please test |
Hi @gmelachr -- as a follow-up on Jean-Roch's comment, usually NanoAOD flavors implement their customizations and make them related to a new sequence at autoNANO.py https://github.com/cms-sw/cmssw/blob/master/PhysicsTools/NanoAOD/python/autoNANO.py |
The binary files should be placed in a (new?) repository in https://github.com/cms-data/ |
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.
This is a wrong package to define dictionaries for persistable data products (see https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideCreatingNewProducts#Restrictions_on_the_package_defi).
<class name="reco::TransientTrack"/> | ||
<class name="std::vector<reco::TransientTrack>" ClassVersion="6"> | ||
<version ClassVersion="6" checksum="1695337441"/> | ||
</class> | ||
<class name="edm::Wrapper<std::vector<reco::TransientTrack> >"/> |
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.
Dictionaries for reco::TransientTrack
must be defined in the package that defines the class, i.e. TrackingTools/TransientTrack
. Given that that package is a non-DataFormat package, the dictionary for Wrapper
must be declared as transient along
<class name="edm::Wrapper<std::vector<reco::TransientTrack> >" persistent="false"/>
The dictionary for std::vector<reco::TransientTrack>
should not specify class version (because it is an instantiation of a class template).
<class name="KinVtxFitter"/> | ||
<class name="std::vector<KinVtxFitter>"/> | ||
<class name="edm::Wrapper<std::vector<KinVtxFitter> >"/> |
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.
If dictionary for KinVtxFitter
is needed, the Wrapper
must be declared as transient
<class name="edm::Wrapper<std::vector<KinVtxFitter> >" persistent="false"/>
However, it seems not to be put into the edm::Event
in the present form of this PR (I only saw commented-out code). If it is not necessary to put it into edm::Event
, I'd suggest to remove that commented-out code and these dictionary declarations.
<class name="edm::RefProd<pat::CompositeCandidateCollection>" /> | ||
<class name="edm::Association<pat::CompositeCandidateCollection>" /> | ||
<class name="edm::Wrapper<edm::Association<pat::CompositeCandidateCollection> >" /> |
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.
These dictionaries must go to the package that defines pat::CompositeCandidateCollection
, i.e. DataFormats/PatCandidates
.
namespace { | ||
struct dictionary { | ||
std::vector<reco::TransientTrack> ttv; | ||
edm::Wrapper<std::vector<reco::TransientTrack> > wttv; | ||
edm::Wrapper<std::vector<KinVtxFitter> > wkv; | ||
}; | ||
} |
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.
This dummy struct is not needed (since long time).
namespace { | |
struct dictionary { | |
std::vector<reco::TransientTrack> ttv; | |
edm::Wrapper<std::vector<reco::TransientTrack> > wttv; | |
edm::Wrapper<std::vector<KinVtxFitter> > wkv; | |
}; | |
} |
-code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-47469/44011
Code check has found code style and quality issues which could be resolved by applying following patch(s)
|
Hello, the BPH-flavor has been added in the autoNANO.py @ftorrresd @vlimant The cmsDriver command is: cmsDriver.py --conditions 140X_dataRun3_Prompt_v4 --datatier NANOAOD --era Run3,run3_nanoAOD_pre142X --eventcontent NANOAOD --filein root://cms-xrd-global.cern.ch//store/data/Run2024C/ParkingDoubleMuonLowMass0/MINIAOD/PromptReco-v1/000/379/415/00000/b40397b5-61c6-4887-8f4e-025e8ca925ee.root --fileout file:/tmp/gmelachr/BPH_test_data.root --nThreads 4 -n -1 --no_exec --python_filename BPH_test.py --scenario pp --step NANO:@bph @makortel 's comments are work in progress |
-code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-47469/44039
Code check has found code style and quality issues which could be resolved by applying following patch(s)
|
The review of the PR continues at #47603 |
Following the presentation in the xPOG meeting (https://indico.cern.ch/event/1509026/#2-bph-custom-nanoaod), this is the PR for the BPH-flavor nanoAODs.
FYI: @drkovalskyi @gkaratha @hqucms @ftorrresd