GammaLib  2.1.0.dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
GModelSpatial::circle_int_kern_rho Class Reference

#include <GModelSpatial.hpp>

Inheritance diagram for GModelSpatial::circle_int_kern_rho:
GFunction

Public Member Functions

 circle_int_kern_rho (const GModelSpatial *model, const GSkyRegion &region, const GSkyDir &centre, const GEnergy &srcEng, const GTime &srcTime)
 
double eval (const double &rho)
 Kernel for spatial model radial integration. 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...
 

Public Attributes

const GModelSpatialm_model
 Spatial model. More...
 
const GSkyRegionm_region
 Sky region. More...
 
const GSkyDirm_centre
 Model centre. More...
 
GEnergy m_srcEng
 Photon energy. More...
 
GTime m_srcTime
 Photon time. More...
 

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 131 of file GModelSpatial.hpp.

Constructor & Destructor Documentation

GModelSpatial::circle_int_kern_rho::circle_int_kern_rho ( const GModelSpatial model,
const GSkyRegion region,
const GSkyDir centre,
const GEnergy srcEng,
const GTime srcTime 
)
inline

Definition at line 133 of file GModelSpatial.hpp.

Member Function Documentation

double GModelSpatial::circle_int_kern_rho::eval ( const double &  rho)
virtual

Kernel for spatial model radial integration.

Parameters
[in]rhoRadial distance from model centre (radians).
Returns
Integration kernel defined as

\[ \int_{\rho_{\rm min}}^{\rho_{\rm max}} K(\rho | E, t) d\rho \]

of a spatial model over a circular region. The eval() method computes

\[ K(\rho | E, t) = \sin \rho \times \int_{\omega} M(\rho, \omega | E, t) d\omega \]

where \(M(\rho, \omega | E, t)\) is the spatial model, \(\rho\) is the distance from the model centre, and \(\omega\) is the azimuth angle around the model centre.

Implements GFunction.

Definition at line 452 of file GModelSpatial.cpp.

References GModelSpatial::flux(), m_centre, m_model, m_region, m_srcEng, m_srcTime, GIntegral::romberg(), sin(), and gammalib::twopi.

Member Data Documentation

const GSkyDir& GModelSpatial::circle_int_kern_rho::m_centre

Model centre.

Definition at line 147 of file GModelSpatial.hpp.

Referenced by eval().

const GModelSpatial* GModelSpatial::circle_int_kern_rho::m_model

Spatial model.

Definition at line 145 of file GModelSpatial.hpp.

Referenced by eval().

const GSkyRegion& GModelSpatial::circle_int_kern_rho::m_region

Sky region.

Definition at line 146 of file GModelSpatial.hpp.

Referenced by eval().

GEnergy GModelSpatial::circle_int_kern_rho::m_srcEng

Photon energy.

Definition at line 148 of file GModelSpatial.hpp.

Referenced by eval().

GTime GModelSpatial::circle_int_kern_rho::m_srcTime

Photon time.

Definition at line 149 of file GModelSpatial.hpp.

Referenced by eval().


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