| LSSTApplications
    20.0.0
    LSSTDataManagementBasePackage | 
 
 
 
Go to the documentation of this file.
   32 BaseCore::Registrar<Quadrupole> Quadrupole::registrar;
 
   37     if (_matrix(0, 1) != _matrix(1, 0))
 
   39                           "Quadrupole matrix must be symmetric.");
 
   42                           "Quadrupole matrix cannot have negative diagonal elements.");
 
   45                           "Quadrupole matrix cannot have negative determinant.");
 
   88     return Jacobian::Identity();
 
  109     return Jacobian::Identity();
 
  114     _matrix(1, 0) = _matrix(0, 1);
 
  119     _matrix(1, 0) = _matrix(0, 1);
 
  
double const getIxx() const
void _assignFromAxes(double a, double b, double theta) override
Return the size of the bounding box for the ellipse core.
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.
double const getIxy() const
Quadrupole(double ixx=1.0, double iyy=1.0, double ixy=0.0, bool normalize=false)
Construct from parameter values.
Jacobian _dAssignFromAxes(double a, double b, double theta) override
Return the size of the bounding box for the ellipse core.
void _assignToQuadrupole(double &ixx, double &iyy, double &ixy) const override
Return the size of the bounding box for the ellipse core.
Eigen::Matrix< double, 2, 2, Eigen::DontAlign > Matrix
Matrix type for the matrix representation of Quadrupole parameters.
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.
void writeParameters(double *iter) const override
Return the size of the bounding box for the ellipse core.
std::string getName() const override
Return a string that identifies this parametrization.
double const getIyy() const
Eigen::Vector3d ParameterVector
Parameter vector type.
void _assignFromQuadrupole(double ixx, double iyy, double ixy) override
Return the size of the bounding box for the ellipse core.
Jacobian _dAssignToAxes(double &a, double &b, double &theta) const override
Return the size of the bounding box for the ellipse core.
A base class for image defects.
#define LSST_EXCEPT(type,...)
Create an exception with a given type.
Eigen::Matrix3d Jacobian
Parameter Jacobian matrix type.
Jacobian _dAssignFromQuadrupole(double ixx, double iyy, double ixy) override
Return the size of the bounding box for the ellipse core.
Reports invalid arguments.
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.
double getDeterminant() const
Return the determinant of the matrix representation.
void normalize() override
Put the parameters into a "standard form", and throw InvalidParameterError if they cannot be normaliz...
void readParameters(double const *iter) override
Return the size of the bounding box for the ellipse core.
void _assignToAxes(double &a, double &b, double &theta) const override
Return the size of the bounding box for the ellipse core.
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.
Jacobian _dAssignToQuadrupole(double &ixx, double &iyy, double &ixy) const override
Return the size of the bounding box for the ellipse core.