24 #ifndef LSST_AFW_MATH_ChebyshevBoundedField_h_INCLUDED
25 #define LSST_AFW_MATH_ChebyshevBoundedField_h_INCLUDED
33 namespace lsst {
namespace afw {
namespace math {
47 "if true, only include terms where the sum of the x and y order "
48 "is less than or equal to max(orderX, orderY)"
110 afw::geom::Box2I const & bbox,
111 ndarray::Array<
double const,1> const &
x,
112 ndarray::Array<
double const,1> const &
y,
113 ndarray::Array<
double const,1> const & z,
130 afw::geom::Box2I const & bbox,
131 ndarray::Array<
double const,1> const & x,
132 ndarray::Array<
double const,1> const & y,
133 ndarray::Array<
double const,1> const & z,
134 ndarray::Array<
double const,1> const &
w,
151 template <typename T>
207 #endif // !LSST_AFW_MATH_ChebyshevBoundedField_h_INCLUDED
int computeSize() const
Return the number of nonzero coefficients in the Chebyshev function defined by this object...
virtual bool isPersistable() const
ChebyshevBoundedField is always persistable.
virtual std::string getPersistenceName() const
Return the unique name used to persist this object and look up its factory.
ChebyshevBoundedField(afw::geom::Box2I const &bbox, ndarray::Array< double const, 2, 2 > const &coefficients)
Initialize the field from its bounding box an coefficients.
A control object used when fitting ChebyshevBoundedField to data (see ChebyshevBoundedField::fit) ...
io::OutputArchiveHandle OutputArchiveHandle
geom::AffineTransform _toChebyshevRange
boost::shared_ptr< ChebyshevBoundedField > relocate(geom::Box2I const &bbox) const
#define LSST_CONTROL_FIELD(NAME, TYPE, DOC)
An integer coordinate rectangle.
table::Key< table::Array< Kernel::Pixel > > image
boost::shared_ptr< ChebyshevBoundedField > truncate(Control const &ctrl) const
Return a new ChebyshevBoudedField with maximum orders set by the given control object.
virtual void write(OutputArchiveHandle &handle) const
Write the object to one or more catalogs.
virtual double evaluate(geom::Point2D const &position) const
ChebyshevBoundedFieldControl()
ChebyshevBoundedFieldControl Control
A BoundedField based on 2-d Chebyshev polynomials of the first kind.
int orderX
"maximum Chebyshev function order in x" ;
int orderY
"maximum Chebyshev function order in y" ;
An abstract base class for 2-d functions defined on an integer bounding boxes.
ndarray::Array< double const, 2, 2 > _coefficients
Point< double, 2 > Point2D
static boost::shared_ptr< ChebyshevBoundedField > fit(afw::geom::Box2I const &bbox, ndarray::Array< double const, 1 > const &x, ndarray::Array< double const, 1 > const &y, ndarray::Array< double const, 1 > const &z, Control const &ctrl)
Fit a Chebyshev approximation to non-gridded data with equal weights.
bool triangular
"if true, only include terms where the sum of the x and y order " "is less than or equal to max(order...
ndarray::Array< double const, 2, 2 > coefficients
A CRTP facade class for subclasses of Persistable.
virtual std::string getPythonModule() const
Return the fully-qualified Python module that should be imported to guarantee that its factory is reg...
ndarray::Array< double const, 2, 2 > getCoefficients() const
Return the coefficient matrix.