ATLAS Offline Software
Loading...
Searching...
No Matches
python.ISF_MainConfig Namespace Reference

Functions

 Kernel_GenericSimulatorMTCfg (flags, name="ISF_Kernel_GenericSimulatorMT", **kwargs)
 Kernel_GenericSimulatorNoG4MTCfg (flags, name="ISF_Kernel_GenericSimulatorNoG4MT", **kwargs)
 Kernel_GenericG4OnlyMTCfg (flags, name="ISF_Kernel_GenericG4OnlyMT", **kwargs)
 Kernel_FullG4MTCfg (flags, name="ISF_Kernel_FullG4MT", **kwargs)
 Kernel_FullG4MT_QSCfg (flags, name="ISF_Kernel_FullG4MT_QS", **kwargs)
 Kernel_PassBackG4MTCfg (flags, name="ISF_Kernel_PassBackG4MT", **kwargs)
 Kernel_ATLFAST3MTCfg (flags, name="ISF_Kernel_ATLFAST3MT", **kwargs)
 Kernel_ATLFAST3MT_QSCfg (flags, name="ISF_Kernel_ATLFAST3MT_QS", **kwargs)
 Kernel_GenericSimulatorCfg (flags, name="ISF_Kernel_GenericSimulator", **kwargs)
 Kernel_ATLFAST3F_G4MSCfg (flags, name="ISF_Kernel_ATLFAST3F_G4MS", **kwargs)
 Kernel_ATLFAST3F_ACTSMTCfg (flags, name="ISF_Kernel_ATLFAST3F_ACTSMT", **kwargs)
 Kernel_CosmicsG4Cfg (flags, name="ISF_Kernel_CosmicsG4", **kwargs)
 ISF_KernelCfg (flags)

Variables

 AthSequencer = CompFactory.AthSequencer

Detailed Description

Main ISF tools configuration with ComponentAccumulator

Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration

Function Documentation

◆ ISF_KernelCfg()

python.ISF_MainConfig.ISF_KernelCfg ( flags)

Definition at line 368 of file ISF_MainConfig.py.

368def ISF_KernelCfg(flags):
369 cfg = ComponentAccumulator()
370 # Write MetaData container
371 cfg.merge(writeSimulationParametersMetadata(flags))
372 # Also allow reading it
373 cfg.merge(readSimulationParameters(flags)) # for FileMetaData creation
374
375 from SimulationConfig.SimEnums import SimulationFlavour
376 if flags.Sim.ISF.Simulator is SimulationFlavour.FullG4MT:
377 cfg.merge(Kernel_FullG4MTCfg(flags))
378 elif flags.Sim.ISF.Simulator is SimulationFlavour.FullG4MT_QS:
379 cfg.merge(Kernel_FullG4MT_QSCfg(flags))
380 elif flags.Sim.ISF.Simulator is SimulationFlavour.PassBackG4MT:
381 cfg.merge(Kernel_PassBackG4MTCfg(flags))
382 elif flags.Sim.ISF.Simulator is SimulationFlavour.ATLFAST3MT:
383 cfg.merge(Kernel_ATLFAST3MTCfg(flags))
384 elif flags.Sim.ISF.Simulator is SimulationFlavour.ATLFAST3MT_QS:
385 cfg.merge(Kernel_ATLFAST3MT_QSCfg(flags))
386 elif flags.Sim.ISF.Simulator is SimulationFlavour.ATLFAST3F_G4MS:
387 cfg.merge(Kernel_ATLFAST3F_G4MSCfg(flags))
388 elif flags.Sim.ISF.Simulator is SimulationFlavour.ATLFAST3F_ACTSMT:
389 cfg.merge(Kernel_ATLFAST3F_ACTSMTCfg(flags))
390 elif flags.Sim.ISF.Simulator is SimulationFlavour.CosmicsG4:
391 cfg.merge(Kernel_CosmicsG4Cfg(flags))
392 else:
393 raise ValueError('Unknown Simulator set, bailing out')
394
395 return cfg

