ATLJETMET-1716: Make jet reconstruction easy in AthAnalysis
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 inInDetConfig
, 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 forTrackVertexAssociationTool
.
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