3 from AthenaConfiguration.AccumulatorCache
import AccumulatorCache
5 from AthenaConfiguration.ComponentFactory
import CompFactory
6 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
8 from AthenaConfiguration.Enums
import ProductionStep
13 Defining default settings for slepton/staus. Possible options are:
14 G4ParticleMass (default 0.0*GeV)
15 G4ParticleWidth (default 0.0*GeV)
16 G4ParticleCharge (default +/-1.*eplus)
17 G4ParticlePDGCode (default sparticle pdgid)
18 G4ParticleStable (default True)
19 G4ParticleLifetime (default -1)
20 G4ParticleShortlived (default False)
21 where Particle = [STau1Minus, STau1Plus, STau2Minus, STau2Plus, SElectronRMinus, SElectronRLinus, SElectronRPlus, SElectronLPlus, SMuonRMinus, SMuonLMinus, SMuonRPlus, SMuonLPlus]
31 from ExtraParticles.PDGHelpers
import getPDGTABLE
33 shutil.move(
'PDGTABLE.MeV',
'PDGTABLE.MeV.org')
38 lines =
open(
'PDGTABLE.MeV.org').readlines()
39 for pdgid,mass,name,charge
in replace:
40 if not re.search(
r'[MW]\s+'+
str(pdgid)+
r'\s+\S+',
''.
join(lines)):
41 lines.append(
'M' +
str(pdgid).rjust(8) +
''.ljust(26) +
42 (
'%11.5E' % mass).ljust(15) +
43 '+0.0E+00'.ljust(9) +
'-0.0E+00'.ljust(9) +
44 name.strip() +
''.ljust(6) + charge.strip()+
''.rjust(20-len(name.strip())) +
'\n')
45 lines.append(
'W' +
str(pdgid).rjust(8) +
''.ljust(26) +
46 '0.E+00'.ljust(15) +
'+0.0E+00'.ljust(9) +
'-0.0E+00'.ljust(9) +
47 name.strip() +
''.ljust(6) + charge.strip()+
''.rjust(20-len(name.strip())) +
'\n')
49 from past.builtins
import xrange
50 for i
in xrange(len(lines)):
51 if re.search(
r'M\s+'+
str(pdgid)+
r'\s+\S+', lines[i]):
53 lines[i] = l[0:35] + (
'%11.5E' % mass).ljust(14) + l[49:]
55 update =
open(
'PDGTABLE.MeV',
'w')
56 update.write(
''.
join(lines))
59 print (
'modified PDGTABLE\n%s\n' %
''.
join(lines))
66 GMSBIndex =
int(simdict[
"GMSBIndex"])
70 (1000022, eval(simdict[
"GMSBNeutralino"]),
'~chi(0,1)',
'0'),
71 (1000039, eval(simdict.get(
"GMSBGravitino",
'0')),
'~G',
'0')
73 pdgcodes += [1000022,1000039]
75 m_stau = eval(simdict[
"GMSBStau"])
76 m_slepton = eval(simdict[
"GMSBSlepton"])
78 (1000015, m_stau,
'~tau(L)',
'-'),
79 (2000011, m_slepton,
'~e(R)',
'-'),
80 (2000013, m_slepton,
'~mu(R)',
'-')
82 pdgcodes += [-1000015,1000015,-2000011,2000011,-2000013,2000013]
84 m_stau = eval(simdict[
"GMSBStau"])
85 m_slepton = eval(simdict[
"GMSBSlepton"])
86 m_squark = eval(simdict[
"SQUARKMASS"])
87 m_neutralino = eval(simdict[
"NEUTRALINOMASS"])
88 m_gluino = eval(simdict[
"GLUINOMASS"])
90 (1000001, m_squark,
'~d(L)',
'-1/3'), (2000001, m_squark,
'~d(R)',
'-1/3'),
91 (1000002, m_squark,
'~u(L)',
'+2/3'), (2000002, m_squark,
'~u(R)',
'+2/3'),
92 (1000003, 1.00E+04,
'~s(L)',
'-1/3'), (2000003, 1.00E+04,
'~s(R)',
'-1/3'),
93 (1000004, 1.00E+04,
'~c(L)',
'+2/3'), (2000004, 1.00E+04,
'~c(R)',
'+2/3'),
94 (1000005, 1.00E+04,
'~b(1)',
'-1/3'), (2000005, 1.00E+04,
'~b(2)',
'-1/3'),
95 (1000006, 1.00E+04,
'~t(1)',
'+2/3'), (2000006, 1.00E+04,
'~t(2)',
'+2/3'),
96 (1000011, 2.50E+02,
'~e(L)',
'-'), (2000011, m_slepton,
'~e(R)',
'-'),
97 (1000012, 1.00E+04,
'~nu(e,L)',
'0'),
98 (1000013, 2.50E+02,
'~mu(L)',
'-'), (2000013, m_slepton,
'~mu(R)',
'-'),
99 (1000014, 1.00E+04,
'~nu(e,L)',
'0'),
100 (1000015, m_stau,
'~tau(L)',
'-'), (2000015, 2.50E+02,
'~tau(R)',
'-'),
101 (1000016, 1.00E+04,
'~nu(tau,L)',
'0'),
102 (1000021, m_gluino,
'~g',
'0'),
103 (1000022, m_neutralino,
'~chi(0,1)',
'0'),
104 (1000023, 1.00E+04,
'~chi(0,2)',
'0'),
105 (1000024, 1.00E+04,
'~chi(+,1)',
'+'),
106 (1000025, -1.00E+04,
'~chi(0,3)',
'0'),
107 (1000035, 1.00E+04,
'~chi(0,4)',
'0'),
108 (1000037, 1.00E+04,
'~chi(+,2)',
'+')
111 -1000001,1000001,-2000001,2000001,
112 -1000002,1000002,-2000002,2000002,
113 -1000003,1000003,-2000003,2000003,
114 -1000004,1000004,-2000004,2000004,
115 -1000005,1000005,-2000005,2000005,
116 -1000006,1000006,-2000006,2000006,
117 -1000011,1000011,-2000011,2000011,
118 -1000013,1000013,-2000013,2000013,
119 -1000015,1000015,-2000015,2000015,
120 1000012,1000014,1000016,1000021,1000022,1000023,
121 -1000024,1000024,1000025,1000035,-1000037,1000037]
125 (1000015, m_stau,
'~tau(L)',
'-')
127 pdgcodes += [-1000015,1000015]
130 print (
'GMSBIndex %i not supported' % GMSBIndex)
132 from ExtraParticles.PDGHelpers
import updateExtraParticleAcceptList
140 from ExtraParticles.PDGHelpers
import getPDGTABLE
142 shutil.move(
'PDGTABLE.MeV',
'PDGTABLE.MeV.org')
147 lines =
open(
'PDGTABLE.MeV.org').readlines()
148 for pdgid,mass,name,charge
in replace:
149 if not re.search(
r'[MW]\s+'+
str(pdgid)+
r'\s+\S+',
''.
join(lines)):
150 lines.append(
'M' +
str(pdgid).rjust(8) +
''.ljust(26) +
151 (
'%11.5E' % mass).ljust(15) +
152 '+0.0E+00'.ljust(9) +
'-0.0E+00'.ljust(9) +
153 name.strip() +
''.ljust(6) + charge.strip()+
''.rjust(20-len(name.strip())) +
'\n')
154 lines.append(
'W' +
str(pdgid).rjust(8) +
''.ljust(26) +
155 '0.E+00'.ljust(15) +
'+0.0E+00'.ljust(9) +
'-0.0E+00'.ljust(9) +
156 name.strip() +
''.ljust(6) + charge.strip()+
''.rjust(20-len(name.strip())) +
'\n')
158 from past.builtins
import xrange
159 for i
in xrange(len(lines)):
160 if re.search(
r'M\s+'+
str(pdgid)+
r'\s+\S+', lines[i]):
162 lines[i] = l[0:35] + (
'%11.5E' % mass).ljust(14) + l[49:]
164 update =
open(
'PDGTABLE.MeV',
'w')
165 update.write(
''.
join(lines))
168 print(
'modified PDGTABLE\n%s\n' %
''.
join(lines))
173 simdict = flags.Input.SpecialConfiguration
175 if "GMSBSlepton" in simdict:
177 (2000011, eval(simdict.get(
"GMSBSlepton",
'0')),
'~e(R)',
'-'),
178 (2000013, eval(simdict.get(
"GMSBSlepton",
'0')),
'~mu(R)',
'-'),
179 (1000011, eval(simdict.get(
"GMSBSlepton",
'0')),
'~e(L)',
'-'),
180 (1000013, eval(simdict.get(
"GMSBSlepton",
'0')),
'~mu(L)',
'-'),
182 pdgcodes += [-2000011,2000011,-2000013,2000013,-1000011,1000011,-1000013,1000013]
183 if "GMSBStau" in simdict:
185 (2000015, eval(simdict.get(
"GMSBStau",
'0')),
'~tau(R)',
'-'),
186 (1000015, eval(simdict.get(
"GMSBStau",
'0')),
'~tau(L)',
'-'),
188 pdgcodes += [-2000015,2000015,-1000015,1000015]
189 if "GMSBGravitino" in simdict:
191 (1000039, eval(simdict.get(
"GMSBGravitino",
'0')),
'~G',
'0'),
193 pdgcodes += [1000039]
194 if "coannihilationStau" in simdict:
196 (2000015, eval(simdict.get(
"coannihilationStau",
'0')),
'~tau(R)',
'-'),
197 (1000015, eval(simdict.get(
"coannihilationStau",
'0')),
'~tau(L)',
'-'),
199 pdgcodes += [-2000015,2000015,-1000015,1000015]
200 if "coannihilationSlepton" in simdict:
202 (2000011, eval(simdict.get(
"coannihilationSlepton",
'0')),
'~e(R)',
'-'),
203 (2000013, eval(simdict.get(
"coannihilationSlepton",
'0')),
'~mu(R)',
'-'),
204 (1000011, eval(simdict.get(
"coannihilationSlepton",
'0')),
'~e(L)',
'-'),
205 (1000013, eval(simdict.get(
"coannihilationSlepton",
'0')),
'~mu(L)',
'-'),
207 pdgcodes += [-2000011, 2000011, -2000013, 2000013, -1000011, 1000011, -1000013, 1000013]
208 if "coannihilationNeutralino" in simdict:
210 (1000022, eval(simdict.get(
"coannihilationNeutralino",
'0')),
'~chi(0,1)',
'0'),
212 pdgcodes += [1000022]
214 from ExtraParticles.PDGHelpers
import updateExtraParticleAcceptList
220 if "GMSBStau" in flags.Input.SpecialConfiguration
or "coannihilationStau" in flags.Input.SpecialConfiguration:
222 if "GMSBStau" in flags.Input.SpecialConfiguration:
223 StauMass = eval(flags.Input.SpecialConfiguration.get(
"GMSBStau",
"None"))
224 kwargs.setdefault(
"G4STau1MinusMass", StauMass)
225 kwargs.setdefault(
"G4STau1PlusMass", StauMass)
227 elif "coannihilationStau" in flags.Input.SpecialConfiguration:
228 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
229 kwargs.setdefault(
"G4STau1MinusMass", StauMass)
230 kwargs.setdefault(
"G4STau1PlusMass", StauMass)
231 kwargs.setdefault(
"G4STau2MinusMass", StauMass)
232 kwargs.setdefault(
"G4STau2PlusMass", StauMass)
234 if "GMSBSlepton" in flags.Input.SpecialConfiguration:
235 GMSBSlepton = eval(flags.Input.SpecialConfiguration.get(
"GMSBSlepton",
"None"))
237 kwargs.setdefault(
"G4SElectronRMinusMass", GMSBSlepton)
238 kwargs.setdefault(
"G4SElectronRPlusMass", GMSBSlepton)
239 kwargs.setdefault(
"G4SMuonRMinusMass", GMSBSlepton)
240 kwargs.setdefault(
"G4SMuonRPlusMass", GMSBSlepton)
242 result.setPrivateTools( CompFactory.SleptonsPhysicsTool(name, **kwargs) )
248 if "GMSBStau" in flags.Input.SpecialConfiguration
or "coannihilationStau" in flags.Input.SpecialConfiguration:
251 if "GMSBStau" in flags.Input.SpecialConfiguration:
252 StauMass = eval(flags.Input.SpecialConfiguration.get(
"GMSBStau",
"None"))
253 StauLifetime = eval(flags.Input.SpecialConfiguration.get(
"GMSBStauTime",
"None"))
254 elif "coannihilationStau" in flags.Input.SpecialConfiguration:
255 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
256 StauLifetime = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStauTime",
"None"))
258 kwargs.setdefault(
"G4STau1MinusMass", StauMass)
259 kwargs.setdefault(
"G4STau1MinusPDGCode", 1000015)
260 kwargs.setdefault(
"G4STau1MinusStable",
False)
261 kwargs.setdefault(
"G4STau1MinusLifetime", StauLifetime)
263 kwargs.setdefault(
"G4STau1PlusMass", StauMass)
264 kwargs.setdefault(
"G4STau1PlusPDGCode", -1000015)
265 kwargs.setdefault(
"G4STau1PlusStable",
False)
266 kwargs.setdefault(
"G4STau1PlusLifetime", StauLifetime)
268 kwargs.setdefault(
"G4STau2MinusMass", StauMass)
269 kwargs.setdefault(
"G4STau2MinusPDGCode", 2000015)
270 kwargs.setdefault(
"G4STau2MinusStable",
False)
271 kwargs.setdefault(
"G4STau2MinusLifetime", StauLifetime)
273 kwargs.setdefault(
"G4STau2PlusMass", StauMass)
274 kwargs.setdefault(
"G4STau2PlusPDGCode", -2000015)
275 kwargs.setdefault(
"G4STau2PlusStable",
False)
276 kwargs.setdefault(
"G4STau2PlusLifetime", StauLifetime)
278 if "GMSBSlepton" in flags.Input.SpecialConfiguration:
279 GMSBSlepton = eval(flags.Input.SpecialConfiguration.get(
"GMSBSlepton",
"None"))
280 GMSBSleptonTime = eval(flags.Input.SpecialConfiguration.get(
"GMSBSleptonTime",
"None"))
282 kwargs.setdefault(
"G4SElectronLMinusMass", GMSBSlepton)
283 kwargs.setdefault(
"G4SElectronLMinusPDGCode", 1000011)
284 kwargs.setdefault(
"G4SElectronLMinusStable",
False)
285 kwargs.setdefault(
"G4SElectronLMinusLifetime", GMSBSleptonTime)
287 kwargs.setdefault(
"G4SElectronLPlusMass", GMSBSlepton)
288 kwargs.setdefault(
"G4SElectronLPlusPDGCode", -1000011)
289 kwargs.setdefault(
"G4SElectronLPlusStable",
False)
290 kwargs.setdefault(
"G4SElectronLPlusLifetime", GMSBSleptonTime)
292 kwargs.setdefault(
"G4SMuonLMinusMass", GMSBSlepton)
293 kwargs.setdefault(
"G4SMuonLMinusPDGCode", 1000013)
294 kwargs.setdefault(
"G4SMuonLMinusStable",
False)
295 kwargs.setdefault(
"G4SMuonLMinusLifetime", GMSBSleptonTime)
297 kwargs.setdefault(
"G4SMuonLPlusMass", GMSBSlepton)
298 kwargs.setdefault(
"G4SMuonLPlusPDGCode", -1000013)
299 kwargs.setdefault(
"G4SMuonLPlusStable",
False)
300 kwargs.setdefault(
"G4SMuonLPlusLifetime", GMSBSleptonTime)
302 kwargs.setdefault(
"G4SElectronRMinusMass", GMSBSlepton)
303 kwargs.setdefault(
"G4SElectronRMinusPDGCode", 2000011)
304 kwargs.setdefault(
"G4SElectronRMinusStable",
False)
305 kwargs.setdefault(
"G4SElectronRMinusLifetime", GMSBSleptonTime)
307 kwargs.setdefault(
"G4SElectronRPlusMass", GMSBSlepton)
308 kwargs.setdefault(
"G4SElectronRPlusPDGCode", -2000011)
309 kwargs.setdefault(
"G4SElectronRPlusStable",
False)
310 kwargs.setdefault(
"G4SElectronRPlusLifetime", GMSBSleptonTime)
312 kwargs.setdefault(
"G4SMuonRMinusMass", GMSBSlepton)
313 kwargs.setdefault(
"G4SMuonRMinusPDGCode", 2000013)
314 kwargs.setdefault(
"G4SMuonRMinusStable",
False)
315 kwargs.setdefault(
"G4SMuonRMinusLifetime", GMSBSleptonTime)
317 kwargs.setdefault(
"G4SMuonRPlusMass", GMSBSlepton)
318 kwargs.setdefault(
"G4SMuonRPlusPDGCode", -2000013)
319 kwargs.setdefault(
"G4SMuonRPlusStable",
False)
320 kwargs.setdefault(
"G4SMuonRPlusLifetime", GMSBSleptonTime)
321 result.setPrivateTools( CompFactory.SleptonsPhysicsTool(name, **kwargs) )
328 kwargs.setdefault(
"ParticleName",
"s_e_plus_R")
329 kwargs.setdefault(
"BR", 1.0)
330 kwargs.setdefault(
"Daughters",
"s_G,e+")
331 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
337 kwargs.setdefault(
"ParticleName",
"s_e_minus_R")
338 kwargs.setdefault(
"BR", 1.0)
339 kwargs.setdefault(
"Daughters",
"s_G,e-")
340 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
346 kwargs.setdefault(
"ParticleName",
"s_mu_plus_R")
347 kwargs.setdefault(
"BR", 1.0)
348 kwargs.setdefault(
"Daughters",
"s_G,mu+")
349 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
355 kwargs.setdefault(
"ParticleName",
"s_mu_minus_R")
356 kwargs.setdefault(
"BR", 1.0)
357 kwargs.setdefault(
"Daughters",
"s_G,mu-")
358 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
364 kwargs.setdefault(
"ParticleName",
"s_tau_plus_1")
365 kwargs.setdefault(
"BR", 1.0)
366 kwargs.setdefault(
"Daughters",
"s_G,tau+")
367 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
373 kwargs.setdefault(
"ParticleName",
"s_tau_minus_1")
374 kwargs.setdefault(
"BR", 1.0)
375 kwargs.setdefault(
"Daughters",
"s_G,tau-")
376 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
382 kwargs.setdefault(
"ParticleName",
"s_e_plus_L")
383 kwargs.setdefault(
"BR", 1.0)
384 kwargs.setdefault(
"Daughters",
"s_G,e+")
385 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
391 kwargs.setdefault(
"ParticleName",
"s_e_minus_L")
392 kwargs.setdefault(
"BR", 1.0)
393 kwargs.setdefault(
"Daughters",
"s_G,e-")
394 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
400 kwargs.setdefault(
"ParticleName",
"s_mu_plus_L")
401 kwargs.setdefault(
"BR", 1.0)
402 kwargs.setdefault(
"Daughters",
"s_G,mu+")
403 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
409 kwargs.setdefault(
"ParticleName",
"s_mu_minus_L")
410 kwargs.setdefault(
"BR", 1.0)
411 kwargs.setdefault(
"Daughters",
"s_G,mu-")
412 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
418 kwargs.setdefault(
"ParticleName",
"s_tau_plus_2")
419 kwargs.setdefault(
"BR", 1.0)
420 kwargs.setdefault(
"Daughters",
"s_G,tau+")
421 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
427 kwargs.setdefault(
"ParticleName",
"s_tau_minus_2")
428 kwargs.setdefault(
"BR", 1.0)
429 kwargs.setdefault(
"Daughters",
"s_G,tau-")
430 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
437 kwargs.setdefault(
"ParticleName",
"s_tau_minus_2")
438 kwargs.setdefault(
"BR", 1.0)
439 kwargs.setdefault(
"Daughters",
"s_chi_0_1,tau-")
440 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
446 kwargs.setdefault(
"ParticleName",
"s_tau_plus_2")
447 kwargs.setdefault(
"BR", 1.0)
448 kwargs.setdefault(
"Daughters",
"s_chi_0_1,tau+")
449 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
455 kwargs.setdefault(
"ParticleName",
"s_tau_minus_1")
456 kwargs.setdefault(
"BR", 1.0)
457 kwargs.setdefault(
"Daughters",
"s_chi_0_1,tau-")
458 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
464 kwargs.setdefault(
"ParticleName",
"s_tau_plus_1")
465 kwargs.setdefault(
"BR", 1.0)
466 kwargs.setdefault(
"Daughters",
"s_chi_0_1,tau+")
467 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
479 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
480 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
481 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
483 kwargs.setdefault(
"ParticleName",
"s_tau_minus_2")
484 kwargs.setdefault(
"BR", BR)
485 kwargs.setdefault(
"Daughters",
"s_chi_0_1,pi-,nu_tau")
486 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
494 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
495 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
496 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
498 kwargs.setdefault(
"ParticleName",
"s_tau_plus_2")
499 kwargs.setdefault(
"BR", BR)
500 kwargs.setdefault(
"Daughters",
"s_chi_0_1,pi+,anti_nu_tau")
501 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
509 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
510 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
511 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
513 kwargs.setdefault(
"ParticleName",
"s_tau_minus_1")
514 kwargs.setdefault(
"BR", BR)
515 kwargs.setdefault(
"Daughters",
"s_chi_0_1,pi-,nu_tau")
516 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
524 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
525 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
526 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
528 kwargs.setdefault(
"ParticleName",
"s_tau_plus_1")
529 kwargs.setdefault(
"BR", BR)
530 kwargs.setdefault(
"Daughters",
"s_chi_0_1,pi+,anti_nu_tau")
531 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
543 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
544 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
545 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
547 kwargs.setdefault(
"ParticleName",
"s_tau_minus_2")
548 kwargs.setdefault(
"BR", BR)
549 kwargs.setdefault(
"Daughters",
"s_chi_0_1,rho-,nu_tau")
550 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
558 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
559 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
560 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
562 kwargs.setdefault(
"ParticleName",
"s_tau_plus_2")
563 kwargs.setdefault(
"BR", BR)
564 kwargs.setdefault(
"Daughters",
"s_chi_0_1,rho+,anti_nu_tau")
565 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
573 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
574 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
575 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
577 kwargs.setdefault(
"ParticleName",
"s_tau_minus_1")
578 kwargs.setdefault(
"BR", BR)
579 kwargs.setdefault(
"Daughters",
"s_chi_0_1,rho-,nu_tau")
580 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
588 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
589 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
590 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
592 kwargs.setdefault(
"ParticleName",
"s_tau_plus_1")
593 kwargs.setdefault(
"BR", BR)
594 kwargs.setdefault(
"Daughters",
"s_chi_0_1,rho+,anti_nu_tau")
595 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
607 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
608 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
609 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
611 kwargs.setdefault(
"ParticleName",
"s_tau_minus_2")
612 kwargs.setdefault(
"BR", BR)
613 kwargs.setdefault(
"Daughters",
"s_chi_0_1,e-,nu_tau,anti_nu_e")
614 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
622 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
623 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
624 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
626 kwargs.setdefault(
"ParticleName",
"s_tau_plus_2")
627 kwargs.setdefault(
"BR", BR)
628 kwargs.setdefault(
"Daughters",
"s_chi_0_1,e+,anti_nu_tau,nu_e")
629 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
637 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
638 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
639 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
641 kwargs.setdefault(
"ParticleName",
"s_tau_minus_1")
642 kwargs.setdefault(
"BR", BR)
643 kwargs.setdefault(
"Daughters",
"s_chi_0_1,e-,nu_tau,anti_nu_e")
644 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
652 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
653 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
654 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
656 kwargs.setdefault(
"ParticleName",
"s_tau_plus_1")
657 kwargs.setdefault(
"BR", BR)
658 kwargs.setdefault(
"Daughters",
"s_chi_0_1,e+,anti_nu_tau,nu_e")
659 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
671 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
672 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
673 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
675 kwargs.setdefault(
"ParticleName",
"s_tau_minus_2")
676 kwargs.setdefault(
"BR", BR)
677 kwargs.setdefault(
"Daughters",
"s_chi_0_1,mu-,nu_tau,anti_nu_mu")
678 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
686 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
687 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
688 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
690 kwargs.setdefault(
"ParticleName",
"s_tau_plus_2")
691 kwargs.setdefault(
"BR", BR)
692 kwargs.setdefault(
"Daughters",
"s_chi_0_1,mu+,anti_nu_tau,nu_mu")
693 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
701 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
702 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
703 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
705 kwargs.setdefault(
"ParticleName",
"s_tau_minus_1")
706 kwargs.setdefault(
"BR", BR)
707 kwargs.setdefault(
"Daughters",
"s_chi_0_1,mu-,nu_tau,anti_nu_mu")
708 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
716 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
717 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
718 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
720 kwargs.setdefault(
"ParticleName",
"s_tau_plus_1")
721 kwargs.setdefault(
"BR", BR)
722 kwargs.setdefault(
"Daughters",
"s_chi_0_1,mu+,anti_nu_tau,nu_mu")
723 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
735 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
736 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
737 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
739 kwargs.setdefault(
"ParticleName",
"s_tau_minus_2")
740 kwargs.setdefault(
"BR", BR)
741 kwargs.setdefault(
"Daughters",
"s_chi_0_1,a1(1260)-,nu_tau")
742 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
750 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
751 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
752 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
754 kwargs.setdefault(
"ParticleName",
"s_tau_plus_2")
755 kwargs.setdefault(
"BR", BR)
756 kwargs.setdefault(
"Daughters",
"s_chi_0_1,a1(1260)+,anti_nu_tau")
757 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
765 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
766 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
767 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
769 kwargs.setdefault(
"ParticleName",
"s_tau_minus_1")
770 kwargs.setdefault(
"BR", BR)
771 kwargs.setdefault(
"Daughters",
"s_chi_0_1,a1(1260)-,nu_tau")
772 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
780 NeutralinoMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
"None"))
781 StauMass = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
"None"))
782 if NeutralinoMass
is not None and StauMass
is not None and StauMass - Mass_a1Meson > NeutralinoMass:
784 kwargs.setdefault(
"ParticleName",
"s_tau_plus_1")
785 kwargs.setdefault(
"BR", BR)
786 kwargs.setdefault(
"Daughters",
"s_chi_0_1,a1(1260)+,anti_nu_tau")
787 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
794 kwargs.setdefault(
"ParticleName",
"s_e_plus_R")
795 kwargs.setdefault(
"BR", 1.0)
796 kwargs.setdefault(
"Daughters",
"s_chi_0_1,e+")
797 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
803 kwargs.setdefault(
"ParticleName",
"s_e_minus_R")
804 kwargs.setdefault(
"BR", 1.0)
805 kwargs.setdefault(
"Daughters",
"s_chi_0_1,e-")
806 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
812 kwargs.setdefault(
"ParticleName",
"s_e_plus_L")
813 kwargs.setdefault(
"BR", 1.0)
814 kwargs.setdefault(
"Daughters",
"s_chi_0_1,e+")
815 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
821 kwargs.setdefault(
"ParticleName",
"s_e_minus_L")
822 kwargs.setdefault(
"BR", 1.0)
823 kwargs.setdefault(
"Daughters",
"s_chi_0_1,e-")
824 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
831 kwargs.setdefault(
"ParticleName",
"s_mu_plus_L")
832 kwargs.setdefault(
"BR", 1.0)
833 kwargs.setdefault(
"Daughters",
"s_chi_0_1,mu+")
834 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
840 kwargs.setdefault(
"ParticleName",
"s_mu_minus_L")
841 kwargs.setdefault(
"BR", 1.0)
842 kwargs.setdefault(
"Daughters",
"s_chi_0_1,mu-")
843 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
849 kwargs.setdefault(
"ParticleName",
"s_mu_plus_R")
850 kwargs.setdefault(
"BR", 1.0)
851 kwargs.setdefault(
"Daughters",
"s_chi_0_1,mu+")
852 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
858 kwargs.setdefault(
"ParticleName",
"s_mu_minus_R")
859 kwargs.setdefault(
"BR", 1.0)
860 kwargs.setdefault(
"Daughters",
"s_chi_0_1,mu-")
861 result.setPrivateTools( CompFactory.AddPhysicsDecayTool(name, **kwargs) )
869 if flags.Common.ProductionStep == ProductionStep.Simulation:
870 from G4AtlasServices.G4AtlasServicesConfig
import PhysicsListSvcCfg
871 from Gauginos.GauginosConfig
import GauginosPhysicsToolCfg
876 if "GMSBSlepton" in flags.Input.SpecialConfiguration:
885 if "GMSBStau" in flags.Input.SpecialConfiguration:
890 if "coannihilationStau" in flags.Input.SpecialConfiguration:
891 MassStau = eval(flags.Input.SpecialConfiguration.get(
"coannihilationStau",
'0'))
892 MassNeutralino = eval(flags.Input.SpecialConfiguration.get(
"coannihilationNeutralino",
'0'))
894 if MassStau > MassNeutralino + MassTau:
901 if (abs(MassStau-MassNeutralino - 300) > .05
and abs(MassStau-MassNeutralino - 1700) > 0.05):
902 print(
'Warning: Branching ratios are wrong. Mass splitting of stau neutralino %s currently has no available values.' % (MassStau - MassNeutralino))
923 if "coannihilationSlepton" in flags.Input.SpecialConfiguration:
933 result.getService(
"PhysicsListSvc").PhysOption += physicsOptions
939 if flags.Common.ProductionStep == ProductionStep.Simulation:
940 from G4AtlasServices.G4AtlasServicesConfig
import PhysicsListSvcCfg
943 simdict = flags.Input.SpecialConfiguration
944 assert "GMSBIndex" in simdict
947 if flags.Common.ProductionStep == ProductionStep.Simulation:
948 from Gauginos.GauginosConfig
import GauginosPhysicsToolCfg, NeutralinoToPhotonGravitinoCfg
949 GMSBIndex =
int(simdict[
"GMSBIndex"])
954 elif GMSBIndex == 2
or GMSBIndex == 3
or GMSBIndex == 4:
957 print (
'GMSBIndex %i not supported' % GMSBIndex)
960 result.getService(
"PhysicsListSvc").PhysOption += physicsOptions
965 kwargs.setdefault('TargetEvent',1)
966 kwargs.setdefault(
'VerboseLevel',1)
967 kwargs.setdefault(
'TargetPdgIDs',
996 from G4DebuggingTools.G4DebuggingToolsConfig
import VerboseSelectorToolCfg
1001 kwargs.setdefault('TargetEvent',1)
1002 kwargs.setdefault(
'VerboseLevel',1)
1003 kwargs.setdefault(
'TargetPdgIDs',
1032 from G4DebuggingTools.G4DebuggingToolsConfig
import VerboseSelectorToolCfg