Class

NumCosmoHaloDensityProfileHernquist

Description [src]

final class NumCosmo.HaloDensityProfileHernquist : NumCosmo.HaloDensityProfile
{
  /* No available fields */
}

Density profile of Hernquist type.

This object implements the NcHaloDensityProfile class for a Hernquist density profile.

As described NcHaloDensityProfile, we just need to implement the dimensionless 3D density $\hat{\rho}(x)$ [which refers to the virtual function nc_halo_density_profile_eval_dl_density()]. In particular, the Hernquist profile is given by \begin{equation} \hat{\rho}(x) = \frac{1}{x(1 + x)^3}, \end{equation} where $x = r/r_s$ and $r_s$ is the scale radius.

Both the mass $M_\Delta$ and the scale profile $\rho_s$ are written in terms of the integral $I_{x^2\hat\rho}(c_\Delta)$ [virtual function nc_halo_density_profile_eval_dl_spher_mass()]. The respective Hernquist implementation provides \begin{equation} I_{x^2\hat\rho}(x) = \frac{x^2}{2(1 + x)^2}. \end{equation}

The Hernquist dimensionless surface mass density [virtual function nc_halo_density_profile_eval_dl_2d_density()] is \begin{equation} \hat{\Sigma}(X) = \frac{1}{\left( X^2 - 1 \right)^2} \left[\frac{\left(2 + X^2 \right) \arctan \left(\sqrt{X^2 - 1} \right)}{\sqrt{\left( X^2 - 1 \right)}} - 3\right]. \end{equation} For $X^2 - 1 < 0$ the equation above can be written in terms of $\mathrm{arctanh}(\sqrt{\vert X^2 - 1 \vert})$. If $\vert X - 1 \vert < 10^{-6}$ or $X < 10^{-6}$, $\hat{\Sigma} (X)$ is computed using the Taylor series expansion at $1$ or $0$ respectively (with sufficient terms in order to obtain double precision).

The Hernquist enclosed mass is [virtual function nc_halo_density_profile_eval_dl_cyl_mass()] \begin{equation} \hat{\overline{\Sigma}} (< X) = X^2 / (X^2 - 1) * \eft[1 - 2 * \arctan \left(\sqrt{\vert X - 1 \vert / (X + 1)\right)\right];, \end{equation} Similar expressions in terms of $\mathrm{arctanh}$ and approximations, as described above, are used here.

References: , arxiv:1712.04512.

Constructors

nc_halo_density_profile_hernquist_new

This function returns the NcHaloDensityProfileHernquist implementation of NcHaloDensityProfile given NcHaloMassSummary.

Instance methods

Methods inherited from NcHaloDensityProfile (29)

Please see NcHaloDensityProfile for a full list of methods.

Methods inherited from NcmModel (89)

Please see NcmModel for a full list of methods.

Methods inherited from GObject (43)

Please see GObject for a full list of methods.

Properties

Properties inherited from NcHaloDensityProfile (3)
NumCosmo.HaloDensityProfile:lnXf

Logarithm of the upper limit of the interval where the projected densities are computed $\ln(X_f)$.

NumCosmo.HaloDensityProfile:lnXi

Logarithm of the lower limit of the interval where the projected densities are computed $\ln(X_i)$.

NumCosmo.HaloDensityProfile:reltol

Relative tolerance used in the numerical computations.

Properties inherited from NcmModel (9)
NumCosmoMath.Model:implementation
No description available.
NumCosmoMath.Model:name
No description available.
NumCosmoMath.Model:nick
No description available.
NumCosmoMath.Model:params-types
No description available.
NumCosmoMath.Model:reparam
No description available.
NumCosmoMath.Model:scalar-params-len
No description available.
NumCosmoMath.Model:sparam-array
No description available.
NumCosmoMath.Model:submodel-array
No description available.
NumCosmoMath.Model:vector-params-len
No description available.

Signals

Signals inherited from GObject (1)
GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

Class structure

struct NumCosmoHaloDensityProfileHernquistClass {
  NcHaloDensityProfileClass parent_class;
  
}

No description available.

Class members
parent_class: NcHaloDensityProfileClass

No description available.