ViennaCL - The Vienna Computing Library  1.2.0
Public Member Functions
toeplitz_matrix< SCALARTYPE, ALIGNMENT > Class Template Reference

A Toeplitz matrix class. More...

#include <toeplitz_matrix.hpp>

Public Member Functions

 toeplitz_matrix ()
 The default constructor. Does not allocate any memory.
 toeplitz_matrix (std::size_t rows, std::size_t cols)
 Creates the matrix with the given size.
void resize (size_t sz, bool preserve=true)
 Resizes the matrix. Existing entries can be preserved.
viennacl::ocl::handle< cl_mem > handle () const
 Returns the OpenCL handle.
viennacl::vector< SCALARTYPE,
ALIGNMENT > & 
elements ()
 Returns an internal viennacl::vector, which represents a Toeplitz matrix elements.
viennacl::vector< SCALARTYPE,
ALIGNMENT > const & 
elements () const
std::size_t size1 () const
 Returns the number of rows of the matrix.
std::size_t size2 () const
 Returns the number of columns of the matrix.
std::size_t internal_size () const
 Returns the internal size of matrix representtion. Usually required for launching OpenCL kernels only.
entry_proxy< SCALARTYPE > operator() (std::size_t row_index, std::size_t col_index)
 Read-write access to a single element of the matrix.
toeplitz_matrix< SCALARTYPE,
ALIGNMENT > & 
operator+= (toeplitz_matrix< SCALARTYPE, ALIGNMENT > &that)
 += operation for Toeplitz matrices

Detailed Description

template<class SCALARTYPE, unsigned int ALIGNMENT>
class viennacl::toeplitz_matrix< SCALARTYPE, ALIGNMENT >

A Toeplitz matrix class.

Template Parameters
SCALARTYPEThe underlying scalar type (either float or double)
ALIGNMENTThe internal memory size is given by (size()/ALIGNMENT + 1) * ALIGNMENT. ALIGNMENT must be a power of two. Best values or usually 4, 8 or 16, higher values are usually a waste of memory.

Constructor & Destructor Documentation

toeplitz_matrix ( )
inlineexplicit

The default constructor. Does not allocate any memory.

toeplitz_matrix ( std::size_t  rows,
std::size_t  cols 
)
inlineexplicit

Creates the matrix with the given size.

Parameters
rowsNumber of rows of the matrix
colsNumber of columns of the matrix

Member Function Documentation

viennacl::vector<SCALARTYPE, ALIGNMENT>& elements ( )
inline

Returns an internal viennacl::vector, which represents a Toeplitz matrix elements.

viennacl::vector<SCALARTYPE, ALIGNMENT> const& elements ( ) const
inline
viennacl::ocl::handle<cl_mem> handle ( ) const
inline

Returns the OpenCL handle.

Returns
OpenCL handle
std::size_t internal_size ( ) const
inline

Returns the internal size of matrix representtion. Usually required for launching OpenCL kernels only.

Returns
Internal size of matrix representation
entry_proxy<SCALARTYPE> operator() ( std::size_t  row_index,
std::size_t  col_index 
)
inline

Read-write access to a single element of the matrix.

Parameters
row_indexRow index of accessed element
col_indexColumn index of accessed element
Returns
Proxy for matrix entry
toeplitz_matrix<SCALARTYPE, ALIGNMENT>& operator+= ( toeplitz_matrix< SCALARTYPE, ALIGNMENT > &  that)
inline

+= operation for Toeplitz matrices

Parameters
thatMatrix which will be added
Returns
Result of addition
void resize ( size_t  sz,
bool  preserve = true 
)
inline

Resizes the matrix. Existing entries can be preserved.

Parameters
szNew size of matrix
preserveIf true, existing values are preserved.
std::size_t size1 ( ) const
inline

Returns the number of rows of the matrix.

std::size_t size2 ( ) const
inline

Returns the number of columns of the matrix.


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