Skip to content

Support for TruthTaus in R22 DAODs

Hello,

This MR imports from 21.2 the functionality to build truth taus when running on EVNT and xAODs. For the EVNT-based TruthTaus building, the only notable change in BuildTruthTaus is that retrieveTruthTaus no longer checks whether this is data (constness was causing trouble, apparently), the new behaviour is that this function will return FAILURE instead of SUCCESS, which makes more sense to me, as this tool should never run on data.

The TruthTaus collection is now enabled in MCTruthCommon.py, and in DAOD_PHYS as well.

I took this opportunity to import the smart slimming lists for DiTauJetsCP and DiTauJetsLowPt. Some functionality in TauCommon has also been imported from 21.2. The on-the-fly scheduling of DiTauJetsLowPt does not work yet, due to a missing dependency in DerivationFrameworkJetEtMiss/python/ExtendedJetCommon.py (addCHSPFlowObjects). Not sure if this workflow is supposed to be different in R22.

That's a follow-up of !33263 (merged) .

I've compared the truth taus built from EVNT in R21.2 and R22, using the same input file, and at first glance it looks good:

Py:diff-root      WARNING the following variables exist only in the old file !
Py:diff-root      WARNING  - [TruthTausAuxDyn.eta_vis_neutral]
Py:diff-root      WARNING  - [TruthTausAuxDyn.m_vis_neutral]
Py:diff-root      WARNING  - [EventInfoAuxDyn.actualInteractionsPerCrossing]
Py:diff-root      WARNING  - [TruthTausAuxDyn.pt_vis_neutral]
Py:diff-root      WARNING  - [EventInfoAuxDyn.averageInteractionsPerCrossing]
Py:diff-root      WARNING  - [TruthTausAuxDyn.phi_vis_neutral]

The truth neutral hadron momentum was not enabled by default in TauTruthCommon in R21.2 for DAOD_TRUTH formats, while it was in regular DAOD formats, so I switched this on in R22 for both cases.

Cheers, Bertrand

Edited by Bertrand Martin Dit Latour

Merge request reports