Library / Study
6 · Linear growth, P(k) & the FDM cutoff

Boltzmann codes: CAMB and axionCAMB

Fitting formulae are fast, but the gold standard is to solve the early-universe equations exactly. This article introduces Boltzmann codes, their fuzzy-dark-matter extension axionCAMB, and how we used it to prove our fast analytic pipeline is trustworthy.

What a Boltzmann code does

Codes like CAMB and CLASS integrate the coupled Boltzmann–Einstein equations for photons, baryons, neutrinos, and dark matter through cosmic history, producing the linear $P(k)$ essentially exactly for a given cosmology. They are the reference tools of the field — no fitting formula, just the equations.

The axion extension

axionCAMB extends CAMB to include an ultralight-axion (FDM) component, evolving its distinctive scale-dependent growth and quantum-pressure cutoff from first principles. Where the Hu–Barkana–Gruzinov transfer (Topic 6.3) is a fit, axionCAMB is the full Boltzmann solve.

Why we ran it

Our main results use the fast HBG transfer. To be sure that shortcut is trustworthy, we compiled axionCAMB on a compute box, generated the full Boltzmann FDM spectrum at our boson masses across $z=0$–$20$, and recomputed the mass function (figure).

Worked example — the cross-check result

The FDM power ratio from axionCAMB crosses $\tfrac12$ at $k\approx5$–$6\ h/$Mpc — matching our HBG half-mode $k_{1/2}=6.1$. The resulting mass functions agree to $\sim1$–$15\%$ across the bulk range at $z=3$–$7$, diverging only on the rare high-mass exponential tail at high $z$ where abundances are negligible. Conclusion: the fast analytic input is a sound approximation, not a crutch.

axionCAMB (Boltzmann) validation: the FDM mass function from the full solve (solid) matches the Hu-transfer fitting formula (dashed) across the resolved range; the ratio stays within $\pm20\%$ above the cutoff at $z=3$–$7$.

The takeaway

The Boltzmann cross-check means the campaign's conclusions are robust to the choice of linear input — the physics, not the approximation, drives the FDM suppression. It is the difference between a result that depends on a fitting formula and one that survives a first-principles calculation.

The axionCAMB (Boltzmann) power ratio crosses $\tfrac12$ at $k\sim5$–$6\,h/$Mpc — matching our Hu half-mode.
In our research

This is Figure 5 of our HMF/structure memo and upgrade (i) of the campaign: we built axionCAMB on box hep-1, ran $m_{22}=0.8,1.0$ across $z=0$–$20$, and confirmed the Figure-1 mass function to $\sim1$–$15\%$ — which is why we trust the fast pipeline for all of Task 1.

Key references
  • Lewis, Challinor & Lasenby (2000), CAMB, ApJ 538, 473 (arXiv:astro-ph/9911177).
  • Hlozek et al. (2015), axionCAMB / A search for ULA dark matter, Phys. Rev. D 91, 103512 (arXiv:1410.2896).
  • Grin et al. (2019), axionCAMB code.