LSST Applications
21.0.0-172-gfb10e10a+18fedfabac,22.0.0+297cba6710,22.0.0+80564b0ff1,22.0.0+8d77f4f51a,22.0.0+a28f4c53b1,22.0.0+dcf3732eb2,22.0.1-1-g7d6de66+2a20fdde0d,22.0.1-1-g8e32f31+297cba6710,22.0.1-1-geca5380+7fa3b7d9b6,22.0.1-12-g44dc1dc+2a20fdde0d,22.0.1-15-g6a90155+515f58c32b,22.0.1-16-g9282f48+790f5f2caa,22.0.1-2-g92698f7+dcf3732eb2,22.0.1-2-ga9b0f51+7fa3b7d9b6,22.0.1-2-gd1925c9+bf4f0e694f,22.0.1-24-g1ad7a390+a9625a72a8,22.0.1-25-g5bf6245+3ad8ecd50b,22.0.1-25-gb120d7b+8b5510f75f,22.0.1-27-g97737f7+2a20fdde0d,22.0.1-32-gf62ce7b1+aa4237961e,22.0.1-4-g0b3f228+2a20fdde0d,22.0.1-4-g243d05b+871c1b8305,22.0.1-4-g3a563be+32dcf1063f,22.0.1-4-g44f2e3d+9e4ab0f4fa,22.0.1-42-gca6935d93+ba5e5ca3eb,22.0.1-5-g15c806e+85460ae5f3,22.0.1-5-g58711c4+611d128589,22.0.1-5-g75bb458+99c117b92f,22.0.1-6-g1c63a23+7fa3b7d9b6,22.0.1-6-g50866e6+84ff5a128b,22.0.1-6-g8d3140d+720564cf76,22.0.1-6-gd805d02+cc5644f571,22.0.1-8-ge5750ce+85460ae5f3,master-g6e05de7fdc+babf819c66,master-g99da0e417a+8d77f4f51a,w.2021.48
LSST Data Management Base Package
|
Class that evaluates a (multi-)shapelet basis at predefined points. More...
#include <MatrixBuilder.h>
Public Types | |
typedef MatrixBuilderFactory< T > | Factory |
Factory type associated with this builder. More... | |
typedef MatrixBuilderWorkspace< T > | Workspace |
Workspace type associated with this builder. More... | |
Public Member Functions | |
MatrixBuilder (ndarray::Array< T const, 1, 1 > const &x, ndarray::Array< T const, 1, 1 > const &y, int order) | |
Create a MatrixBuilder that evaluates a simple non-compound shapelet basis. More... | |
MatrixBuilder (ndarray::Array< T const, 1, 1 > const &x, ndarray::Array< T const, 1, 1 > const &y, int order, ShapeletFunction const &psf) | |
Create a MatrixBuilder that evaluates a simple non-compound shapelet basis after convolving it with a ShapeletFunction. More... | |
MatrixBuilder (ndarray::Array< T const, 1, 1 > const &x, ndarray::Array< T const, 1, 1 > const &y, MultiShapeletBasis const &basis) | |
Create a MatrixBuilder that evaluates a MultiShapeletBasis object. More... | |
MatrixBuilder (ndarray::Array< T const, 1, 1 > const &x, ndarray::Array< T const, 1, 1 > const &y, MultiShapeletBasis const &basis, MultiShapeletFunction const &psf) | |
Create a MatrixBuilder that evaluates a MultiShapeletBasis object after convolving it with a MultiShapeletFunction. More... | |
int | getDataSize () const |
Return the number of data points. More... | |
int | getBasisSize () const |
Return the number of basis elements. More... | |
ndarray::Array< T, 2,-2 > | allocateOutput () const |
Return a matrix appropriate for use as an output for operator(). More... | |
void | operator() (ndarray::Array< T, 2,-1 > const &output, afw::geom::ellipses::Ellipse const &ellipse) const |
Fill an array with the model matrix. More... | |
ndarray::Array< T, 2,-2 > | operator() (afw::geom::ellipses::Ellipse const &ellipse) const |
Return a newly-allocated model matrix. More... | |
Friends | |
template<typename U > | |
class | MatrixBuilderFactory |
Class that evaluates a (multi-)shapelet basis at predefined points.
The output "matrix" has pixels along the rows, and basis elements along columns; this is the design matrix involved in a linear least squares fit for the basis coefficients.
A MatrixBuilder can be constructed in two ways: via one of its own constructors, or via a MatrixBuilderFactory. Using the latter allows the workspace arrays used by the MatrixBuilder to be shared between instances. See MatrixBuilderFactory and MatrixBuilderWorkspace for more information.
Definition at line 55 of file MatrixBuilder.h.
typedef MatrixBuilderFactory<T> lsst::shapelet::MatrixBuilder< T >::Factory |
Factory type associated with this builder.
Definition at line 58 of file MatrixBuilder.h.
typedef MatrixBuilderWorkspace<T> lsst::shapelet::MatrixBuilder< T >::Workspace |
Workspace type associated with this builder.
Definition at line 59 of file MatrixBuilder.h.
lsst::shapelet::MatrixBuilder< T >::MatrixBuilder | ( | ndarray::Array< T const, 1, 1 > const & | x, |
ndarray::Array< T const, 1, 1 > const & | y, | ||
int | order | ||
) |
Create a MatrixBuilder that evaluates a simple non-compound shapelet basis.
[in] | x | column positions at which the basis should be evaluated. |
[in] | y | row positions at which the basis should be evaluated (same size as x). |
[in] | order | order of the shapelet basis |
lsst::shapelet::MatrixBuilder< T >::MatrixBuilder | ( | ndarray::Array< T const, 1, 1 > const & | x, |
ndarray::Array< T const, 1, 1 > const & | y, | ||
int | order, | ||
ShapeletFunction const & | psf | ||
) |
Create a MatrixBuilder that evaluates a simple non-compound shapelet basis after convolving it with a ShapeletFunction.
[in] | x | column positions at which the basis should be evaluated. |
[in] | y | row positions at which the basis should be evaluated (same size as x). |
[in] | order | order of the shapelet basis |
[in] | psf | function to convolve the basis with |
lsst::shapelet::MatrixBuilder< T >::MatrixBuilder | ( | ndarray::Array< T const, 1, 1 > const & | x, |
ndarray::Array< T const, 1, 1 > const & | y, | ||
MultiShapeletBasis const & | basis | ||
) |
Create a MatrixBuilder that evaluates a MultiShapeletBasis object.
[in] | x | column positions at which the basis should be evaluated. |
[in] | y | row positions at which the basis should be evaluated (same size as x). |
[in] | basis | basis object defining the functions the matrix evaluates |
lsst::shapelet::MatrixBuilder< T >::MatrixBuilder | ( | ndarray::Array< T const, 1, 1 > const & | x, |
ndarray::Array< T const, 1, 1 > const & | y, | ||
MultiShapeletBasis const & | basis, | ||
MultiShapeletFunction const & | psf | ||
) |
Create a MatrixBuilder that evaluates a MultiShapeletBasis object after convolving it with a MultiShapeletFunction.
[in] | x | column positions at which the basis should be evaluated. |
[in] | y | row positions at which the basis should be evaluated (same size as x). |
[in] | basis | basis object defining the functions the matrix evaluates |
[in] | psf | function to convolve the basis with |
ndarray::Array<T,2,-2> lsst::shapelet::MatrixBuilder< T >::allocateOutput | ( | ) | const |
Return a matrix appropriate for use as an output for operator().
int lsst::shapelet::MatrixBuilder< T >::getBasisSize | ( | ) | const |
Return the number of basis elements.
int lsst::shapelet::MatrixBuilder< T >::getDataSize | ( | ) | const |
Return the number of data points.
|
inline |
Return a newly-allocated model matrix.
[in] | ellipse | Ellipse parameters of the model, with center relative to the x and y arrays passed at construction. |
Definition at line 149 of file MatrixBuilder.h.
void lsst::shapelet::MatrixBuilder< T >::operator() | ( | ndarray::Array< T, 2,-1 > const & | output, |
afw::geom::ellipses::Ellipse const & | ellipse | ||
) | const |
Fill an array with the model matrix.
[out] | output | Matrix to fill, with dimensions (getDataSize(), getBasisSize()). Will be zeroed before filling. |
[in] | ellipse | Ellipse parameters of the model, with center relative to the x and y arrays passed at construction. |
Definition at line 157 of file MatrixBuilder.h.