◆ Kernel_ATLFAST3F_ACTSMTCfg()

python.ISF_MainConfig.Kernel_ATLFAST3F_ACTSMTCfg ( flags,
name = "ISF_Kernel_ATLFAST3F_ACTSMT",
** kwargs )

Definition at line 307 of file ISF_MainConfig.py.

307def Kernel_ATLFAST3F_ACTSMTCfg(flags, name="ISF_Kernel_ATLFAST3F_ACTSMT", **kwargs):
308 acc = ComponentAccumulator()
309 kwargs.setdefault("ParticleOrderingTool", acc.popToolsAndMerge(ParticleOrderingToolCfg(flags)))
310
311 kwargs.setdefault("EntryLayerTool", acc.addPublicTool(acc.popToolsAndMerge(ATLFAST_EntryLayerToolMTCfg(flags)))) # public ToolHandle
312 acc.merge(Kernel_GenericSimulatorMTCfg(flags, name, **kwargs)) # Workaround
313
314 # BeamPipeSimulationSelectors
315 defPartKillerSelector = acc.addPublicTool(acc.popToolsAndMerge(DefaultParticleKillerSelectorCfg(flags)))
316 kwargs.setdefault("BeamPipeSimulationSelectors", [ defPartKillerSelector ])
317 # IDSimulationSelectors
318 kwargs.setdefault("IDSimulationSelectors", [
319 acc.addPublicTool(acc.popToolsAndMerge(DefaultActsSelectorCfg(flags))),
320 defPartKillerSelector
321 ])
322 # CaloSimulationSelectors
323 kwargs.setdefault("CaloSimulationSelectors", [
324 acc.addPublicTool(acc.popToolsAndMerge(MuonATLFAST_Geant4SelectorCfg(flags))),
325 acc.addPublicTool(acc.popToolsAndMerge(EtaGreater5ParticleKillerSimSelectorCfg(flags))),
326 acc.addPublicTool(acc.popToolsAndMerge(PionATLFAST_Geant4SelectorCfg(flags))),
327 acc.addPublicTool(acc.popToolsAndMerge(ProtonATLFAST_Geant4SelectorCfg(flags))),
328 acc.addPublicTool(acc.popToolsAndMerge(NeutronATLFAST_Geant4SelectorCfg(flags))),
329 acc.addPublicTool(acc.popToolsAndMerge(ChargedKaonATLFAST_Geant4SelectorCfg(flags))),
330 acc.addPublicTool(acc.popToolsAndMerge(KLongATLFAST_Geant4SelectorCfg(flags))),
331 acc.addPublicTool(acc.popToolsAndMerge(DefaultFastCaloSimV2SelectorCfg(flags)))
332 ])
333 # MSSimulationSelectors
334 kwargs.setdefault("MSSimulationSelectors", [ acc.addPublicTool(acc.popToolsAndMerge(DefaultATLFAST_Geant4SelectorCfg(flags))) ])
335 # CavernSimulationSelectors
336 kwargs.setdefault("CavernSimulationSelectors", [ defPartKillerSelector ])
337
338 from ISF_FastCaloSimServices.ISF_FastCaloSimServicesConfig import FastCaloSimV2ToolCfg
339 from ISF_ActsTools.ISF_ActsToolsConfig import ActsFatrasSimToolCfg
340 kwargs.setdefault("SimulationTools", [
341 acc.popToolsAndMerge(ActsFatrasSimToolCfg(flags)),
342 acc.popToolsAndMerge(ParticleKillerToolCfg(flags)),
343 acc.popToolsAndMerge(FastCaloSimV2ToolCfg(flags)),
344 acc.popToolsAndMerge(ATLFAST_Geant4ToolCfg(flags))
345 ])
346
347 acc.merge(Kernel_GenericSimulatorMTCfg(flags, name, **kwargs))
348 return acc
349
350

◆ Kernel_ATLFAST3F_G4MSCfg()

python.ISF_MainConfig.Kernel_ATLFAST3F_G4MSCfg ( flags,
name = "ISF_Kernel_ATLFAST3F_G4MS",
** kwargs )

