Yung24

class hmf.mass_function.fitting_functions.Yung24(*args, **kwargs)[source]

Yung+24 GUREFT halo mass function fit, calibrated for \(z=6{-}19\).

The functional form follows Tinker08 / Rodriguez-Puebla16, with the four parameters \(A, a, b, c\) each expressed as a quadratic polynomial in redshift \(\chi(z) = \chi_0 + \chi_1 z + \chi_2 z^2\). Best-fit coefficients come from the combined gureft + MultiDark fit in Yung+24 Appendix A.

Parameters:

units ({"h", "physical"}, optional) – Selects the parameter table. "h" (default) uses Table A1, calibrated for masses in \(M_\odot/h\) and volumes in \({\rm Mpc}^{-3} h^3 {\rm dex}^{-1}\) – matching hmf’s standard internal convention. "physical" uses Table A2, calibrated for masses in \(M_\odot\) and volumes in \({\rm Mpc}^{-3} {\rm dex}^{-1}\).

Raises:

ValueError – If z is outside the calibration range \([6, 19]\).

Notes

The Yung+24 [1] form is:

\[f_{\rm Yung24}(\sigma) = A(z)\left[\left(\frac{\sigma}{b(z)}\right)^{-a(z)} + 1\right]\exp\left(-\frac{c(z)}{\sigma^2}\right)\]

The *_0, *_1 and *_2 parameters below are \(\chi_0, \chi_1, \chi_2\) for \(\chi \in \{A, a, b, c\}\). The defaults are those for units="h"; with units="physical" any coefficients not passed explicitly are taken from Table A2 instead.

Default model parameters (override them with keyword arguments, or with hmf_params in MassFunction):

Parameter

Default

A_0

0.11416632

A_1

-0.01486746

A_2

0.00137191

a_0

1.05274399

a_1

0.02803087

a_2

-0.00306126

b_0

8.6281302

b_1

0.00384969

b_2

-0.02349983

c_0

1.13138924

c_1

0.01713172

c_2

-0.0011363

units

‘h’

References

[1]

Yung, L.Y.A., Somerville, R.S., Nguyen, T., Behroozi, P., Modi, C., Gardner, J.P., 2024. MNRAS 530, 4868. arXiv:2309.14408

Attributes

cutmask

Boolean mask of the elements within the fit’s calibrated range.

Has the same length as nu2. An element is True if the corresponding mass (or \(\sigma\), depending on the model) lies inside the range over which the fit was calibrated against simulations, as given in the reference paper. Elements outside that range are False: fsigma is still computed there, but is an extrapolation. The default is True everywhere. The mask is informational only; it is not applied anywhere in hmf.

fsigma

The function \(f(\sigma)\equiv\nu f(\nu)\).

lnsigma

Negative log of sigma.

normalized = False

Whether this model is normalized so that all mass is in halos

nu

The peak height, \(\nu = \delta_c/\sigma\).

omegam_z

Normalised matter density at current redshift.

references: ClassVar[tuple[str, ...]] = ('Yung, L.Y.A., Somerville, R.S., Nguyen, T., Behroozi, P., Modi, C., Gardner, J.P., 2024. MNRAS 530, 4868. arXiv:2309.14408',)

References to cite when this model is used, each a formatted citation string. Subclasses inherit their parent’s references unless they set their own.

req_mass = False

Whether m is required for this subclass

req_neff = False

Whether n_eff is required for this subclass

req_z = True
sigma

The sqrt of mass variance as a function of mass.

sim_definition = <hmf.mass_function.fitting_functions.SimDetails object>

Details of the defining simulation, instance of SimDetails

Methods

classmethod get_measured_mdef()

Get the mass definition used in the defining simulation.

classmethod get_models() → Mapping[str, type]

Get a read-only mapping of all implemented models for this component.

The mapping is a live view of the registry, so it shows models registered later, but it can not be used to add or remove models.