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

Kernel for radial model zenith angle integration of IRF. More...

#include <GCTAResponse_helpers.hpp>

Inheritance diagram for cta_irf_radial_kern_rho:
GFunction

Public Member Functions

 cta_irf_radial_kern_rho (const GCTAResponseIrf *rsp, const GModelSpatialRadial *model, const double &zenith, const double &azimuth, const GEnergy &srcEng, const GTime &srcTime, const GEnergy &obsEng, const double &zeta, const double &lambda, const double &omega0, const double &delta_max, const int &iter)
 
double eval (const double &rho)
 Kernel for radial model zenith angle integration of Irf. 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

const GCTAResponseIrfm_rsp
 CTA response. More...
 
const GModelSpatialRadialm_model
 Radial spatial model. More...
 
double m_zenith
 Zenith angle. More...
 
double m_azimuth
 Azimuth angle. More...
 
GEnergy m_srcEng
 True photon energy. More...
 
GTime m_srcTime
 True photon time. More...
 
GEnergy m_obsEng
 Measured event energy. More...
 
double m_zeta
 Distance model centre - measured photon. More...
 
double m_cos_zeta
 Cosine of zeta. More...
 
double m_sin_zeta
 Sine of zeta. More...
 
double m_lambda
 Distance model centre - pointing. More...
 
double m_cos_lambda
 Cosine of lambda. More...
 
double m_sin_lambda
 Sine of lambda. More...
 
double m_omega0
 Azimuth of pointing in model system. More...
 
double m_delta_max
 Maximum PSF radius. More...
 
double m_cos_delta_max
 Cosine of maximum PSF radius. More...
 
int m_iter
 Integration iterations. 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

Kernel for radial model zenith angle integration of IRF.

Kernel for radial model zenith angle integration.

This class implements the integration kernel \(K(\rho)\) for the integration

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

of radial spatial models. The eval() method computes

\[ K(\rho | E, t) = \sin \rho \times S_{\rm p}(\rho | E, t) \times \int_{\omega_{\rm min}}^{\omega_{\rm max}} IRF(\rho, \omega) d\omega \]

where

  • \(S_{\rm p}(\rho | E, t)\) is the radial model,
  • \(IRF(\rho, \omega)\) is the IRF
  • \(\rho\) is the distance from the model centre, and
  • \(\omega\) is the azimuth angle is the position angle with respect to the connecting line between the model centre and the observed photon arrival direction.

This class implements the integration kernel \(K(\rho)\) for the integration

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

of radial spatial models. The eval() method computes

\[ K(\rho | E, t) = \sin \rho \times S_{\rm p}(\rho | E, t) \times \int_{\omega} PSF(\rho, \omega) d\omega \]

where \(S_{\rm p}(\rho | E, t)\) is the radial model, \(PSF(\rho, \omega)\) is the point spread function, \(\rho\) is the distance from the model centre, and \(\omega\) is the position angle with respect to the connecting line between the model centre and the observed photon arrival direction.

Definition at line 178 of file GCTAResponse_helpers.hpp.

Constructor & Destructor Documentation

cta_irf_radial_kern_rho::cta_irf_radial_kern_rho ( const GCTAResponseIrf rsp,
const GModelSpatialRadial model,
const double &  zenith,
const double &  azimuth,
const GEnergy srcEng,
const GTime srcTime,
const GEnergy obsEng,
const double &  zeta,
const double &  lambda,
const double &  omega0,
const double &  delta_max,
const int &  iter 
)
inline

Definition at line 180 of file GCTAResponse_helpers.hpp.

Member Function Documentation

double cta_irf_radial_kern_rho::eval ( const double &  rho)
virtual

Kernel for radial model zenith angle integration of Irf.

Parameters
[in]rhoZenith angle with respect to model centre [radians].

Computes the kernel

\[ K(\rho | E, t) = \sin \rho \times S_{\rm p}(\rho | E, t) \times \int_{\omega_{\rm min}}^{\omega_{\rm max}} IRF(\rho, \omega) d\omega \]

