Namespaces | Functions

/data/development/ViennaCL/dev/viennacl/linalg/detail/amg/amg_interpol.hpp File Reference

Implementations of several variants of the AMG interpolation operators (setup phase). Experimental. More...

#include <boost/numeric/ublas/vector.hpp>
#include <cmath>
#include "viennacl/linalg/amg.hpp"
#include <map>
#include "amg_debug.hpp"

Go to the source code of this file.

Namespaces

namespace  viennacl
namespace  viennacl::linalg
namespace  viennacl::linalg::detail
namespace  viennacl::linalg::detail::amg

Functions

template<typename InternalType1 , typename InternalType2 >
void amg_interpol (unsigned int level, InternalType1 &A, InternalType1 &P, InternalType2 &Pointvector, amg_tag &tag)
 Calls the right function to build interpolation matrix.
template<typename InternalType1 , typename InternalType2 >
void amg_interpol_direct (unsigned int level, InternalType1 &A, InternalType1 &P, InternalType2 &Pointvector, amg_tag &tag)
 Direct interpolation. Multi-threaded! (VIENNACL_AMG_INTERPOL_DIRECT).
template<typename InternalType1 , typename InternalType2 >
void amg_interpol_classic (unsigned int level, InternalType1 &A, InternalType1 &P, InternalType2 &Pointvector, amg_tag &tag)
 Classical interpolation. Don't use with onepass classical coarsening or RS0 (Yang, p.14)! Multi-threaded! (VIENNACL_AMG_INTERPOL_CLASSIC).
template<typename SparseMatrixType >
void amg_truncate_row (SparseMatrixType &P, unsigned int row, amg_tag &tag)
 Interpolation truncation (for VIENNACL_AMG_INTERPOL_DIRECT and VIENNACL_AMG_INTERPOL_CLASSIC).
template<typename InternalType1 , typename InternalType2 >
void amg_interpol_ag (unsigned int level, InternalType1 &A, InternalType1 &P, InternalType2 &Pointvector, amg_tag &tag)
 AG (aggregation based) interpolation. Multi-Threaded! (VIENNACL_INTERPOL_SA).
template<typename InternalType1 , typename InternalType2 >
void amg_interpol_sa (unsigned int level, InternalType1 &A, InternalType1 &P, InternalType2 &Pointvector, amg_tag &tag)
 SA (smoothed aggregate) interpolation. Multi-Threaded! (VIENNACL_INTERPOL_SA).

Detailed Description

Implementations of several variants of the AMG interpolation operators (setup phase). Experimental.