Source code for pyccl.massfunction

from . import ccllib as lib
from .pyutils import _vectorize_fn, _vectorize_fn2, _vectorize_fn4


[docs]def massfunc(cosmo, halo_mass, a, overdensity=200): """Tinker et al. (2010) halo mass function, dn/dlog10M. Args: cosmo (:obj:`Cosmology`): Cosmological parameters. halo_mass (float or array_like): Halo masses; Msun. a (float): scale factor. overdensity (float): overdensity parameter (default: 200) Returns: float or array_like: Halo mass function; dn/dlog10M. """ return _vectorize_fn4(lib.massfunc, lib.massfunc_vec, cosmo, halo_mass, a, overdensity)
[docs]def massfunc_m2r(cosmo, halo_mass): """Converts smoothing halo mass into smoothing halo radius. .. note:: This is R=(3M/(4*pi*rho_m))^(1/3), where rho_m is the mean matter density. Args: cosmo (:obj:`Cosmology`): Cosmological parameters. halo_mass (float or array_like): Halo masses; Msun. Returns: float or array_like: Smoothing halo radius; Mpc. """ return _vectorize_fn(lib.massfunc_m2r, lib.massfunc_m2r_vec, cosmo, halo_mass)
[docs]def sigmaM(cosmo, halo_mass, a): """Root mean squared variance for the given halo mass of the linear power spectrum; Msun. Args: cosmo (:obj:`Cosmology`): Cosmological parameters. halo_mass (float or array_like): Halo masses; Msun. a (float): scale factor. Returns: float or array_like: RMS variance of halo mass. """ return _vectorize_fn2(lib.sigmaM, lib.sigmaM_vec, cosmo, halo_mass, a)
[docs]def halo_bias(cosmo, halo_mass, a, overdensity=200): """Tinker et al. (2010) halo bias Args: cosmo (:obj:`Cosmology`): Cosmological parameters. halo_mass (float or array_like): Halo masses; Msun. a (float): Scale factor. overdensity (float): Overdensity parameter (default: 200). Returns: float or array_like: Halo bias. """ return _vectorize_fn4(lib.halo_bias, lib.halo_bias_vec, cosmo, halo_mass, a, overdensity)