ATLAS Offline Software
Loading...
Searching...
No Matches
GlobalL1TopoSimulation Namespace Reference

Functions

 GlobalL1TopoSimulationCfg (flags, algLogLevel=None)
 add_subsystems (subsystems, acc, args)

Variables

 logger = logging.getLogger(__name__)
 log = logging.getLogger('globalSim')
 algLogLevel = DEBUG
 parser
 nargs
 action
 dest
 help
 required
 default
 type
 args = parser.parse_args()
 flags = initConfigFlags()
 MaxEvents
 Files
 NumThreads
 NumConcurrentEvents
 SkipEvents
 AODFileName
 triggerMenuSetup
 AtlasVersion
 acc = MainServicesCfg(flags)
tuple subsystems = ('jFex', 'eFex')
 roib2topo
 OutputLevel
 sequenceName

Function Documentation

◆ add_subsystems()

GlobalL1TopoSimulation.add_subsystems ( subsystems,
acc,
args )

Definition at line 55 of file GlobalL1TopoSimulation.py.

55def add_subsystems(subsystems, acc, args):
56
57 decoderTools = []
58 outputEDM = []
59 maybeMissingRobs = []
60
61 from TrigT1ResultByteStream.TrigT1ResultByteStreamConfig import RoIBResultByteStreamToolCfg
62 roibResultTool = acc.popToolsAndMerge(RoIBResultByteStreamToolCfg(flags, name="RoIBResultBSDecoderTool", writeBS=False))
63 decoderTools += [roibResultTool]
64
65
66 for module_id in roibResultTool.L1TopoModuleIds:
67 maybeMissingRobs.append(int(SourceIdentifier(SubDetector.TDAQ_CALO_TOPO_PROC, module_id)))
68
69 for module_id in roibResultTool.JetModuleIds:
70 maybeMissingRobs.append(int(SourceIdentifier(SubDetector.TDAQ_CALO_JET_PROC_ROI, module_id)))
71
72 for module_id in roibResultTool.EMModuleIds:
73 maybeMissingRobs.append(int(SourceIdentifier(SubDetector.TDAQ_CALO_CLUSTER_PROC_ROI, module_id)))
74
75
76 def addEDM(edmType, edmName):
77 auxType = edmType.replace('Container','AuxContainer')
78 return [f'{edmType}#{edmName}', f'{auxType}#{edmName}Aux.']
79
80 if 'jFex' in subsystems:
81 from L1CaloFEXByteStream.L1CaloFEXByteStreamConfig import (
82 jFexRoiByteStreamToolCfg,jFexInputByteStreamToolCfg)
83
84
85 jFexTool = acc.popToolsAndMerge(jFexRoiByteStreamToolCfg(
86 flags, 'jFexBSDecoder', writeBS=False))
87
88 decoderTools += [jFexTool]
89 outputEDM += addEDM('xAOD::jFexSRJetRoIContainer',
90 jFexTool.jJRoIContainerWriteKey.Path)
91
92 outputEDM += addEDM('xAOD::jFexLRJetRoIContainer',
93 jFexTool.jLJRoIContainerWriteKey.Path)
94
95 outputEDM += addEDM('xAOD::jFexTauRoIContainer' ,
96 jFexTool.jTauRoIContainerWriteKey.Path)
97
98 outputEDM += addEDM('xAOD::jFexFwdElRoIContainer',
99 jFexTool.jEMRoIContainerWriteKey.Path)
100
101 outputEDM += addEDM('xAOD::jFexSumETRoIContainer',
102 jFexTool.jTERoIContainerWriteKey.Path)
103 outputEDM += addEDM('xAOD::jFexMETRoIContainer' ,
104 jFexTool.jXERoIContainerWriteKey.Path)
105 maybeMissingRobs += jFexTool.ROBIDs
106
107 if args.doCaloInput:
108
109 jFexInputByteStreamTool = acc.popToolsAndMerge(
110 jFexInputByteStreamToolCfg(flags,
111 'jFexInputBSDecoderTool',
112 writeBS=False))
113
114 decoderTools += [jFexInputByteStreamTool]
115 outputEDM += addEDM('xAOD::jFexTowerContainer',
116 jFexInputByteStreamTool.jTowersWriteKey.Path)
117 maybeMissingRobs += jFexInputByteStreamTool.ROBIDs
118
119 if 'eFex' in subsystems:
120 from L1CaloFEXByteStream.L1CaloFEXByteStreamConfig import (
121 eFexByteStreamToolCfg,)
122
123 eFexTool = acc.popToolsAndMerge(
124 eFexByteStreamToolCfg(flags,
125 'eFexBSDecoder',
126 writeBS=False,
127 decodeInputs=args.doCaloInput))
128
129 decoderTools += [eFexTool]
130 outputEDM += addEDM('xAOD::eFexEMRoIContainer',
131 eFexTool.eEMContainerWriteKey.Path)
132 outputEDM += addEDM('xAOD::eFexTauRoIContainer',
133 eFexTool.eTAUContainerWriteKey.Path)
134
135 if args.doCaloInput:
136 outputEDM += addEDM('xAOD::eFexTowerContainer',
137 eFexTool.eTowerContainerWriteKey.Path)
138
139 maybeMissingRobs += eFexTool.ROBIDs
140
141 if 'gFex' in subsystems:
142 from L1CaloFEXByteStream.L1CaloFEXByteStreamConfig import (
143 gFexByteStreamToolCfg,gFexInputByteStreamToolCfg,)
144
145 gFexTool = acc.popToolsAndMerge(gFexByteStreamToolCfg(
146 flags, 'gFexBSDecoder', writeBS=False))
147
148 decoderTools += [gFexTool]
149 outputEDM += addEDM(
150 'xAOD::gFexJetRoIContainer',
151 gFexTool.gFexRhoOutputContainerWriteKey.Path)
152
153 outputEDM += addEDM(
154 'xAOD::gFexJetRoIContainer',
155 gFexTool.gFexSRJetOutputContainerWriteKey.Path)
156
157 outputEDM += addEDM(
158 'xAOD::gFexJetRoIContainer',
159 gFexTool.gFexLRJetOutputContainerWriteKey.Path)
160
161 outputEDM += addEDM(
162 'xAOD::gFexGlobalRoIContainer',
163 gFexTool.gScalarEJwojOutputContainerWriteKey.Path)
164
165 outputEDM += addEDM(
166 'xAOD::gFexGlobalRoIContainer',
167 gFexTool.gMETComponentsJwojOutputContainerWriteKey.Path)
168
169 outputEDM += addEDM(
170 'xAOD::gFexGlobalRoIContainer',
171 gFexTool.gMHTComponentsJwojOutputContainerWriteKey.Path)
172
173 outputEDM += addEDM(
174 'xAOD::gFexGlobalRoIContainer',
175 gFexTool.gMSTComponentsJwojOutputContainerWriteKey.Path)
176
177 outputEDM += addEDM(
178 'xAOD::gFexGlobalRoIContainer',
179 gFexTool.gMETComponentsNoiseCutOutputContainerWriteKey.Path)
180
181 outputEDM += addEDM(
182 'xAOD::gFexGlobalRoIContainer',
183 gFexTool.gMETComponentsRmsOutputContainerWriteKey.Path)
184
185 outputEDM += addEDM(
186 'xAOD::gFexGlobalRoIContainer',
187 gFexTool.gScalarENoiseCutOutputContainerWriteKey.Path)
188
189 outputEDM += addEDM(
190 'xAOD::gFexGlobalRoIContainer',
191 gFexTool.gScalarERmsOutputContainerWriteKey.Path)
192
193 maybeMissingRobs += gFexTool.ROBIDs
194
195 if args.doCaloInput:
196 gFexInputByteStreamTool = acc.popToolsAndMerge(
197 gFexInputByteStreamToolCfg(
198 flags, 'gFexInputByteStreamTool', writeBS=False))
199
200 decoderTools += [gFexInputByteStreamTool]
201 outputEDM += addEDM('xAOD::gFexTowerContainer',
202 gFexInputByteStreamTool.gTowersWriteKey.Path)
203
204 maybeMissingRobs += gFexInputByteStreamTool.ROBIDs
205
206 decoderAlg = CompFactory.L1TriggerByteStreamDecoderAlg(
207 name="L1TriggerByteStreamDecoder",
208 DecoderTools=decoderTools,
209 MaybeMissingROBs=maybeMissingRobs,
210 OutputLevel=algLogLevel)
211
212 from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
213 log.debug('Adding the following output EDM to ItemList: %s', outputEDM)
214
215 acc.addEventAlgo(decoderAlg, sequenceName='AthAlgSeq')
216
217 acc.merge(OutputStreamCfg(flags, 'AOD', ItemList=outputEDM))
218
219

