1 #ifndef VIENNACL_LINALG_TOEPLITZ_MATRIX_OPERATIONS_HPP_
2 #define VIENNACL_LINALG_TOEPLITZ_MATRIX_OPERATIONS_HPP_
48 template<
class SCALARTYPE,
unsigned int ALIGNMENT>
60 viennacl::detail::fft::real_to_complex(mat.
elements(), tep, mat.
elements().size());
65 viennacl::detail::fft::real_to_complex(tmp, tmp2, vec.
size() * 2);
66 viennacl::linalg::convolve(tep, tmp2, tmp);
67 viennacl::detail::fft::complex_to_real(tmp, tmp2, vec.
size() * 2);
size_type size() const
Returns the length of the vector (cf. std::vector)
Definition: vector.hpp:837
This file provides the forward declarations for the main types used within ViennaCL.
void clear()
Resets all entries to zero. Does not change the size of the vector.
Definition: vector.hpp:863
void copy(std::vector< SCALARTYPE > &cpu_vec, circulant_matrix< SCALARTYPE, ALIGNMENT > &gpu_mat)
Copies a circulant matrix from the std::vector to the OpenCL device (either GPU or multi-core CPU) ...
Definition: circulant_matrix.hpp:150
A vector class representing a linear memory sequence on the GPU. Inspired by boost::numeric::ublas::v...
Definition: forwards.h:208
Implementations of the OpenCL backend, where all contexts are stored in.
iterator begin()
Returns an iterator pointing to the beginning of the vector (STL like)
Definition: vector.hpp:803
vcl_size_t size1() const
Returns the number of rows of the matrix.
Definition: toeplitz_matrix.hpp:93
The vector type with operator-overloads and proxy classes is defined here. Linear algebra operations ...
All routines related to the Fast Fourier Transform. Experimental.
std::ptrdiff_t vcl_ptrdiff_t
Definition: forwards.h:59
A Toeplitz matrix class.
Definition: forwards.h:330
void prod_impl(const matrix_base< NumericT, F > &mat, const vector_base< NumericT > &vec, vector_base< NumericT > &result)
Carries out matrix-vector multiplication.
Definition: matrix_operations.hpp:350
Implementation of the ViennaCL scalar class.
vcl_size_t size2() const
Returns the number of columns of the matrix.
Definition: toeplitz_matrix.hpp:98
viennacl::vector< SCALARTYPE, ALIGNMENT > & elements()
Returns an internal viennacl::vector, which represents a Toeplitz matrix elements.
Definition: toeplitz_matrix.hpp:86