GammaLib  2.0.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
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. More...
 
- Public Member Functions inherited from GFunction
 GFunction (void)
 Void constructor. More...
 
 GFunction (const GFunction &function)
 Copy constructor. More...
 
virtual ~GFunction (void)
 Destructor. More...
 
GFunctionoperator= (const GFunction &function)
 Assignment operator. More...
 

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. More...
 
void copy_members (const GFunction &function)
 Copy class members. More...
 
void free_members (void)
 Delete class members. More...
 

Detailed Description

Definition at line 92 of file GModelSpatialRadialProfileDMEinasto.hpp.

Constructor & Destructor Documentation

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

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 cos(), exp(), m_alpha, m_core_radius, m_halo_distance, m_scale_radius, m_theta, pow(), and sqrt().

Member Data Documentation

double GModelSpatialRadialProfileDMEinasto::halo_kernel_los::m_alpha
protected

Definition at line 108 of file GModelSpatialRadialProfileDMEinasto.hpp.

Referenced by eval().

double GModelSpatialRadialProfileDMEinasto::halo_kernel_los::m_core_radius
protected

Definition at line 110 of file GModelSpatialRadialProfileDMEinasto.hpp.

Referenced by eval().

double GModelSpatialRadialProfileDMEinasto::halo_kernel_los::m_halo_distance
protected

Definition at line 107 of file GModelSpatialRadialProfileDMEinasto.hpp.

Referenced by eval().

double GModelSpatialRadialProfileDMEinasto::halo_kernel_los::m_scale_radius
protected

Definition at line 106 of file GModelSpatialRadialProfileDMEinasto.hpp.

Referenced by eval().

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: