GammaLib
2.0.0
|
Single parameter function abstract base class. More...
#include <GFunction.hpp>
Public Member Functions | |
GFunction (void) | |
Void constructor. More... | |
GFunction (const GFunction &function) | |
Copy constructor. More... | |
virtual | ~GFunction (void) |
Destructor. More... | |
GFunction & | operator= (const GFunction &function) |
Assignment operator. More... | |
virtual double | eval (const double &x)=0 |
Protected Member Functions | |
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... | |
Single parameter function abstract base class.
This class implements the abstract interface for a one parameter function. This function is for example used for integration or numerical computation of derivatives. This class has no members. The only pure virtual method that needs to be implemented by the derived class is the eval() method that provides function evaluation at a given value x, e.g. y=eval(x).
Definition at line 44 of file GFunction.hpp.
GFunction::GFunction | ( | void | ) |
GFunction::GFunction | ( | const GFunction & | function | ) |
Copy constructor.
[in] | function | Function. |
Definition at line 63 of file GFunction.cpp.
References copy_members(), and init_members().
|
virtual |
|
protected |
Copy class members.
[in] | function | Function. |
Definition at line 149 of file GFunction.cpp.
Referenced by GFunction(), and operator=().
|
pure virtual |
Implemented in cta_psf_diffuse_kern_phi, cta_psf_diffuse_kern_delta, cta_psf_elliptical_kern_omega, cta_psf_elliptical_kern_rho, cta_psf_radial_kern_phi, cta_psf_radial_kern_delta, cta_psf_radial_kern_omega, cta_psf_radial_kern_rho, cta_nroi_diffuse_kern_phi, cta_nroi_diffuse_kern_theta, cta_irf_diffuse_kern_phi, cta_irf_diffuse_kern_theta, cta_nroi_elliptical_kern_omega, cta_nroi_elliptical_kern_rho, cta_irf_elliptical_kern_omega, cta_irf_elliptical_kern_rho, cta_nroi_radial_kern_omega, cta_nroi_radial_kern_rho, GResponse::irf_elliptical_kern_phi, cta_irf_radial_kern_omega, GResponse::irf_elliptical_kern_theta, GResponse::irf_radial_kern_phi, GModelSky::eflux_kern, GModelSky::flux_kern, GCTAEdisp2D::edisp_ereco_kern, GObservation::npred_func, GResponse::irf_radial_kern_theta, cta_irf_radial_kern_rho, GObservation::npred_spec_kern, GModelSpectralSmoothBrokenPlaw::eflux_kern, GObservation::npred_kern, GModelSpatial::circle_int_kern_omega, GObservation::model_func, GModelSpectralSuperExpPlaw::eflux_kernel, GModelSpectralLogParabola::eflux_kern, GModelSpectralSmoothBrokenPlaw::flux_kern, GModelSpectralExpInvPlaw::eflux_kernel, GModelSpectralExpPlaw::eflux_kernel, GModelSpatial::circle_int_kern_rho, GCOMIaq::smearing_kernel, GModelSpectralSuperExpPlaw::flux_kernel, GModelSpectralExpInvPlaw::flux_kernel, GModelSpectralLogParabola::flux_kern, cta_nroi_kern, GCTAModelSpatial::npred_roi_kern_phi, GModelSpectralExpPlaw::flux_kernel, GModelSpectralMultiplicative::eflux_kern, GCTAModelAeffBackground::npred_roi_kern_phi, GCTAModelIrfBackground::npred_roi_kern_phi, GCOMIaq::response_kernel, GModelSpectralExponential::eflux_kern, GCOMD2Response::bkg_gauss_kernel, GModelSpectralGauss::eflux_kernel, GCTAModelSpatial::npred_roi_kern_theta, GCTAModelRadialAcceptance::roi_kern, GModelSpatialRadialProfileDMZhao::halo_kernel_los, GCTAModelAeffBackground::npred_roi_kern_theta, GCTAModelRadialProfile::integrand, GModelSpectralMultiplicative::flux_kern, GModelSpatialRadialProfileDMEinasto::halo_kernel_los, GModelSpectralExponential::flux_kern, GCOMD2Response::kn_gauss_kernel, GCTAModelIrfBackground::npred_roi_kern_theta, GCTAModelRadialPolynom::integrand, GModelSpatialRadialProfileDMBurkert::halo_kernel_los, GCTAModelRadialGauss::integrand, cta_npsf_kern_rad_azsym, GCTABackgroundPerfTable::integrand, GLATPsfV3::base_integrand, and GLATPsfV1::base_integrand.
Referenced by GIntegral::adaptive_simpson(), GIntegral::adaptive_simpson_aux(), GDerivative::difference(), GIntegral::gauss_kronrod(), GDerivative::left_difference(), GDerivative::minuit2(), GDerivative::ridder(), GDerivative::right_difference(), GDerivative::smooth_robust(), and GIntegral::trapzd().
|
protected |
Delete class members.
Definition at line 159 of file GFunction.cpp.
Referenced by operator=(), and ~GFunction().
|
protected |
Initialise class members.
Definition at line 137 of file GFunction.cpp.
Referenced by GFunction(), and operator=().
Assignment operator.
[in] | function | Function. |
Definition at line 101 of file GFunction.cpp.
References copy_members(), free_members(), and init_members().