Haloes & P(k)
The halo modelA popular analytic model for the nonlinear distribution of cosmological mass and galaxies is the 'Halo model'. The name was given by Martin White, but the original idea goes back to papers in 2000 by myself with Robert Smith, and an independent publication at the same time by Uros Seljak.
HALOFITAlthough it provides an important explanatory framework for galaxy bias and clustering, and a reasonable level of precision, the halo model does not match N-body data perfectly, and the Virgo Consortium attempted to produce a more accurate fitting formula for the matter power spectrum based on the same ideas. This was described in a 2003 paper led by Robert Smith.
The original HALOFIT code from that paper is available here (Fortran 77).
The code has been re-written and optimized in C by Martin Kilbinger, and this HALOFIT+ code is also available here.
HALOFIT has received a lot of use, and has been incorporated into CMB packages such as CMBFAST and CAMB. Nevertheless, it is not perfect: it reflected accurately the state of the art of simulations as of 2003, but subsequent work has pushed measurements to smaller scales and higher degrees of nonlinearity. This has revealed that HALOFIT tends to underpredict the power on the smallest scales in standard LCDM universes (although HALOFIT was designed to work for a much wider range of power spectra). This is demonstrated in the context of gravitational lensing by Hilbert et al. (2009).
For standard LCDM (only) the following approximate correction to the HALOFIT recipe will give improved accuracy. A more elaborate refinement of the HALOFIT formula should be produced in due course, but this correction captures the main effect, which is that the power is underestimated by about a factor 2 on the very smallest scales of all, in a manner that is approximately independent of redshift:
(P-P_linear) -> (P-P_linear) * (1+2y^2)/(1+y^2), where y = k/10 h Mpc^(-1).