All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT > 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_type & | handle () const
const handle_type & | handle2 () const
const handle_type & | handle3 () const
const handle_type & | handle4 () const
const handle_type & | handle5 () 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<class SCALARTYPE, unsigned int ALIGNMENT = 1>
class viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >

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<class SCALARTYPE, unsigned int ALIGNMENT = 1>

typedef viennacl::backend::mem_handle viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::handle_type

Definition at line 41 of file hyb_matrix.hpp.

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

typedef scalar<typename viennacl::tools::CHECK_SCALAR_TEMPLATE_ARGUMENT<NumericT>::ResultType> viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::value_type

Definition at line 42 of file hyb_matrix.hpp.

## Constructor & Destructor Documentation

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::hyb_matrix | ( |  | ) |

inline

Definition at line 44 of file hyb_matrix.hpp.

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::hyb_matrix | ( | viennacl::context | ctx | ) |

inline

Definition at line 46 of file hyb_matrix.hpp.

## Member Function Documentation

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

void viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::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<class SCALARTYPE, unsigned int ALIGNMENT = 1>

vcl_size_t viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::csr_nnz | ( |  | ) | const

inline

Definition at line 103 of file hyb_matrix.hpp.

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

NumericT viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::csr_threshold | ( |  | ) | const

inline

Definition at line 92 of file hyb_matrix.hpp.

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

void viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::csr_threshold | ( | NumericT | thr | ) |

inline

Definition at line 93 of file hyb_matrix.hpp.

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

vcl_size_t viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::ell_nnz | ( |  | ) | const

inline

Definition at line 102 of file hyb_matrix.hpp.

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

const handle_type& viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::handle | ( |  | ) | const

inline

Definition at line 105 of file hyb_matrix.hpp.

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

const handle_type& viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::handle2 | ( |  | ) | const

inline

Definition at line 106 of file hyb_matrix.hpp.

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

const handle_type& viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::handle3 | ( |  | ) | const

inline

Definition at line 107 of file hyb_matrix.hpp.

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

const handle_type& viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::handle4 | ( |  | ) | const

inline

Definition at line 108 of file hyb_matrix.hpp.

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

const handle_type& viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::handle5 | ( |  | ) | const

inline

Definition at line 109 of file hyb_matrix.hpp.

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

vcl_size_t viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::internal_ellnnz | ( |  | ) | const

inline

Definition at line 101 of file hyb_matrix.hpp.

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

vcl_size_t viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::internal_size1 | ( |  | ) | const

inline

Definition at line 95 of file hyb_matrix.hpp.

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

vcl_size_t viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::internal_size2 | ( |  | ) | const

inline

Definition at line 96 of file hyb_matrix.hpp.

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

vcl_size_t viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::size1 | ( |  | ) | const

inline

Definition at line 98 of file hyb_matrix.hpp.

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>

vcl_size_t viennacl::hyb_matrix< SCALARTYPE, ALIGNMENT >::size2 | ( |  | ) | const

inline

Definition at line 99 of file hyb_matrix.hpp.

## Friends And Related Function Documentation

template<class SCALARTYPE, unsigned int ALIGNMENT = 1>
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:

- viennacl/forwards.h
- viennacl/hyb_matrix.hpp