Definition at line 283 of file ISF_MainConfig.py.

283def Kernel_ATLFAST3F_G4MSCfg(flags, name="ISF_Kernel_ATLFAST3F_G4MS", **kwargs):
284 acc = ComponentAccumulator()
285 acc.merge(Kernel_GenericSimulatorCfg(flags, name, **kwargs)) # Force the SimKernel to be before the CollectionMerger by adding it here
286
287 kwargs.setdefault("BeamPipeSimulationSelectors", [ acc.addPublicTool(acc.popToolsAndMerge(DefaultParticleKillerSelectorCfg(flags))) ])
288 kwargs.setdefault("IDSimulationSelectors", [ acc.addPublicTool(acc.popToolsAndMerge(DefaultFatrasSelectorCfg(flags))) ])
289 kwargs.setdefault("CaloSimulationSelectors", [
290 acc.addPublicTool(acc.popToolsAndMerge(MuonATLFAST_Geant4SelectorCfg(flags))),
291 acc.addPublicTool(acc.popToolsAndMerge(EtaGreater5ParticleKillerSimSelectorCfg(flags))),
292 acc.addPublicTool(acc.popToolsAndMerge(PionATLFAST_Geant4SelectorCfg(flags))),
293 acc.addPublicTool(acc.popToolsAndMerge(ProtonATLFAST_Geant4SelectorCfg(flags))),
294 acc.addPublicTool(acc.popToolsAndMerge(NeutronATLFAST_Geant4SelectorCfg(flags))),
295 acc.addPublicTool(acc.popToolsAndMerge(ChargedKaonATLFAST_Geant4SelectorCfg(flags))),
296 acc.addPublicTool(acc.popToolsAndMerge(KLongATLFAST_Geant4SelectorCfg(flags))),
297 acc.addPublicTool(acc.popToolsAndMerge(DefaultFastCaloSimV2SelectorCfg(flags)))
298 ])
299 kwargs.setdefault("MSSimulationSelectors", [ acc.addPublicTool(acc.popToolsAndMerge(DefaultATLFAST_Geant4SelectorCfg(flags))) ])
300 kwargs.setdefault("CavernSimulationSelectors", [ acc.addPublicTool(acc.popToolsAndMerge(DefaultParticleKillerSelectorCfg(flags))) ])
301 #simFlags.SimulationFlavour = "ATLFAST3F_G4MS" # not migrated
302
303 acc.merge(Kernel_GenericSimulatorCfg(flags, name, **kwargs)) # Merge properly configured SimKernel here and let deduplication sort it out.
304 return acc
305
306

◆ Kernel_ATLFAST3MT_QSCfg()

python.ISF_MainConfig.Kernel_ATLFAST3MT_QSCfg ( flags,
name = "ISF_Kernel_ATLFAST3MT_QS",
** kwargs )

Definition at line 208 of file ISF_MainConfig.py.

