1 #ifndef VIENNACL_LINALG_CIRCULANT_MATRIX_OPERATIONS_HPP_
2 #define VIENNACL_LINALG_CIRCULANT_MATRIX_OPERATIONS_HPP_
48 template<
typename NumericT,
unsigned int AlignmentV>
53 assert(mat.
size1() == result.
size() && bool(
"Dimension mismatch"));
54 assert(mat.
size2() == vec.
size() && bool(
"Dimension mismatch"));
viennacl::vector< NumericT, AlignmentV > & elements()
Returns an internal viennacl::vector, which represents a circulant matrix elements.
void real_to_complex(viennacl::vector_base< NumericT > const &in, viennacl::vector_base< NumericT > &out, vcl_size_t size)
Create complex vector from real vector (even elements(2*k) = real part, odd elements(2*k+1) = imagina...
void complex_to_real(viennacl::vector_base< NumericT > const &in, viennacl::vector_base< NumericT > &out, vcl_size_t size)
Create real vector from complex vector (even elements(2*k) = real part, odd elements(2*k+1) = imagina...
This file provides the forward declarations for the main types used within ViennaCL.
Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them.
vcl_size_t size1() const
Returns the number of rows of the matrix.
Implementations of the OpenCL backend, where all contexts are stored in.
The vector type with operator-overloads and proxy classes is defined here. Linear algebra operations ...
size_type size() const
Returns the length of the vector (cf. std::vector)
All routines related to the Fast Fourier Transform. Experimental.
A Circulant matrix class.
ScalarType convolve(std::vector< ScalarType > &in1, std::vector< ScalarType > &in2, unsigned int, unsigned int, unsigned int)
vcl_size_t size2() const
Returns the number of columns of the matrix.
void prod_impl(const matrix_base< NumericT > &mat, const vector_base< NumericT > &vec, vector_base< NumericT > &result)
Carries out matrix-vector multiplication.
Implementation of the ViennaCL scalar class.