2 from AthenaConfiguration.ComponentFactory
import CompFactory
3 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
4 from AthenaConfiguration.AccumulatorCache
import AccumulatorCache
6 from ExtraParticles.ExtraParticlesConfig
import ExtraParticlesPhysicsToolCfg
7 from SimulationConfig.SimEnums
import CavernBackground
8 from G4AtlasTools.G4GeometryToolConfig
import G4AtlasDetectorConstructionToolCfg
9 from G4ExtraProcesses.G4ExtraProcessesConfig
import G4EMProcessesPhysicsToolCfg
10 from G4StepLimitation.G4StepLimitationConfig
import G4StepLimitationToolCfg
11 from TRT_TR_Process.TRT_TR_ProcessConfig
import TRTPhysicsToolCfg
17 result.addService(CompFactory.DetectorGeometrySvc(name, **kwargs), primary =
True)
25 if flags.Sim.ISF.Simulator.isQuasiStable():
30 if flags.Detector.GeometryTRT:
32 if flags.Detector.GeometryLucid
or flags.Detector.GeometryAFP
or flags.Detector.GeometryZDC:
33 from LUCID_OpProcess.LUCID_OpProcessConfig
import LucidPhysicsToolCfg
35 kwargs.setdefault(
"PhysOption", PhysOptionList)
37 kwargs.setdefault(
"PhysicsDecay", PhysDecaysList)
38 kwargs.setdefault(
"PhysicsList", flags.Sim.PhysicsList)
39 if 'PhysicsList' in kwargs:
40 if kwargs[
'PhysicsList'].endswith(
'_EMV')
or kwargs[
'PhysicsList'].endswith(
'_EMX'):
41 raise RuntimeError(
'PhysicsList not allowed: '+kwargs[
'PhysicsList'] )
43 kwargs.setdefault(
"GeneralCut", 1.)
44 if flags.Sim.CavernBackground
not in [CavernBackground.Read, CavernBackground.Write]:
45 kwargs.setdefault(
"NeutronTimeCut", flags.Sim.NeutronTimeCut)
46 kwargs.setdefault(
"NeutronEnergyCut", flags.Sim.NeutronEnergyCut)
47 kwargs.setdefault(
"ApplyEMCuts", flags.Sim.ApplyEMCuts)
48 kwargs.setdefault(
"QuietMode", flags.Exec.QuietMode)
52 """ --- ATLASSIM-3967 ---
53 these two options are replaced by SetNumberOfBinsPerDecade
54 which now controls both values.
58 if flags.Sim.ISF.Simulator.usesFatras():
59 kwargs.setdefault(
"UnstableAntiNeutrons",
True)
60 result.addService(CompFactory.PhysicsListSvc(name, **kwargs), primary =
True)