27#ifndef GCTAMODELRADIALACCEPTANCE_HPP
28#define GCTAMODELRADIALACCEPTANCE_HPP
70 virtual void clear(
void);
72 virtual std::string
classname(
void)
const;
73 virtual std::string
type(
void)
const;
77 const bool& gradients =
false)
const;
114 double eval(
const double& r);
139 return (
"GCTAModelRadialAcceptance");
154 return (
"RadialAcceptance");
CTA event list class interface definition.
Abstract radial acceptance model class interface definition.
Abstract event base class definition.
Single parameter function abstract base class definition.
Abstract data model base class interface definition.
Model parameter class interface definition.
Abstract spectral model base class interface definition.
Abstract temporal model base class interface definition.
Abstract observation base class interface definition.
GVector cos(const GVector &vector)
Computes cosine of vector elements.
GVector sin(const GVector &vector)
Computes sine of vector elements.
XML element node class interface definition.
roi_kern(const GCTAModelRadial *parent, const double &roi, const double &dist)
double m_cosdist
Cosine of distance.
double m_dist
Distance between pointing and ROI centre in radians.
double m_sindist
Sinus of distance.
double m_roi
ROI radius in radians.
const GCTAModelRadial * m_parent
Pointer to radial model.
double m_cosroi
Cosine of ROI radius.
double eval(const double &r)
Integration kernel for the Npred method.
Radial acceptance model class.
GModelTemporal * xml_temporal(const GXmlElement &temporal) const
Return pointer to temporal model from XML element.
GCTAModelRadial * xml_radial(const GXmlElement &radial) const
Construct radial model from XML element.
GModelSpectral * m_spectral
Spectral model.
virtual GCTAModelRadialAcceptance & operator=(const GCTAModelRadialAcceptance &model)
Assignment operator.
virtual std::string classname(void) const
Return class name.
virtual double npred(const GEnergy &obsEng, const GTime &obsTime, const GObservation &obs) const
Return spatially integrated background rate in units of events MeV s .
GCTAModelRadial * m_radial
Radial model.
virtual bool is_constant(void) const
Signals if model is temporally constant.
GCTAModelRadial * radial(void) const
Return radial model component.
void init_members(void)
Initialise class members.
GModelSpectral * xml_spectral(const GXmlElement &spectral) const
Return pointer to spectral model from XML element.
GModelSpectral * spectral(void) const
Return spectral model component.
void copy_members(const GCTAModelRadialAcceptance &model)
Copy class members.
bool valid_model(void) const
Verifies if model has all components.
GModelTemporal * temporal(void) const
Return temporal model component.
virtual std::string type(void) const
Return model type.
virtual void write(GXmlElement &xml) const
Write model into XML element.
void free_members(void)
Delete class members.
virtual std::string print(const GChatter &chatter=NORMAL) const
Print model information.
void set_pointers(void)
Set pointers.
virtual GCTAEventList * mc(const GObservation &obs, GRan &ran) const
Return simulated list of events.
GCTAModelRadialAcceptance(void)
Void constructor.
virtual ~GCTAModelRadialAcceptance(void)
Destructor.
virtual GCTAModelRadialAcceptance * clone(void) const
Clone instance.
GModelTemporal * m_temporal
Temporal model.
virtual void clear(void)
Clear instance.
virtual double eval(const GEvent &event, const GObservation &obs, const bool &gradients=false) const
Return background rate in units of events MeV s sr .
virtual void read(const GXmlElement &xml)
Read model from XML element.
Abstract radial acceptance model class.
Class that handles energies in a unit independent way.
Abstract interface for the event classes.
Single parameter function abstract base class.
Abstract data model class.
Abstract spectral model base class.
Abstract temporal model base class.
virtual std::string type(void) const =0
Abstract observation base class.
Random number generator class.