208def Kernel_ATLFAST3MT_QSCfg(flags, name="ISF_Kernel_ATLFAST3MT_QS", **kwargs):
209 acc = ComponentAccumulator()
210 kwargs.setdefault("ParticleOrderingTool", acc.popToolsAndMerge(ParticleOrderingToolCfg(flags)))
211
212 kwargs.setdefault("EntryLayerTool", acc.addPublicTool(acc.popToolsAndMerge(ATLFAST_EntryLayerToolMTCfg(flags)))) # public ToolHandle
213 acc.merge(Kernel_GenericSimulatorMTCfg(flags, name, **kwargs)) # Workaround
214
215 # BeamPipe, ID, MS Simulation Selectors
216 defaultG4SelectorRegions = set(["BeamPipeSimulationSelectors", "IDSimulationSelectors", "MSSimulationSelectors"])
217 if defaultG4SelectorRegions - kwargs.keys(): # i.e. if any of these have not been defined yet
218 pubTool = acc.addPublicTool(acc.popToolsAndMerge(DefaultATLFAST_Geant4SelectorCfg(flags)))
219 kwargs.setdefault("BeamPipeSimulationSelectors", [pubTool])
220 kwargs.setdefault("IDSimulationSelectors", [pubTool])
221 kwargs.setdefault("MSSimulationSelectors", [pubTool])
222
223 # CaloSimulationSelectors
224 kwargs.setdefault("CaloSimulationSelectors", [
225 acc.addPublicTool(acc.popToolsAndMerge(MuonATLFAST_Geant4SelectorCfg(flags))),
226 acc.addPublicTool(acc.popToolsAndMerge(EtaGreater5ParticleKillerSimSelectorCfg(flags))),
227 acc.addPublicTool(acc.popToolsAndMerge(PionATLFAST_Geant4SelectorCfg(flags))),
228 acc.addPublicTool(acc.popToolsAndMerge(ProtonATLFAST_Geant4SelectorCfg(flags))),
229 acc.addPublicTool(acc.popToolsAndMerge(NeutronATLFAST_Geant4SelectorCfg(flags))),
230 acc.addPublicTool(acc.popToolsAndMerge(ChargedKaonATLFAST_Geant4SelectorCfg(flags))),
231 acc.addPublicTool(acc.popToolsAndMerge(KLongATLFAST_Geant4SelectorCfg(flags))),
232 acc.addPublicTool(acc.popToolsAndMerge(DefaultFastCaloSimV2SelectorCfg(flags)))
233 ])
234
235 # CavernSimulationSelectors
236 kwargs.setdefault("CavernSimulationSelectors",
237 [ acc.addPublicTool(acc.popToolsAndMerge(DefaultParticleKillerSelectorCfg(flags))) ])
238
239 from ISF_FastCaloSimServices.ISF_FastCaloSimServicesConfig import FastCaloSimV2ToolCfg
240 kwargs.setdefault("SimulationTools", [ acc.popToolsAndMerge(ParticleKillerToolCfg(flags)),
241 acc.popToolsAndMerge(FastCaloSimV2ToolCfg(flags)),
242 acc.popToolsAndMerge(ATLFAST_Geant4ToolCfg(flags)) ])
243 acc.merge(Kernel_GenericSimulatorMTCfg(flags, name, **kwargs))
244 return acc
245
246
STL class.

◆ Kernel_ATLFAST3MTCfg()

python.ISF_MainConfig.Kernel_ATLFAST3MTCfg ( flags,
name = "ISF_Kernel_ATLFAST3MT",
** kwargs )

Definition at line 167 of file ISF_MainConfig.py.

167def Kernel_ATLFAST3MTCfg(flags, name="ISF_Kernel_ATLFAST3MT", **kwargs):
168 acc = ComponentAccumulator()
169 kwargs.setdefault("ParticleOrderingTool", acc.popToolsAndMerge(ParticleOrderingToolCfg(flags)))
170
171 kwargs.setdefault("EntryLayerTool", acc.addPublicTool(acc.popToolsAndMerge(ATLFAST_EntryLayerToolMTCfg(flags)))) # public ToolHandle
172 acc.merge(Kernel_GenericSimulatorMTCfg(flags, name, **kwargs)) # Workaround
173
174 # BeamPipe, ID, MS Simulation Selectors
175 defaultG4SelectorRegions = set(["BeamPipeSimulationSelectors", "IDSimulationSelectors", "MSSimulationSelectors"])
176 if defaultG4SelectorRegions - kwargs.keys(): # i.e. if any of these have not been defined yet
177 pubTool = acc.addPublicTool(acc.popToolsAndMerge(DefaultATLFAST_Geant4SelectorCfg(flags)))
178 kwargs.setdefault("BeamPipeSimulationSelectors", [pubTool])
179 kwargs.setdefault("IDSimulationSelectors", [pubTool])
180 kwargs.setdefault("MSSimulationSelectors", [pubTool])
181
182 # CaloSimulationSelectors
183 kwargs.setdefault("CaloSimulationSelectors", [
184 acc.addPublicTool(acc.popToolsAndMerge(MuonATLFAST_Geant4SelectorCfg(flags))),
185 acc.addPublicTool(acc.popToolsAndMerge(EtaGreater5ParticleKillerSimSelectorCfg(flags))),
186 acc.addPublicTool(acc.popToolsAndMerge(PionATLFAST_Geant4SelectorCfg(flags))),
187 acc.addPublicTool(acc.popToolsAndMerge(ProtonATLFAST_Geant4SelectorCfg(flags))),
188 acc.addPublicTool(acc.popToolsAndMerge(NeutronATLFAST_Geant4SelectorCfg(flags))),
189 acc.addPublicTool(acc.popToolsAndMerge(ChargedKaonATLFAST_Geant4SelectorCfg(flags))),
190 acc.addPublicTool(acc.popToolsAndMerge(KLongATLFAST_Geant4SelectorCfg(flags))),
191 acc.addPublicTool(acc.popToolsAndMerge(DefaultFastCaloSimV2SelectorCfg(flags)))
192 ])
193
194 # CavernSimulationSelectors
195 kwargs.setdefault("CavernSimulationSelectors", [ acc.addPublicTool(acc.popToolsAndMerge(DefaultParticleKillerSelectorCfg(flags))) ])
196
197 from ISF_FastCaloSimServices.ISF_FastCaloSimServicesConfig import FastCaloSimV2ToolCfg
198 kwargs.setdefault("SimulationTools", [
199 acc.popToolsAndMerge(ParticleKillerToolCfg(flags)),
200 acc.popToolsAndMerge(FastCaloSimV2ToolCfg(flags)),
201 acc.popToolsAndMerge(ATLFAST_Geant4ToolCfg(flags))
202 ])
203
204 acc.merge(Kernel_GenericSimulatorMTCfg(flags, name, **kwargs))
205 return acc
206
207

◆ Kernel_CosmicsG4Cfg()

python.ISF_MainConfig.Kernel_CosmicsG4Cfg ( flags,
name = "ISF_Kernel_CosmicsG4",
** kwargs )

Definition at line 351 of file ISF_MainConfig.py.

351def Kernel_CosmicsG4Cfg(flags, name="ISF_Kernel_CosmicsG4", **kwargs):
352 acc = ComponentAccumulator()
353 from ISF_Tools.ISF_ToolsConfig import CosmicEventFilterToolCfg
354 kwargs.setdefault("EventFilterTools" , [ acc.addPublicTool(acc.popToolsAndMerge(CosmicEventFilterToolCfg(flags))) ] )
355 kwargs.setdefault("ParticleBroker", acc.getPrimaryAndMerge(ParticleBrokerSvcNoOrderingCfg(flags)))
356 kwargs.setdefault("MaximumParticleVectorSize" , 1000000)
357 pubTool = acc.addPublicTool(acc.popToolsAndMerge(FullGeant4SelectorCfg(flags)))
358 kwargs.setdefault("BeamPipeSimulationSelectors" , [ pubTool ] )
359 kwargs.setdefault("IDSimulationSelectors" , [ pubTool ] )
360 kwargs.setdefault("CaloSimulationSelectors" , [ pubTool ] )
361 kwargs.setdefault("MSSimulationSelectors" , [ pubTool ] )
362 kwargs.setdefault("CavernSimulationSelectors" , [ pubTool ] )
363 kwargs.setdefault("DoMemoryMonitoring", False)
364 acc.merge(Kernel_GenericSimulatorCfg(flags, name, **kwargs)) # Merge properly configured SimKernel here and let deduplication sort it out.
365 return acc
366
367

◆ Kernel_FullG4MT_QSCfg()

python.ISF_MainConfig.Kernel_FullG4MT_QSCfg ( flags,
name = "ISF_Kernel_FullG4MT_QS",
** kwargs )

Definition at line 126 of file ISF_MainConfig.py.

