This file provides the forward declarations for the main types used within ViennaCL. More...
#include <cstddef>
#include "viennacl/ocl/forwards.h"
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 |
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 | norm_1_impl (const viennacl::vector< SCALARTYPE, ALIGNMENT > &vcl_vec, scalar< SCALARTYPE > &result) |
Computes the l^1-norm of a vector. | |
template<class SCALARTYPE , unsigned int ALIGNMENT> | |
void | norm_2_impl (const viennacl::vector< SCALARTYPE, ALIGNMENT > &vcl_vec, scalar< SCALARTYPE > &result) |
Computes the l^2-norm of a vector - implementation. | |
template<class SCALARTYPE , unsigned int ALIGNMENT> | |
void | norm_inf_impl (const viennacl::vector< SCALARTYPE, ALIGNMENT > &vcl_vec, scalar< SCALARTYPE > &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<class SCALARTYPE , unsigned int ALIGNMENT1, unsigned int ALIGNMENT2> | |
viennacl::scalar_expression < const viennacl::vector < SCALARTYPE, ALIGNMENT1 > , const viennacl::vector < SCALARTYPE, ALIGNMENT2 > , viennacl::op_inner_prod > | inner_prod_impl (const viennacl::vector< SCALARTYPE, ALIGNMENT1 > &vec1, const viennacl::vector< SCALARTYPE, ALIGNMENT2 > &vec2) |
Computes the inner product of two vectors. | |
template<class SCALARTYPE , unsigned int ALIGNMENT> | |
void | inner_prod_impl (const viennacl::vector< SCALARTYPE, ALIGNMENT > &vec1, const viennacl::vector< SCALARTYPE, ALIGNMENT > &vec2, scalar< SCALARTYPE > &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.