-
Notifications
You must be signed in to change notification settings - Fork 1
HepUtils update: Multiple Jet Collections and Cluster sequence access #464
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
Conversation
… scheme, and introducing all-particles storage and multiple jet collections
…sistent with new upstream HEPUtils logic
…ATLAS boosted-boson analysis which was using a now overwritten customisation of the HEPUtils Jet class. The Ztag(), etc. methods are now replaced with calls to tagged(pdgid). Not tested since I can't get the backends to build at the moment
…, and sync HEPUtils to correctly pass the tag info from constructors to the new storage
…, and sync HEPUtils to correctly pass the tag info from constructors to the new storage
…master. Fixed some merge conflicts: Conflicts: ColliderBit/src/analyses/Analysis_ATLAS_13TeV_2BoostedBosons_139invfb.cpp ColliderBit/src/analyses/Analysis_CMS_13TeV_2SSLEP_Stop_137invfb.cpp ColliderBit/src/analyses/Analysis_CMS_13TeV_2SSLEP_Stop_36invfb.cpp cmake/tarball_info.cmake contrib/heputils/include/HEPUtils/Jet.h
…, and make many small fixes required/discoverred when updating heputils
|
Thanks for preparing the PR @ChrisJChang! Is there a set of example YAML settings that we can include in e.g. |
|
When testing the current I'm not sure yet if this issue is specific to this branch or if this is an error that exists on |
|
OK, turns out the error above is an existing problem on So for this PR I'll just comment out the Rivet/Contur stuff in my further test runs. |
…he jet collection name.
…nt conversion) into the Gambit::ColliderBit namespace.
… the yaml options are actually used. :)
anderkve
left a comment
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.
Thanks for all the work on this, @agbuckley and @ChrisJChang -- looks very good to me. As discussed in the ColliderBit meeting just now, we only need two changes before this PR can be merged:
-
We remove the default settings for the
jet_collectionsoptions and rather force the user include at least one jet collection configuration in their YAML file -
We should go through the existing YAML files on this branch and replace the old
antiktRsetting with a new YAML node containing the corresponding settings for aantikt_R04jet collection.
ColliderBit/include/gambit/ColliderBit/colliders/BaseCollider.hpp
Outdated
Show resolved
Hide resolved
|
@ChrisJChang, I can go through the YAML files and update all the settings. Will do it right away. |
|
@ChrisJChang, I guess the code below is in the wrong file? The error messages point to gambit/ColliderBit/src/getHepMCEvent.cpp Lines 60 to 99 in 0762388
|
There is also a check for the run options have the current collider settings (runOptions.hasKey(RunMC.current_collider())), and setting a default xsec veto, and flag whether to simulate parton only. This is where I put the default jet collection settings. Do you think we should remove this, so the user has to also provide the current collider as a yaml entry? |
This was where those were living originally, however having them in a header file creates multiple definition errors when these are used in multiple places. Since there is no source file associated with the Py8EventConversions, and they are not specific to Pythia8, perhaps it would make more sense to move them to ColliderBit/src/Utils.cpp |
Move location of stored fastjet strategies, algorithms, etc to Utils.cpp
|
I removed the default settings, throwing an error if they are not present. I also moved the location of the list of available fastjet algorithms, strategies, etc to Utils.cpp. |
|
Thanks for the quick fixes, @ChrisJChang -- I agree with all the decisions above. I'll let the CI jobs run to completion (or known crash) and then merge this to master. |
|
Btw, @ChrisJChang, do happen to know why the gambit_build (ubuntu-py2) CI job suddenly has reappeared? The only mention of ubuntu-py2 I find in our repo is some commented-out code in |
Turns out that there was a branch rule that it had to pass both ubuntu and ubuntu-py2 runners on the master branch. When the ubuntu-py2 runner was removed, we should have removed that rule. I went into the GutHib settings and removed this. I can add in the Mac ones as well if we like. |
|
Thanks! That makes sense. (I hadn't looked into the branch protection stuff before.) I'd say we just keep the Ubuntu one required for now. Then we can reassess in a future Core meeting which jobs to list as required once PR #462 is done. |
|
Merging this now. Thanks for all the work on this! |
This adds many updates to HepUtils, and allows use of multiple jet collections to be stored in the event class. It also keeps the cluster sequence alive so that it can be accessed in analyses.
The pointer to the cluster sequence can be accessed with "event->clusterseq()".
I also changed all existing use of event->jets() to use a jet collection name (using the default antikt_R04 for most analyses).
I am listing @anderkve as a reviewer.