ATLAS Offline Software
TauMonitoringConfig.py
Go to the documentation of this file.
1 #
2 # Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 #
4 
5 def TauMonitoringConfig(flags):
6  from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
7  result = ComponentAccumulator()
8 
9  # the following should not run in RAW to ESD, if we're in two-step
10  if flags.DQ.Environment != 'tier0Raw':
11 
12  # We need the TauID inference to run first
13  from AthenaCommon.CFElements import seqAND
14  seq_name = 'TauMonitoringSeq'
15  result.addSequence(seqAND(seq_name))
16 
17  # Schedule the offline GNTau inference when running from AOD (GNTau is now transiently available in RAWtoALL)
18  if flags.DQ.Environment == 'AOD':
19  TauContainerCopy = 'TMTauJets'
20 
21  from tauRec.TauToolHolder import TauVertexedClusterDecoratorCfg, TauGNNEvaluatorCfg, TauWPDecoratorGNNCfg
22  tool_accs = [
24  TauGNNEvaluatorCfg(flags, 0, tauContainerName=TauContainerCopy),
25  TauWPDecoratorGNNCfg(flags, 0, TauContainerCopy),
26  ]
27 
28  tools = []
29  for tool_acc in tool_accs:
30  tools.append(tool_acc.popPrivateTools())
31  tools[-1].inAOD = True
32  result.merge(tool_acc, seq_name)
33  result.addPublicTool(tools[-1])
34 
35  from AthenaConfiguration.ComponentFactory import CompFactory
36  result.addEventAlgo(CompFactory.TauAODRunnerAlg(
37  name='TauMonitoring_TauJets_TauIDDecorator',
38  Key_tauContainer='TauJets',
39  Key_pi0ClusterInputContainer='',
40  Key_tauOutputContainer=TauContainerCopy,
41  Key_pi0OutputContainer='',
42  Key_neutralPFOOutputContainer='',
43  Key_chargedPFOOutputContainer='',
44  Key_hadronicPFOOutputContainer='',
45  Key_tauTrackOutputContainer='',
46  Key_vertexOutputContainer='',
47  officialTools=tools,
48  ), sequenceName=seq_name)
49 
50  from .tauMonitorAlgorithm import tauMonitoringConfig
51 
52  if flags.DQ.Environment == 'AOD':
53  offline_taujets = 'TMTauJets'
54  else:
55  offline_taujets = 'TauJets'
56 
57  result.merge(tauMonitoringConfig(flags,tauContainer=offline_taujets))
58 
59 
60 
61  return result
TauToolHolder.TauVertexedClusterDecoratorCfg
def TauVertexedClusterDecoratorCfg(flags)
Definition: TauToolHolder.py:132
tauMonitorAlgorithm.tauMonitoringConfig
def tauMonitoringConfig(inputFlags, tauContainer='TauJets', **kwargs)
Definition: tauMonitorAlgorithm.py:12
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
TauToolHolder.TauGNNEvaluatorCfg
def TauGNNEvaluatorCfg(flags, version=0, applyLooseTrackSel=False, applyTightTrackSel=False, tauContainerName="")
Definition: TauToolHolder.py:732
TauToolHolder.TauWPDecoratorGNNCfg
def TauWPDecoratorGNNCfg(flags, version, tauContainerName="")
Definition: TauToolHolder.py:760
TauMonitoringConfig.TauMonitoringConfig
def TauMonitoringConfig(flags)
Definition: TauMonitoringConfig.py:5
python.CFElements.seqAND
def seqAND(name, subs=[])
Definition: CFElements.py:25