halofit.f90 File Source

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
The `halofit' code models the nonlinear evolution of cold matter
cosmological power spectra. The full details of the way in which
this is done are presented in Smith et al. (2003), MNRAS, 341, 4

The code `halofit' was written by R. E. Smith & J. A. Peacock.
See http://www.astro.upenn.edu/~res

Subsequent updates as below
Only tested for basic models with power law initial power spectra
References for variant versions are
halofit_original: astro-ph/0207664
halofit_peacock: http://www.roe.ac.uk/~jap/haloes/
halofit_bird: arXiv: 1109.4416
halofit_takahashi: arXiv: 1208.2701
halofit_mead: arXiv:1505.07833,1602.02154
halofit_casarini: arXiv:0810.0190, arXiv:1601.07230


Adapted for F90 and CAMB, AL March 2005
BR09 Oct 09: generalized expressions for om(z) and ol(z) to include w


RT12 Oct: update some fitting parameters in the code to enhance
the power spectrum at small scales (arXiv:1208.2701)


JD 08/13: generalized expressions for om(z) and ol(z) to include
w_0 and w_a
SPB14 Feb: update the fitting parameters for neutrinos to work with RT12
modifications
AL Sept 14: added halofit_version parameter to change approximation used;
separate halofit.f90 is no longer needed as equations.f90 defined fixed wa_ppf
Jan 15: Suggested change from Simeon Bird to avoid issues with very large Omm and neutrinos
AM Mar 16: Added in HMcode
AM May 16: Fixed some small bugs and added better neutrino approximations
AL Jun16: put in partial openmp for HMcode (needs restructure to do properly)
AM Sep 16: Attempted fix of strange bug. No more modules with unallocated arrays as inputs
LC Oct 16: extended Halofit from w=const. models to w=w(a) with PKequal
AM May 17: Made the baryon feedback parameters more obvious in HMcode
AL Jul 17: fixed undefined z calling Tcb_Tcbnu_ratio
AM Jul 17: sped-up HMcode integration routines
AM May 18: Fixed bug in Dolag correction to c(M) power
AM Jul 19: Upgraded accuracy and bug fix for massive-neutrino models
AL Jul 19: Speedups, use linear interpolation for pk; find index using fixed spacing; precompute growth(z)
AL Sep 19: Propagate errors rather than stop, decrease jmax for integration time out (prevent very slow error)
AM Sep 20: Added HMcode-2020 model
AM Jan 23: Fixed HMcode-2020 feedback low-k predictions
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Modules

Dependencies