Custom NEVO (neutrino-decoupling) tables¶
The neutrino-decoupling history is read from data/NEVO/. Three optional
parameters point at alternative tables instead (filenames resolved relative
to data/NEVO/, or absolute paths); each defaults to None, which keeps
the shipped file selected by QED_corrections/incomplete_decoupling:
Parameter |
Replaces |
Expected shape |
|---|---|---|
|
|
6 or 7 columns |
|
|
6 thermo columns + N spectral columns (86 in the shipped tables) |
|
|
length = N (the spectral table’s column count minus 6) |
from primat.backend import run_bbn
result = run_bbn({"nevo_file": "my_NEVO_col_1_7.csv"})
A custom file is checked for existence and shape at construction time
(PRIMATConfig.__init__ raises ValueError early on a mismatch), and is
included in the n↔p weak-rate cache fingerprint so pointing at a different
table correctly triggers a recompute (see The n↔p weak-rate cache workflow).
nevo_grid_file is currently assumed to be a Gauss-Laguerre quadrature; the
format for handing NEVO results to primat will evolve in future releases.
nevo_file_prefix¶
A single knob that rebuilds all four default filenames at once:
<prefix>[_NoQED]_col_1_7.csv, <prefix>[_NoQED].csv, and the shared
NEVOGrid.csv (not prefixed). It is ignored for any file selected
explicitly via nevo_file/nevo_spectral_file (those still win), and has
no effect when incomplete_decoupling=False. A custom prefix is your
responsibility to keep self-consistent with the shipped conventions;
PRIMATConfig.__init__ still checks the derived files exist with the
expected shape.
result = run_bbn({"nevo_file_prefix": "MyNEVO"})
external_scale_factor¶
When True, a(T_γ) is read directly from the NEVO table’s x column
(x ∝ a by the NEVO convention) instead of solved from the
entropy-conservation ODE driven by the NEVO heating function N_NEVO(T_γ).
t(a) is unchanged (Hubble integration in both modes). Requires
incomplete_decoupling=True. The two modes agree to ~1e-5 in a(T)/t(T)
and reproduce the same Neff/YPBBN/D/H to the quoted precision.
result = run_bbn({"incomplete_decoupling": True, "external_scale_factor": True})
This mode is mutually exclusive with Custom backgrounds and extra_rho’s
custom_background mechanism.