Component accumulator in DAODs - part 3a: common physics augmentations

James Catmore requested to merge jcatmore/athena:master-DAOD_CA_part3a into master

This large merge request is a migration of the tracking, muon and e-gamma common augmentations applied and saved in DAODs, including PHYS and PHYSLITE, to the component accumulator. It also provides a migrated version of PHYS. Since every tool used needs a new configuration fragment it is necessary to create a number of new files containing these config methods. A few packages that didn't previously have python directories now have python configs so this has required adding an extra line to the CMakeFiles so that the modules can be found. However, since this is completely new python and only runs with the new Derivation_tf transform, it does not impact any existing DAODs built using Reco_tf.

Concretely the following has been added:

  • new configs for all of the inner detector track augmentation tools
  • new configs for all of the muon augmentation tools
  • new configs for all of the e-gamma augmentation tools

These are all summoned from the PhysCommonConfig fragment, which itself is called from PHYS/PHYSLITE and any other formats that need to use it. The truth setup is directly in PhysCommonConfig.

As things stand the following are missing:

  • migration of jets
  • taus/flavour tagging
  • trigger matching information

Without these last three items the version of PHYS produced by this MR clearly isn't yet usable for physics, but can be validated for the tracking, muon and e-gamma domains. For this reason the MR is being put in for merging now, to avoid it becoming too large, since the remaining work will probably involve touching at least as many files again.

The following items are marked "TODO" because it isn't clear yet how to deal with them in the component accumulator and/or ConfigFlags:

  • InDetFlags are being used in the inner detector configuration. With what should these be replaced? Specifically AddPseudoTracks, DecoLRTTTVA and MergeLRT
  • How should we handle the IsoTrackCones in the muon configuration?
  • How should we correctly determine and then flag the simulation flavour?
  • TruthMetaDataWriter fails due to missing /TagInfo

Consequently there are blocks of commented python corresponding to these items, which need to remain until we have solution (at which point they can be uncommented and migrated). I'll create JIRAs for these over the coming days.

Finally, the thinning machinery appears to be broken in CA (including in the example TEST3). I'll follow this up separately.

Edited by James Catmore

Merge request reports