Top |
NcTransferFunc * | nc_transfer_func_ref () |
void | nc_transfer_func_free () |
void | nc_transfer_func_clear () |
void | nc_transfer_func_prepare () |
void | nc_transfer_func_prepare_if_needed () |
gdouble | nc_transfer_func_eval () |
GObject ╰── NcTransferFunc ├── NcTransferFuncBBKS ├── NcTransferFuncCAMB ╰── NcTransferFuncEH
This module comprises the set of functions to compute the transfer function and derived quantities. The applied $k$ unit is $[\mathrm{Mpc}^{-1}]$.
The transfer function, $T(k)$, is defined as, \begin{equation*} T(k) \equiv \frac{\hat{\delta}(k, z=0)}{\hat{\delta}(k, z=\infty)} \frac{\hat{\delta}(k=0, z=\infty)}{\hat{\delta}(k=0, z=0)} \, , \end{equation*} where $\hat{\delta}(k, z)$ is the density perturbation, in Fourier space, for mode (wavenumber) $k$ at redshift $z$. By definition, we have $$ \lim_{k \rightarrow 0} T(k) \rightarrow 1 \, .$$
See Eisenstein and Hu (1998) [arXiv] for more details.
NcTransferFunc *
nc_transfer_func_ref (NcTransferFunc *tf
);
Increases the reference count of tf
atomically.
void
nc_transfer_func_free (NcTransferFunc *tf
);
Atomically decrements the reference count of tf
by one. If the reference count drops to 0,
all memory allocated by tf
is released.
void
nc_transfer_func_clear (NcTransferFunc **tf
);
Atomically decrements the reference count of tf
by one. If the reference count drops to 0,
all memory allocated by tf
is released. Set the pointer to NULL.
void nc_transfer_func_prepare (NcTransferFunc *tf
,NcHICosmo *cosmo
);
Prepares the transfer function tf
with model cosmo
,
such that one can evaluate it (nc_transfer_func_eval).
void nc_transfer_func_prepare_if_needed (NcTransferFunc *tf
,NcHICosmo *cosmo
);
Prepares (if necessary) the transfer function tf
with model cosmo
.
gdouble nc_transfer_func_eval (NcTransferFunc *tf
,NcHICosmo *cosmo
,gdouble kh
);
The transfer function tf
value at mode (wavenumber)
kh
(in $Mpc^{-1}$ units) with model cosmo
.