ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Simulation
G4Utilities
G4RunManagement
python
G4RunManagementToolConfig.py
Go to the documentation of this file.
1
# Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
2
from
AthenaConfiguration.ComponentAccumulator
import
ComponentAccumulator
3
from
AthenaConfiguration.ComponentFactory
import
CompFactory
4
from
G4AtlasServices.G4AtlasUserActionConfig
import
UserActionSvcCfg
5
from
G4AtlasServices.G4AtlasServicesConfig
import
PhysicsListSvcCfg, UserLimitsSvcCfg
6
from
G4AtlasTools.G4GeometryToolConfig
import
G4AtlasDetectorConstructionToolCfg
7
from
SimulationConfig.SimEnums
import
LArParameterization
8
9
def
G4RunToolCfg
(flags, name="G4RunTool", **kwargs):
10
result = ComponentAccumulator()
11
12
# Configure service handles
13
kwargs.setdefault(
"DetectorConstruction"
, result.popToolsAndMerge(G4AtlasDetectorConstructionToolCfg(flags)))
14
kwargs.setdefault(
"PhysicsListSvc"
, result.getPrimaryAndMerge(PhysicsListSvcCfg(flags)))
15
kwargs.setdefault(
"UserLimitsSvc"
, result.getPrimaryAndMerge(UserLimitsSvcCfg(flags)))
16
kwargs.setdefault(
"UserActionSvc"
, result.getPrimaryAndMerge(UserActionSvcCfg(flags)))
17
if
flags.Sim.LArParameterization
is
LArParameterization.FastCaloSim:
18
from
G4AtlasTools.G4AtlasToolsConfig
import
PunchThroughG4ToolCfg
19
physics_initialization_tools = kwargs.setdefault(
"PhysicsInitializationTools"
, [])
20
physics_initialization_tools.append(result.addPublicTool(result.popToolsAndMerge(PunchThroughG4ToolCfg(flags))))
21
22
# Threading configuration
23
kwargs.setdefault(
"NG4threads"
,
max
(1, flags.Concurrency.NumThreads))
24
kwargs.setdefault(
"NG4eventsPerRun"
, 100000)
25
26
# Properties
27
kwargs.setdefault(
"G4Commands"
, flags.Sim.G4Commands)
28
29
result.setPrivateTools(CompFactory.G4RunTool(name, **kwargs))
30
return
result
max
#define max(a, b)
Definition
cfImp.cxx:41
G4RunManagementToolConfig.G4RunToolCfg
G4RunToolCfg(flags, name="G4RunTool", **kwargs)
Definition
G4RunManagementToolConfig.py:9
Generated on
for ATLAS Offline Software by
1.17.0