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

#include <GModelSpatialEllipticalGauss.hpp>

Inheritance diagram for GModelSpatialEllipticalGauss:
GModelSpatialElliptical GModelSpatial GBase

Public Member Functions

 GModelSpatialEllipticalGauss (void)
 Void constructor. More...
 
 GModelSpatialEllipticalGauss (const bool &dummy, const std::string &type)
 Model type constructor. More...
 
 GModelSpatialEllipticalGauss (const GSkyDir &dir, const double &major, const double &minor, const double &posangle)
 Elliptical Gaussian constructor. More...
 
 GModelSpatialEllipticalGauss (const GXmlElement &xml)
 XML constructor. More...
 
 GModelSpatialEllipticalGauss (const GModelSpatialEllipticalGauss &model)
 Copy constructor. More...
 
virtual ~GModelSpatialEllipticalGauss (void)
 Destructor. More...
 
virtual
GModelSpatialEllipticalGauss
operator= (const GModelSpatialEllipticalGauss &model)
 Assignment operator. More...
 
virtual void clear (void)
 Clear elliptical Gaussian model. More...
 
virtual
GModelSpatialEllipticalGauss
clone (void) const
 Clone elliptical Gaussian model. More...
 
virtual std::string classname (void) const
 Return class name. More...
 
virtual std::string type (void) const
 Return model type. More...
 
virtual double eval (const double &theta, const double &posangle, const GEnergy &energy, const GTime &time, const bool &gradients=false) const
 Evaluate function (in units of sr^-1) More...
 
virtual GSkyDir mc (const GEnergy &energy, const GTime &time, GRan &ran) const
 Returns MC sky direction. More...
 
virtual bool contains (const GSkyDir &dir, const double &margin=0.0) const
 Checks whether model contains specified sky direction. More...
 
virtual double theta_max (void) const
 Return maximum model radius (in radians) More...
 
virtual GSkyRegionregion (void) const
 Return boundary sky region. More...
 
virtual void read (const GXmlElement &xml)
 Read model from XML element. More...
 
virtual void write (GXmlElement &xml) const
 Write model into XML element. More...
 
virtual std::string print (const GChatter &chatter=NORMAL) const
 Print information. More...
 
- Public Member Functions inherited from GModelSpatialElliptical
 GModelSpatialElliptical (void)
 Void constructor. More...
 
 GModelSpatialElliptical (const GModelSpatialElliptical &model)
 Copy constructor. More...
 
 GModelSpatialElliptical (const GXmlElement &xml)
 XML constructor. More...
 
virtual ~GModelSpatialElliptical (void)
 Destructor. More...
 
virtual GModelSpatialEllipticaloperator= (const GModelSpatialElliptical &model)
 Assignment operator. More...
 
virtual GClassCode code (void) const
 Return class code. More...
 
virtual double eval (const GPhoton &photon, const bool &gradients=false) const
 Return model value. More...
 
virtual double mc_norm (const GSkyDir &dir, const double &radius) const
 Return normalization of elliptical source for Monte Carlo simulations. More...
 
double ra (void) const
 Return Right Ascencion of model centre. More...
 
double dec (void) const
 Return Declination of model centre. More...
 
void ra (const double &ra)
 Set Right Ascencion of model centre. More...
 
void dec (const double &dec)
 Set Declination of model centre. More...
 
double posangle (void) const
 Return Position Angle of model. More...
 
void posangle (const double &posangle)
 Set Position Angle of model. More...
 
double semiminor (void) const
 Return semi-minor axis of ellipse. More...
 
double semimajor (void) const
 Return semi-major axis of ellipse. More...
 
void semiminor (const double &semiminor)
 Set semi-minor axis of ellipse. More...
 
void semimajor (const double &semimajor)
 Set semi-major axis of ellipse. More...
 
GSkyDir dir (void) const
 Return position of elliptical spatial model. More...
 
void dir (const GSkyDir &dir)
 Set position of elliptical spatial model. More...
 
- Public Member Functions inherited from GModelSpatial
 GModelSpatial (void)
 Void constructor. More...
 
 GModelSpatial (const GModelSpatial &model)
 Copy constructor. More...
 
virtual ~GModelSpatial (void)
 Destructor. More...
 
virtual GModelSpatialoperator= (const GModelSpatial &model)
 Assignment operator. More...
 
virtual GModelParoperator[] (const int &index)
 Returns model parameter. More...
 
virtual const GModelParoperator[] (const int &index) const
 Returns model parameter (const version) More...
 
