LSST Applications g0d97872fb5+4fd969bb9d,g1653933729+34a971ddd9,g28da252d5a+072f89fe25,g2bbee38e9b+a99b0ab4cd,g2bc492864f+a99b0ab4cd,g2ca4be77d2+c0e3b27cd8,g2cdde0e794+704103fe75,g3156d2b45e+6e87dc994a,g347aa1857d+a99b0ab4cd,g35bb328faa+34a971ddd9,g3a166c0a6a+a99b0ab4cd,g3e281a1b8c+8ec26ec694,g4005a62e65+ba0306790b,g414038480c+9ed5ed841a,g569e0e2b34+cb4faa46ad,g5a97de2502+520531a62c,g717e5f8c0f+29153700a5,g7ede599f99+367733290c,g80478fca09+17051a22cc,g82479be7b0+f2f1ea0a87,g858d7b2824+29153700a5,g8b782ad322+29153700a5,g8cd86fa7b1+05420e7f7d,g9125e01d80+34a971ddd9,ga5288a1d22+e7f674aaf3,gae0086650b+34a971ddd9,gae74b0b5c6+45ef5cdc51,gb58c049af0+ace264a4f2,gc28159a63d+a99b0ab4cd,gcf0d15dbbd+8051a81198,gda6a2b7d83+8051a81198,gdaeeff99f8+7774323b41,gdf4d240d4a+34a971ddd9,ge2409df99d+cb167bac99,ge33fd446bb+29153700a5,ge79ae78c31+a99b0ab4cd,gf0baf85859+890af219f9,gf5289d68f6+9faa5c5784,w.2024.36
LSST Data Management Base Package
|
Interface for an object storing Ellipse data. More...
#include <ellipse.h>
Public Member Functions | |
virtual | ~EllipseData ()=default |
virtual void | convolve (const Ellipse &ell) |
Convolve this ellipse with another. | |
virtual double | get_area () const |
Return the area of this ellipse, equal to pi*sigma_major*sigma_minor. | |
virtual double | get_cov_xy () const |
Return the covariance, equal to sigma_x*sigma_y*rho. | |
virtual double | get_hwhm_x () const |
Get the x-axis half-width at half-maximum. | |
virtual double | get_hwhm_y () const |
Get the y-axis half-width at half-maximum. | |
virtual double | get_radius_trace () const |
Return the trace radius, equal to sqrt(sigma_x^2 + sigma_y^2) | |
virtual double | get_sigma_x () const =0 |
Get sigma_x. | |
virtual double | get_sigma_y () const =0 |
Get sigma_y. | |
virtual double | get_rho () const =0 |
Get rho. | |
virtual double | get_sigma_x_sq () const |
Get the square of sigma_x. | |
virtual double | get_sigma_y_sq () const |
Get the square of sigma_y. | |
virtual double | get_sigma_xy () const |
Return sigma_x*sigma_y. | |
virtual std::array< double, 3 > | get_hxyr () const |
Get hwhm_x, hwhm_y, rho. | |
virtual std::array< double, 3 > | get_xyr () const |
Get sigma_x, sigma_y, rho. | |
virtual void | set (double sigma_x, double sigma_y, double rho) |
Set sigma_x, sigma_y, rho. | |
virtual void | set (const Covariance &covar) |
Set values from a Covariance object. | |
virtual void | set (const EllipseMajor &ellipse) |
Set values from an EllipseMajor object. | |
virtual void | set_h (double hwhm_x, double hwhm_y, double rho) |
Set hwhm_x, hwhm_y, rho (half-width at half-max) | |
virtual void | set_hwhm_x (double hwhm_x) |
Set the x-axis half-width at half-max (FWHM/2) | |
virtual void | set_hwhm_y (double hwhm_y) |
Set the y-axis half-width at half-max (FWHM/2) | |
virtual void | set_sigma_x (double sigma_x)=0 |
Set the x-axis dispersion (sigma) | |
virtual void | set_sigma_y (double sigma_y)=0 |
Set the y-axis dispersion (sigma) | |
virtual void | set_rho (double rho)=0 |
Set the correlation parameter (rho) | |
virtual void | set_hxyr (const std::array< double, 3 > &hxyr) |
Set hwhm_x, hwhm_y, rho from an array. | |
virtual void | set_xyr (const std::array< double, 3 > &xyr) |
Set sigma_x, sigma_y, rho from an array. | |
virtual std::string | repr (bool name_keywords=false, std::string_view namespace_separator=Object::CC_NAMESPACE_SEPARATOR) const override=0 |
Return a full, callable string representation of this. | |
virtual std::string | str () const override=0 |
Return a brief, human-readable string representation of this. | |
bool | operator== (const EllipseData &other) const |
bool | operator!= (const EllipseData &other) const |
Static Public Member Functions | |
static void | check (double size_x, double size_y, double rho, std::string_view error_suffix="") |
Check whether Ellipse parameter values are valid, throwing if not. | |
static void | check_size (double size, std::string_view error_suffix="") |
Check whether an x- or x-yaxis size value is valid. | |
static void | check_rho (double rho, std::string_view error_suffix="") |
Check whether a rho value is valid. | |
static std::string_view | null_str (const std::string_view &namespace_separator) |
Static Public Attributes | |
static constexpr std::string_view | CC_NAMESPACE_SEPARATOR = "::" |
The C++ namespace separator. | |
static constexpr std::string_view | NULL_STR_GENERAL = "None" |
static constexpr std::string_view | PY_NAMESPACE_SEPARATOR = "." |
Friends | |
std::ostream & | operator<< (std::ostream &out, const EllipseData &obj) |
Interface for an object storing Ellipse data.
This is an abstract class designed to store data for an Ellipse to retrieve. No additional restrictions are placed on implementations. Some default implementations are provided.
|
virtualdefault |
|
inlinestatic |
Check whether Ellipse parameter values are valid, throwing if not.
Definition at line 137 of file ellipse.h.
|
inlinestatic |
Check whether a rho value is valid.
Definition at line 153 of file ellipse.h.
|
inlinestatic |
Check whether an x- or x-yaxis size value is valid.
|
virtual |
Convolve this ellipse with another.
Definition at line 149 of file ellipse.cc.
|
virtual |
Return the area of this ellipse, equal to pi*sigma_major*sigma_minor.
Definition at line 142 of file ellipse.cc.
|
virtual |
|
virtual |
Get the x-axis half-width at half-maximum.
Reimplemented in lsst::gauss2d::fit::GaussianParametricEllipse.
Definition at line 162 of file ellipse.cc.
|
virtual |
Get the y-axis half-width at half-maximum.
Reimplemented in lsst::gauss2d::fit::GaussianParametricEllipse.
Definition at line 164 of file ellipse.cc.
|
virtual |
Get hwhm_x, hwhm_y, rho.
Reimplemented in lsst::gauss2d::fit::GaussianParametricEllipse.
Definition at line 166 of file ellipse.cc.
|
virtual |
Return the trace radius, equal to sqrt(sigma_x^2 + sigma_y^2)
Definition at line 173 of file ellipse.cc.
|
pure virtual |
Get rho.
Implemented in lsst::gauss2d::EllipseValues, lsst::gauss2d::Ellipse, lsst::gauss2d::fit::GaussianParametricEllipse, and lsst::gauss2d::fit::SersicEllipseData.
|
pure virtual |
Get sigma_x.
Implemented in lsst::gauss2d::EllipseValues, lsst::gauss2d::Ellipse, lsst::gauss2d::fit::GaussianParametricEllipse, and lsst::gauss2d::fit::SersicEllipseData.
|
virtual |
|
virtual |
|
pure virtual |
Get sigma_y.
Implemented in lsst::gauss2d::EllipseValues, lsst::gauss2d::Ellipse, lsst::gauss2d::fit::GaussianParametricEllipse, and lsst::gauss2d::fit::SersicEllipseData.
|
virtual |
Get the square of sigma_y.
Definition at line 180 of file ellipse.cc.
|
virtual |
Get sigma_x, sigma_y, rho.
Reimplemented in lsst::gauss2d::EllipseValues, lsst::gauss2d::fit::GaussianParametricEllipse, and lsst::gauss2d::fit::SersicEllipseData.
Definition at line 169 of file ellipse.cc.
|
inlinestaticinherited |
Definition at line 49 of file object.h.
|
inline |
|
inline |
Definition at line 216 of file ellipse.h.
|
overridepure virtual |
Return a full, callable string representation of this.
name_keywords | Whether to prefix arguments with "{name}=", where name is the arg name in the header (as with keyword arguments in Python). |
namespace_separator | The string to use to delimit namespaces, i.e. :: in C++ and . in Python. |
Implements lsst::gauss2d::Object.
Implemented in lsst::gauss2d::fit::SersicEllipseData, lsst::gauss2d::EllipseValues, lsst::gauss2d::Ellipse, and lsst::gauss2d::fit::GaussianParametricEllipse.
|
virtual |
Set values from a Covariance object.
Definition at line 263 of file ellipse.cc.
|
virtual |
Set values from an EllipseMajor object.
Definition at line 272 of file ellipse.cc.
|
virtual |
Set sigma_x, sigma_y, rho.
Reimplemented in lsst::gauss2d::EllipseValues, lsst::gauss2d::fit::GaussianParametricEllipse, and lsst::gauss2d::fit::SersicEllipseData.
Definition at line 256 of file ellipse.cc.
|
virtual |
Set hwhm_x, hwhm_y, rho (half-width at half-max)
Reimplemented in lsst::gauss2d::EllipseValues, lsst::gauss2d::fit::GaussianParametricEllipse, and lsst::gauss2d::fit::SersicEllipseData.
Definition at line 297 of file ellipse.cc.
|
virtual |
Set the x-axis half-width at half-max (FWHM/2)
Reimplemented in lsst::gauss2d::fit::GaussianParametricEllipse.
Definition at line 303 of file ellipse.cc.
|
virtual |
Set the y-axis half-width at half-max (FWHM/2)
Reimplemented in lsst::gauss2d::fit::GaussianParametricEllipse.
Definition at line 304 of file ellipse.cc.
|
virtual |
Set hwhm_x, hwhm_y, rho from an array.
Reimplemented in lsst::gauss2d::fit::GaussianParametricEllipse, and lsst::gauss2d::fit::SersicEllipseData.
Definition at line 305 of file ellipse.cc.
|
pure virtual |
Set the correlation parameter (rho)
Implemented in lsst::gauss2d::EllipseValues, lsst::gauss2d::Ellipse, lsst::gauss2d::fit::GaussianParametricEllipse, and lsst::gauss2d::fit::SersicEllipseData.
|
pure virtual |
Set the x-axis dispersion (sigma)
Implemented in lsst::gauss2d::EllipseValues, lsst::gauss2d::Ellipse, lsst::gauss2d::fit::GaussianParametricEllipse, and lsst::gauss2d::fit::SersicEllipseData.
|
pure virtual |
Set the y-axis dispersion (sigma)
Implemented in lsst::gauss2d::EllipseValues, lsst::gauss2d::Ellipse, lsst::gauss2d::fit::GaussianParametricEllipse, and lsst::gauss2d::fit::SersicEllipseData.
|
virtual |
Set sigma_x, sigma_y, rho from an array.
Reimplemented in lsst::gauss2d::fit::GaussianParametricEllipse, and lsst::gauss2d::fit::SersicEllipseData.
Definition at line 306 of file ellipse.cc.
|
overridepure virtual |
Return a brief, human-readable string representation of this.
Implements lsst::gauss2d::Object.
Implemented in lsst::gauss2d::EllipseValues, lsst::gauss2d::Ellipse, lsst::gauss2d::fit::GaussianParametricEllipse, and lsst::gauss2d::fit::SersicEllipseData.
|
friend |
|
staticconstexprinherited |
|
staticconstexprinherited |
|
staticconstexprinherited |