◆ GlobalL1TopoSimulationCfg()

GlobalL1TopoSimulation.GlobalL1TopoSimulationCfg ( flags,
algLogLevel = None )

Definition at line 18 of file GlobalL1TopoSimulation.py.

18def GlobalL1TopoSimulationCfg(flags, algLogLevel = None):
19
20 acc = ComponentAccumulator()
21
22 if algLogLevel is None:
23 algLogLevel = flags.Exec.OutputLevel
24
25 globalSimAlg = CompFactory.GlobalSim.GlobalSimulationAlg("GlobalL1TopoSim")
26 globalSimAlg.OutputLevel = algLogLevel
27
28 if 'GSDEBUG' in os.environ:
29 globalSimAlg.enableDumps = True
30
31 # for now, only run a small sub graph corresponding to
32 # existing L1Topo Algorithms.
33 root_names = [
34 'SC111-CjJ40abpETA26',
35 '0DR03-eEM9ab-CjJ40ab',
36 'Mult_jXESPARE8', # cTauMultiplicity COUNT
37 'Mult_cTAU30M',
38 'Mult_cTAU35M',
39 'Mult_cTAUSPARE2',
40 ]
41
42 alg_data_list = algdata_from_menu(flags, root_names=root_names, do_dot=True)
43 logger.info("number of alg_data " + str(len(alg_data_list)))
44
45 [globalSimAlg.globalsim_algs.append(toolFromAlgData(flags, ad)) for
46 ad in alg_data_list]
47
48 acc.addEventAlgo(globalSimAlg)
49
50 from TriggerJobOpts.TriggerHistSvcConfig import TriggerHistSvcConfig
51 acc.merge(TriggerHistSvcConfig(flags))
52
53 return acc
54

