![]() |
![]() |
![]() |
NumCosmo Reference Manual | ![]() |
---|---|---|---|---|
Top | Description | Object Hierarchy | Properties |
Cosmological Distances and TimesCosmological Distances and Times — Calculates the cosmological distances and related quantities. |
Synopsis
struct NcDistance; struct NcDistanceClass; gdouble (*NcDistanceFunc0) (NcDistance *dist
,NcHICosmo *cosmo
); gdouble (*NcDistanceFunc1) (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
); gdouble nc_distance_Omega_k (NcDistance *dist
,NcHICosmo *cosmo
); gdouble nc_distance_acoustic_scale (NcDistance *dist
,NcHICosmo *cosmo
); gdouble nc_distance_bao_A_scale (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
); gdouble nc_distance_bao_r_Dv (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
); void nc_distance_clear (NcDistance **dist
); gdouble nc_distance_comoving (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
); gdouble nc_distance_comoving_a0 (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
); gdouble nc_distance_comoving_a0_lss (NcDistance *dist
,NcHICosmo *cosmo
); gdouble nc_distance_comoving_lss (NcDistance *dist
,NcHICosmo *cosmo
); gdouble nc_distance_conformal_lookback_time (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
); gdouble nc_distance_conformal_time (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
); gdouble nc_distance_conformal_time_mks_scale (NcDistance *dist
,NcHICosmo *cosmo
); gdouble nc_distance_cosmic_time (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
); gdouble nc_distance_cosmic_time_mks_scale (NcDistance *dist
,NcHICosmo *cosmo
); gdouble nc_distance_curvature (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
); gdouble nc_distance_decoupling_redshift (NcDistance *dist
,NcHICosmo *cosmo
); gdouble nc_distance_dilation_scale (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
); gdouble nc_distance_drag_redshift (NcDistance *dist
,NcHICosmo *cosmo
); void nc_distance_free (NcDistance *dist
); NcmMSetFunc * nc_distance_func0_new (NcDistance *dist
,NcDistanceFunc0 f0
); NcmMSetFunc * nc_distance_func1_new (NcDistance *dist
,NcDistanceFunc1 f1
); gdouble nc_distance_hubble (NcDistance *dist
,NcHICosmo *cosmo
); gdouble nc_distance_lookback_time (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
); gdouble nc_distance_luminosity (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
); gdouble nc_distance_luminosity_hef (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z_he
,gdouble z_cmb
); gdouble nc_distance_modulus (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
); gdouble nc_distance_modulus_hef (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z_he
,gdouble z_cmb
); NcDistance * nc_distance_new (gdouble z_f
); void nc_distance_prepare (NcDistance *dist
,NcHICosmo *cosmo
); void nc_distance_prepare_if_needed (NcDistance *dist
,NcHICosmo *cosmo
); NcDistance * nc_distance_ref (NcDistance *dist
); gdouble nc_distance_shift_parameter (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
); gdouble nc_distance_shift_parameter_lss (NcDistance *dist
,NcHICosmo *cosmo
); gdouble nc_distance_sound_horizon (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
); gdouble nc_distance_transverse (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
);
Description
This object implements several distances used in cosmology, here we have the following definitions.
The Hubble scale is simply defined as the inverse of the Hubble function
\begin{equation}\label{eq:def:DH}
D_H(z) = \frac{c}{H(z)}, \qquad D_{H0} = \frac{c}{H_0}.
\end{equation}
where $c$ is the speed of light [ncm_c_c()
], $H(z)$ is the Hubble function
and $H_0 \equiv H(0)$ is the Hubble parameter. The comoving distance $D_c$ is
defined as
\begin{equation}\label{eq:def:Dc}
D_c(z) = \int_0^z\frac{1}{E},
\end{equation}
where $z$ is the redshift and $E$ is the Hubble function over the Hubble
parameter, i.e., $$E \equiv \frac{H(z)}{H_0}.$$ Note that both quantities are
adimensional, in other words, one can think them as in units of the Hubble
scale today.
The curvature distance is defined as
\begin{equation}\label{eq:def:Dk}
D_k(z) = \sqrt{\vert\Omega_{k0}\vert}D_c(z),
\end{equation}
where $\Omega_{k0}$ is the value of the curvature today [nc_hicosmo_Omega_k()
].
The transverse distance $D_t$ and its derivative with respect to $z$ are
given by
\begin{equation}\label{eq:def:Dt}
D_t(z) = \frac{\sinh\left(\sqrt{\Omega_{k0}}D_c(z)\right)}{\sqrt{\Omega_{k0}}},
\qquad \frac{dD_t}{dz}(z) = \frac{\cosh\left(\sqrt{\Omega_{k0}}D_c(z)\right)}{E(z)}.
\end{equation}
Using the definition above we have the luminosity distance simply
\begin{equation}\label{eq:def:Dl}
D_l = (1+z)D_t(z).
\end{equation}
Then, the distance modulus is defined by the following expression
\begin{equation}\label{eq:def:mu}
\mu(z) = 5\log_{10}(D_l(z)) + 25,
\end{equation}
where $\log_{10}$ represents the logarithm in the decimal base. Note that
the distance modulus is usually defined as
$$5\log_{10}(D_{H0}D_l(z)/\text{pc}) - 5,$$
where $\text{pc}$ is parsec [ncm_c_pc()
], thus, this differs from our
definition by a factor of $5\log_{10}(D_{H0}/\text{Mpc})$, where $\text{Mpc}$
is mega parsec [ncm_c_Mpc()
].
Details
nc_distance_acoustic_scale ()
gdouble nc_distance_acoustic_scale (NcDistance *dist
,NcHICosmo *cosmo
);
Calculate the acoustic scale l_A = pi D_T (z_lss) / r (z_lss).
|
a NcDistance. |
|
a NcHICosmo. |
Returns : |
FIXME |
nc_distance_bao_A_scale ()
gdouble nc_distance_bao_A_scale (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
);
Bao 'A' scaleD_v(z) sqrt(Omega_m) / z -- (arXiv:astro-ph/0501171)
|
a NcDistance. |
|
a NcHICosmo. |
|
the redshift $z$. |
Returns : |
FIXME |
nc_distance_bao_r_Dv ()
gdouble nc_distance_bao_r_Dv (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
);
r(z_d) / D_v(z) -- (arXiv:0705.3323).
|
a NcDistance. |
|
a NcHICosmo. |
|
the redshift $z$. |
Returns : |
FIXME |
nc_distance_comoving ()
gdouble nc_distance_comoving (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
);
Calculates the comoving distance $D_c$ as defined in Eq. $\eqref{eq:def:Dc}$.
|
a NcDistance. |
|
a NcHICosmo. |
|
the redshift $z$. |
Returns : |
$D_c(z)$. |
nc_distance_comoving_a0 ()
gdouble nc_distance_comoving_a0 (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
);
FIXME
|
a NcDistance. |
|
a NcHICosmo. |
|
the redshift $z$. |
Returns : |
FIXME |
nc_distance_comoving_a0_lss ()
gdouble nc_distance_comoving_a0_lss (NcDistance *dist
,NcHICosmo *cosmo
);
Calculate the d_c (z_lss) / a0
|
a NcDistance. |
|
a NcHICosmo. |
Returns : |
FIXME |
nc_distance_comoving_lss ()
gdouble nc_distance_comoving_lss (NcDistance *dist
,NcHICosmo *cosmo
);
Calculate the d_c (z_lss)
|
a NcDistance. |
|
a NcHICosmo. |
Returns : |
FIXME |
nc_distance_conformal_lookback_time ()
gdouble nc_distance_conformal_lookback_time (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
);
nc_distance_conformal_time ()
gdouble nc_distance_conformal_time (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
);
nc_distance_conformal_time_mks_scale ()
gdouble nc_distance_conformal_time_mks_scale (NcDistance *dist
,NcHICosmo *cosmo
);
nc_distance_cosmic_time ()
gdouble nc_distance_cosmic_time (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
);
nc_distance_cosmic_time_mks_scale ()
gdouble nc_distance_cosmic_time_mks_scale (NcDistance *dist
,NcHICosmo *cosmo
);
nc_distance_curvature ()
gdouble nc_distance_curvature (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
);
Calculate the curvature distance $D_k$ defined in Eq. $\eqref{eq:def:Dk}$.
|
a NcDistance. |
|
a NcHICosmo. |
|
the redshift $z$. |
Returns : |
$D_k(z)$. |
nc_distance_decoupling_redshift ()
gdouble nc_distance_decoupling_redshift (NcDistance *dist
,NcHICosmo *cosmo
);
Decoupling redshift (arXiv:astro-ph/9510117).
|
a NcDistance. |
|
a NcHICosmo. |
Returns : |
FIXME |
nc_distance_dilation_scale ()
gdouble nc_distance_dilation_scale (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
);
Dilation scale D_v(z) -- (arXiv:astro-ph/0501171)
|
a NcDistance. |
|
a NcHICosmo. |
|
the redshift $z$. |
Returns : |
FIXME |
nc_distance_drag_redshift ()
gdouble nc_distance_drag_redshift (NcDistance *dist
,NcHICosmo *cosmo
);
Drag redshift (arXiv:astro-ph/9510117).
|
a NcDistance. |
|
a NcHICosmo. |
Returns : |
FIXME |
nc_distance_func0_new ()
NcmMSetFunc * nc_distance_func0_new (NcDistance *dist
,NcDistanceFunc0 f0
);
|
FIXME |
|
FIXME. [scope notified] |
Returns : |
FIXME. [transfer full] |
nc_distance_func1_new ()
NcmMSetFunc * nc_distance_func1_new (NcDistance *dist
,NcDistanceFunc1 f1
);
|
FIXME |
|
FIXME. [scope notified] |
Returns : |
FIXME. [transfer full] |
nc_distance_hubble ()
gdouble nc_distance_hubble (NcDistance *dist
,NcHICosmo *cosmo
);
Calculate the curvature scale today as defined in Eq $\eqref{eq:def:DH}$ in
units of mega parsec $\text{Mpc}$ [ncm_c_Mpc()
].
|
a NcDistance. |
|
a NcHICosmo. |
Returns : |
$D_{H0}$. |
nc_distance_lookback_time ()
gdouble nc_distance_lookback_time (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
);
nc_distance_luminosity ()
gdouble nc_distance_luminosity (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
);
Calculates the luminosity distance $D_l$ defined in Eq. $\eqref{eq:def:Dl}$.
|
a NcDistance. |
|
a NcHICosmo. |
|
the redshift $z$. |
Returns : |
$D_l(z)$. |
nc_distance_luminosity_hef ()
gdouble nc_distance_luminosity_hef (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z_he
,gdouble z_cmb
);
Calculates the luminosity distance $D_l$ corrected to our local frame.
|
a NcDistance. |
|
a NcHICosmo. |
|
the redshift $z_{he}$ in our local frame. |
|
the redshift $z_{CMB}$ in the CMB frame. |
Returns : |
$D_l(z_{hef},z_{CMB})$. |
nc_distance_modulus ()
gdouble nc_distance_modulus (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
);
Calculates the distance modulus $\mu$ defined in Eq. $\eqref{eq:def:mu}$.
|
a NcDistance. |
|
a NcHICosmo. |
|
the redshift $z$. |
Returns : |
$\mu(z)$. |
nc_distance_modulus_hef ()
gdouble nc_distance_modulus_hef (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z_he
,gdouble z_cmb
);
Calculates the distance modulus using the frame corrected luminosity distance
[nc_distance_luminosity_hef()
].
|
a NcDistance. |
|
a NcHICosmo. |
|
the redshift $z_{he}$ in our local frame. |
|
the redshift $z_{CMB}$ in the CMB frame. |
Returns : |
$\mu(z_{hef},z_{CMB})$. |
nc_distance_new ()
NcDistance * nc_distance_new (gdouble z_f
);
Creates a new NcDistance object optimized to perform distance calculations to redshift up to $z_f$.
|
final redshift $z_f$. |
Returns : |
a new NcDistance. |
nc_distance_prepare ()
void nc_distance_prepare (NcDistance *dist
,NcHICosmo *cosmo
);
FIXME
|
a NcDistance. |
|
a NcHICosmo. |
nc_distance_prepare_if_needed ()
void nc_distance_prepare_if_needed (NcDistance *dist
,NcHICosmo *cosmo
);
FIXME
|
FIXME, |
|
FIXME |
nc_distance_ref ()
NcDistance * nc_distance_ref (NcDistance *dist
);
FIXME
|
a NcDistance. |
Returns : |
FIXME. [transfer full] |
nc_distance_shift_parameter ()
gdouble nc_distance_shift_parameter (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
);
Calculate the shift parameter $R$ defined in Eq. $\eqref{eq:def:R}$.
|
a NcDistance. |
|
a NcHICosmo. |
|
the redshift $z$. |
Returns : |
$R(z)$. |
nc_distance_shift_parameter_lss ()
gdouble nc_distance_shift_parameter_lss (NcDistance *dist
,NcHICosmo *cosmo
);
Calculate the shift parameter $R$ [nc_distance_shift_parameter()
] at the
decoupling redshift $z_\star$ [nc_distance_decoupling_redshift()
].
|
a NcDistance |
|
a NcHICosmo |
Returns : |
$R(z_\star)$. |
nc_distance_sound_horizon ()
gdouble nc_distance_sound_horizon (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
);
Calculate the sound horizon integrating numerically the hubble function.
|
a NcDistance. |
|
a NcHICosmo. |
|
the redshift $z$. |
Returns : |
FIXME |
nc_distance_transverse ()
gdouble nc_distance_transverse (NcDistance *dist
,NcHICosmo *cosmo
,gdouble z
);
Calculates the transverse distance $D_t$ defined in Eq. $\eqref{eq:def:Dt}$.
|
a NcDistance. |
|
a NcHICosmo. |
|
the redshift $z$. |
Returns : |
$D_T(z)$. |