import unittest import chroma.generator.photon from chroma.generator.vertex import constant_particle_gun from chroma.optics import water_wcsim class TestG4ParallelGenerator(unittest.TestCase): def test_center(self): '''Generate Cherenkov light at the center of the world volume''' gen = chroma.generator.photon.G4ParallelGenerator(1, water_wcsim) vertex = constant_particle_gun('e-', (0,0,0), (1,0,0), 100) for event in gen.generate_events(10, vertex): self.assertGreater(len(event.photon_start.positions), 0) def test_off_center(self): '''Generate Cherenkov light at (1 m, 0 m, 0 m)''' gen = chroma.generator.photon.G4ParallelGenerator(1, water_wcsim) vertex = constant_particle_gun('e-', (1,0,0), (1,0,0), 100) for event in gen.generate_events(10, vertex): self.assertGreater(len(event.photon_start.positions), 0)