virtual GModelParoperator[] (const std::string &name)
 Returns model parameter. More...
 
virtual const GModelParoperator[] (const std::string &name) const
 Returns model parameter (const version) More...
 
GModelParat (const int &index)
 Returns model parameter. More...
 
const GModelParat (const int &index) const
 Returns model parameter (const version) More...
 
bool has_par (const std::string &name) const
 Checks if parameter name exists. More...
 
bool has_free_pars (void) const
 Checks if the spatial model has free parameters. More...
 
int size (void) const
 Return number of parameters. More...
 
void autoscale (void)
 Autoscale parameters. More...
 
double flux (const GSkyRegion *reg, const GEnergy &srcEng=GEnergy(), const GTime &srcTime=GTime()) const
 Returns model flux integrated in circular sky region. More...
 
- Public Member Functions inherited from GBase
virtual ~GBase (void)
 Destructor. More...
 

Protected Member Functions

void init_members (void)
 Initialise class members. More...
 
void copy_members (const GModelSpatialEllipticalGauss &model)
 Copy class members. More...
 
void free_members (void)
 Delete class members. More...
 
void update (void) const
 Update precomputation cache. More...
 
void set_region (void) const
 Set boundary sky region. More...
 
- Protected Member Functions inherited from GModelSpatialElliptical
void init_members (void)
 Initialise class members. More...
 
void copy_members (const GModelSpatialElliptical &model)
 Copy class members. More...
 
void free_members (void)
 Delete class members. More...
 
- Protected Member Functions inherited from GModelSpatial
void init_members (void)
 Initialise class members. More...
 
void copy_members (const GModelSpatial &model)
 Copy class members. More...
 
void free_members (void)
 Delete class members. More...
 

Protected Attributes

std::string m_type
 Model type. More...
 
GSkyRegionCircle m_region
 Bounding circle. More...
 
double m_last_minor
 Last semi-minor axis. More...
 
double m_last_major
 Last semi-major axis. More...
 
double m_last_posangle
 Last position angle. More...
 
double m_cospos2
 squared cosine of position angle More...
 
double m_sinpos2
 squared sine of position angle More...
 
double m_sin2pos
 sine of twice the position angle More...
 
double m_minor2
 square of minor axis More...
 
double m_major2
 square of major axis More...
 
double m_minor_rad
 Minor axis in radians. More...
 
double m_major_rad
 Major axis in radians. More...
 
double m_norm
 Normalization. More...
 
double m_term1
 Help term 1. More...
 
double m_term2
 Help term 2. More...
 
double m_term3
 Help term 3. More...
 
- Protected Attributes inherited from GModelSpatialElliptical
GModelPar m_ra
 Right Ascension (deg) More...
 
GModelPar m_dec
 Declination (deg) More...
 
GModelPar m_posangle
 Position angle from North, counterclockwise (deg) More...
 
GModelPar m_semiminor
 Semi-minor axis of ellipse (deg) More...
 
GModelPar m_semimajor
 Semi-major axis of ellipse (deg) More...
 
- Protected Attributes inherited from GModelSpatial
std::vector< GModelPar * > m_pars
 Parameter pointers. More...
 

Detailed Description

Definition at line 48 of file GModelSpatialEllipticalGauss.hpp.

Constructor & Destructor Documentation

GModelSpatialEllipticalGauss::GModelSpatialEllipticalGauss ( void  )

Void constructor.

Definition at line 74 of file GModelSpatialEllipticalGauss.cpp.

References init_members().

Referenced by clone().

GModelSpatialEllipticalGauss::GModelSpatialEllipticalGauss ( const bool &  dummy,
const std::string &  type 
)

Model type constructor.

Parameters
[in]dummyDummy flag.
[in]typeModel type.

Constructs empty elliptical Gaussian model by specifying a model type.

Definition at line 93 of file GModelSpatialEllipticalGauss.cpp.

References init_members(), m_type, and type().

GModelSpatialEllipticalGauss::GModelSpatialEllipticalGauss ( const GSkyDir dir,
const double &  semimajor,
const double &  semiminor,
const double &  posangle 
)

Elliptical Gaussian constructor.

Parameters
[in]dirCentre of elliptical Gaussian.
[in]semimajorSemi-major axis (degrees).
[in]semiminorSemi-minor axis (degrees).
[in]posanglePosition angle of semi-major axis (degrees).