Variable Documentation

◆ acc

GlobalL1TopoSimulation.acc = MainServicesCfg(flags)

Definition at line 309 of file GlobalL1TopoSimulation.py.

◆ action

GlobalL1TopoSimulation.action

Definition at line 241 of file GlobalL1TopoSimulation.py.

◆ algLogLevel

GlobalL1TopoSimulation.algLogLevel = DEBUG

Definition at line 228 of file GlobalL1TopoSimulation.py.

◆ AODFileName

GlobalL1TopoSimulation.AODFileName

Definition at line 297 of file GlobalL1TopoSimulation.py.

◆ args

GlobalL1TopoSimulation.args = parser.parse_args()

Definition at line 276 of file GlobalL1TopoSimulation.py.

◆ AtlasVersion

GlobalL1TopoSimulation.AtlasVersion

Definition at line 300 of file GlobalL1TopoSimulation.py.

◆ default

GlobalL1TopoSimulation.default

Definition at line 253 of file GlobalL1TopoSimulation.py.

◆ dest

GlobalL1TopoSimulation.dest

Definition at line 242 of file GlobalL1TopoSimulation.py.

◆ Files

GlobalL1TopoSimulation.Files

Definition at line 288 of file GlobalL1TopoSimulation.py.

◆ flags

GlobalL1TopoSimulation.flags = initConfigFlags()

Definition at line 282 of file GlobalL1TopoSimulation.py.

◆ help

GlobalL1TopoSimulation.help

Definition at line 243 of file GlobalL1TopoSimulation.py.

◆ log

GlobalL1TopoSimulation.log = logging.getLogger('globalSim')

Definition at line 226 of file GlobalL1TopoSimulation.py.

◆ logger

GlobalL1TopoSimulation.logger = logging.getLogger(__name__)

Definition at line 12 of file GlobalL1TopoSimulation.py.

◆ MaxEvents

GlobalL1TopoSimulation.MaxEvents

Definition at line 285 of file GlobalL1TopoSimulation.py.

◆ nargs

GlobalL1TopoSimulation.nargs

Definition at line 240 of file GlobalL1TopoSimulation.py.

◆ NumConcurrentEvents

GlobalL1TopoSimulation.NumConcurrentEvents

Definition at line 294 of file GlobalL1TopoSimulation.py.

◆ NumThreads

GlobalL1TopoSimulation.NumThreads

Definition at line 293 of file GlobalL1TopoSimulation.py.

◆ OutputLevel

GlobalL1TopoSimulation.OutputLevel

Definition at line 328 of file GlobalL1TopoSimulation.py.

◆ parser

GlobalL1TopoSimulation.parser
Initial value:
1= argparse.ArgumentParser(
2 "Running L1TopoSimulation standalone for the BS input",
3 formatter_class=RawTextHelpFormatter)

Definition at line 233 of file GlobalL1TopoSimulation.py.

◆ required

GlobalL1TopoSimulation.required

Definition at line 244 of file GlobalL1TopoSimulation.py.

◆ roib2topo

GlobalL1TopoSimulation.roib2topo
Initial value:
1= CompFactory.LVL1.RoiB2TopoInputDataCnv(
2 name='RoiB2TopoInputDataCnv')

Definition at line 325 of file GlobalL1TopoSimulation.py.

◆ sequenceName

GlobalL1TopoSimulation.sequenceName

Definition at line 329 of file GlobalL1TopoSimulation.py.

◆ SkipEvents

GlobalL1TopoSimulation.SkipEvents

Definition at line 295 of file GlobalL1TopoSimulation.py.

◆ subsystems

tuple GlobalL1TopoSimulation.subsystems = ('jFex', 'eFex')

Definition at line 319 of file GlobalL1TopoSimulation.py.

◆ triggerMenuSetup

GlobalL1TopoSimulation.triggerMenuSetup

Definition at line 298 of file GlobalL1TopoSimulation.py.

◆ type

GlobalL1TopoSimulation.type

Definition at line 259 of file GlobalL1TopoSimulation.py.