A Vandermonde matrix class. More...
#include <forwards.h>
Public Types | |
typedef viennacl::backend::mem_handle | handle_type |
typedef scalar< typename viennacl::tools::CHECK_SCALAR_TEMPLATE_ARGUMENT < NumericT >::ResultType > | value_type |
Public Member Functions | |
vandermonde_matrix () | |
The default constructor. Does not allocate any memory. More... | |
vandermonde_matrix (vcl_size_t rows, vcl_size_t cols) | |
Creates the matrix with the given size. More... | |
void | resize (vcl_size_t sz, bool preserve=true) |
Resizes the matrix. Existing entries can be preserved. More... | |
handle_type const & | handle () const |
Returns the OpenCL handle. More... | |
viennacl::vector< NumericT, AlignmentV > & | elements () |
Returns an internal viennacl::vector, which represents a Vandermonde matrix elements. More... | |
viennacl::vector< NumericT, AlignmentV > const & | elements () const |
vcl_size_t | size1 () const |
Returns the number of rows of the matrix. More... | |
vcl_size_t | size2 () const |
Returns the number of columns of the matrix. More... | |
vcl_size_t | internal_size () const |
Returns the internal size of matrix representtion. Usually required for launching OpenCL kernels only. More... | |
entry_proxy< NumericT > | operator() (vcl_size_t row_index) |
Read-write access to a base element of the matrix. More... | |
NumericT | operator() (vcl_size_t row_index, vcl_size_t col_index) const |
Read access to a element of the matrix. More... | |
A Vandermonde matrix class.
NumericT | The underlying scalar type (either float or double) |
AlignmentV | The internal memory size is given by (size()/AlignmentV + 1) * AlignmentV. AlignmentV must be a power of two. Best values or usually 4, 8 or 16, higher values are usually a waste of memory. |
Definition at line 418 of file forwards.h.
typedef viennacl::backend::mem_handle viennacl::vandermonde_matrix< SCALARTYPE, ALIGNMENT >::handle_type |
Definition at line 47 of file vandermonde_matrix.hpp.
typedef scalar<typename viennacl::tools::CHECK_SCALAR_TEMPLATE_ARGUMENT<NumericT>::ResultType> viennacl::vandermonde_matrix< SCALARTYPE, ALIGNMENT >::value_type |
Definition at line 48 of file vandermonde_matrix.hpp.
|
inlineexplicit |
The default constructor. Does not allocate any memory.
Definition at line 54 of file vandermonde_matrix.hpp.
|
inlineexplicit |
Creates the matrix with the given size.
rows | Number of rows of the matrix |
cols | Number of columns of the matrix |
Definition at line 62 of file vandermonde_matrix.hpp.
|
inline |
Returns an internal viennacl::vector, which represents a Vandermonde matrix elements.
Definition at line 89 of file vandermonde_matrix.hpp.
|
inline |
Definition at line 90 of file vandermonde_matrix.hpp.
|
inline |
Returns the OpenCL handle.
Definition at line 83 of file vandermonde_matrix.hpp.
|
inline |
Returns the internal size of matrix representtion. Usually required for launching OpenCL kernels only.
Definition at line 107 of file vandermonde_matrix.hpp.
|
inline |
Read-write access to a base element of the matrix.
row_index | Row index of accessed element |
Definition at line 115 of file vandermonde_matrix.hpp.
|
inline |
Read access to a element of the matrix.
row_index | Row index of accessed element |
col_index | Column index of accessed element |
Definition at line 127 of file vandermonde_matrix.hpp.
|
inline |
Resizes the matrix. Existing entries can be preserved.
sz | New size of matrix |
preserve | If true, existing values are preserved. |
Definition at line 74 of file vandermonde_matrix.hpp.
|
inline |
Returns the number of rows of the matrix.
Definition at line 95 of file vandermonde_matrix.hpp.
|
inline |
Returns the number of columns of the matrix.
Definition at line 100 of file vandermonde_matrix.hpp.