Skip to content

Update TrackCaloCluster tools to allow creation of UFO (== TCC created from PFlow objects)

Pierre Antoine Delsart requested to merge delsart/athena:ufoRecoDevel into 21.2

There are many changes, so I'll cc the main authors of TCC code @ncalace, @rjansky, @sschramm and authors of UFO code @jroloff and @dportill

The goal of this MR is to add code enabling the building of UFO objects in the TCC packages. The changes here brings a lot of code re-organization : this was necessary to factorize common code between TCC and UFO building and also allows to make the future migration to master & athena MT easier (ex: use of private tools, prefer uing algs rather than tools when possible).

The physics algorithms for TCC have not changed, and all my tests so far have shown results 100% identical with the original code. I'll remove the WIP flags if/when we have agreed these changes are ok and final tests also show identical results.

Some details about the changes :

  • a new TrackCaloClusterInfo object is introduced. Its purpose is to hold all the necessary info to build TCC or UFO : maps of weights and original track, cluster and vertex containers. It's transient only (can be put in the evtStore)
  • new AthenaAlgs to build TrackCaloClusterInfo : one for TCC one for UFO. They replaces the previous weight creator tool and they are TrackCaloClusterInfoAlg and TrackCaloClusterInfoUFOAlg
  • new interface for tools building TrackCaloCluster objects : ITrackCaloClusterTool. Tools inheriting it are tasked to build one specific "taste" of TCC or UFO.
  • new AthenaAlg to drive the creation the creation TCC or UFO object by calling a sequence of ITrackCaloClusterTool (TrackCaloClusterAlg) and passing them the TrackCaloClusterInfo created by previous TrackCaloClusterInfoAlg
  • a few Athena AlgTools implementing the ITrackCaloClusterTool interface.
  • The original algs and tools have been removed to avoid confusion with the new ones

As there are a lot of change, I'm very open to discussion. Please do not hesitate to comment or suggest changes !

Edited by Binish Batool

Merge request reports