NcHIPertAdiab

NcHIPertAdiab — Perturbation object for adiabatic mode only.

Functions

Properties

double k Read / Write / Construct

Types and Values

Object Hierarchy

    GEnum
    ╰── NcHIPertAdiabVars
    GInterface
    ╰── NcHIPertIAdiab
    GObject
    ╰── NcmCSQ1D
        ╰── NcHIPertAdiab

Prerequisites

NcHIPertIAdiab requires GObject.

Description

This object provides the computation of the adiabatic mode for the cosmological perturbations. It solves the equation of motion for the gauge invariant variable (see Vitenti (2013) for notation and details) $$ \zeta \equiv \Psi - \frac{2\bar{K}}{\kappa(\bar{\rho} + \bar{p})} + H\mathcal{V}. $$ Its conjugated momentum is give by \begin{split} P_\zeta &= \frac{2\bar{D}^2_\bar{K}\Psi}{x^3H}, \end{split}

The equations of motion in their first order form are \begin{align} \zeta^\prime &= \frac{P_\zeta}{m_\zeta}, \\ P_\zeta^\prime &= -m_\zeta\mu_\zeta^2\zeta. \end{align} The mass $m_\zeta$ and the frequency $\mu_\zeta$ are defined by \begin{align} m_\zeta &= \frac{3\Delta_\bar{K}(\bar{\rho} + \bar{p})}{\rho_\text{crit0} N x^3 c_s^2 E^2}, \\ \mu_\zeta^2 &= x^2N^2c_s^2k^2, \end{align} where $\bar{\rho} + \bar{p}$ is the background total energy density plus pressure, $E^2 = H^2/H_0^2$ is the dimensionless Hubble function squared (nc_hicosmo_E2()), $c_s^2$ the speed of sound, $N$ is the lapse function that in this case (using $\alpha$ as time variable) is $N \equiv \vert{}E\vert^{-1}$, $\rho_\text{crit0}$ is the critical density today defined by $\rho_\text{crit0} \equiv 3H_0^2/\kappa$ and $$ \Delta_\bar{K} \equiv \frac{k^2}{k^2 + \Omega_{k0}}. $$

Functions

nc_hipert_iadiab_eval_xi ()

gdouble
nc_hipert_iadiab_eval_xi (NcHIPertIAdiab *iad,
                          const gdouble tau,
                          const gdouble k);

Computes the value of $\xi = \ln(m\nu)$.

Parameters

iad

a NcHIPertIAdiab

 

tau

$\tau$

 

k

$k$

 

Returns

$\xi$.


nc_hipert_iadiab_eval_F1 ()

gdouble
nc_hipert_iadiab_eval_F1 (NcHIPertIAdiab *iad,
                          const gdouble tau,
                          const gdouble k);

Computes the value of $F_1 = \dot{\xi}/(2\nu)$.

Parameters

iad

a NcHIPertIAdiab

 

tau

$\tau$

 

k

$k$

 

Returns

$F_1$.


nc_hipert_iadiab_eval_nu ()

gdouble
nc_hipert_iadiab_eval_nu (NcHIPertIAdiab *iad,
                          const gdouble tau,
                          const gdouble k);

Computes the value of $\nu$.

Parameters

iad

a NcHIPertIAdiab

 

tau

$\tau$

 

k

$k$

 

Returns

$\nu$.


nc_hipert_iadiab_eval_m ()

gdouble
nc_hipert_iadiab_eval_m (NcHIPertIAdiab *iad,
                         const gdouble tau,
                         const gdouble k);

Computes the value of $m$.

Parameters

iad

a NcHIPertIAdiab

 

tau

$\tau$

 

k

$k$

 

Returns

$m$.


nc_hipert_iadiab_eval_unit ()

gdouble
nc_hipert_iadiab_eval_unit (NcHIPertIAdiab *iad);

Numerical factor for the power spectrum of the adiabatic mode.

Parameters

iad

a NcHIPertIAdiab

 

Returns

the numerical factor for the power spectrum of the adiabatic mode.


nc_hipert_iadiab_eval_x ()

gdouble
nc_hipert_iadiab_eval_x (NcHIPertIAdiab *iad,
                         const gdouble tau);

Evaluates the value of $x = a_0/a$ at a given time $\tau$.

Parameters

iad

a NcHIPertIAdiab

 

tau

$\tau$

 

Returns

$x$.


nc_hipert_iadiab_eval_p2Psi ()

gdouble
nc_hipert_iadiab_eval_p2Psi (NcHIPertIAdiab *iad,
                             const gdouble tau,
                             const gdouble k);

Evaluates the conversion factor to convert the momentum of the adiabatic mode to the gauge invariant variable $\Psi$.

Parameters

iad

a NcHIPertIAdiab

 

tau

