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