11 from ExtraParticles.PDGHelpers
import getPDGTABLE
12 if getPDGTABLE(
'PDGTABLE.MeV'):
13 quirk_firststring=1e-6
16 quirk_debugenabled=
False
19 simdict = flags.Input.SpecialConfiguration
20 quirk_mass = float(simdict[
"MASS"])
21 quirk_charge = float(simdict[
"CHARGE"])
22 quirk_pdgid = int(simdict[
"PDGID"])
23 quirk_stringforce = float(simdict[
"STRINGFORCE"])
25 f = open(
'PDGTABLE.MeV',
'a')
26 f.write(
"M%8d %.8E +0.0E+00 -0.0E+00 Quirk +\n" % (quirk_pdgid, quirk_mass))
27 f.write(
"W%8d 0.E+00 +0.0E+00 -0.0E+00 Quirk +\n" % quirk_pdgid)
30 if flags.Common.ProductionStep == ProductionStep.Simulation:
31 f = open(
'quirks_setup.txt',
'w')
32 for x
in [quirk_mass, quirk_charge, quirk_pdgid, quirk_stringforce, quirk_firststring, quirk_maxboost, quirk_maxmerge, quirk_maxmerge]:
33 f.write(repr(x) +
"\n")
34 if quirk_debugenabled:
36 f.write(repr(quirk_debugdist) +
"\n")
37 f.write(repr(quirk_debugsteps) +
"\n")
41 del quirk_firststring, quirk_maxboost, quirk_maxmerge, quirk_debugenabled, quirk_debugdist, quirk_debugsteps, doG4SimConfig, simdict, f, quirk_mass, quirk_charge, quirk_pdgid, quirk_stringforce
62 result = ComponentAccumulator()
63 if flags.Common.ProductionStep == ProductionStep.Simulation:
64 from G4AtlasServices.G4AtlasServicesConfig
import PhysicsListSvcCfg
65 result.merge(PhysicsListSvcCfg(flags))
67 if flags.Common.ProductionStep == ProductionStep.Simulation:
68 result.getService(
"PhysicsListSvc").PhysOption += [ result.popToolsAndMerge(
QuirkPhysicsToolCfg(flags)) ]