$\tau$

 

Returns

the conversion factor.


nc_hipert_iadiab_eval_p2drho ()

gdouble
nc_hipert_iadiab_eval_p2drho (NcHIPertIAdiab *iad,
                              const gdouble tau,
                              const gdouble k);

Evaluates the conversion factor to convert the momentum of the adiabatic mode to the gauge invariant variable $\delta\rho$.

Parameters

iad

a NcHIPertIAdiab

 

tau

$\tau$

 

Returns

the conversion factor.


nc_hipert_iadiab_eval_lapse ()

gdouble
nc_hipert_iadiab_eval_lapse (NcHIPertIAdiab *iad,
                             const gdouble tau);

Evaluates the lapse function at a given time $\tau$.

Parameters

iad

a NcHIPertIAdiab

 

tau

$\tau$

 

Returns

the lapse function.


nc_hipert_iadiab_eval_tau_hubble ()

gdouble
nc_hipert_iadiab_eval_tau_hubble (NcHIPertIAdiab *iad,
                                  const gdouble k);

Evaluates the time at where the Hubble radius is equal to the wave number $k$.

Parameters

iad

a NcHIPertIAdiab

 

k

$k$

 

Returns

the time at where the Hubble radius is equal to the wave number $k$.


nc_hipert_iadiab_eval_tau_jeans ()

gdouble
nc_hipert_iadiab_eval_tau_jeans (NcHIPertIAdiab *iad,
                                 const gdouble k);

Evaluates the time at where the Jeans scale is equal to the wave number $k$.

Parameters

iad

a NcHIPertIAdiab

 

k

$k$

 

Returns

the time at where the Jeans scale is equal to the wave number $k$.


nc_hipert_iadiab_eval_hubble ()

gdouble
nc_hipert_iadiab_eval_hubble (NcHIPertIAdiab *iad,
                              const gdouble tau);

Evaluates the Hubble function at a given time $\tau$.

Parameters

iad

a NcHIPertIAdiab

 

tau

$\tau$

 

Returns

the Hubble function.


nc_hipert_adiab_new ()

NcHIPertAdiab *
nc_hipert_adiab_new (void);

Creates a new NcHIPertAdiab object.

Returns

a new NcHIPertAdiab.

[transfer full]


nc_hipert_adiab_ref ()

NcHIPertAdiab *
nc_hipert_adiab_ref (NcHIPertAdiab *pa);

Increases the reference count of pa .

Parameters

pa

a NcHIPertAdiab.

 

Returns

pa .

[transfer full]


nc_hipert_adiab_free ()

void
nc_hipert_adiab_free (NcHIPertAdiab *pa);

Decreases the reference count of pa .

Parameters

pa

a NcHIPertAdiab.

 

nc_hipert_adiab_clear ()

void
nc_hipert_adiab_clear (NcHIPertAdiab **pa);

Decreases the reference count of *pa and sets *pa to NULL.

Parameters

pa

a NcHIPertAdiab.

 

nc_hipert_adiab_set_k ()

void
nc_hipert_adiab_set_k (NcHIPertAdiab *adiab,
                       const gdouble k);

Sets the wave number $k$.

Parameters

adiab

a NcHIPertAdiab

 

k

$k$

 

nc_hipert_adiab_get_k ()

gdouble
nc_hipert_adiab_get_k (NcHIPertAdiab *adiab);

Gets the wave number $k$.

Parameters

adiab

a NcHIPertAdiab

 

Returns

$k$


nc_hipert_adiab_eval_cosmic_time ()

gdouble
nc_hipert_adiab_eval_cosmic_time (NcHIPertAdiab *adiab,
                                  NcmModel *model,
                                  const gdouble tau);

Evaluates the cosmic time at a given conformal time $\tau$.

Parameters

adiab

a NcHIPertAdiab

 

model

a NcmModel

 

tau

$\tau$

 

Returns

the cosmic time.


nc_hipert_adiab_eval_delta_critial ()

gdouble
nc_hipert_adiab_eval_delta_critial (NcHIPertAdiab *adiab,
                                    NcmModel *model,
                                    const gdouble tau);

Evaluates the critical density contrast at a given conformal time $\tau$.

Parameters

adiab

a NcHIPertAdiab

 

model

a NcmModel

 

tau

$\tau$

 

Returns

the critical density contrast.


nc_hipert_adiab_eval_powspec_zeta_at ()

gdouble
nc_hipert_adiab_eval_powspec_zeta_at (NcHIPertAdiab *adiab,
                                      NcmModel *model,
                                      const gdouble tau);

Evaluates the power spectrum of the gauge invariant variable $\zeta$ at a given time $\tau$. The power spectrum is given by $$ P_\zeta = u^2\frac{2\pi^2}{k^3} \frac{J_{11}}{2}. $$ where $u$ is the numerical factor for the power spectrum of the adiabatic mode, $k$ is the wave number.

