58 '''TrigTauPrecisionIDHypoTool configuration for the standard Tau triggers'''
59 name = chainDict[
'chainName']
60 chainPart = chainDict[
'chainParts'][0]
61 cuts = TauCuts(chainPart)
64 from AthenaConfiguration.ComponentFactory
import CompFactory
65 currentHypo = CompFactory.TrigTauPrecisionIDHypoTool(
68 NTracksMax=cuts.n_track_max,
69 NIsoTracksMax=cuts.n_iso_track_max,
73 from TriggerMenuMT.HLT.Tau.TauConfigurationTools
import getChainIDConfigName, getChainPrecisionSeqName, useBuiltInTauJetRNNScore, getPrecisionSequenceTauIDs, getTauIDScoreVariables
75 id_score_monitoring = {}
79 if identification
in [
'perf',
'idperf']:
80 if identification ==
'idperf':
81 currentHypo.AcceptAll =
True
84 used_builtin_rnnscore =
False
87 if tau_id
in [
'MesonCuts']:
continue
91 if used_builtin_rnnscore:
92 raise ValueError(
'Cannot have two TauID algorithms with scores stored in the built-in TauJet RNN score variables')
93 used_builtin_rnnscore =
True
101 currentHypo.IDMethod = 1
104 currentHypo.IDMethod = 2
105 currentHypo.IDWPNames = [f
'{identification}_{wp}' for wp
in getattr(flags.Trigger.Offline.Tau, identification).WPNames]
111 if chainPart[
'reconstruction'] ==
'tracktwoMVA':
112 currentHypo.TrackPtCut = 1.5*GeV
113 currentHypo.HighPtSelectionLooseIDThr = 200*GeV
114 currentHypo.HighPtSelectionJetThr = 430*GeV
117 if 'tauMon:online' in chainDict[
'monGroups']:
121 currentHypo.MonitoredIDScores = id_score_monitoring