All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
viennacl::linalg::row_scaling< MatrixType, is_viennacl > Class Template Reference

Jacobi-type preconditioner class, can be supplied to solve()-routines. This is a diagonal preconditioner with the diagonal entries being (configurable) row norms of the matrix. More...

`#include <row_scaling.hpp>`

## Public Member Functions

| row_scaling (MatrixType const &mat, row_scaling_tag const &tag)
| Constructor for the preconditioner. More...
void | init (MatrixType const &mat, row_scaling_tag const &tag)
template<typename VectorType >
void | apply (VectorType &vec) const
| Apply to res = b - Ax, i.e. row applied vec (right hand side),. More...

## Detailed Description

### template<typename MatrixType, bool is_viennacl = detail::row_scaling_for_viennacl<MatrixType>::value>
class viennacl::linalg::row_scaling< MatrixType, is_viennacl >

Jacobi-type preconditioner class, can be supplied to solve()-routines. This is a diagonal preconditioner with the diagonal entries being (configurable) row norms of the matrix.

Default implementation for non-native ViennaCL matrices (e.g. uBLAS)

Definition at line 87 of file row_scaling.hpp.

## Constructor & Destructor Documentation

template<typename MatrixType , bool is_viennacl = detail::row_scaling_for_viennacl<MatrixType>::value>

viennacl::linalg::row_scaling< MatrixType, is_viennacl >::row_scaling | ( | MatrixType const & | mat,
|  | row_scaling_tag const & | tag
| ) |  |

inline

Constructor for the preconditioner.

Parameters

  mat | The system matrix
  tag | A row scaling tag holding the desired norm.

Definition at line 97 of file row_scaling.hpp.

## Member Function Documentation

template<typename MatrixType , bool is_viennacl = detail::row_scaling_for_viennacl<MatrixType>::value>
template<typename VectorType >

void viennacl::linalg::row_scaling< MatrixType, is_viennacl >::apply | ( | VectorType & | vec | ) | const

inline

Apply to res = b - Ax, i.e. row applied vec (right hand side),.

Definition at line 133 of file row_scaling.hpp.

template<typename MatrixType , bool is_viennacl = detail::row_scaling_for_viennacl<MatrixType>::value>

void viennacl::linalg::row_scaling< MatrixType, is_viennacl >::init | ( | MatrixType const & | mat,
|  | row_scaling_tag const & | tag
| ) |  |

inline

Definition at line 103 of file row_scaling.hpp.

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

- viennacl/linalg/row_scaling.hpp