ATLAS Offline Software
ParticleGunConfig.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
3 
4 
5 
6 def ParticleGunBaseCfg(flags):
7  result = ComponentAccumulator()
8  import ParticleGun as PG
9  pg = PG.ParticleGun(randomStream = "SINGLE", randomSeed = flags.Random.SeedOffset)
10  result.addEventAlgo(pg)
11  return result
12 
13 
15  result = ComponentAccumulator()
16  import ParticleGun as PG
17  pg = PG.ParticleGun(randomStream = "SINGLE", randomSeed = flags.Random.SeedOffset)
18  pg.samplers.append(PG.ParticleSampler()) # add a second sampler
19  pg.samplers[0].pid = (-13, 13) # cycle mu+-
20  pg.samplers[0].mom = PG.PtEtaMPhiSampler(pt=[4000, 100000], eta=[1.0, 3.2]) # flat in pt and +ve eta
21  pg.samplers[1].pid = (13, -13) # cycle mu-+
22  pg.samplers[1].mom = PG.PtEtaMPhiSampler(pt=[4000, 100000], eta=[-3.2, -1.0]) # flat in pt and -ve eta
23  result.addEventAlgo(pg)
24  return result
25 
26 
28  result = ComponentAccumulator()
29  import ParticleGun as PG
30  pg = PG.ParticleGun(randomStream = "SINGLE", randomSeed = flags.Random.SeedOffset)
31  pg.sampler.pid = 13
32  pg.sampler.mom = PG.EEtaMPhiSampler(energy=10000, eta=[-1,1])
33  result.addEventAlgo(pg)
34  return result
35 
36 
38  result = ComponentAccumulator()
39  import ParticleGun as PG
40  pg = PG.ParticleGun(randomStream = "SINGLE", randomSeed = flags.Random.SeedOffset)
41  pg.sampler.pid = PG.CyclicSeqSampler([-13,13])
42  pg.sampler.mom = PG.PtEtaMPhiSampler(pt=50000, eta=[-4,4])
43  result.addEventAlgo(pg)
44  return result
45 
46 
48  result = ComponentAccumulator()
49  import ParticleGun as PG
50  pg = PG.ParticleGun(randomStream = "SINGLE", randomSeed = flags.Random.SeedOffset)
51  pg.sampler.pid = PG.CyclicSeqSampler([-11,11])
52  pg.sampler.mom = PG.PtEtaMPhiSampler(pt=10000, eta=[-3,3])
53  result.addEventAlgo(pg)
54  return result
55 
56 
58  result = ComponentAccumulator()
59  import ParticleGun as PG
60  pg = PG.ParticleGun(randomStream = "SINGLE", randomSeed = flags.Random.SeedOffset)
61  pg.sampler.pid = PG.CyclicSeqSampler([-211,211])
62  pg.sampler.mom = PG.PtEtaMPhiSampler(pt=50000, eta=[-4,4])
63  result.addEventAlgo(pg)
64  return result
65 
66 
68  flags.BField.solenoidOn=False
69  flags.BField.barrelToroidOn=False
70  flags.BField.endcapToroidOn=False
71  from SimulationConfig.SimEnums import VertexSource
72  flags.Sim.VertexSource=VertexSource.AsGenerated
73  flags.Sim.GenerationConfiguration="ParticleGun.ParticleGunConfig.ParticleGun_ALFA_SingleParticleCfg"
74  from ForwardTransportSvc.ForwardTransportSvcConfig import ForwardTransportBeta90mPreInclude
76 
77 
79  result = ComponentAccumulator()
80  import ParticleGun as PG
81  pg = PG.ParticleGun(randomStream = "SINGLE", randomSeed = flags.Random.SeedOffset)
82  pg.sampler.pid = 2212
83  pg.sampler.mom = PG.EEtaMPhiSampler(energy=3500000, eta=10)
84  result.addEventAlgo(pg)
85  return result
86 
87 
89  from SimulationConfig.SimEnums import VertexSource
90  flags.Sim.VertexSource=VertexSource.AsGenerated
91  flags.Sim.GenerationConfiguration="ParticleGun.ParticleGunConfig.ParticleGun_ZDC_SingleParticleCfg"
92  from ForwardTransportSvc.ForwardTransportSvcConfig import ForwardTransportBeta055mPreInclude
94 
95 
97  result = ComponentAccumulator()
98  import ParticleGun as PG
99  pg = PG.ParticleGun(randomStream = "SINGLE", randomSeed = flags.Random.SeedOffset)
100  pg.sampler.pid = PG.CyclicSeqSampler([2112, 22, 2112, 22])
101  esampler = PG.CyclicSeqSampler([1360000, 500000, 1360000, 500000])
102  thsampler = PG.CyclicSeqSampler([0, 0, PG.PI, PG.PI])
103  pg.sampler.mom = PG.EThetaMPhiSampler(energy=esampler, theta=thsampler)
104  result.addEventAlgo(pg)
105  return result
106 
107 
109  result = ComponentAccumulator()
110  import ParticleGun as PG
111  pg = PG.ParticleGun(randomStream = "SINGLE", randomSeed = flags.Random.SeedOffset)
112  # 50 GeV pions
113  #pg.sampler.pid = 211
114  #pg.sampler.pos = PG.PosSampler(x=-27500, y=[-10,15], z=[-15,15], t=-27500)
115  #pg.sampler.mom = PG.EEtaMPhiSampler(energy=50000, eta=0, phi=0)
116 
117  # 100 GeV electrons - use for sampling faction calculation
118  #pg.sampler.pid = 11
119  #pg.sampler.pos = PG.PosSampler(x=-27500, y=[-20,20], z=[-15,15], t=-27500)
120  #pg.sampler.mom = PG.EEtaMPhiSampler(energy=100000, eta=0, phi=0)
121 
122  pg.sampler.pid = flags.TestBeam.BeamPID
123  pg.sampler.pos = PG.PosSampler(
124  x=-27500,
125  y=flags.TestBeam.Ybeam,
126  z=flags.TestBeam.Zbeam,
127  t=-27500)
128  pg.sampler.mom = PG.EEtaMPhiSampler(
129  energy=flags.TestBeam.BeamEnergy,
130  eta=0,
131  phi=0)
132  result.addEventAlgo(pg)
133  return result
python.ParticleGunConfig.ParticleGun_SingleElectronCfg
def ParticleGun_SingleElectronCfg(flags)
Definition: ParticleGunConfig.py:47
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
ForwardTransportSvcConfig.ForwardTransportBeta055mPreInclude
def ForwardTransportBeta055mPreInclude(flags)
Definition: ForwardTransportSvcConfig.py:7
python.ParticleGunConfig.ParticleGun_SinglePionCfg
def ParticleGun_SinglePionCfg(flags)
Definition: ParticleGunConfig.py:57
python.ParticleGunConfig.ALFA_SingleParticlePreInclude
def ALFA_SingleParticlePreInclude(flags)
Definition: ParticleGunConfig.py:67
python.ParticleGunConfig.ParticleGun_ALFA_SingleParticleCfg
def ParticleGun_ALFA_SingleParticleCfg(flags)
Definition: ParticleGunConfig.py:78
python.ParticleGunConfig.ParticleGun_TestBeam_SingleParticleCfg
def ParticleGun_TestBeam_SingleParticleCfg(flags)
Definition: ParticleGunConfig.py:108
python.ParticleGunConfig.ZDC_SingleParticlePreInclude
def ZDC_SingleParticlePreInclude(flags)
Definition: ParticleGunConfig.py:88
python.ParticleGunConfig.ParticleGun_flatpt_2particleCfg
def ParticleGun_flatpt_2particleCfg(flags)
Definition: ParticleGunConfig.py:14
python.ParticleGunConfig.ParticleGunBaseCfg
def ParticleGunBaseCfg(flags)
Definition: ParticleGunConfig.py:6
python.ParticleGunConfig.ParticleGun_ZDC_SingleParticleCfg
def ParticleGun_ZDC_SingleParticleCfg(flags)
Definition: ParticleGunConfig.py:96
ForwardTransportSvcConfig.ForwardTransportBeta90mPreInclude
def ForwardTransportBeta90mPreInclude(flags)
Definition: ForwardTransportSvcConfig.py:17
python.ParticleGunConfig.ParticleGun_SingleMuonCfg
def ParticleGun_SingleMuonCfg(flags)
Definition: ParticleGunConfig.py:37
python.ParticleGunConfig.ParticleGun_SingleMuonBasicCfg
def ParticleGun_SingleMuonBasicCfg(flags)
Definition: ParticleGunConfig.py:27