Skip to content

ATLJETMET-1716: Make jet reconstruction easy in AthAnalysis

Dan Guest requested to merge dguest/athena:jets into main

This makes it possible to build jets in AthAnalysis. Nothing else will change.

I was told that it should be pretty simple to do this: there should just be one or two additional packages.

The code was clearly written to be built in AthAnalysis (there's a function called isAnalysisRelease, for example, that modifies the behavior slightly). But sadly just checking out JetRecConfig and JetRecTools doesn't quite do it. My guess is that in the time since someone last did this some tendrils have grown across packages. I expect that they will keep growing unless we put something in place to hold them back.

This MR makes a few changes to that end:

  • Add a few packages to AthAnalysis so that this functionality is regularly tested (and to save everyone the trouble of checking out and building the packages themselves)
  • Trim back some of the cross-package dependencies. The configuration for UsedInVertexFitTrackDecorator was in InDetConfig, for example, which is a huge configuration package with no hope of building outside Athena. I moved this configuration into the package where the C++ code lives and updated anything external that pointed to it. I had to do similar things for TrackVertexAssociationTool.

People who might be interested:

  • @mswiatlo, @bhodkins: Jet software and validation
  • @khoo, @delsart since they wrote this code (and TJ told me this shouldn't be too hard)
  • @boliu, @ligang (b-jet trigger), @miochoa, @pakontax (jet trigger): this should make it trivial to rebuild jets from AODs, which could speed up validation and development quite a bit.
  • @bdong, @ligang, @svanstro, @hartman from flavor tagging: being able to build jets from constituents could reduce the frequency with which we need to request derivations. Could also be useful for bottom up uncertainties.
Edited by Dan Guest

Merge request reports