Construct elliptical Gaussian model from the ellipse centre direction (dir), the semimajor and semiminor axes, and the position angle (posangle).

Definition at line 120 of file GModelSpatialEllipticalGauss.cpp.

References GModelSpatialElliptical::dir(), init_members(), GModelSpatialElliptical::posangle(), GModelSpatialElliptical::semimajor(), and GModelSpatialElliptical::semiminor().

GModelSpatialEllipticalGauss::GModelSpatialEllipticalGauss ( const GXmlElement xml)
explicit

XML constructor.

Parameters
[in]xmlXML element.

Constructs elliptical Gaussian model by extracting information from an XML element. See the read() method for more information about the expected structure of the XML element.

Definition at line 149 of file GModelSpatialEllipticalGauss.cpp.

References init_members(), and read().

GModelSpatialEllipticalGauss::GModelSpatialEllipticalGauss ( const GModelSpatialEllipticalGauss model)

Copy constructor.

Parameters
[in]modelElliptical Gaussian model.

Definition at line 168 of file GModelSpatialEllipticalGauss.cpp.

References copy_members(), and init_members().

GModelSpatialEllipticalGauss::~GModelSpatialEllipticalGauss ( void  )
virtual

Destructor.

Definition at line 185 of file GModelSpatialEllipticalGauss.cpp.

References free_members().

Member Function Documentation

std::string GModelSpatialEllipticalGauss::classname ( void  ) const
inlinevirtual

Return class name.

Returns
String containing the class name ("GModelSpatialEllipticalGauss").

Implements GModelSpatialElliptical.

Definition at line 124 of file GModelSpatialEllipticalGauss.hpp.

void GModelSpatialEllipticalGauss::clear ( void  )
virtual
GModelSpatialEllipticalGauss * GModelSpatialEllipticalGauss::clone ( void  ) const
virtual

Clone elliptical Gaussian model.

Returns
Pointer to deep copy of elliptical Gaussian model.

Implements GModelSpatialElliptical.

Definition at line 262 of file GModelSpatialEllipticalGauss.cpp.

References GModelSpatialEllipticalGauss().

bool GModelSpatialEllipticalGauss::contains ( const GSkyDir dir,
const double &  margin = 0.0 
) const
virtual

Checks whether model contains specified sky direction.

Parameters
[in]dirSky direction.
[in]marginMargin to be added to sky direction (degrees)
Returns
True if the model contains the sky direction.

Signals whether a sky direction is contained in the elliptical gauss model.

Todo:
Implement correct evaluation of effective ellipse radius.

Implements GModelSpatialElliptical.

Definition at line 463 of file GModelSpatialEllipticalGauss.cpp.

References gammalib::deg2rad, GModelSpatialElliptical::dir(), GSkyDir::dist(), and theta_max().

void GModelSpatialEllipticalGauss::copy_members ( const GModelSpatialEllipticalGauss model)
protected

Copy class members.

Parameters
[in]modelElliptical Gaussian model.

Definition at line 672 of file GModelSpatialEllipticalGauss.cpp.

References m_cospos2, m_last_major, m_last_minor, m_last_posangle, m_major2, m_major_rad, m_minor2, m_minor_rad, m_norm, m_region, m_sin2pos, m_sinpos2, m_term1, m_term2, m_term3, and m_type.

Referenced by GModelSpatialEllipticalGauss(), and operator=().

double GModelSpatialEllipticalGauss::eval ( const double &  theta,
const double &  posangle,
const GEnergy energy,
const GTime time,
const bool &  gradients = false 
) const
virtual

Evaluate function (in units of sr^-1)

Parameters
[in]thetaAngular distance from disk centre (radians).
[in]posanglePosition angle (counterclockwise from North) (radians).
[in]energyPhoton energy.
[in]timePhoton arrival time.
[in]gradientsCompute gradients?
Returns
Model value.

Evaluates the spatial component for an elliptical Gaussian source model.

The elliptical Gaussian function is defined by \(S_{\rm p}(\theta, \phi | E, t)\), where \(\theta\) is the angular separation between elliptical Gaussian centre and the actual location and \(\phi\) the position angle with respect to the model centre, counted counterclockwise from North.

The function \(S_{\rm p}(\theta, \phi | E, t)\) is given by

\[ S_{\rm p}(\theta, \phi | E, t) = {\tt m\_norm} \times \exp \left( -\frac{\theta^2}{2 r_{\rm eff}^2} \right) \]

where the effective ellipse radius \(r_{\rm eff}\) towards a given position angle is given by

