diff options
Diffstat (limited to 'test/test_generator_vertex.py')
-rw-r--r-- | test/test_generator_vertex.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/test/test_generator_vertex.py b/test/test_generator_vertex.py new file mode 100644 index 0000000..cec363d --- /dev/null +++ b/test/test_generator_vertex.py @@ -0,0 +1,23 @@ +import unittest +import itertools +import numpy as np +import chroma.generator.vertex + +class TestParticleGun(unittest.TestCase): + def test_constant_particle_gun_center(self): + '''Generate electron vertices at the center of the world volume.''' + vertex = chroma.generator.vertex.constant_particle_gun('e-', (0,0,0), (1,0,0), 100) + for ev in itertools.islice(vertex, 100): + self.assertEquals(ev.primary_vertex.particle_name, 'e-') + self.assertTrue(np.allclose(ev.primary_vertex.pos, [0,0,0])) + self.assertTrue(np.allclose(ev.primary_vertex.dir, [1,0,0])) + self.assertTrue(np.allclose(ev.primary_vertex.ke, 100)) + + def test_off_center(self): + '''Generate electron vertices at (1,0,0) in the world volume.''' + vertex = chroma.generator.vertex.constant_particle_gun('e-', (1,0,0), (1,0,0), 100) + for ev in itertools.islice(vertex, 100): + self.assertEquals(ev.primary_vertex.particle_name, 'e-') + self.assertTrue(np.allclose(ev.primary_vertex.pos, [1,0,0])) + self.assertTrue(np.allclose(ev.primary_vertex.dir, [1,0,0])) + self.assertTrue(np.allclose(ev.primary_vertex.ke, 100)) |