| 
    LSST Applications
    21.0.0-172-gfb10e10a+18fedfabac,22.0.0+297cba6710,22.0.0+80564b0ff1,22.0.0+8d77f4f51a,22.0.0+a28f4c53b1,22.0.0+dcf3732eb2,22.0.1-1-g7d6de66+2a20fdde0d,22.0.1-1-g8e32f31+297cba6710,22.0.1-1-geca5380+7fa3b7d9b6,22.0.1-12-g44dc1dc+2a20fdde0d,22.0.1-15-g6a90155+515f58c32b,22.0.1-16-g9282f48+790f5f2caa,22.0.1-2-g92698f7+dcf3732eb2,22.0.1-2-ga9b0f51+7fa3b7d9b6,22.0.1-2-gd1925c9+bf4f0e694f,22.0.1-24-g1ad7a390+a9625a72a8,22.0.1-25-g5bf6245+3ad8ecd50b,22.0.1-25-gb120d7b+8b5510f75f,22.0.1-27-g97737f7+2a20fdde0d,22.0.1-32-gf62ce7b1+aa4237961e,22.0.1-4-g0b3f228+2a20fdde0d,22.0.1-4-g243d05b+871c1b8305,22.0.1-4-g3a563be+32dcf1063f,22.0.1-4-g44f2e3d+9e4ab0f4fa,22.0.1-42-gca6935d93+ba5e5ca3eb,22.0.1-5-g15c806e+85460ae5f3,22.0.1-5-g58711c4+611d128589,22.0.1-5-g75bb458+99c117b92f,22.0.1-6-g1c63a23+7fa3b7d9b6,22.0.1-6-g50866e6+84ff5a128b,22.0.1-6-g8d3140d+720564cf76,22.0.1-6-gd805d02+cc5644f571,22.0.1-8-ge5750ce+85460ae5f3,master-g6e05de7fdc+babf819c66,master-g99da0e417a+8d77f4f51a,w.2021.48
    
   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 } | 
| using | Ellipticity = Ellipticity_ | 
| using | Radius = Radius_ | 
| using | ParameterVector = Eigen::Vector3d | 
| Parameter vector type.  More... | |
| using | Jacobian = Eigen::Matrix3d | 
| 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.
| using lsst::afw::geom::ellipses::Separable< Ellipticity_, Radius_ >::Ellipticity = 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.
| using lsst::afw::geom::ellipses::Separable< Ellipticity_, Radius_ >::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 | 
Copy constructor.
Definition at line 111 of file Separable.h.
      
  | 
  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 218 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 183 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 231 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 193 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 129 of file BaseCore.cc.
      
  | 
  inlineinherited | 
Return the size of the bounding box for the ellipse core.
Definition at line 91 of file Convolution.h.
      
  | 
  inlineinherited | 
Return the size of the bounding box for the ellipse core.
Definition at line 95 of file Convolution.h.
      
  | 
  inherited | 
Assign other to this and return the derivative of the conversion, d(this)/d(other).
Definition at line 168 of file BaseCore.cc.
      
  | 
  inherited | 
Return the area of the ellipse core.
Definition at line 111 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 117 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 143 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 123 of file BaseCore.cc.
      
  | 
  inherited | 
Increase the major and minor radii of the ellipse core by the given buffer.
Definition at line 95 of file BaseCore.cc.
      
  | 
  staticinherited | 
Definition at line 55 of file BaseCore.cc.
      
  | 
  staticinherited | 
Definition at line 73 of file BaseCore.cc.
      
  | 
  staticinherited | 
Definition at line 85 of file BaseCore.cc.
      
  | 
  staticinherited | 
Definition at line 67 of file BaseCore.cc.
      
  | 
  staticinherited | 
Definition at line 61 of file BaseCore.cc.
      
  | 
  staticinherited | 
Definition at line 79 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 151 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 91 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 149 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.