LSSTApplications
17.0+11,17.0+34,17.0+56,17.0+57,17.0+59,17.0+7,17.0-1-g377950a+33,17.0.1-1-g114240f+2,17.0.1-1-g4d4fbc4+28,17.0.1-1-g55520dc+49,17.0.1-1-g5f4ed7e+52,17.0.1-1-g6dd7d69+17,17.0.1-1-g8de6c91+11,17.0.1-1-gb9095d2+7,17.0.1-1-ge9fec5e+5,17.0.1-1-gf4e0155+55,17.0.1-1-gfc65f5f+50,17.0.1-1-gfc6fb1f+20,17.0.1-10-g87f9f3f+1,17.0.1-11-ge9de802+16,17.0.1-16-ga14f7d5c+4,17.0.1-17-gc79d625+1,17.0.1-17-gdae4c4a+8,17.0.1-2-g26618f5+29,17.0.1-2-g54f2ebc+9,17.0.1-2-gf403422+1,17.0.1-20-g2ca2f74+6,17.0.1-23-gf3eadeb7+1,17.0.1-3-g7e86b59+39,17.0.1-3-gb5ca14a,17.0.1-3-gd08d533+40,17.0.1-30-g596af8797,17.0.1-4-g59d126d+4,17.0.1-4-gc69c472+5,17.0.1-6-g5afd9b9+4,17.0.1-7-g35889ee+1,17.0.1-7-gc7c8782+18,17.0.1-9-gc4bbfb2+3,w.2019.22
LSSTDataManagementBasePackage
|
A factory class for MatrixBuilder, providing more control over workspace memory. More...
#include <MatrixBuilder.h>
Public Types | |
typedef MatrixBuilderWorkspace< T > | Workspace |
Associated workspace class. More... | |
typedef MatrixBuilder< T > | Builder |
Associated builder class. More... | |
Public Member Functions | |
MatrixBuilderFactory (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... | |
MatrixBuilderFactory (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... | |
MatrixBuilderFactory (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... | |
MatrixBuilderFactory (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... | |
int | computeWorkspace () const |
Return the size of the workspace needed for this MatrixBuilder, in elements of T. More... | |
MatrixBuilder< T > | operator() () const |
Return a new MatrixBuilder with internal, unshared workspace. More... | |
MatrixBuilder< T > | operator() (Workspace &workspace) const |
Return a new MatrixBuilder using the given workspace. More... | |
A factory class for MatrixBuilder, providing more control over workspace memory.
To allocate workspace manually for a MatrixBuilder, we use the following pattern:;
Because we aren't doing anything special with the workspace, however, this is actually exactly equivalent to just constructing the MatrixBuilder directly, i.e.:
A more interesting case is if we want to use the same workspace for a pair of MatrixBuilders:
Definition at line 37 of file MatrixBuilder.h.
typedef MatrixBuilder<T> lsst::shapelet::MatrixBuilderFactory< T >::Builder |
Associated builder class.
Definition at line 269 of file MatrixBuilder.h.
typedef MatrixBuilderWorkspace<T> lsst::shapelet::MatrixBuilderFactory< T >::Workspace |
Associated workspace class.
Definition at line 268 of file MatrixBuilder.h.
lsst::shapelet::MatrixBuilderFactory< T >::MatrixBuilderFactory | ( | 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::MatrixBuilderFactory< T >::MatrixBuilderFactory | ( | 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::MatrixBuilderFactory< T >::MatrixBuilderFactory | ( | 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::MatrixBuilderFactory< T >::MatrixBuilderFactory | ( | 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 |
int lsst::shapelet::MatrixBuilderFactory< T >::computeWorkspace | ( | ) | const |
Return the size of the workspace needed for this MatrixBuilder, in elements of T.
int lsst::shapelet::MatrixBuilderFactory< T >::getBasisSize | ( | ) | const |
Return the number of basis elements.
int lsst::shapelet::MatrixBuilderFactory< T >::getDataSize | ( | ) | const |
Return the number of data points.
MatrixBuilder<T> lsst::shapelet::MatrixBuilderFactory< T >::operator() | ( | ) | const |
Return a new MatrixBuilder with internal, unshared workspace.
MatrixBuilder<T> lsst::shapelet::MatrixBuilderFactory< T >::operator() | ( | Workspace & | workspace | ) | const |
Return a new MatrixBuilder using the given workspace.