Projective showers starting at entrance of calorimeter, flat in eta, constant energy
Definition at line 10 of file ParticleGun_SamplingFraction.py.
◆ __init__()
def ParticleGun_SamplingFraction.MyParticleSampler.__init__ |
( |
|
self, |
|
|
|
pid = 11 , |
|
|
|
momentum = 50000. , |
|
|
|
eta1 = 0. , |
|
|
|
eta2 = 1.4 , |
|
|
|
bec = 0 , |
|
|
|
radius = 1500. , |
|
|
|
z = 3740.5 |
|
) |
| |
Definition at line 15 of file ParticleGun_SamplingFraction.py.
15 def __init__(self,pid=11,momentum=50000.,eta1=0.,eta2=1.4,bec=0,radius=1500.,z=3740.5):
17 self.momentum = momentum
20 pdg_table = ROOT.TDatabasePDG.Instance()
21 self.mass = pdg_table.GetParticle(self.pid()).Mass()*1000.
◆ shoot()
def ParticleGun_SamplingFraction.MyParticleSampler.shoot |
( |
|
self | ) |
|
Definition at line 26 of file ParticleGun_SamplingFraction.py.
28 eta = random.uniform(self.eta1, self.eta2)
29 phi = random.uniform(0, math.tau)
30 v4 = ROOT.TLorentzVector()
31 pt = self.momentum / math.cosh(eta)
32 v4.SetPtEtaPhiM(pt, eta, phi, self.mass)
35 x=radius*math.cos(phi)
36 y=radius*math.sin(phi)
37 z=radius*math.sinh(eta)
40 radius=z/math.sinh(eta)
41 x=radius*math.cos(phi)
42 y=radius*math.sin(phi)
43 t=math.sqrt(x*x+y*y+z*z)
44 vp = ROOT.TLorentzVector(x,y,z,t)
45 p = PG.SampledParticle(pid=self.pid(),mom=v4,pos=vp)
◆ bec
ParticleGun_SamplingFraction.MyParticleSampler.bec |
◆ eta1
ParticleGun_SamplingFraction.MyParticleSampler.eta1 |
◆ eta2
ParticleGun_SamplingFraction.MyParticleSampler.eta2 |
◆ mass
ParticleGun_SamplingFraction.MyParticleSampler.mass |
◆ momentum
ParticleGun_SamplingFraction.MyParticleSampler.momentum |
◆ pid
ParticleGun_SamplingFraction.MyParticleSampler.pid |
◆ radius
ParticleGun_SamplingFraction.MyParticleSampler.radius |
ParticleGun_SamplingFraction.MyParticleSampler.z |
The documentation for this class was generated from the following file: