This file provides the forward declarations for the main types used within ViennaCL. More...
#include <cstddef>
#include "viennacl/ocl/forwards.h"
#include "viennacl/meta/enable_if.hpp"
Go to the source code of this file.
Data Structures | |
struct | MATRIX_ITERATOR_INCREMENTER< ROWCOL, MATRIXTYPE > |
struct | lower_tag |
A tag class representing a lower triangular matrix. More... | |
struct | upper_tag |
A tag class representing an upper triangular matrix. More... | |
struct | unit_lower_tag |
A tag class representing a lower triangular matrix with unit diagonal. More... | |
struct | unit_upper_tag |
A tag class representing an upper triangular matrix with unit diagonal. More... | |
class | no_precond |
A tag class representing the use of no preconditioner. More... | |
Namespaces | |
namespace | viennacl |
namespace | viennacl::tools |
namespace | viennacl::linalg |
Typedefs | |
typedef std::size_t | vcl_size_t |
typedef std::ptrdiff_t | vcl_ptrdiff_t |
typedef basic_range | range |
Functions | |
template<typename SCALARTYPE , unsigned int ALIGNMENT, typename CPU_ITERATOR > | |
void | copy (CPU_ITERATOR const &cpu_begin, CPU_ITERATOR const &cpu_end, vector_iterator< SCALARTYPE, ALIGNMENT > gpu_begin) |
STL-like transfer for the entries of a GPU vector to the CPU. The cpu type does not need to lie in a linear piece of memory. | |
template<typename SCALARTYPE , unsigned int ALIGNMENT_SRC, unsigned int ALIGNMENT_DEST> | |
void | copy (const_vector_iterator< SCALARTYPE, ALIGNMENT_SRC > const &gpu_src_begin, const_vector_iterator< SCALARTYPE, ALIGNMENT_SRC > const &gpu_src_end, vector_iterator< SCALARTYPE, ALIGNMENT_DEST > gpu_dest_begin) |
Copy (parts of a) GPU vector to another GPU vector. | |
template<typename SCALARTYPE , unsigned int ALIGNMENT_SRC, unsigned int ALIGNMENT_DEST> | |
void | copy (const_vector_iterator< SCALARTYPE, ALIGNMENT_SRC > const &gpu_src_begin, const_vector_iterator< SCALARTYPE, ALIGNMENT_SRC > const &gpu_src_end, const_vector_iterator< SCALARTYPE, ALIGNMENT_DEST > gpu_dest_begin) |
Copy (parts of a) GPU vector to another GPU vector. | |
template<class SCALARTYPE , unsigned int ALIGNMENT> | |
void | convolve_i (viennacl::vector< SCALARTYPE, ALIGNMENT > &input1, viennacl::vector< SCALARTYPE, ALIGNMENT > &input2, viennacl::vector< SCALARTYPE, ALIGNMENT > &output) |
template<typename V1 , typename S2 > | |
viennacl::enable_if < viennacl::is_vector< V1 > ::value &&viennacl::is_scalar < S2 >::value >::type | norm_1_impl (V1 const &vec, S2 &result) |
Computes the l^1-norm of a vector. | |
template<typename V1 , typename S2 > | |
viennacl::enable_if < viennacl::is_vector< V1 > ::value &&viennacl::is_scalar < S2 >::value >::type | norm_2_impl (V1 const &vec, S2 &result) |
Computes the l^2-norm of a vector - implementation. | |
template<typename V1 , typename S2 > | |
viennacl::enable_if < viennacl::is_vector< V1 > ::value &&viennacl::is_scalar < S2 >::value >::type | norm_inf_impl (V1 const &vec, S2 &result) |
Computes the supremum-norm of a vector. | |
template<class SCALARTYPE , typename F , unsigned int ALIGNMENT, unsigned int VECTOR_ALIGNMENT> | |
viennacl::vector_expression < const viennacl::matrix < SCALARTYPE, F, ALIGNMENT > , const viennacl::vector < SCALARTYPE, VECTOR_ALIGNMENT > , op_prod > | prod_impl (const viennacl::matrix< SCALARTYPE, F, ALIGNMENT > &mat, const viennacl::vector< SCALARTYPE, VECTOR_ALIGNMENT > &vec) |
Returns a proxy class that represents matrix-vector multiplication. | |
template<class SCALARTYPE , unsigned int ALIGNMENT, unsigned int VECTOR_ALIGNMENT> | |
viennacl::vector_expression < const viennacl::compressed_matrix < SCALARTYPE, ALIGNMENT > , const viennacl::vector < SCALARTYPE, VECTOR_ALIGNMENT > , op_prod > | prod_impl (const compressed_matrix< SCALARTYPE, ALIGNMENT > &mat, const vector< SCALARTYPE, VECTOR_ALIGNMENT > &vec) |
Returns a proxy class that represents matrix-vector multiplication with a compressed_matrix. | |
template<class SCALARTYPE , unsigned int ALIGNMENT, unsigned int VECTOR_ALIGNMENT> | |
viennacl::vector_expression < const viennacl::coordinate_matrix < SCALARTYPE, ALIGNMENT > , const viennacl::vector < SCALARTYPE, VECTOR_ALIGNMENT > , op_prod > | prod_impl (const coordinate_matrix< SCALARTYPE, ALIGNMENT > &mat, const vector< SCALARTYPE, VECTOR_ALIGNMENT > &vec) |
Returns a proxy class that represents matrix-vector multiplication with a compressed_matrix. | |
template<typename V1 , typename V2 , typename S3 > | |
viennacl::enable_if < viennacl::is_vector< V1 > ::value &&viennacl::is_vector < V2 >::value &&viennacl::is_scalar< S3 > ::value >::type | inner_prod_impl (V1 const &vec1, V2 const &vec2, S3 &result) |
Computes the inner product of two vectors - implementation. Library users should call inner_prod(vec1, vec2). |
This file provides the forward declarations for the main types used within ViennaCL.