예제 #1
0
folder = os.path.join(os.path.split(__file__)[0], 'output')

T_interaction_freezeout = 0.1 * UNITS.MeV
T_final = 0.0008 * UNITS.MeV
params = Params(T=5. * UNITS.MeV, dy=0.003125)

universe = Universe(params=params, folder=folder)

photon = Particle(**SMP.photon)
electron = Particle(**SMP.leptons.electron)

# Set linearly spaced grid for neutrinos (such that 3, 5 and 7 MeV are in the grid)
from common import LinearSpacedGrid

linear_grid = LinearSpacedGrid(MOMENTUM_SAMPLES=51,
                               MAX_MOMENTUM=50 * UNITS.MeV)
neutrino_e = Particle(**SMP.leptons.neutrino_e, grid=linear_grid)
neutrino_mu = Particle(**SMP.leptons.neutrino_mu, grid=linear_grid)
neutrino_mu.dof = 4

neutrino_e.decoupling_temperature = 5. * UNITS.MeV
neutrino_mu.decoupling_temperature = 5. * UNITS.MeV

universe.add_particles([photon, electron, neutrino_e, neutrino_mu])

universe.interactions += (SMI.neutrino_interactions(
    leptons=[electron],
    neutrinos=[neutrino_e, neutrino_mu],
))

universe.init_kawano(electron=electron, neutrino=neutrino_e)
예제 #2
0
mass = 150 * UNITS.MeV
theta = 1e-3

folder = utils.ensure_dir(
    os.path.split(__file__)[0], "output",
    "mass={:e}_theta={:e}_3p".format(mass / UNITS.MeV, theta))

T_initial = 5. * UNITS.MeV
T_final = 0.8 * UNITS.MeV
params = Params(T=T_initial, dy=0.003125)

universe = Universe(params=params, folder=folder)

from common import LinearSpacedGrid
linear_grid = LinearSpacedGrid(MOMENTUM_SAMPLES=1001,
                               MAX_MOMENTUM=500 * UNITS.MeV)
linear_grid_nu = LinearSpacedGrid(MOMENTUM_SAMPLES=1001,
                                  MAX_MOMENTUM=200 * UNITS.MeV)
linear_grid_s = LinearSpacedGrid(MOMENTUM_SAMPLES=51,
                                 MAX_MOMENTUM=20 * UNITS.MeV)

photon = Particle(**SMP.photon)
neutrino_e = Particle(**SMP.leptons.neutrino_e, **{
    'grid': linear_grid_nu,
    'thermal_dyn': False
})
neutral_pion = Particle(**SMP.hadrons.neutral_pion, **{
    'grid': linear_grid,
    'thermal_dyn': False
})
예제 #3
0

T_initial = Tdec
T_weak_decoupling = 5 * UNITS.MeV
T_final = 0.0008 * UNITS.MeV
params = Params(T=T_initial,
                dy=0.003125*4)

universe = Universe(params=params, folder=folder)

photon = Particle(**SMP.photon)
electron = Particle(**SMP.leptons.electron)
muon = Particle(**SMP.leptons.muon)


active_grid = LinearSpacedGrid(MOMENTUM_SAMPLES=201,
                               MAX_MOMENTUM=mass / T_washout * 1.5 * UNITS.MeV)
neutrino_e = Particle(**SMP.leptons.neutrino_e,
                      grid=active_grid)
neutrino_mu = Particle(**SMP.leptons.neutrino_mu,
                       grid=active_grid)
neutrino_tau = Particle(**SMP.leptons.neutrino_tau,
                        grid=active_grid)

sterile_grid = LogSpacedGrid(MOMENTUM_SAMPLES=51, MAX_MOMENTUM=20 * UNITS.MeV)
sterile = Particle(**NuP.dirac_sterile_neutrino(mass),
                   grid=sterile_grid)
sterile.decoupling_temperature = Tdec


universe.add_particles([
    photon,
예제 #4
0
import numpy as np

mass = 150 * UNITS.MeV
theta = 1e-3

folder = utils.ensure_dir(
    os.path.split(__file__)[0], "output",
    "mass={:e}_theta={:e}".format(mass / UNITS.MeV, theta))

T_initial = 5 * UNITS.MeV
T_final = 0.0008 * UNITS.MeV
params = Params(T=T_initial, dy=0.003125)

universe = Universe(params=params, folder=folder)

linear_grid = LinearSpacedGrid(MOMENTUM_SAMPLES=301,
                               MAX_MOMENTUM=600 * UNITS.MeV)
linear_grid_s = LinearSpacedGrid(MOMENTUM_SAMPLES=51,
                                 MAX_MOMENTUM=20 * UNITS.MeV)

photon = Particle(**SMP.photon)

electron = Particle(**SMP.leptons.electron, **{'grid': linear_grid})
muon = Particle(**SMP.leptons.muon, **{
    'grid': linear_grid,
    'thermal_dyn': False
})

neutrino_e = Particle(**SMP.leptons.neutrino_e, **{
    'grid': linear_grid,
    'thermal_dyn': False
})