Evolving Dark Energy Calculator
Set \(w_0\) and \(w_a\) and see what moves against flat \(\Lambda\)CDM at the same redshift
\(\Lambda\)CDM assumes the dark energy density never changes — that is what the \(\Lambda\) means. The usual way to relax it lets the equation of state run linearly with scale factor, \(w(a) = w_0 + w_a(1 - a)\), so that \(w_0\) is the value today and \(w_0 + w_a\) the value in the distant past. Set \(w_0 = -1\) and \(w_a = 0\) and the two columns below agree to the last digit, because the model has become \(\Lambda\)CDM again. Move either one and the gap opens.
Every point in the plane below is a different dark energy history. Fitting the DESI DR1 BAO distances at that point — with \(r_\mathrm{d}\) held at the Planck value of 147.1 Mpc — gives the \(\Omega_\mathrm{m}\) and \(H_0\) that go with it. Move the pointer to read them off — the calculator beside it follows your pointer, and a click pins it.
At \(\Lambda\)CDM the fit returns \(\Omega_\mathrm{m} = 0.295\), which is the value DESI publishes from these data, so the machinery is doing what it should. The \(H_0\) beside it is worth reading carefully: BAO measures the product \(H_0 r_\mathrm{d}\), never \(H_0\) alone, so every number here is conditional on the 147.1 Mpc. DESI quotes a lower \(H_0\) from the same distances because it derives a slightly larger \(r_\mathrm{d}\) from big bang nucleosynthesis rather than fixing Planck's. The measured combination agrees; only the ruler differs.
DESI fits at this redshift
| \(\Lambda\)CDM | \(w_0w_a\)CDM | diff | |
|---|---|---|---|
| \(\Omega_\mathrm{m}\) | — | — | — |
| \(H_0\) [km/s/Mpc] | — | — | — |
| \(H(z)\) [km/s/Mpc] | — | — | — |
| age | — | — | — |
| lookback | — | — | — |
| \(D_\mathrm{M}/r_\mathrm{d}\) | — | — | — |
| \(D_\mathrm{H}/r_\mathrm{d}\) | — | — | — |
| \(\theta_\mathrm{BAO}\) [deg] | — | — | — |
| \(w(z)\) | — | — | — |
The diff column is the fractional change, (\(w_0w_a\)CDM − \(\Lambda\)CDM) / \(\Lambda\)CDM, in percent. \(\Omega_\mathrm{m}\) and \(H_0\) are not typed in: each column carries the values that fit the DESI BAO distances for its own dark energy history, at the \(r_\mathrm{d}\) above.
Computing the grid…
What the two columns share, and what they don't
Both columns solve the same Friedmann equation. The dark energy term differs by construction, and \(\Omega_\mathrm{m}\) and \(H_0\) differ because the data make them: choosing \(w_0\) and \(w_a\) already fixes what matter density and expansion rate the BAO distances will tolerate, so offering those as separate inputs would only let you build a universe the measurements reject. Where \(\Lambda\)CDM carries a constant \(\Omega_\Lambda\), the evolving model carries \(\Omega_\Lambda \times a^{-3(1+w_0+w_a)} e^{-3w_a(1-a)}\), which is exactly 1 when \(w_0 = -1\) and \(w_a = 0\). At that setting the fit hands both columns the same \(\Omega_\mathrm{m}\) and \(H_0\) as well, so the diff column reads zero throughout — the same arithmetic, not a close approximation.
For parameters this close to \(\Lambda\)CDM the gaps are well under one percent, and they do not all move the same way. With the DESI BAO fit loaded, \(H(z)\) sits below \(\Lambda\)CDM at \(z = 1\) and above it by \(z = 0.3\): the evolving density crosses the constant one on the way, and the diff column changes sign as it does. Sweep \(z\) downward and watch it happen near \(z \approx 0.5\). That crossing is the whole content of an evolving equation of state, and it is why one measurement at one redshift cannot separate the two models. You need the shape, across a range — which is what a survey of millions of galaxies at many redshifts is for.
The preset labelled DESI BAO fit is a fit to the DESI BAO distance measurements on their own — not DESI's published constraint, which combines BAO with the CMB and with supernovae and lands further from \(\Lambda\)CDM. Use it as a starting point to move from, not as a result to quote. The \(\Lambda\)CDM page describes where the published preference for evolution stands.
The age integral, the comoving distance and \(\theta_\mathrm{BAO}\) are computed as on the cosmology calculator, by Simpson's rule under the substitution \(a = 1/(1+z)\). The linear \(w(a)\) form is an extrapolation far outside the range it was built to describe, so the redshift here is capped at 1100 rather than the \(10^7\) the \(\Lambda\)CDM calculator allows.