27#ifndef GCTAMODELSPATIAL_HPP
28#define GCTAMODELSPATIAL_HPP
72 virtual std::string
type(
void)
const = 0;
76 const bool& gradients =
false)
const = 0;
108 const int& max_iter) :
115 double eval(
const double& theta);
132 const double& theta) :
138 double eval(
const double& phi);
160 return ((
int)
m_pars.size());
Definition of interface for all GammaLib classes.
CTA instrument direction class interface definition.
Energy value class definition.
Single parameter function abstract base class definition.
Model parameter class interface definition.
Time class interface definition.
Interface class for all GammaLib classes.
CTA instrument direction class.
const GCTAModelSpatial * m_spatial
Pointer to spatial component.
double eval(const double &phi)
Kernel for azimuth angle integration of spatial component.
npred_roi_kern_phi(const GCTAModelSpatial *spatial, const GEnergy &energy, const GTime &time, const GCTAInstDir &roi_centre, const double &theta)
GCTAInstDir m_roi_centre
RoI centre.
double m_theta
Offset angle (radians)
const GCTAModelSpatial * m_spatial
Pointer to spatial component.
int m_min_iter
Minimum number of Romberg iterations.
double eval(const double &theta)
Kernel for offset angle integration of spatial component.
int m_max_iter
Maximum number of Romberg iterations.
npred_roi_kern_theta(const GCTAModelSpatial *spatial, const GEnergy &energy, const GTime &time, const GCTAInstDir &roi_centre, const int &min_iter, const int &max_iter)
GCTAInstDir m_roi_centre
RoI centre.
Abstract spatial model class.
void init_members(void)
Initialise class members.
GCTAModelSpatial(void)
Void constructor.
virtual double mc_max_value(const GCTAObservation &obs) const =0
virtual ~GCTAModelSpatial(void)
Destructor.
virtual void read(const GXmlElement &xml)=0
virtual std::string type(void) const =0
std::vector< GModelPar * > m_pars
Parameter pointers.
virtual GModelPar & operator[](const int &index)
Returns model parameter.
int size(void) const
Return number of model parameters.
virtual double eval(const GCTAInstDir &dir, const GEnergy &energy, const GTime &time, const bool &gradients=false) const =0
virtual double npred(const GEnergy &energy, const GTime &time, const GObservation &obs) const
Return integral of spatial model component.
virtual std::string classname(void) const =0
Return class name.
virtual std::string print(const GChatter &chatter=NORMAL) const =0
Print content of object.
virtual void clear(void)=0
Clear object.
virtual GCTAModelSpatial & operator=(const GCTAModelSpatial &model)
Assignment operator.
virtual void write(GXmlElement &xml) const =0
virtual GCTAInstDir mc(const GEnergy &energy, const GTime &time, const GCTAObservation &obs, GRan &ran) const
Returns MC instrument direction.
void copy_members(const GCTAModelSpatial &model)
Copy class members.
void free_members(void)
Delete class members.
virtual GCTAModelSpatial * clone(void) const =0
Clones object.
Class that handles energies in a unit independent way.
Single parameter function abstract base class.
Abstract observation base class.
Random number generator class.