\[ r_{\rm eff} = \frac{ab} {\sqrt{\left( a \sin (\phi - \phi_0) \right)^2} + \sqrt{\left( b \cos (\phi - \phi_0) \right)^2}} \]

and \(a\) is the semi-major axis of the ellipse, \(b\) is the semi-minor axis, and \(\phi_0\) is the position angle of the ellipse, counted counterclockwise from North. \({\tt m\_norm}\) is a normalization constant given by

\[ {\tt m\_norm} = \frac{1}{2 \pi \times a \times b} \]

The method will not compute analytical parameter gradients, even if the gradients argument is set to true. Radial disk parameter gradients need to be computed numerically.

Warning
The above formula for an elliptical Gaussian are accurate for small angles, with semimajor and semiminor axes below a few degrees. This should be fine for most use cases, but you should be aware that the ellipse will get distorted for larger angles.
For numerical reasons the elliptical Gaussian will be truncated for \(\theta\) angles that correspond to 3.0 times the effective ellipse radius.

< small angle

Implements GModelSpatialElliptical.

Definition at line 328 of file GModelSpatialEllipticalGauss.cpp.

References cos(), gammalib::deg2rad, exp(), gammalib::is_infinite(), gammalib::is_notanumber(), m_major2, m_major_rad, m_minor2, m_minor_rad, m_norm, m_term1, m_term2, m_term3, GModelSpatialElliptical::posangle(), sin(), sqrt(), theta_max(), and update().

void GModelSpatialEllipticalGauss::free_members ( void  )
protected

Delete class members.

Definition at line 702 of file GModelSpatialEllipticalGauss.cpp.

Referenced by clear(), operator=(), and ~GModelSpatialEllipticalGauss().

void GModelSpatialEllipticalGauss::init_members ( void  )
protected
GSkyDir GModelSpatialEllipticalGauss::mc ( const GEnergy energy,
const GTime time,
GRan ran 
) const
virtual

Returns MC sky direction.

Parameters
[in]energyPhoton energy.
[in]timePhoton arrival time.
[in,out]ranRandom number generator.
Returns
Sky direction.

Draws an arbitrary sky direction from the elliptical Gaussian model.

Warning
For numerical reasons the elliptical Gaussian will be truncated for \(\theta\) angles that correspond to 3.0 times the effective ellipse radius.

Implements GModelSpatialElliptical.

Definition at line 409 of file GModelSpatialEllipticalGauss.cpp.

References gammalib::atan2d(), GPhoton::dir(), GModelSpatialElliptical::dir(), GPhoton::energy(), GRan::normal(), GModelSpatialElliptical::posangle(), GSkyDir::rotate_deg(), GModelSpatialElliptical::semimajor(), GModelSpatialElliptical::semiminor(), sqrt(), GPhoton::time(), and update().

GModelSpatialEllipticalGauss & GModelSpatialEllipticalGauss::operator= ( const GModelSpatialEllipticalGauss model)
virtual

Assignment operator.

Parameters
[in]modelElliptical gauss model.
Returns
Elliptical Gaussian model.

Definition at line 207 of file GModelSpatialEllipticalGauss.cpp.

References copy_members(), free_members(), init_members(), and GModelSpatialElliptical::operator=().

std::string GModelSpatialEllipticalGauss::print ( const GChatter chatter = NORMAL) const
virtual

Print information.

Parameters
[in]chatterChattiness.
Returns
String containing model information.

Implements GModelSpatialElliptical.

Definition at line 603 of file GModelSpatialEllipticalGauss.cpp.

References GModelSpatial::m_pars, gammalib::parformat(), SILENT, GModelSpatial::size(), and gammalib::str().

void GModelSpatialEllipticalGauss::read ( const GXmlElement xml)
virtual

Read model from XML element.

Parameters
[in]xmlXML element.
Exceptions
GException::model_invalid_parnumInvalid number of model parameters found in XML element.
GException::model_invalid_parnamesInvalid model parameter names found in XML element.

Reads the elliptical gauss model information from an XML element. The XML element shall have either the format

<spatialModel type="EllipticalGaussian">
  <parameter name="RA"          scale="1.0" value="83.6331" min="-360" max="360" free="1"/>
  <parameter name="DEC"         scale="1.0" value="22.0145" min="-90"  max="90"  free="1"/>
  <parameter name="PA"          scale="1.0" value="45.0"    min="-360"  max="360" free="1"/>
  <parameter name="MinorRadius" scale="1.0" value="0.5"     min="0.001" max="10"  free="1"/>
  <parameter name="MajorRadius" scale="1.0" value="2.0"     min="0.001" max="10"  free="1"/>
</spatialModel>

or

<spatialModel type="EllipticalGaussian">
  <parameter name="GLON"        scale="1.0" value="83.6331" min="-360" max="360" free="1"/>
  <parameter name="GLAT"        scale="1.0" value="22.0145" min="-90"  max="90"  free="1"/>
  <parameter name="PA"          scale="1.0" value="45.0"    min="-360"  max="360" free="1"/>
  <parameter name="MinorRadius" scale="1.0" value="0.5"     min="0.001" max="10"  free="1"/>
  <parameter name="MajorRadius" scale="1.0" value="2.0"     min="0.001" max="10"  free="1"/>
</spatialModel>
Todo:
Implement a test of the ellipse boundary. The axes and axes minimum should be >0.

Reimplemented from GModelSpatialElliptical.

Definition at line 530 of file GModelSpatialEllipticalGauss.cpp.

References GXmlNode::elements(), G_READ, GModelSpatialElliptical::m_semimajor, GModelSpatialElliptical::m_semiminor, GOptimizerPar::name(), GModelSpatialElliptical::read(), GModelPar::read(), and gammalib::xml_get_par().

Referenced by GModelSpatialEllipticalGauss().

GSkyRegion * GModelSpatialEllipticalGauss::region ( void  ) const
inlinevirtual

Return boundary sky region.

Returns
Boundary sky region.

Returns a sky region that fully encloses the spatial model component.

Implements GModelSpatialElliptical.

Definition at line 152 of file GModelSpatialEllipticalGauss.hpp.

References m_region, and set_region().

void GModelSpatialEllipticalGauss::set_region ( void  ) const
protected
double GModelSpatialEllipticalGauss::theta_max ( void  ) const
virtual

Return maximum model radius (in radians)

Returns
Returns maximum model radius.