126def Kernel_FullG4MT_QSCfg(flags, name="ISF_Kernel_FullG4MT_QS", **kwargs):
127 acc = ComponentAccumulator()
128
129 kwargs.setdefault("SimulationTools", [
130 acc.popToolsAndMerge(ParticleKillerToolCfg(flags)),
131 acc.popToolsAndMerge(FullGeant4ToolCfg(flags))
132 ]) #private ToolHandleArray
133
134 acc.merge(Kernel_GenericG4OnlyMTCfg(flags, name, **kwargs))
135 return acc
136
137

◆ Kernel_FullG4MTCfg()

python.ISF_MainConfig.Kernel_FullG4MTCfg ( flags,
name = "ISF_Kernel_FullG4MT",
** kwargs )

Definition at line 113 of file ISF_MainConfig.py.

113def Kernel_FullG4MTCfg(flags, name="ISF_Kernel_FullG4MT", **kwargs):
114 acc = ComponentAccumulator()
115
116 if "SimulationTools" not in kwargs:
117 kwargs.setdefault("SimulationTools", [
118 acc.popToolsAndMerge(ParticleKillerToolCfg(flags)),
119 acc.popToolsAndMerge(FullGeant4ToolCfg(flags))
120 ]) #private ToolHandleArray
121
122 acc.merge(Kernel_GenericG4OnlyMTCfg(flags, name, **kwargs))
123 return acc
124
125

◆ Kernel_GenericG4OnlyMTCfg()

python.ISF_MainConfig.Kernel_GenericG4OnlyMTCfg ( flags,
name = "ISF_Kernel_GenericG4OnlyMT",
** kwargs )

Definition at line 92 of file ISF_MainConfig.py.

92def Kernel_GenericG4OnlyMTCfg(flags, name="ISF_Kernel_GenericG4OnlyMT", **kwargs):
93 acc = ComponentAccumulator()
94
95 defaultG4SelectorRegions = set(["BeamPipeSimulationSelectors", "IDSimulationSelectors", "CaloSimulationSelectors", "MSSimulationSelectors"])
96 if flags.Detector.GeometryCavern:
97 # If we are simulating the cavern then we want to use the FullGeant4Selector here too
98 defaultG4SelectorRegions.add("CavernSimulationSelectors")
99 if defaultG4SelectorRegions - kwargs.keys(): # i.e. if any of these have not been defined yet
100 pubTool = acc.addPublicTool(acc.popToolsAndMerge(FullGeant4SelectorCfg(flags)))
101 # SimulationSelectors are still public ToolHandleArrays currently
102 for selectorRegion in defaultG4SelectorRegions:
103 kwargs.setdefault(selectorRegion, [pubTool])
104
105 if "CavernSimulationSelectors" not in kwargs:
106 kwargs.setdefault("CavernSimulationSelectors",
107 [acc.addPublicTool(acc.popToolsAndMerge(DefaultParticleKillerSelectorCfg(flags)))])
108
109 acc.merge(Kernel_GenericSimulatorMTCfg(flags, name, **kwargs))
110 return acc
111
112

◆ Kernel_GenericSimulatorCfg()

python.ISF_MainConfig.Kernel_GenericSimulatorCfg ( flags,
name = "ISF_Kernel_GenericSimulator",
** kwargs )

Definition at line 247 of file ISF_MainConfig.py.