Parameters

adiab

a NcHIPertAdiab

 

model

a NcmModel

 

tau

$\tau$

 

Returns

the power spectrum of the gauge invariant variable $\zeta$.


nc_hipert_adiab_eval_powspec_Psi_at ()

gdouble
nc_hipert_adiab_eval_powspec_Psi_at (NcHIPertAdiab *adiab,
                                     NcmModel *model,
                                     const gdouble tau);

Evaluates the power spectrum of the gauge invariant variable $\Psi$ at a given time $\tau$. The power spectrum is given by $$ P_\Psi = u^2\frac{2\pi^2}{k^3} \frac{J_{22}}{2}. $$

Parameters

adiab

a NcHIPertAdiab

 

model

a NcmModel

 

tau

$\tau$

 

Returns

the power spectrum of the gauge invariant variable $\Psi$.


nc_hipert_adiab_eval_powspec_drho_at ()

gdouble
nc_hipert_adiab_eval_powspec_drho_at (NcHIPertAdiab *adiab,
                                      NcmModel *model,
                                      const gdouble tau);

Evaluates the power spectrum of the gauge invariant variable $\delta\rho$ at a given time $\tau$. The power spectrum is given by $$ P_{\delta\rho} = u^2\frac{2\pi^2}{k^3} \frac{J_{22}}{2}. $$

Parameters

adiab

a NcHIPertAdiab

 

model

a NcmModel

 

tau

$\tau$

 

Returns

the power spectrum of the gauge invariant variable $\delta\rho$.


nc_hipert_adiab_prepare_spectrum ()

void
nc_hipert_adiab_prepare_spectrum (NcHIPertAdiab *adiab,
                                  NcmModel *model,
                                  GArray *k_array,
                                  GArray *tau_array);

Prepares the computation of the power spectrum of the adiabatic mode.

Parameters

adiab

a NcHIPertAdiab

 

model

a NcmModel

 

k_array

array of wave numbers.

[element-type gdouble]

tau_array

array of times to evaluate the power spectrum.

[element-type gdouble]

nc_hipert_adiab_eval_powspec_zeta ()

NcmPowspecSpline2d *
nc_hipert_adiab_eval_powspec_zeta (NcHIPertAdiab *adiab,
                                   NcmModel *model);

Evaluates the power spectrum for the gauge invariant variable $\zeta$.

Parameters

adiab

a NcHIPertAdiab

 

model

a NcmModel

 

Returns

the power spectrum of $\zeta$.

[transfer full]


nc_hipert_adiab_eval_powspec_Psi ()

NcmPowspecSpline2d *
nc_hipert_adiab_eval_powspec_Psi (NcHIPertAdiab *adiab,
                                  NcmModel *model);

Evaluates the power spectrum for the gauge invariant variable $\Psi$.

Parameters

adiab

a NcHIPertAdiab

 

model

a NcmModel

 

Returns

the power spectrum of $\Psi$.

[transfer full]


nc_hipert_adiab_eval_powspec_drho ()

NcmPowspecSpline2d *
nc_hipert_adiab_eval_powspec_drho (NcHIPertAdiab *adiab,
                                   NcmModel *model);

Evaluates the power spectrum for the gauge invariant variable $\delta\rho$.

Parameters

adiab

a NcHIPertAdiab

 

model

a NcmModel

 

Returns

the power spectrum of $\delta\rho$.

[transfer full]

Types and Values

NC_TYPE_HIPERT_ADIAB

#define NC_TYPE_HIPERT_ADIAB (nc_hipert_adiab_get_type ())

NC_TYPE_HIPERT_IADIAB

#define NC_TYPE_HIPERT_IADIAB (nc_hipert_iadiab_get_type ())

struct NcHIPertIAdiabInterface

struct NcHIPertIAdiabInterface {
};

enum NcHIPertAdiabVars

Perturbation variables enumerator.

Members

NC_HIPERT_ADIAB_RE_ZETA

$\text{Re}(\zeta)$

 

NC_HIPERT_ADIAB_IM_ZETA

$\text{Im}(\zeta)$

 

NC_HIPERT_ADIAB_RE_PZETA

$\text{Re}(P_\zeta)$

 

NC_HIPERT_ADIAB_IM_PZETA

$\text{Im}(P_\zeta)$

 

NcHIPertAdiab

typedef struct _NcHIPertAdiab NcHIPertAdiab;

NcHIPertIAdiab

typedef struct _NcHIPertIAdiab NcHIPertIAdiab;

Property Details

The “k” property

  “k”                        double

Wave number.

Owner: NcHIPertAdiab

Flags: Read / Write / Construct

Allowed values: >= 0

Default value: 1