A Circulant matrix class. More...
#include <circulant_matrix.hpp>
| 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 | |
| circulant_matrix () | |
| The default constructor. Does not allocate any memory.  More... | |
| circulant_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 circulant 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, vcl_size_t col_index) | 
| Read-write access to a single element of the matrix.  More... | |
| circulant_matrix< NumericT, AlignmentV > & | operator+= (circulant_matrix< NumericT, AlignmentV > &that) | 
| += operation for circulant matrices  More... | |
A Circulant 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 41 of file circulant_matrix.hpp.
| typedef viennacl::backend::mem_handle viennacl::circulant_matrix< NumericT, AlignmentV >::handle_type | 
Definition at line 44 of file circulant_matrix.hpp.
| typedef scalar<typename viennacl::tools::CHECK_SCALAR_TEMPLATE_ARGUMENT<NumericT>::ResultType> viennacl::circulant_matrix< NumericT, AlignmentV >::value_type | 
Definition at line 45 of file circulant_matrix.hpp.
| 
 | inlineexplicit | 
The default constructor. Does not allocate any memory.
Definition at line 51 of file circulant_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 59 of file circulant_matrix.hpp.
| 
 | inline | 
Returns an internal viennacl::vector, which represents a circulant matrix elements.
Definition at line 86 of file circulant_matrix.hpp.
| 
 | inline | 
Definition at line 87 of file circulant_matrix.hpp.
| 
 | inline | 
| 
 | inline | 
Returns the internal size of matrix representtion. Usually required for launching OpenCL kernels only.
Definition at line 104 of file circulant_matrix.hpp.
| 
 | inline | 
Read-write access to a single element of the matrix.
| row_index | Row index of accessed element | 
| col_index | Column index of accessed element | 
Definition at line 113 of file circulant_matrix.hpp.
| 
 | inline | 
+= operation for circulant matrices
| that | Matrix which will be added | 
Definition at line 130 of file circulant_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 71 of file circulant_matrix.hpp.
| 
 | inline | 
Returns the number of rows of the matrix.
Definition at line 92 of file circulant_matrix.hpp.
| 
 | inline | 
Returns the number of columns of the matrix.
Definition at line 97 of file circulant_matrix.hpp.