Skip to content

DerivationFrameworkJetEtMiss, DerivationFrameworkHiggs: Fixes for decoration locking and overlap removal.

The overlap removal algorithm does not lock the decorations it produces. We need them locked, but doing that inside the algorithm is problematic because the algorithm gets scheduled multiple times, each overwriting results from the previous instance.

We were previously dealing with this by scheduling an explicit LockDecorations algorithm after the two overlap removal instances scheduled in JetCommonConfig.

However, the HIGG1D1 derivation later schedules yet another instance of overlap removal. This was failing because the decorations were locked by then.

In order to make this work, we need to group all the overlap removal algorithms together, followed by LockDecorations algorithms to lock all the produced decorations.

We accomplish this by introducing two sequences, EventCleanSeq and EventCleanLockSeq. The event cleaning algorithms get added to the first the the decoration locking algorithm gets added to the second.

By default, these sequences are added to the top algorithm sequence when we process JetCommonConfig.AddEventCleanFlagsCfg. But when HIGG1D1 wants to add its additional overlap removal, it puts the overlap removal and decoration locking algorithms in the same sequence and then reorders the algorithm sequence so that these sequences come at the end. This then gets everything in a workable order.

Needless to say, the overlap removal algorithm needs some redesign to have any hope of running safely in a MT job.

See ATLASG-2813.

Merge request reports

Loading