Loading [MathJax]/extensions/tex2jax.js
LSST Applications g0000d66e7c+c494921ce2,g0485b4d2cb+c8d56b10d4,g0fba68d861+5edec0d8fd,g1ec0fe41b4+3e153770da,g1fd858c14a+fca1f36da6,g2440f9efcc+8c5ae1fdc5,g35bb328faa+8c5ae1fdc5,g4d2262a081+c7405b0ea5,g53246c7159+8c5ae1fdc5,g56a49b3a55+8699aedcf1,g60b5630c4e+2a1e2fbeda,g67b6fd64d1+035c836e50,g78460c75b0+7e33a9eb6d,g786e29fd12+668abc6043,g7ac00fbb6c+9a90021cfb,g8352419a5c+8c5ae1fdc5,g8852436030+5e76f8a839,g89139ef638+035c836e50,g94187f82dc+2a1e2fbeda,g989de1cb63+035c836e50,g9d31334357+2a1e2fbeda,g9f33ca652e+3552fd4ab0,ga815be3f0b+18fb55f1cc,gabe3b4be73+8856018cbb,gabf8522325+21619da9f3,gb1101e3267+d93ea6153f,gb89ab40317+035c836e50,gc91f06edcd+512a684587,gcef618a4dd+2a1e2fbeda,gcf25f946ba+5e76f8a839,gd6cbbdb0b4+958adf5c1f,gde0f65d7ad+ffac69d1db,ge278dab8ac+83c63f4893,ge410e46f29+035c836e50,gf35d7ec915+97dd712d81,gf5e32f922b+8c5ae1fdc5,gf67bdafdda+035c836e50,gf6800124b1+2c49cd4815,w.2025.19
LSST Data Management Base Package
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
lsst::shapelet::ShapeletFunctionEvaluator Class Reference

Evaluates a ShapeletFunction. More...

#include <ShapeletFunction.h>

Public Types

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

Public Member 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.
 

Friends

class MultiShapeletFunctionEvaluator
 

Detailed Description

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.

Definition at line 177 of file ShapeletFunction.h.

Member Typedef Documentation

◆ ConstPtr

◆ Ptr

Constructor & Destructor Documentation

◆ ShapeletFunctionEvaluator()

lsst::shapelet::ShapeletFunctionEvaluator::ShapeletFunctionEvaluator ( ShapeletFunction const & function)
explicit

Construct an evaluator for the given function.

Member Function Documentation

◆ addToImage() [1/2]

void lsst::shapelet::ShapeletFunctionEvaluator::addToImage ( afw::image::Image< double > & image) const
inline

Evaluate the function on the given image.

Definition at line 211 of file ShapeletFunction.h.

211 {
212 addToImage(image.getArray(), image.getXY0());
213 }
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.

◆ addToImage() [2/2]

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

Add the function to the given image-like array.

◆ computeMoments()

afw::geom::ellipses::Ellipse lsst::shapelet::ShapeletFunctionEvaluator::computeMoments ( ) const

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

◆ integrate()

double lsst::shapelet::ShapeletFunctionEvaluator::integrate ( ) const
inline

Compute the definite integral or integral moments.

Definition at line 216 of file ShapeletFunction.h.

216 {
217 return _h.sumIntegration(_coefficients);
218 }

◆ operator()() [1/4]

double lsst::shapelet::ShapeletFunctionEvaluator::operator() ( double x,
double y ) const
inline

Evaluate at the given point.

Definition at line 184 of file ShapeletFunction.h.

184 {
185 return this->operator()(geom::Point2D(x, y));
186 }
double operator()(double x, double y) const
Evaluate at the given point.
Point< double, 2 > Point2D
Definition Point.h:324

◆ operator()() [2/4]

double lsst::shapelet::ShapeletFunctionEvaluator::operator() ( geom::Extent2D const & point) const
inline

Evaluate at the given point.

Definition at line 194 of file ShapeletFunction.h.

194 {
195 return _normalization * _h.sumEvaluation(_coefficients, _transform(point));
196 }

◆ operator()() [3/4]

double lsst::shapelet::ShapeletFunctionEvaluator::operator() ( geom::Point2D const & point) const
inline

Evaluate at the given point.

Definition at line 189 of file ShapeletFunction.h.

189 {
190 return _normalization * _h.sumEvaluation(_coefficients, _transform(point));
191 }

◆ operator()() [4/4]

ndarray::Array< double, 1, 1 > lsst::shapelet::ShapeletFunctionEvaluator::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.

◆ update()

void lsst::shapelet::ShapeletFunctionEvaluator::update ( ShapeletFunction const & function)

Update the evaluator from the given function.

Friends And Related Symbol Documentation

◆ MultiShapeletFunctionEvaluator

friend class MultiShapeletFunctionEvaluator
friend

Definition at line 231 of file ShapeletFunction.h.


The documentation for this class was generated from the following file: