LSST Applications
21.0.0+04719a4bac,21.0.0-1-ga51b5d4+f5e6047307,21.0.0-11-g2b59f77+a9c1acf22d,21.0.0-11-ga42c5b2+86977b0b17,21.0.0-12-gf4ce030+76814010d2,21.0.0-13-g1721dae+760e7a6536,21.0.0-13-g3a573fe+768d78a30a,21.0.0-15-g5a7caf0+f21cbc5713,21.0.0-16-g0fb55c1+b60e2d390c,21.0.0-19-g4cded4ca+71a93a33c0,21.0.0-2-g103fe59+bb20972958,21.0.0-2-g45278ab+04719a4bac,21.0.0-2-g5242d73+3ad5d60fb1,21.0.0-2-g7f82c8f+8babb168e8,21.0.0-2-g8f08a60+06509c8b61,21.0.0-2-g8faa9b5+616205b9df,21.0.0-2-ga326454+8babb168e8,21.0.0-2-gde069b7+5e4aea9c2f,21.0.0-2-gecfae73+1d3a86e577,21.0.0-2-gfc62afb+3ad5d60fb1,21.0.0-25-g1d57be3cd+e73869a214,21.0.0-3-g357aad2+ed88757d29,21.0.0-3-g4a4ce7f+3ad5d60fb1,21.0.0-3-g4be5c26+3ad5d60fb1,21.0.0-3-g65f322c+e0b24896a3,21.0.0-3-g7d9da8d+616205b9df,21.0.0-3-ge02ed75+a9c1acf22d,21.0.0-4-g591bb35+a9c1acf22d,21.0.0-4-g65b4814+b60e2d390c,21.0.0-4-gccdca77+0de219a2bc,21.0.0-4-ge8a399c+6c55c39e83,21.0.0-5-gd00fb1e+05fce91b99,21.0.0-6-gc675373+3ad5d60fb1,21.0.0-64-g1122c245+4fb2b8f86e,21.0.0-7-g04766d7+cd19d05db2,21.0.0-7-gdf92d54+04719a4bac,21.0.0-8-g5674e7b+d1bd76f71f,master-gac4afde19b+a9c1acf22d,w.2021.13
LSST Data Management Base Package
|
An ellipse core with a complex ellipticity and radius parameterization. More...
#include <Separable.h>
Public Types | |
enum | ParameterEnum { E1 = 0 , E2 = 1 , RADIUS = 2 } |
typedef Ellipticity_ | Ellipticity |
typedef Radius_ | Radius |
typedef Eigen::Vector3d | ParameterVector |
Parameter vector type. More... | |
typedef Eigen::Matrix3d | Jacobian |
Parameter Jacobian matrix type. More... | |
Public Member Functions | |
double const | getE1 () const |
void | setE1 (double e1) |
double const | getE2 () const |
void | setE2 (double e2) |
Radius const & | getRadius () const |
Radius & | getRadius () |
void | setRadius (double radius) |
void | setRadius (Radius const &radius) |
Ellipticity const & | getEllipticity () const |
Ellipticity & | getEllipticity () |
std::shared_ptr< Separable > | clone () const |
Deep copy the ellipse core. More... | |
std::string | getName () const override |
Return a string that identifies this parametrization. More... | |
void | normalize () override |
Put the parameters into a "standard form", and throw InvalidParameterError if they cannot be normalized. More... | |
void | readParameters (double const *iter) override |
Return the size of the bounding box for the ellipse core. More... | |
void | writeParameters (double *iter) const override |
Return the size of the bounding box for the ellipse core. More... | |
Separable & | operator= (Separable const &other) |
Standard assignment. More... | |
Separable & | operator= (Separable &&other) |
Separable & | operator= (BaseCore const &other) |
Converting assignment. More... | |
Separable (double e1=0.0, double e2=0.0, double radius=Radius(), bool normalize=true) | |
Construct from parameter values. More... | |
Separable (std::complex< double > const &complex, double radius=Radius(), bool normalize=true) | |
Construct from parameter values. More... | |
Separable (Ellipticity const &ellipticity, double radius=Radius(), bool normalize=true) | |
Construct from parameter values. More... | |
Separable (BaseCore::ParameterVector const &vector, bool normalize=false) | |
Construct from a parameter vector. More... | |
Separable (Separable const &other) | |
Copy constructor. More... | |
Separable (Separable &&other) | |
~Separable () override=default | |
Separable (BaseCore const &other) | |
Converting copy constructor. More... | |
Separable (BaseCore::Transformer const &transformer) | |
Converting copy constructor. More... | |
Separable (BaseCore::Convolution const &convolution) | |
Converting copy constructor. More... | |
void | grow (double buffer) |
Increase the major and minor radii of the ellipse core by the given buffer. More... | |
void | scale (double factor) |
Scale the size of the ellipse core by the given factor. More... | |
double | getArea () const |
Return the area of the ellipse core. More... | |
double | getDeterminantRadius () const |
Return the radius defined as the 4th root of the determinant of the quadrupole matrix. More... | |
double | getTraceRadius () const |
Return the radius defined as the square root of one half the trace of the quadrupole matrix. More... | |
Coordinate transforms | |
These member functions transform the ellipse by the given lsst::geom::LinearTransform. The transform can be done in-place by calling inPlace() on the returned expression object, or returned as a new shared_ptr by calling copy(). | |
Transformer | transform (lsst::geom::LinearTransform const &transform) |
Return the transform that maps the ellipse to the unit circle. More... | |
Transformer const | transform (lsst::geom::LinearTransform const &transform) const |
Return the transform that maps the ellipse to the unit circle. More... | |
GridTransform const | getGridTransform () const |
Return the transform that maps the ellipse to the unit circle. More... | |
Static Public Member Functions | |
static std::shared_ptr< BaseCore > | make (std::string const &name) |
static std::shared_ptr< BaseCore > | make (std::string const &name, ParameterVector const ¶meters) |
static std::shared_ptr< BaseCore > | make (std::string const &name, double v1, double v2, double v3) |
static std::shared_ptr< BaseCore > | make (std::string const &name, BaseCore const &other) |
static std::shared_ptr< BaseCore > | make (std::string const &name, Transformer const &other) |
static std::shared_ptr< BaseCore > | make (std::string const &name, Convolution const &other) |
Protected Member Functions | |
std::shared_ptr< BaseCore > | _clone () const override |
Return the size of the bounding box for the ellipse core. More... | |
void | _assignToQuadrupole (double &ixx, double &iyy, double &ixy) const override |
Return the size of the bounding box for the ellipse core. More... | |
void | _assignFromQuadrupole (double ixx, double iyy, double ixy) override |
Return the size of the bounding box for the ellipse core. More... | |
void | _assignToAxes (double &a, double &b, double &theta) const override |
Return the size of the bounding box for the ellipse core. More... | |
void | _assignFromAxes (double a, double b, double theta) override |
Return the size of the bounding box for the ellipse core. More... | |
Jacobian | _dAssignToQuadrupole (double &ixx, double &iyy, double &ixy) const override |
Return the size of the bounding box for the ellipse core. More... | |
Jacobian | _dAssignFromQuadrupole (double ixx, double iyy, double ixy) override |
Return the size of the bounding box for the ellipse core. More... | |
Jacobian | _dAssignToAxes (double &a, double &b, double &theta) const override |
Return the size of the bounding box for the ellipse core. More... | |
Jacobian | _dAssignFromAxes (double a, double b, double theta) override |
Return the size of the bounding box for the ellipse core. More... | |
Convolve two bivariate Gaussians defined by their 1-sigma ellipses. | |
Convolution | convolve (BaseCore const &other) |
Return the size of the bounding box for the ellipse core. More... | |
Convolution const | convolve (BaseCore const &other) const |
Return the size of the bounding box for the ellipse core. More... | |
lsst::geom::Extent2D | computeDimensions () const |
Return the size of the bounding box for the ellipse core. More... | |
ParameterVector const | getParameterVector () const |
Return the core parameters as a vector. More... | |
void | setParameterVector (ParameterVector const &vector) |
Set the core parameters from a vector. More... | |
bool | operator== (BaseCore const &other) const |
Compare two ellipse cores for equality. More... | |
bool | operator!= (BaseCore const &other) const |
Compare two ellipse cores for inequality. More... | |
Jacobian | dAssign (BaseCore const &other) |
Assign other to this and return the derivative of the conversion, d(this)/d(other). More... | |
template<typename Output > | |
Converter< Output > | as () const |
Convert this to the core type specified as a template parameter. More... | |
static void | registerSubclass (std::shared_ptr< BaseCore > const &example) |
Return the size of the bounding box for the ellipse core. More... | |
static void | _assignQuadrupoleToAxes (double ixx, double iyy, double ixy, double &a, double &b, double &theta) |
Return the size of the bounding box for the ellipse core. More... | |
static Jacobian | _dAssignQuadrupoleToAxes (double ixx, double iyy, double ixy, double &a, double &b, double &theta) |
Return the size of the bounding box for the ellipse core. More... | |
static void | _assignAxesToQuadrupole (double a, double b, double theta, double &ixx, double &iyy, double &ixy) |
Return the size of the bounding box for the ellipse core. More... | |
static Jacobian | _dAssignAxesToQuadrupole (double a, double b, double theta, double &ixx, double &iyy, double &ixy) |
Return the size of the bounding box for the ellipse core. More... | |
An ellipse core with a complex ellipticity and radius parameterization.
Definition at line 50 of file Separable.h.
typedef Ellipticity_ lsst::afw::geom::ellipses::Separable< Ellipticity_, Radius_ >::Ellipticity |
Definition at line 54 of file Separable.h.
|
inherited |
Parameter Jacobian matrix type.
Definition at line 64 of file BaseCore.h.
|
inherited |
Parameter vector type.
Definition at line 63 of file BaseCore.h.
typedef Radius_ lsst::afw::geom::ellipses::Separable< Ellipticity_, Radius_ >::Radius |
Definition at line 55 of file Separable.h.
enum lsst::afw::geom::ellipses::Separable::ParameterEnum |
|
explicit |
Construct from parameter values.
Definition at line 78 of file Separable.cc.
|
explicit |
Construct from parameter values.
Definition at line 84 of file Separable.cc.
|
explicit |
Construct from parameter values.
Definition at line 91 of file Separable.cc.
|
explicit |
Construct from a parameter vector.
Definition at line 97 of file Separable.cc.
|
inline |
|
inline |
Definition at line 114 of file Separable.h.
|
overridedefault |
|
inline |
|
inline |
Converting copy constructor.
Definition at line 122 of file Separable.h.
|
inline |
Converting copy constructor.
Definition at line 125 of file Separable.h.
|
staticprotectedinherited |
Return the size of the bounding box for the ellipse core.
Definition at line 219 of file BaseCore.cc.
|
overrideprotectedvirtual |
Return the size of the bounding box for the ellipse core.
Implements lsst::afw::geom::ellipses::BaseCore.
Definition at line 152 of file Separable.cc.
|
overrideprotectedvirtual |
Return the size of the bounding box for the ellipse core.
Implements lsst::afw::geom::ellipses::BaseCore.
Definition at line 135 of file Separable.cc.
|
staticprotectedinherited |
Return the size of the bounding box for the ellipse core.
Definition at line 184 of file BaseCore.cc.
|
overrideprotectedvirtual |
Return the size of the bounding box for the ellipse core.
Implements lsst::afw::geom::ellipses::BaseCore.
Definition at line 119 of file Separable.cc.
|
overrideprotectedvirtual |
Return the size of the bounding box for the ellipse core.
Implements lsst::afw::geom::ellipses::BaseCore.
Definition at line 103 of file Separable.cc.
|
inlineoverrideprotectedvirtual |
Return the size of the bounding box for the ellipse core.
Implements lsst::afw::geom::ellipses::BaseCore.
Definition at line 128 of file Separable.h.
|
staticprotectedinherited |
Return the size of the bounding box for the ellipse core.
Definition at line 232 of file BaseCore.cc.
|
overrideprotectedvirtual |
Return the size of the bounding box for the ellipse core.
Implements lsst::afw::geom::ellipses::BaseCore.
Definition at line 159 of file Separable.cc.
|
overrideprotectedvirtual |
Return the size of the bounding box for the ellipse core.
Implements lsst::afw::geom::ellipses::BaseCore.
Definition at line 142 of file Separable.cc.
|
staticprotectedinherited |
Return the size of the bounding box for the ellipse core.
Definition at line 194 of file BaseCore.cc.
|
overrideprotectedvirtual |
Return the size of the bounding box for the ellipse core.
Implements lsst::afw::geom::ellipses::BaseCore.
Definition at line 126 of file Separable.cc.
|
overrideprotectedvirtual |
Return the size of the bounding box for the ellipse core.
Implements lsst::afw::geom::ellipses::BaseCore.
Definition at line 109 of file Separable.cc.
|
inlineinherited |
Convert this to the core type specified as a template parameter.
Definition at line 238 of file BaseCore.h.
|
inline |
Deep copy the ellipse core.
Definition at line 72 of file Separable.h.
|
inherited |
Return the size of the bounding box for the ellipse core.
Definition at line 130 of file BaseCore.cc.
|
inlineinherited |
Return the size of the bounding box for the ellipse core.
Definition at line 93 of file Convolution.h.
|
inlineinherited |
Return the size of the bounding box for the ellipse core.
Definition at line 97 of file Convolution.h.
|
inherited |
Assign other to this and return the derivative of the conversion, d(this)/d(other).
Definition at line 169 of file BaseCore.cc.
|
inherited |
Return the area of the ellipse core.
Definition at line 112 of file BaseCore.cc.
|
inherited |
Return the radius defined as the 4th root of the determinant of the quadrupole matrix.
The determinant radius is equal to the standard radius for a circle, and its square times pi is the area of the ellipse.
Definition at line 118 of file BaseCore.cc.
|
inline |
Definition at line 57 of file Separable.h.
|
inline |
Definition at line 60 of file Separable.h.
|
inline |
Definition at line 69 of file Separable.h.
|
inline |
Definition at line 68 of file Separable.h.
|
inlineinherited |
Return the transform that maps the ellipse to the unit circle.
The returned proxy object is implicitly convertible to lsst::geom::LinearTransform and also supports differentiation.
Definition at line 110 of file GridTransform.h.
|
overridevirtual |
Return a string that identifies this parametrization.
Implements lsst::afw::geom::ellipses::BaseCore.
Definition at line 39 of file Separable.cc.
|
inherited |
Return the core parameters as a vector.
Definition at line 144 of file BaseCore.cc.
|
inline |
Definition at line 64 of file Separable.h.
|
inline |
Definition at line 63 of file Separable.h.
|
inherited |
Return the radius defined as the square root of one half the trace of the quadrupole matrix.
The trace radius is equal to the standard radius for a circle.
Definition at line 124 of file BaseCore.cc.
|
inherited |
Increase the major and minor radii of the ellipse core by the given buffer.
Definition at line 96 of file BaseCore.cc.
|
staticinherited |
Definition at line 56 of file BaseCore.cc.
|
staticinherited |
Definition at line 74 of file BaseCore.cc.
|
staticinherited |
Definition at line 86 of file BaseCore.cc.
|
staticinherited |
Definition at line 68 of file BaseCore.cc.
|
staticinherited |
Definition at line 62 of file BaseCore.cc.
|
staticinherited |
Definition at line 80 of file BaseCore.cc.
|
overridevirtual |
Put the parameters into a "standard form", and throw InvalidParameterError if they cannot be normalized.
Implements lsst::afw::geom::ellipses::BaseCore.
Definition at line 44 of file Separable.cc.
|
inlineinherited |
Compare two ellipse cores for inequality.
Ellipses are only equal if they have the same type.
Definition at line 167 of file BaseCore.h.
|
inline |
Converting assignment.
Definition at line 93 of file Separable.h.
Separable< Ellipticity_, Radius_ > & lsst::afw::geom::ellipses::Separable< Ellipticity_, Radius_ >::operator= | ( | Separable< Ellipticity_, Radius_ > && | other | ) |
Definition at line 73 of file Separable.cc.
Separable< Ellipticity_, Radius_ > & lsst::afw::geom::ellipses::Separable< Ellipticity_, Radius_ >::operator= | ( | Separable< Ellipticity_, Radius_ > const & | other | ) |
Standard assignment.
Definition at line 64 of file Separable.cc.
|
inherited |
Compare two ellipse cores for equality.
Ellipse cores are only equal if they have the same type.
Definition at line 152 of file BaseCore.cc.
|
overridevirtual |
Return the size of the bounding box for the ellipse core.
Implements lsst::afw::geom::ellipses::BaseCore.
Definition at line 50 of file Separable.cc.
|
staticprotectedinherited |
Return the size of the bounding box for the ellipse core.
Definition at line 92 of file BaseCore.cc.
|
inherited |
|
inline |
Definition at line 58 of file Separable.h.
|
inline |
Definition at line 61 of file Separable.h.
|
inherited |
Set the core parameters from a vector.
Definition at line 150 of file BaseCore.cc.
|
inline |
Definition at line 65 of file Separable.h.
|
inline |
Definition at line 66 of file Separable.h.
|
inlineinherited |
Return the transform that maps the ellipse to the unit circle.
The returned proxy object is implicitly convertible to lsst::geom::LinearTransform and also supports differentiation.
Definition at line 116 of file Transformer.h.
|
inlineinherited |
Return the transform that maps the ellipse to the unit circle.
The returned proxy object is implicitly convertible to lsst::geom::LinearTransform and also supports differentiation.
Definition at line 120 of file Transformer.h.
|
overridevirtual |
Return the size of the bounding box for the ellipse core.
Implements lsst::afw::geom::ellipses::BaseCore.
Definition at line 57 of file Separable.cc.