GammaLib 2.1.0.dev
Loading...
Searching...
No Matches
GModelSpatialRadialProfileDMEinasto::halo_kernel_los Class Reference

#include <GModelSpatialRadialProfileDMEinasto.hpp>

Inheritance diagram for GModelSpatialRadialProfileDMEinasto::halo_kernel_los:
GFunction

Public Member Functions

 halo_kernel_los (const double &scale_radius, const double &halo_distance, const double &alpha, const double &theta, const double &core_radius)
 
double eval (const double &los)
 Kernel for halo density profile squared.
 
- Public Member Functions inherited from GFunction
 GFunction (void)
 Void constructor.
 
 GFunction (const GFunction &function)
 Copy constructor.
 
virtual ~GFunction (void)
 Destructor.
 
GFunctionoperator= (const GFunction &function)
 Assignment operator.
 

Protected Attributes

double m_scale_radius
 
double m_halo_distance
 
double m_alpha
 
double m_theta
 
double m_core_radius
 

Additional Inherited Members

- Protected Member Functions inherited from GFunction
void init_members (void)
 Initialise class members.
 
void copy_members (const GFunction &function)
 Copy class members.
 
void free_members (void)
 Delete class members.
 

Detailed Description

Definition at line 92 of file GModelSpatialRadialProfileDMEinasto.hpp.

Constructor & Destructor Documentation

◆ halo_kernel_los()

GModelSpatialRadialProfileDMEinasto::halo_kernel_los::halo_kernel_los ( const double & scale_radius,
const double & halo_distance,
const double & alpha,
const double & theta,
const double & core_radius )
inline

Definition at line 94 of file GModelSpatialRadialProfileDMEinasto.hpp.

Member Function Documentation

◆ eval()

double GModelSpatialRadialProfileDMEinasto::halo_kernel_los::eval ( const double & los)
virtual

Kernel for halo density profile squared.

Parameters
[in]losDistance from observer to point in space (meters)
Returns
Halo density.

Computes the value of an einasto halo density profile squared, at distance l from observer, at angle

\[\theta\]

from the halo center:

\[ f(\theta, l) = E^{ -\frac{2}{\alpha} \left( g^{\alpha} - 1 \right) } \]

where

\[ g = \frac{ \sqrt{l^2+d^2-2ldCos(\theta)} }{r_s} \]

This profile is detailed in: Springel et al, 2008 "The Aquarius Project: the subhaloes of galactic haloes" Mon. Not. R. Astron. Soc. 391, 1685–1711 http://mnras.oxfordjournals.org/content/391/4/1685

which cites: J. Einasto, 1965 "Kinematics and dynamics of stellar systems" Trudy Inst. Astrofiz. Alma-Ata 5, 87

Implements GFunction.

Definition at line 660 of file GModelSpatialRadialProfileDMEinasto.cpp.

References m_alpha, m_core_radius, m_halo_distance, m_scale_radius, and m_theta.

Referenced by GModelSpatialRadialProfileDMEinasto::mass_density().

Member Data Documentation

◆ m_alpha

double GModelSpatialRadialProfileDMEinasto::halo_kernel_los::m_alpha
protected

Definition at line 108 of file GModelSpatialRadialProfileDMEinasto.hpp.

Referenced by eval().

◆ m_core_radius

double GModelSpatialRadialProfileDMEinasto::halo_kernel_los::m_core_radius
protected

Definition at line 110 of file GModelSpatialRadialProfileDMEinasto.hpp.

Referenced by eval().

◆ m_halo_distance

double GModelSpatialRadialProfileDMEinasto::halo_kernel_los::m_halo_distance
protected

Definition at line 107 of file GModelSpatialRadialProfileDMEinasto.hpp.

Referenced by eval().

◆ m_scale_radius

double GModelSpatialRadialProfileDMEinasto::halo_kernel_los::m_scale_radius
protected

Definition at line 106 of file GModelSpatialRadialProfileDMEinasto.hpp.

Referenced by eval().

◆ m_theta

double GModelSpatialRadialProfileDMEinasto::halo_kernel_los::m_theta
protected

Definition at line 109 of file GModelSpatialRadialProfileDMEinasto.hpp.

Referenced by eval().


The documentation for this class was generated from the following files: