LSSTApplications
20.0.0
LSSTDataManagementBasePackage
|
Go to the documentation of this file.
32 BaseCore::Registrar<Axes> Axes::registrar;
37 if (_vector[
A] < 0 || _vector[
B] < 0)
39 "Major and minor axes cannot be negative.");
40 if (_vector[
A] < _vector[
B]) {
42 _vector[
THETA] += M_PI_2;
44 if (_vector[
THETA] > M_PI_2 || _vector[
THETA] <= -M_PI_2) {
72 theta = _vector[
THETA];
78 theta = _vector[
THETA];
79 return Jacobian::Identity();
95 _vector[
THETA] = theta;
101 _vector[
THETA] = theta;
102 return Jacobian::Identity();
std::string getName() const override
Return a string that identifies this parametrization.
void readParameters(double const *iter) override
Return the size of the bounding box for the ellipse core.
double const getB() const
void normalize() override
Put the parameters into a "standard form", if possible, and throw InvalidParameterError if they canno...
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.
void writeParameters(double *iter) const 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.
void _assignToQuadrupole(double &ixx, double &iyy, double &ixy) const override
Return the size of the bounding box for the ellipse core.
double const getTheta() const
double const getA() const
Jacobian _dAssignToQuadrupole(double &ixx, double &iyy, double &ixy) const override
Return the size of the bounding box for the ellipse core.
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.
Jacobian _dAssignFromAxes(double a, double b, double theta) 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.
void setTheta(double theta)
Eigen::Matrix3d Jacobian
Parameter Jacobian matrix type.
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.
Jacobian _dAssignFromQuadrupole(double ixx, double iyy, double ixy) override
Return the size of the bounding box for the ellipse core.
void _assignFromAxes(double a, double b, double theta) 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.