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