Eisenstein97GrowthFactor

class hmf.cosmology.growth_factor.Eisenstein97GrowthFactor(cosmo: FLRW, **model_parameters)[source]

Growth factor calculated using the formulae in Eisenstein 1997.

This is the result from their Eqs 8-10, or equivalently in the technical docs.

This growth factor is only applicable for flat cosmology with a cosmological constant and negligible radiation (i.e. low redshifts).

Attributes

Methods

__init__(cosmo: FLRW, **model_parameters)
dlne_dlna(z)[source]

Compute the derivative of ln(E(a)) with respect to ln(a).

This is useful for the growth factor, which has terms \(E'(a)/E(a) \equiv (1/a)*dlnE/dlna\) in its definition.

We want the growth rate to be consistent with the growth factor, so we calculate a*H’(a)/H(a) under the same assumptions as directly assumed in the analytic formula for the growth factor, rather than using the cosmology given. This ensures that the growth rate is consistent with the growth factor, even if neither are consistent with the cosmology. The formula for D+ in Eisenstein 1997 assumes both flatness and negligible radiation, so we calculate a*H’(a)/H(a) under the same assumptions.

classmethod get_models() dict[str, type]

Get a dictionary of all implemented models for this component.

growth_factor(z)

Compute the normalized growth factor, \(D(a) = D^+(a)/D^+(a=1)\).

Parameters:

z (array_like) – Redshift.

Returns:

gf – The growth factor at z.

Return type:

array_like

growth_rate(z) float | ndarray

Compute the growth rate, \(f(a) = d\ln D^+ / d\ln a\).

Parameters:

z (array_like) – Redshift.

Returns:

gr – The growth rate at z.

Return type:

array_like

radiation_density(z)

The fractional radiation density as a function of redshift.