Returns the maximum of 3.0 semimajor() and 3.0 semiminor() as approximate edge of the Gaussian. This limit is of course arbitrary, but allows to limit the integration region for response computation. The value of 3.0 has been determined by experiment (#1561).

Implements GModelSpatialElliptical.

Definition at line 484 of file GModelSpatialEllipticalGauss.cpp.

References gammalib::deg2rad, GModelSpatialElliptical::semimajor(), and GModelSpatialElliptical::semiminor().

Referenced by contains(), and eval().

std::string GModelSpatialEllipticalGauss::type ( void  ) const
inlinevirtual

Return model type.

Returns
Model type.

Returns the type of the elliptical gauss model.

Implements GModelSpatialElliptical.

Definition at line 138 of file GModelSpatialEllipticalGauss.hpp.

References m_type.

Referenced by GModelSpatialEllipticalGauss().

void GModelSpatialEllipticalGauss::update ( void  ) const
protected

Update precomputation cache.

Computes the normalization

\[ {\tt m\_norm} = \frac{1}{2 \pi \times a \times b} \]

where \(a\) is the semi-major axis and \(b\) is the semi-minor axis of the ellipse.

Warning
The normalization of the elliptical Gaussian is only valid in the small angle approximation.

Definition at line 724 of file GModelSpatialEllipticalGauss.cpp.

References cos(), gammalib::deg2rad, m_cospos2, m_last_major, m_last_minor, m_last_posangle, m_major2, m_major_rad, m_minor2, m_minor_rad, m_norm, m_sin2pos, m_sinpos2, m_term1, m_term2, m_term3, GModelSpatialElliptical::posangle(), GModelSpatialElliptical::semimajor(), GModelSpatialElliptical::semiminor(), sin(), and gammalib::twopi.

Referenced by eval(), and mc().

void GModelSpatialEllipticalGauss::write ( GXmlElement xml) const
virtual

Write model into XML element.

Parameters
[in]xmlXML element into which model information is written.
Exceptions
GException::model_invalid_parnumInvalid number of model parameters found in XML element.
GException::model_invalid_parnamesInvalid model parameter names found in XML element.

Write the elliptical gauss model information into an XML element. The XML element will have the format

<spatialModel type="EllipticalGaussian">
  <parameter name="RA"          scale="1.0" value="83.6331" min="-360" max="360" free="1"/>
  <parameter name="DEC"         scale="1.0" value="22.0145" min="-90"  max="90"  free="1"/>
  <parameter name="PA"          scale="1.0" value="45.0"    min="-360"  max="360" free="1"/>
  <parameter name="MinorRadius" scale="1.0" value="0.5"     min="0.001" max="10"  free="1"/>
  <parameter name="MajorRadius" scale="1.0" value="2.0"     min="0.001" max="10"  free="1"/>
</spatialModel>

Reimplemented from GModelSpatialElliptical.

Definition at line 579 of file GModelSpatialEllipticalGauss.cpp.

References G_WRITE, GModelSpatialElliptical::m_semimajor, GModelSpatialElliptical::m_semiminor, GOptimizerPar::name(), GModelSpatialElliptical::write(), GModelPar::write(), and gammalib::xml_need_par().

Member Data Documentation

double GModelSpatialEllipticalGauss::m_cospos2
mutableprotected

squared cosine of position angle

Definition at line 103 of file GModelSpatialEllipticalGauss.hpp.

Referenced by copy_members(), init_members(), and update().

double GModelSpatialEllipticalGauss::m_last_major
mutableprotected

Last semi-major axis.

Definition at line 101 of file GModelSpatialEllipticalGauss.hpp.

Referenced by copy_members(), init_members(), and update().

double GModelSpatialEllipticalGauss::m_last_minor
mutableprotected

Last semi-minor axis.

Definition at line 100 of file GModelSpatialEllipticalGauss.hpp.

Referenced by copy_members(), init_members(), and update().

double GModelSpatialEllipticalGauss::m_last_posangle
mutableprotected

Last position angle.

Definition at line 102 of file GModelSpatialEllipticalGauss.hpp.

Referenced by copy_members(), init_members(), and update().

double GModelSpatialEllipticalGauss::m_major2
mutableprotected

square of major axis

Definition at line 107 of file GModelSpatialEllipticalGauss.hpp.

Referenced by copy_members(), eval(), init_members(), and update().

double GModelSpatialEllipticalGauss::m_major_rad
mutableprotected

Major axis in radians.

Definition at line 109 of file GModelSpatialEllipticalGauss.hpp.

Referenced by copy_members(), eval(), init_members(), and update().

double GModelSpatialEllipticalGauss::m_minor2
mutableprotected

square of minor axis

Definition at line 106 of file GModelSpatialEllipticalGauss.hpp.

Referenced by copy_members(), eval(), init_members(), and update().

double GModelSpatialEllipticalGauss::m_minor_rad
mutableprotected

Minor axis in radians.

Definition at line 108 of file GModelSpatialEllipticalGauss.hpp.

Referenced by copy_members(), eval(), init_members(), and update().

double GModelSpatialEllipticalGauss::m_norm
mutableprotected

Normalization.

Definition at line 110 of file GModelSpatialEllipticalGauss.hpp.

Referenced by copy_members(), eval(), init_members(), and update().

GSkyRegionCircle GModelSpatialEllipticalGauss::m_region
mutableprotected

Bounding circle.

Definition at line 97 of file GModelSpatialEllipticalGauss.hpp.

Referenced by copy_members(), init_members(), region(), and set_region().

double GModelSpatialEllipticalGauss::m_sin2pos
mutableprotected

sine of twice the position angle

Definition at line 105 of file GModelSpatialEllipticalGauss.hpp.

Referenced by copy_members(), init_members(), and update().

double GModelSpatialEllipticalGauss::m_sinpos2
mutableprotected

squared sine of position angle

Definition at line 104 of file GModelSpatialEllipticalGauss.hpp.

Referenced by copy_members(), init_members(), and update().

double GModelSpatialEllipticalGauss::m_term1
mutableprotected

Help term 1.

Definition at line 111 of file GModelSpatialEllipticalGauss.hpp.

Referenced by copy_members(), eval(), init_members(), and update().

double GModelSpatialEllipticalGauss::m_term2
mutableprotected

Help term 2.

Definition at line 112 of file GModelSpatialEllipticalGauss.hpp.

Referenced by copy_members(), eval(), init_members(), and update().

double GModelSpatialEllipticalGauss::m_term3
mutableprotected

Help term 3.

Definition at line 113 of file GModelSpatialEllipticalGauss.hpp.

Referenced by copy_members(), eval(), init_members(), and update().

std::string GModelSpatialEllipticalGauss::m_type
protected

Model type.

Definition at line 96 of file GModelSpatialEllipticalGauss.hpp.

Referenced by copy_members(), GModelSpatialEllipticalGauss(), init_members(), and type().


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