|
ATLAS Offline Software
|
|
def | load_files_for_monopole_scenario (MASS, GCHARGE) |
|
def | load_files_for_qball_scenario (MASS, CHARGE) |
|
def | load_files_for_fcp_scenario (MASS, CHARGE, X, Y) |
|
def | MonopolePhysicsToolCfg (flags, name="MonopolePhysicsTool", **kwargs) |
|
def | G4mplEqMagElectricFieldToolCfg (flags, name="G4mplEqMagElectricField", **kwargs) |
|
def | fcpPreInclude (flags) |
|
def | fcpCfg (flags) |
|
def | QballPreInclude (flags) |
|
def | QballCfg (flags) |
|
def | MonopolePreInclude (flags) |
|
def | MonopoleCfg (flags) |
|
def | Monopole_VerboseSelectorCfg (flags, name="G4UA::VerboseSelectorTool", **kwargs) |
|
◆ fcpCfg()
def MonopoleConfig.fcpCfg |
( |
|
flags | ) |
|
Definition at line 131 of file MonopoleConfig.py.
133 if flags.Common.ProductionStep == ProductionStep.Simulation:
134 from G4AtlasServices.G4AtlasServicesConfig
import PhysicsListSvcCfg
137 simdict = flags.Input.SpecialConfiguration
139 pdgcodes = eval(simdict[
'InteractingPDGCodes'])
if 'InteractingPDGCodes' in simdict
else []
140 from ExtraParticles.PDGHelpers
import updateExtraParticleAcceptList
143 if flags.Common.ProductionStep == ProductionStep.Simulation:
145 result.getService(
"PhysicsListSvc").PhysOption += physicsOptions
◆ fcpPreInclude()
def MonopoleConfig.fcpPreInclude |
( |
|
flags | ) |
|
Definition at line 115 of file MonopoleConfig.py.
116 simdict = flags.Input.SpecialConfiguration
117 if flags.Common.ProductionStep == ProductionStep.Simulation:
119 flags.Sim.OptionalUserActionList += [
'G4UserActions.G4UserActionsConfig.MonopoleLooperKillerToolCfg']
121 flags.Sim.OptionalUserActionList += [
'G4UserActions.G4UserActionsConfig.HIPKillerToolCfg']
122 if "InteractingPDGCodes" not in simdict:
123 assert "CHARGE" in simdict
124 assert "X" in simdict
125 assert "Y" in simdict
126 CODE=
int(20000000)+
int(simdict[
"X"])*1000+
int(simdict[
"Y"])*10
127 simdict[
'InteractingPDGCodes'] =
str([CODE,-1*CODE])
128 flags.Input.SpecialConfiguration = simdict
◆ G4mplEqMagElectricFieldToolCfg()
def MonopoleConfig.G4mplEqMagElectricFieldToolCfg |
( |
|
flags, |
|
|
|
name = "G4mplEqMagElectricField" , |
|
|
** |
kwargs |
|
) |
| |
Definition at line 109 of file MonopoleConfig.py.
111 result.setPrivateTools( CompFactory.G4mplEqMagElectricFieldTool(name, **kwargs) )
◆ load_files_for_fcp_scenario()
def MonopoleConfig.load_files_for_fcp_scenario |
( |
|
MASS, |
|
|
|
CHARGE, |
|
|
|
X, |
|
|
|
Y |
|
) |
| |
Definition at line 74 of file MonopoleConfig.py.
76 print(
"Trying to load %s, %s for particle with code %s" % (X, Y, CODE))
78 pdgLine1=
"M {code} {intmass}.E+03 +0.0E+00 -0.0E+00 fcp +\n".
format(code=CODE,intmass=
int(MASS))
79 pdgLine2=
"W {code} 0.E+00 +0.0E+00 -0.0E+00 fcp +\n".
format(code=CODE)
80 particleLine1=
"{code} {intmass}.00 {fcharge} 0.0 # fcp\n".
format(code=CODE,intmass=
int(MASS), fcharge=
float(CHARGE))
81 particleLine2=
"-{code} {intmass}.00 -{fcharge} 0.0 # fcpBar\n".
format(code=CODE,intmass=
int(MASS), fcharge=
float(CHARGE))
85 f=
open(
'PDGTABLE.MeV',
'a')
86 f.writelines(
str(pdgLine1))
87 f.writelines(
str(pdgLine2))
89 partmod = os.path.isfile(
'particles.txt')
91 os.remove(
'particles.txt')
92 f=
open(
'particles.txt',
'w')
93 f.writelines(
str(particleLine1))
94 f.writelines(
str(particleLine2))
◆ load_files_for_monopole_scenario()
def MonopoleConfig.load_files_for_monopole_scenario |
( |
|
MASS, |
|
|
|
GCHARGE |
|
) |
| |
Definition at line 12 of file MonopoleConfig.py.
14 ALINE1=
"M 4110000 {intmass}.E+03 +0.0E+00 -0.0E+00 Monopole 0".
format(intmass=
int(MASS))
15 ALINE2=
"W 4110000 0.E+00 +0.0E+00 -0.0E+00 Monopole 0"
16 BLINE1=
"4110000 {intmass}.00 0.0 {gcharge} # Monopole".
format(intmass=
int(MASS), gcharge=GCHARGE)
17 BLINE2=
"-4110000 {intmass}.00 0.0 -{gcharge} # MonopoleBar".
format(intmass=
int(MASS), gcharge=GCHARGE)
19 f=
open(
'PDGTABLE.MeV',
'a')
20 f.writelines(
str(ALINE1))
22 f.writelines(
str(ALINE2))
25 partmod = os.path.isfile(
'particles.txt')
27 os.remove(
'particles.txt')
28 f=
open(
'particles.txt',
'w')
29 f.writelines(
str(BLINE1))
31 f.writelines(
str(BLINE2))
◆ load_files_for_qball_scenario()
def MonopoleConfig.load_files_for_qball_scenario |
( |
|
MASS, |
|
|
|
CHARGE |
|
) |
| |
Definition at line 42 of file MonopoleConfig.py.
46 ALINE1=
"M {code} {intmass}.E+03 +0.0E+00 -0.0E+00 Qball +".
format(code=CODE,intmass=
int(MASS))
47 ALINE2=
"W {code} 0.E+00 +0.0E+00 -0.0E+00 Qball +".
format(code=CODE)
48 BLINE1=
"{code} {intmass}.00 {charge} 0.0 # Qball".
format(code=CODE,intmass=
int(MASS), charge=CHARGE)
49 BLINE2=
"-{code} {intmass}.00 -{charge} 0.0 # QballBar".
format(code=CODE,intmass=
int(MASS), charge=CHARGE)
51 f=
open(
'PDGTABLE.MeV',
'a')
52 f.writelines(
str(ALINE1))
54 f.writelines(
str(ALINE2))
57 partmod = os.path.isfile(
'particles.txt')
59 os.remove(
'particles.txt')
60 f=
open(
'particles.txt',
'w')
61 f.writelines(
str(BLINE1))
63 f.writelines(
str(BLINE2))
◆ Monopole_VerboseSelectorCfg()
def MonopoleConfig.Monopole_VerboseSelectorCfg |
( |
|
flags, |
|
|
|
name = "G4UA::VerboseSelectorTool" , |
|
|
** |
kwargs |
|
) |
| |
Definition at line 229 of file MonopoleConfig.py.
230 kwargs.setdefault(
'VerboseLevel',1)
231 kwargs.setdefault(
'TargetPdgIDs',
235 from G4DebuggingTools.G4DebuggingToolsConfig
import VerboseSelectorToolCfg
◆ MonopoleCfg()
def MonopoleConfig.MonopoleCfg |
( |
|
flags | ) |
|
Definition at line 208 of file MonopoleConfig.py.
210 if flags.Common.ProductionStep == ProductionStep.Simulation:
211 from G4AtlasServices.G4AtlasServicesConfig
import PhysicsListSvcCfg
214 simdict = flags.Input.SpecialConfiguration
215 assert "MASS" in simdict
216 assert "GCHARGE" in simdict
218 pdgcodes = eval(simdict[
'InteractingPDGCodes'])
if 'InteractingPDGCodes' in simdict
else []
219 from ExtraParticles.PDGHelpers
import updateExtraParticleAcceptList
222 if flags.Common.ProductionStep == ProductionStep.Simulation:
223 from GaudiKernel.GaudiHandles
import PrivateToolHandleArray
225 result.getService(
"PhysicsListSvc").PhysOption = physicsOptions + result.getService(
"PhysicsListSvc").PhysOption
◆ MonopolePhysicsToolCfg()
def MonopoleConfig.MonopolePhysicsToolCfg |
( |
|
flags, |
|
|
|
name = "MonopolePhysicsTool" , |
|
|
** |
kwargs |
|
) |
| |
Definition at line 103 of file MonopoleConfig.py.
105 result.setPrivateTools( CompFactory.MonopolePhysicsTool(name, **kwargs) )
◆ MonopolePreInclude()
def MonopoleConfig.MonopolePreInclude |
( |
|
flags | ) |
|
Definition at line 193 of file MonopoleConfig.py.
194 if flags.Common.ProductionStep == ProductionStep.Simulation:
196 flags.Sim.OptionalUserActionList += [
'G4UserActions.G4UserActionsConfig.MonopoleLooperKillerToolCfg']
198 flags.Sim.OptionalUserActionList += [
'G4UserActions.G4UserActionsConfig.HIPKillerToolCfg']
199 flags.Sim.G4Stepper =
'ClassicalRK4'
200 flags.Sim.G4EquationOfMotion =
"G4mplEqMagElectricField"
201 flags.Sim.TightMuonStepping =
False
202 simdict = flags.Input.SpecialConfiguration
203 if "InteractingPDGCodes" not in simdict:
204 simdict[
'InteractingPDGCodes'] =
str([4110000,-4110000])
205 flags.Input.SpecialConfiguration = simdict
◆ QballCfg()
def MonopoleConfig.QballCfg |
( |
|
flags | ) |
|
Definition at line 168 of file MonopoleConfig.py.
170 simdict = flags.Input.SpecialConfiguration
171 if flags.Common.ProductionStep == ProductionStep.Simulation:
172 from G4AtlasServices.G4AtlasServicesConfig
import PhysicsListSvcCfg
174 if "InteractingPDGCodes" not in simdict:
175 assert "CHARGE" in simdict
176 CODE=10000000+
int(
float(simdict[
"CHARGE"])*100)
177 simdict[
'InteractingPDGCodes'] =
str([CODE,-1*CODE])
179 assert "MASS" in simdict
180 assert "CHARGE" in simdict
182 pdgcodes = eval(simdict[
'InteractingPDGCodes'])
if 'InteractingPDGCodes' in simdict
else []
183 from ExtraParticles.PDGHelpers
import updateExtraParticleAcceptList
186 if flags.Common.ProductionStep == ProductionStep.Simulation:
188 result.getService(
"PhysicsListSvc").PhysOption += physicsOptions
◆ QballPreInclude()
def MonopoleConfig.QballPreInclude |
( |
|
flags | ) |
|
Definition at line 154 of file MonopoleConfig.py.
155 simdict = flags.Input.SpecialConfiguration
156 if flags.Common.ProductionStep == ProductionStep.Simulation:
158 flags.Sim.OptionalUserActionList += [
'G4UserActions.G4UserActionsConfig.MonopoleLooperKillerToolCfg']
160 flags.Sim.OptionalUserActionList += [
'G4UserActions.G4UserActionsConfig.HIPKillerToolCfg']
161 if "InteractingPDGCodes" not in simdict:
162 assert "CHARGE" in simdict
163 CODE=10000000+
int(
float(simdict[
"CHARGE"])*100)
164 simdict[
'InteractingPDGCodes'] =
str([CODE,-1*CODE])
165 flags.Input.SpecialConfiguration = simdict
def updateExtraParticleAcceptList(listName='G4particle_acceptlist_ExtraParticles.txt', pdgcodes=[])
def MonopolePreInclude(flags)
def G4mplEqMagElectricFieldToolCfg(flags, name="G4mplEqMagElectricField", **kwargs)
def QballPreInclude(flags)
def load_files_for_monopole_scenario(MASS, GCHARGE)
void print(char *figname, TCanvas *c1)
def MonopolePhysicsToolCfg(flags, name="MonopolePhysicsTool", **kwargs)
def PhysicsListSvcCfg(flags, name="PhysicsListSvc", **kwargs)
def load_files_for_qball_scenario(MASS, CHARGE)
def Monopole_VerboseSelectorCfg(flags, name="G4UA::VerboseSelectorTool", **kwargs)
def load_files_for_fcp_scenario(MASS, CHARGE, X, Y)