Skip to content

Draft: Cleaning up checks on truth particle status

John Derek Chapman requested to merge jchapman/athena:HepMCHelpers_main into main
  • Use status and barcode helper functions in HepMCHelpers.h. SINGLE_PARTICLE -> SINGLE_PARTICLE_BARCODE for clarity
  • Wrap xAOD::TruthParticle::status() calls in HepMC::status helper function
  • TrackTruthSelectionTool: Replace status == 1 check is MC::isStable, which should be equivalent in the new status code scheme
  • Checks for status == 3 and other non-standard values (WIP)

Most of the remaining ones are checking for status == 3 - should we make a helper function for this one?
Other non-standard status values being used:

  • 30 < status < 40 (HadronicOriginClassifier.cxx) - isDirectlyMPIPythia8 ???
  • status == 11 (TruthBornLeptonCollectionMaker.cxx) - leptons in sherpa according to the comments
  • status == 23 (TruthBornLeptonCollectionMaker.cxx) - leptons in sherpa according to the comments
  • status == 20 (TruthCollectionMaker.cxx) - Sherpa - it is "the future" according to the comments.
  • status == 155 (CalcTopPartonHistory.cxx) t/tbar quarks from Herwig6???
  • status == 11 (CalcTopPartonHistory.cxx) Herwig++ - t/tbar quarks which decay into Wb ???

For these I think we need to make constants in MagicNumbers.h

Edited by John Derek Chapman

Merge request reports