import os

geometry_root_dir = os.environ['ERIT_ROOT']

verbose_level = 0
physics_processes = "none"

simulation_geometry_filename = os.path.join(geometry_root_dir, "maus", "erit_geometry.dat")
geant4_visualisation = False
visualisation_viewer = "OGLIXm"
visualisation_theta = 90.
visualisation_phi = 90.

spill_generator_number_of_spills = 1
beam_defs = []
n_particles = 101
for particle_index in range(n_particles):
    if n_particles == 1:
        radius = 2350.
    else:
        radius = 2350.-260.+520.*float(particle_index)/float(n_particles-1)
    beam_defs.append({
        "reference":{
            "position":{"x":radius, "y":-0.0, "z":-500.0},
            "momentum":{"x":0.0, "y":0.0, "z":1.0},
            "particle_id":2112, "energy":10000., "time":0.0, "random_seed":1, # neutrons
         },
        "random_seed_algorithm":"incrementing_random", # algorithm for seeding MC
        "n_particles_per_spill":1, # probability of generating a particle
        "transverse":{
            "transverse_mode":"pencil", # transverse distribution matched to constant solenoid field
        },
        "longitudinal":{
            "longitudinal_mode":"pencil", # longitudinal distribution sawtooth in time
            "momentum_variable":"p", # Gaussian in total momentum (options energy, pz)
        }, # end time of sawtooth
        "coupling":{"coupling_mode":"none"} # no dispersion
    })

beam = {
    "particle_generator":"counter", # routine for generating empty primaries
    "random_seed":0, # random seed for beam generation; controls also how the MC
                     # seeds are generated
    "definitions":beam_defs
}

