Public Member Functions

amg_precond< MatrixType > Class Template Reference

AMG preconditioner class, can be supplied to solve()-routines. More...

#include <amg.hpp>

Public Member Functions

 amg_precond ()
 amg_precond (MatrixType const &mat, amg_tag const &tag)
 The constructor. Saves system matrix, tag and builds data structures for setup.
void setup ()
 Start setup phase for this class and copy data structures.
void init_apply () const
 Prepare data structures for preconditioning: Build data structures for precondition phase. Do LU factorization on coarsest level.
template<typename VectorType >
ScalarType calc_complexity (VectorType &avgstencil)
 Returns complexity measures.
template<typename VectorType >
void apply (VectorType &vec) const
 Precondition Operation.
template<typename VectorType >
void smooth_jacobi (int level, int const iterations, VectorType &x, VectorType const &rhs) const
 (Weighted) Jacobi Smoother (CPU version)
amg_tagtag ()

Detailed Description

template<typename MatrixType>
class viennacl::linalg::amg_precond< MatrixType >

AMG preconditioner class, can be supplied to solve()-routines.


Constructor & Destructor Documentation

amg_precond (  )  [inline]
amg_precond ( MatrixType const &  mat,
amg_tag const &  tag 
) [inline]

The constructor. Saves system matrix, tag and builds data structures for setup.

Parameters:
mat System matrix
tag The AMG tag

Member Function Documentation

void apply ( VectorType &  vec  )  const [inline]

Precondition Operation.

Parameters:
vec The vector to which preconditioning is applied to (ublas version)
ScalarType calc_complexity ( VectorType &  avgstencil  )  [inline]

Returns complexity measures.

Parameters:
avgstencil Average stencil sizes on all levels
Returns:
Operator complexity of AMG method
void init_apply (  )  const [inline]

Prepare data structures for preconditioning: Build data structures for precondition phase. Do LU factorization on coarsest level.

void setup (  )  [inline]

Start setup phase for this class and copy data structures.

void smooth_jacobi ( int  level,
int const   iterations,
VectorType &  x,
VectorType const &  rhs 
) const [inline]

(Weighted) Jacobi Smoother (CPU version)

Parameters:
level Coarse level to which smoother is applied to
iterations Number of smoother iterations
x The vector smoothing is applied to
rhs The right hand side of the equation for the smoother
amg_tag& tag (  )  [inline]

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