Class ShapeletFunctionEvaluator

Class Documentation

class ShapeletFunctionEvaluator

Evaluates a ShapeletFunction.

This is distinct from ShapeletFunction to allow the evaluator to construct temporaries and allocate workspace that will be reused when evaluating at multiple points.

A ShapeletFunctionEvaluator is invalidated whenever the ShapeletFunction it was constructed from is modified.

Public Types

typedef std::shared_ptr<ShapeletFunctionEvaluator> Ptr
typedef std::shared_ptr<ShapeletFunctionEvaluator const> ConstPtr

Public Functions

double operator()(double x, double y) const

Evaluate at the given point.

double operator()(geom::Point2D const &point) const

Evaluate at the given point.

double operator()(geom::Extent2D const &point) const

Evaluate at the given point.

ndarray::Array<double, 1, 1> operator()(ndarray::Array<double const, 1> const &x, ndarray::Array<double const, 1> const &y) const

Evaluate at the given points, returning a newly-allocated array.

void addToImage(ndarray::Array<double, 2, 1> const &array, geom::Point2I const &xy0 = geom::Point2I()) const

Add the function to the given image-like array.

void addToImage(afw::image::Image<double> &image) const

Evaluate the function on the given image.

double integrate() const

Compute the definite integral or integral moments.

afw::geom::ellipses::Ellipse computeMoments() const

Return the unweighted dipole and quadrupole moments of the function as an ellipse.

void update(ShapeletFunction const &function)

Update the evaluator from the given function.

ShapeletFunctionEvaluator(ShapeletFunction const &function)

Construct an evaluator for the given function.