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