for the zenith angle integration of radial models.

Implements GFunction.

Definition at line 332 of file GCTAResponse_helpers.cpp.

References cos(), GModelSpatialRadial::eval(), GIntegral::fixed_iter(), g_kludge_radius, gammalib::is_infinite(), gammalib::is_notanumber(), m_azimuth, m_cos_delta_max, m_cos_lambda, m_cos_zeta, m_delta_max, m_iter, m_lambda, m_model, m_obsEng, m_omega0, m_rsp, m_sin_lambda, m_sin_zeta, m_srcEng, m_srcTime, m_zenith, m_zeta, gammalib::rad2deg, gammalib::roi_arclength(), GIntegral::romberg(), sin(), and GModelSpatialRadial::theta_max().

Member Data Documentation

double cta_irf_radial_kern_rho::m_azimuth
protected

Azimuth angle.

Definition at line 214 of file GCTAResponse_helpers.hpp.

Referenced by eval().

double cta_irf_radial_kern_rho::m_cos_delta_max
protected

Cosine of maximum PSF radius.

Definition at line 226 of file GCTAResponse_helpers.hpp.

Referenced by eval().

double cta_irf_radial_kern_rho::m_cos_lambda
protected

Cosine of lambda.

Definition at line 222 of file GCTAResponse_helpers.hpp.

Referenced by eval().

double cta_irf_radial_kern_rho::m_cos_zeta
protected

Cosine of zeta.

Definition at line 219 of file GCTAResponse_helpers.hpp.

Referenced by eval().

double cta_irf_radial_kern_rho::m_delta_max
protected

Maximum PSF radius.

Definition at line 225 of file GCTAResponse_helpers.hpp.

Referenced by eval().

int cta_irf_radial_kern_rho::m_iter
protected

Integration iterations.

Definition at line 227 of file GCTAResponse_helpers.hpp.

Referenced by eval().

double cta_irf_radial_kern_rho::m_lambda
protected

Distance model centre - pointing.

Definition at line 221 of file GCTAResponse_helpers.hpp.

Referenced by eval().

const GModelSpatialRadial* cta_irf_radial_kern_rho::m_model
protected

Radial spatial model.

Definition at line 212 of file GCTAResponse_helpers.hpp.

Referenced by eval().

GEnergy cta_irf_radial_kern_rho::m_obsEng
protected

Measured event energy.

Definition at line 217 of file GCTAResponse_helpers.hpp.

Referenced by eval().

double cta_irf_radial_kern_rho::m_omega0
protected

Azimuth of pointing in model system.

Definition at line 224 of file GCTAResponse_helpers.hpp.

Referenced by eval().

const GCTAResponseIrf* cta_irf_radial_kern_rho::m_rsp
protected

CTA response.

Definition at line 211 of file GCTAResponse_helpers.hpp.

Referenced by eval().

double cta_irf_radial_kern_rho::m_sin_lambda
protected

Sine of lambda.

Definition at line 223 of file GCTAResponse_helpers.hpp.

Referenced by eval().

double cta_irf_radial_kern_rho::m_sin_zeta
protected

Sine of zeta.

Definition at line 220 of file GCTAResponse_helpers.hpp.

Referenced by eval().

GEnergy cta_irf_radial_kern_rho::m_srcEng
protected

True photon energy.

Definition at line 215 of file GCTAResponse_helpers.hpp.

Referenced by eval().

GTime cta_irf_radial_kern_rho::m_srcTime
protected

True photon time.

Definition at line 216 of file GCTAResponse_helpers.hpp.

Referenced by eval().

double cta_irf_radial_kern_rho::m_zenith
protected

Zenith angle.

Definition at line 213 of file GCTAResponse_helpers.hpp.

Referenced by eval().

double cta_irf_radial_kern_rho::m_zeta
protected

Distance model centre - measured photon.

Definition at line 218 of file GCTAResponse_helpers.hpp.

Referenced by eval().


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