hmfast.halos.profiles.Z07GalaxyHODProfile
- class hmfast.halos.profiles.Z07GalaxyHODProfile(sigma_log10M=0.68, alpha_s=1.3, M1_prime=7413102413009.162, M_min=933254300796.9924, M0=0.0)[source]
Bases:
GalaxyHODProfileHOD profile from Zheng et al. (2007), generalized to match implementations such as Zehavi et al. (2011) and related extensions.
In this model, the real-space galaxy profile is written as
\[u_r(r, m, z) = \frac{1}{\bar{n}_g(z)} \left[N_{\mathrm{cen}}(m) + N_{\mathrm{sat}}(m) \, u_{\mathrm{sat}}(r, m, z)\right] \tag{1}\]where \(u_{\mathrm{sat}}(r, m, z)\) is taken to be the NFW satellite profile. Central galaxies are naturally assumed to live at the halo center, so their real-space density profile is a Dirac delta function, while satellite galaxies are assumed to be randomly distributed according to an NFW-like radial profile.
The occupation functions are
\[N_{\mathrm{cen}}(m) = \frac{1}{2} \left[1 + \mathrm{erf}\left( \frac{\log_{10} m - \log_{10} M_{\mathrm{min}}}{\sigma_{\log_{10} M}} \right)\right] \tag{2}\]\[N_{\mathrm{sat}}(m) = H(m - M_0) \, N_{\mathrm{cen}}(m) \, \left(\frac{m - M_0}{M_1'}\right)^{\alpha_s} \tag{3}\]with the power-law term set to zero when \(m < M_0\).
The mean comoving galaxy number density is
\[\bar{n}_g(z) = \int d\ln M \, \frac{dn}{d\ln M}(M, z) \left[N_{\mathrm{cen}}(M) + N_{\mathrm{sat}}(M)\right] \tag{4}\]where \(dn / d\ln M\) is the halo model’s halo mass function, and the large-scale galaxy bias is
\[b_g(z) = \frac{1}{\bar{n}_g(z)} \int d\ln M \, \frac{dn}{d\ln M}(M, z) \, b^{(1)}_h(M, z) \left[N_{\mathrm{cen}}(M) + N_{\mathrm{sat}}(M)\right] \tag{5}\]Here \(b_h^{(1)}\) is the halo model’s first-order halo bias.
- Attributes:
- sigma_log10Mfloat
Scatter parameter \(\sigma_{\log_{10} M}\) controlling the width of the central-galaxy occupation threshold. Dimensionless.
- alpha_sfloat
Power-law slope \(\alpha_s\) of the satellite occupation. Dimensionless.
- M1_primefloat
Characteristic satellite mass scale \(M_1'\) entering the normalization of \(N_{\mathrm{sat}}\), in physical \(M_{\odot}\).
- M_minfloat
Central-occupation threshold mass \(M_{\mathrm{min}}\), in physical \(M_{\odot}\).
- M0float
Satellite cutoff mass \(M_0\) below which the satellite occupation vanishes, in physical \(M_{\odot}\).
Methods
fourier(halo_model, k, m, z)Fourier-space galaxy HOD profile.
galaxy_bias(halo_model, m, z)Large-scale galaxy bias at redshift
z.n_cen(halo_model, m)Expected number of central galaxies in a halo of mass
m.n_sat(halo_model, m)Expected number of satellite galaxies in a halo of mass
m.ng_bar(halo_model, m, z)Comoving mean galaxy number density at redshift
z.real(halo_model, r, m, z)Real-space galaxy HOD profile.
update([sigma_log10M, alpha_s, M1_prime, ...])Return a new profile instance with updated HOD parameters.
- update(sigma_log10M=None, alpha_s=None, M1_prime=None, M_min=None, M0=None)[source]
Return a new profile instance with updated HOD parameters.
- Parameters:
- sigma_log10M, alpha_s, M1_prime, M_min, M0float, optional
Replacement values for the corresponding class attributes. The mass parameters
M1_prime,M_min, andM0are specified in physical \(M_{\odot}\). Any argument left asNonekeeps its current value.
- Returns:
- Z07GalaxyHODProfile
New profile instance with updated parameters.
- n_cen(halo_model, m)[source]
Expected number of central galaxies in a halo of mass
m.See Eq. (2) for the explicit form of \(N_{\mathrm{cen}}(m)\).
- Parameters:
- halo_modelHaloModel
The parent halo model instance.
- marray-like
Halo mass in physical \(M_{\odot}\).
- Returns:
- n_cenarray-like
Expected number of central galaxies per halo.
- n_sat(halo_model, m)[source]
Expected number of satellite galaxies in a halo of mass
m.See Eq. (3) for the explicit form of \(N_{\mathrm{sat}}(m)\).
- Parameters:
- halo_modelHaloModel
The parent halo model instance.
- marray-like
Halo mass in physical \(M_{\odot}\).
- Returns:
- n_satarray-like
Expected number of satellite galaxies per halo.
- ng_bar(halo_model, m, z)[source]
Comoving mean galaxy number density at redshift
z.See Eq. (4) for \(\bar{n}_g(z)\).
- Parameters:
- halo_modelHaloModel
The parent halo model instance.
- marray-like
Halo mass grid in physical \(M_{\odot}\).
- zarray-like
Redshift grid.
- Returns:
- ngarray-like
Mean galaxy number density as a function of redshift in comoving \(\mathrm{Mpc}^{-3}\), with shape \((N_z,)\), where singleton dimensions get squeezed before return.
- galaxy_bias(halo_model, m, z)[source]
Large-scale galaxy bias at redshift
z.See Eq. (5) for \(b_g(z)\).
- Parameters:
- halo_modelHaloModel
The parent halo model instance.
- marray-like
Halo mass grid in physical \(M_{\odot}\).
- zarray-like
Redshift grid.
- Returns:
- biasarray-like
Large-scale galaxy bias as a function of redshift. Dimensionless, with shape \((N_z,)\), where singleton dimensions get squeezed before return.
- real(halo_model, r, m, z)[source]
Real-space galaxy HOD profile.
This evaluates Eq. (1), with \(u_{\mathrm{sat}}\) identified with the NFW satellite profile.
- Parameters:
- halo_modelHaloModel
The parent halo model instance.
- rfloat or jnp.ndarray
Radius or radii in \(\mathrm{Mpc}\).
- mfloat or jnp.ndarray
Halo mass grid in physical \(M_{\odot}\).
- zfloat or jnp.ndarray
Redshift grid.
- Returns:
- jnp.ndarray
Real-space profile with shape \((N_r, N_m, N_z)\), where singleton dimensions get squeezed before return.
- fourier(halo_model, k, m, z)[source]
Fourier-space galaxy HOD profile.
This is the Fourier-space analogue of Eq. (1), with the satellite term traced by the NFW matter profile in Fourier space using the analytic Fourier transform of \(u_{\mathrm{sat}}\).
- Parameters:
- halo_modelHaloModel
The parent halo model instance.
- karray-like
Wavenumber grid in \(\mathrm{Mpc}^{-1}\).
- marray-like
Halo mass grid in physical \(M_{\odot}\).
- zarray-like
Redshift grid.
- Returns:
- jnp.ndarray
Fourier-space profile with shape \((N_k, N_m, N_z)\), where singleton dimensions get squeezed before return.