2 from AthenaConfiguration.ComponentFactory
import CompFactory
3 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
4 from AthenaConfiguration.AccumulatorCache
import AccumulatorCache
6 from G4AtlasTools.G4AtlasToolsConfig
import FastSimulationConstructorToolCfg
7 from ExtraParticles.ExtraParticlesConfig
import ExtraParticlesPhysicsToolCfg
8 from SimulationConfig.SimEnums
import CavernBackground
9 from G4ExtraProcesses.G4ExtraProcessesConfig
import G4EMProcessesPhysicsToolCfg
10 from G4StepLimitation.G4StepLimitationConfig
import G4StepLimitationToolCfg
11 from TRT_TR_Process.TRT_TR_ProcessConfig
import TRTPhysicsToolCfg
18 if flags.Sim.ISF.Simulator.isQuasiStable():
23 if flags.Detector.GeometryTRT:
25 if flags.Detector.GeometryLucid
or flags.Detector.GeometryAFP
or flags.Detector.GeometryZDC:
26 from LUCID_OpProcess.LUCID_OpProcessConfig
import LucidPhysicsToolCfg
28 kwargs.setdefault(
"PhysOption", PhysOptionList)
30 kwargs.setdefault(
"PhysicsDecay", PhysDecaysList)
31 kwargs.setdefault(
"PhysicsList", flags.Sim.PhysicsList)
32 if 'PhysicsList' in kwargs:
33 if kwargs[
'PhysicsList'].endswith(
'_EMV')
or kwargs[
'PhysicsList'].endswith(
'_EMX'):
34 raise RuntimeError(
'PhysicsList not allowed: '+kwargs[
'PhysicsList'] )
36 kwargs.setdefault(
"GeneralCut", 1.)
37 if flags.Sim.CavernBackground
not in [CavernBackground.Read, CavernBackground.Write]:
38 kwargs.setdefault(
"NeutronTimeCut", flags.Sim.NeutronTimeCut)
39 kwargs.setdefault(
"NeutronEnergyCut", flags.Sim.NeutronEnergyCut)
40 kwargs.setdefault(
"ApplyEMCuts", flags.Sim.ApplyEMCuts)
41 kwargs.setdefault(
"QuietMode", flags.Exec.QuietMode)
49 """ --- ATLASSIM-3967 ---
50 these two options are replaced by SetNumberOfBinsPerDecade
51 which now controls both values.
55 if flags.Sim.ISF.Simulator.usesFatras():
56 kwargs.setdefault(
"UnstableAntiNeutrons",
True)
57 result.addService(CompFactory.PhysicsListSvc(name, **kwargs), primary =
True)