247def Kernel_GenericSimulatorCfg(flags, name="ISF_Kernel_GenericSimulator", **kwargs):
248 acc = ComponentAccumulator()
249 kwargs.setdefault("UseShadowEvent", flags.Sim.UseShadowEvent)
250 if flags.Sim.UseShadowEvent and "TruthPreselectionTool" not in kwargs:
251 from ISF_HepMC_Tools.ISF_HepMC_ToolsConfig import TruthPreselectionToolCfg
252 kwargs.setdefault( "TruthPreselectionTool", acc.popToolsAndMerge(TruthPreselectionToolCfg(flags)) )
253
254 if "TruthRecordService" not in kwargs:
255 kwargs.setdefault("TruthRecordService", acc.getPrimaryAndMerge(TruthServiceCfg(flags)))
256
257 if "MemoryMonitoringTool" not in kwargs:
258 kwargs.setdefault("MemoryMonitoringTool", acc.addPublicTool(acc.popToolsAndMerge(MemoryMonitorToolCfg(flags))))
259
260 if "ParticleBroker" not in kwargs:
261 kwargs.setdefault("ParticleBroker", acc.getPrimaryAndMerge(ATLFAST_ParticleBrokerSvcCfg(flags)))
262
263 if flags.Sim.ISF.Simulator.isQuasiStable():
264 if "QuasiStablePatcher" not in kwargs:
265 from BeamEffects.BeamEffectsAlgConfig import ZeroLifetimePositionerCfg
266 kwargs.setdefault("QuasiStablePatcher", acc.getPrimaryAndMerge(ZeroLifetimePositionerCfg(flags)) )
267 if "InputConverter" not in kwargs:
268 kwargs.setdefault("InputConverter", acc.getPrimaryAndMerge(InputConverterCfg(flags)))
269
270 kwargs.setdefault("InputHardScatterCollection", "BeamTruthEvent")
271 kwargs.setdefault("OutputHardScatterTruthCollection", "TruthEvent")
272 kwargs.setdefault("DoCPUMonitoring", flags.Sim.ISF.DoTimeMonitoring)
273 kwargs.setdefault("DoMemoryMonitoring", flags.Sim.ISF.DoMemoryMonitoring)
274
275 if flags.Sim.ISF.ReSimulation:
276 acc.addSequence(AthSequencer('SimSequence'), parentName='AthAlgSeq') # TODO make the name configurable?
277 acc.addEventAlgo(CompFactory.ISF.SimKernel(name, **kwargs), 'SimSequence') # TODO make the name configurable?
278 else:
279 acc.addEventAlgo(CompFactory.ISF.SimKernel(name, **kwargs))
280 return acc
281
282
ClassName: AthSequencer.

◆ Kernel_GenericSimulatorMTCfg()

python.ISF_MainConfig.Kernel_GenericSimulatorMTCfg ( flags,
name = "ISF_Kernel_GenericSimulatorMT",
** kwargs )

Definition at line 45 of file ISF_MainConfig.py.

45def Kernel_GenericSimulatorMTCfg(flags, name="ISF_Kernel_GenericSimulatorMT", **kwargs):
46 acc = ComponentAccumulator()
47 kwargs.setdefault("UseShadowEvent", flags.Sim.UseShadowEvent)
48 if flags.Sim.UseShadowEvent and "TruthPreselectionTool" not in kwargs:
49 from ISF_HepMC_Tools.ISF_HepMC_ToolsConfig import TruthPreselectionToolCfg
50 kwargs.setdefault("TruthPreselectionTool", acc.popToolsAndMerge(TruthPreselectionToolCfg(flags)))
51
52 if "GeoIDSvc" not in kwargs:
53 kwargs.setdefault("GeoIDSvc", acc.getPrimaryAndMerge(GeoIDSvcCfg(flags)))
54
55 if "TruthRecordService" not in kwargs:
56 kwargs.setdefault("TruthRecordService", acc.getPrimaryAndMerge(TruthServiceCfg(flags)))
57
58 if "EntryLayerTool" not in kwargs:
59 kwargs.setdefault("EntryLayerTool", acc.addPublicTool(acc.popToolsAndMerge(EntryLayerToolMTCfg(flags))))
60
61 from AthenaConfiguration.Enums import ProductionStep
62 if flags.Common.ProductionStep == ProductionStep.FastChain:
63 if flags.Digitization.PileUp:
64 OEsvc = CompFactory.StoreGateSvc("OriginalEvent_SG")
65 acc.addService(OEsvc)
66 kwargs.setdefault("EvtStore", OEsvc.name) # TODO check this is correct
67
68 kwargs.setdefault("Cardinality", flags.Concurrency.NumThreads)
69 kwargs.setdefault("InputEvgenCollection", "BeamTruthEvent")
70 kwargs.setdefault("OutputTruthCollection", "TruthEvent")
71 from G4AtlasTools.G4AtlasToolsConfig import InputContainerListCfg
72 kwargs.setdefault("ExtraInputs" , InputContainerListCfg(flags))
73 if flags.Sim.ISF.Simulator.isQuasiStable():
74 if "QuasiStablePatcher" not in kwargs:
75 from BeamEffects.BeamEffectsAlgConfig import ZeroLifetimePositionerCfg
76 kwargs.setdefault("QuasiStablePatcher", acc.getPrimaryAndMerge(ZeroLifetimePositionerCfg(flags)))
77 if "InputConverter" not in kwargs:
78 kwargs.setdefault("InputConverter", acc.getPrimaryAndMerge(InputConverterCfg(flags)))
79
80 if flags.Sim.ISF.ReSimulation:
81 acc.addSequence(AthSequencer('SimSequence'), parentName='AthAlgSeq') # TODO make the name configurable?
82 acc.addEventAlgo(CompFactory.ISF.SimKernelMT(name, **kwargs), 'SimSequence') # TODO make the name configurable?
83 else:
84 acc.addEventAlgo(CompFactory.ISF.SimKernelMT(name, **kwargs))
85 return acc
86
87

