ViennaCL - The Vienna Computing Library  1.7.0
Free open-source GPU-accelerated linear algebra and solver library.
viennacl::hyb_matrix< NumericT, AlignmentV > Class Template Reference

Sparse matrix class using a hybrid format composed of the ELL and CSR format for storing the nonzeros. More...

#include <forwards.h>

Public Types

typedef viennacl::backend::mem_handle handle_type
 
typedef scalar< typename viennacl::tools::CHECK_SCALAR_TEMPLATE_ARGUMENT< NumericT >::ResultType > value_type
 

Public Member Functions

 hyb_matrix ()
 
 hyb_matrix (viennacl::context ctx)
 
void clear ()
 Resets all entries in the matrix back to zero without changing the matrix size. Resets the sparsity pattern. More...
 
NumericT csr_threshold () const
 
void csr_threshold (NumericT thr)
 
vcl_size_t internal_size1 () const
 
vcl_size_t internal_size2 () const
 
vcl_size_t size1 () const
 
vcl_size_t size2 () const
 
vcl_size_t internal_ellnnz () const
 
vcl_size_t ell_nnz () const
 
vcl_size_t csr_nnz () const
 
const handle_typehandle () const
 
const handle_typehandle2 () const
 
const handle_typehandle3 () const
 
const handle_typehandle4 () const
 
const handle_typehandle5 () const
 

Friends

template<typename CPUMatrixT , typename T , unsigned int ALIGN>
void copy (const CPUMatrixT &cpu_matrix, hyb_matrix< T, ALIGN > &gpu_matrix)
 

Detailed Description

template<typename NumericT, unsigned int AlignmentV>
class viennacl::hyb_matrix< NumericT, AlignmentV >

Sparse matrix class using a hybrid format composed of the ELL and CSR format for storing the nonzeros.

Definition at line 406 of file forwards.h.

Member Typedef Documentation

template<typename NumericT, unsigned int AlignmentV>
typedef viennacl::backend::mem_handle viennacl::hyb_matrix< NumericT, AlignmentV >::handle_type

Definition at line 41 of file hyb_matrix.hpp.

template<typename NumericT, unsigned int AlignmentV>
typedef scalar<typename viennacl::tools::CHECK_SCALAR_TEMPLATE_ARGUMENT<NumericT>::ResultType> viennacl::hyb_matrix< NumericT, AlignmentV >::value_type

Definition at line 42 of file hyb_matrix.hpp.

Constructor & Destructor Documentation

template<typename NumericT, unsigned int AlignmentV>
viennacl::hyb_matrix< NumericT, AlignmentV >::hyb_matrix ( )
inline

Definition at line 44 of file hyb_matrix.hpp.

template<typename NumericT, unsigned int AlignmentV>
viennacl::hyb_matrix< NumericT, AlignmentV >::hyb_matrix ( viennacl::context  ctx)
inline

Definition at line 46 of file hyb_matrix.hpp.

Member Function Documentation

template<typename NumericT, unsigned int AlignmentV>
void viennacl::hyb_matrix< NumericT, AlignmentV >::clear ( )
inline

Resets all entries in the matrix back to zero without changing the matrix size. Resets the sparsity pattern.

Definition at line 69 of file hyb_matrix.hpp.

template<typename NumericT, unsigned int AlignmentV>
vcl_size_t viennacl::hyb_matrix< NumericT, AlignmentV >::csr_nnz ( ) const
inline

Definition at line 103 of file hyb_matrix.hpp.

template<typename NumericT, unsigned int AlignmentV>
NumericT viennacl::hyb_matrix< NumericT, AlignmentV >::csr_threshold ( ) const
inline

Definition at line 92 of file hyb_matrix.hpp.

template<typename NumericT, unsigned int AlignmentV>
void viennacl::hyb_matrix< NumericT, AlignmentV >::csr_threshold ( NumericT  thr)
inline

Definition at line 93 of file hyb_matrix.hpp.

template<typename NumericT, unsigned int AlignmentV>
vcl_size_t viennacl::hyb_matrix< NumericT, AlignmentV >::ell_nnz ( ) const
inline

Definition at line 102 of file hyb_matrix.hpp.

template<typename NumericT, unsigned int AlignmentV>
const handle_type& viennacl::hyb_matrix< NumericT, AlignmentV >::handle ( ) const
inline

Definition at line 105 of file hyb_matrix.hpp.

template<typename NumericT, unsigned int AlignmentV>
const handle_type& viennacl::hyb_matrix< NumericT, AlignmentV >::handle2 ( ) const
inline

Definition at line 106 of file hyb_matrix.hpp.

template<typename NumericT, unsigned int AlignmentV>
const handle_type& viennacl::hyb_matrix< NumericT, AlignmentV >::handle3 ( ) const
inline

Definition at line 107 of file hyb_matrix.hpp.

template<typename NumericT, unsigned int AlignmentV>
const handle_type& viennacl::hyb_matrix< NumericT, AlignmentV >::handle4 ( ) const
inline

Definition at line 108 of file hyb_matrix.hpp.

template<typename NumericT, unsigned int AlignmentV>
const handle_type& viennacl::hyb_matrix< NumericT, AlignmentV >::handle5 ( ) const
inline

Definition at line 109 of file hyb_matrix.hpp.

template<typename NumericT, unsigned int AlignmentV>
vcl_size_t viennacl::hyb_matrix< NumericT, AlignmentV >::internal_ellnnz ( ) const
inline

Definition at line 101 of file hyb_matrix.hpp.

template<typename NumericT, unsigned int AlignmentV>
vcl_size_t viennacl::hyb_matrix< NumericT, AlignmentV >::internal_size1 ( ) const
inline

Definition at line 95 of file hyb_matrix.hpp.

template<typename NumericT, unsigned int AlignmentV>
vcl_size_t viennacl::hyb_matrix< NumericT, AlignmentV >::internal_size2 ( ) const
inline

Definition at line 96 of file hyb_matrix.hpp.

template<typename NumericT, unsigned int AlignmentV>
vcl_size_t viennacl::hyb_matrix< NumericT, AlignmentV >::size1 ( ) const
inline

Definition at line 98 of file hyb_matrix.hpp.

template<typename NumericT, unsigned int AlignmentV>
vcl_size_t viennacl::hyb_matrix< NumericT, AlignmentV >::size2 ( ) const
inline

Definition at line 99 of file hyb_matrix.hpp.

Friends And Related Function Documentation

template<typename NumericT, unsigned int AlignmentV>
template<typename CPUMatrixT , typename T , unsigned int ALIGN>
void copy ( const CPUMatrixT &  cpu_matrix,
hyb_matrix< T, ALIGN > &  gpu_matrix 
)
friend

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