darkmatter 0.0.2

Dark matter simulation engine — gravitational fields, particle dynamics, halo stability, and cosmological constants
Documentation
use darkmatter::physics::phase_space::{
    bose_einstein_dm, chandrasekhar_mass_fermionic_dm, coarse_grained_phase_space_density,
    degenerate_fermi_pressure, fermi_dirac_dm, isothermal_distribution, king_distribution,
    max_phase_space_density_fermionic, number_density_bosonic, number_density_fermionic,
    phase_space_temperature, tremaine_gunn_bound_ev, warm_dm_free_streaming_cutoff_ev,
};

fn main() {
    let f_fd = fermi_dirac_dm(1e-24, 0.01, 100.0, 99.0);
    let f_be = bose_einstein_dm(1e-24, 0.01, 100.0, 99.0);

    let n_f = number_density_fermionic(0.1, 10.0);
    let n_b = number_density_bosonic(0.1, 10.0);

    let m_tg = tremaine_gunn_bound_ev(10.0, 10.0);
    let q_max = max_phase_space_density_fermionic(10.0, 2.0);
    let q_cg = coarse_grained_phase_space_density(1e-25, 200e3);

    let m_fs = warm_dm_free_streaming_cutoff_ev(0.001, 1.0);
    let f_king = king_distribution(-0.5, 1.0, 1e-25);
    let f_iso = isothermal_distribution(100.0, 220.0);

    let p_fermi = degenerate_fermi_pressure(10.0, 1e-20);
    let m_ch = chandrasekhar_mass_fermionic_dm(10.0);
    let t_ps = phase_space_temperature(1e-25, 200e3, 10.0);

    let total = f_fd
        + f_be
        + n_f
        + n_b
        + m_tg
        + q_max
        + q_cg
        + m_fs
        + f_king
        + f_iso
        + p_fermi
        + m_ch
        + t_ps;
    assert!(total.is_finite());
}