◆ Kernel_GenericSimulatorNoG4MTCfg()

python.ISF_MainConfig.Kernel_GenericSimulatorNoG4MTCfg ( flags,
name = "ISF_Kernel_GenericSimulatorNoG4MT",
** kwargs )

Definition at line 88 of file ISF_MainConfig.py.

88def Kernel_GenericSimulatorNoG4MTCfg(flags, name="ISF_Kernel_GenericSimulatorNoG4MT", **kwargs):
89 return Kernel_GenericSimulatorMTCfg(flags, name, **kwargs)
90
91

◆ Kernel_PassBackG4MTCfg()

python.ISF_MainConfig.Kernel_PassBackG4MTCfg ( flags,
name = "ISF_Kernel_PassBackG4MT",
** kwargs )

Definition at line 138 of file ISF_MainConfig.py.

138def Kernel_PassBackG4MTCfg(flags, name="ISF_Kernel_PassBackG4MT", **kwargs):
139 acc = ComponentAccumulator()
140 acc.merge(Kernel_GenericSimulatorMTCfg(flags, name, **kwargs)) # Workaround
141
142 defaultG4SelectorRegions = set(["BeamPipeSimulationSelectors", "IDSimulationSelectors", "CaloSimulationSelectors", "MSSimulationSelectors"])
143 if defaultG4SelectorRegions - kwargs.keys(): # i.e. if any of these have not been defined yet
144 passBackG4Selector = acc.addPublicTool(acc.popToolsAndMerge(PassBackGeant4SelectorCfg(flags)))
145 kwargs.setdefault("BeamPipeSimulationSelectors", [passBackG4Selector])
146 kwargs.setdefault("IDSimulationSelectors", [passBackG4Selector])
147 kwargs.setdefault("CaloSimulationSelectors", [passBackG4Selector])
148 kwargs.setdefault("MSSimulationSelectors", [passBackG4Selector])
149
150 if "CavernSimulationSelectors" not in kwargs:
151 kwargs.setdefault("CavernSimulationSelectors",
152 [acc.addPublicTool(acc.popToolsAndMerge(DefaultParticleKillerSelectorCfg(flags)))])
153
154 if "SimulationTools" not in kwargs:
155 kwargs.setdefault("SimulationTools", [
156 acc.popToolsAndMerge(ParticleKillerToolCfg(flags)),
157 acc.popToolsAndMerge(PassBackGeant4ToolCfg(flags))
158 ])
159
160 if "ParticleOrderingTool" not in kwargs:
161 kwargs.setdefault("ParticleOrderingTool", acc.popToolsAndMerge(EnergyParticleOrderingToolCfg(flags)))
162
163 acc.merge(Kernel_GenericSimulatorMTCfg(flags, name, **kwargs))
164 return acc
165
166

Variable Documentation

◆ AthSequencer

python.ISF_MainConfig.AthSequencer = CompFactory.AthSequencer

Definition at line 42 of file ISF_MainConfig.py.