All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
viennacl::linalg::detail::amg Namespace Reference

Implementation namespace for algebraic multigrid preconditioner. More...

## Classes

struct | amg_level_context

## Functions

template<typename NumericT , typename AMGContextT >
void | amg_influence (compressed_matrix< NumericT > const &A, AMGContextT &amg_context, amg_tag &tag)
template<typename NumericT , typename AMGContextT >
void | amg_coarse (compressed_matrix< NumericT > const &A, AMGContextT &amg_context, amg_tag &tag)
template<typename NumericT , typename AMGContextT >
void | amg_interpol (compressed_matrix< NumericT > const &A, compressed_matrix< NumericT > &P, AMGContextT &amg_context, amg_tag &tag)
template<typename NumericT >
void | amg_transpose (compressed_matrix< NumericT > &A, compressed_matrix< NumericT > &B)
template<typename SparseMatrixType , typename NumericT >
viennacl::enable_if < viennacl::is_any_sparse_matrix < SparseMatrixType >::value > ::type | assign_to_dense (SparseMatrixType const &A, viennacl::matrix_base< NumericT > &B)
template<typename NumericT >
void | smooth_jacobi (unsigned int iterations, compressed_matrix< NumericT > const &A, vector< NumericT > &x, vector< NumericT > &x_backup, vector< NumericT > const &rhs_smooth, NumericT weight)

## Detailed Description

Implementation namespace for algebraic multigrid preconditioner.

## Function Documentation

template<typename NumericT , typename AMGContextT >

void viennacl::linalg::detail::amg::amg_coarse | ( | compressed_matrix< NumericT > const & | A,
|  | AMGContextT & | amg_context,
|  | amg_tag & | tag
| ) |  |

Definition at line 77 of file amg_operations.hpp.

template<typename NumericT , typename AMGContextT >

void viennacl::linalg::detail::amg::amg_influence | ( | compressed_matrix< NumericT > const & | A,
|  | AMGContextT & | amg_context,
|  | amg_tag & | tag
| ) |  |

Definition at line 51 of file amg_operations.hpp.

template<typename NumericT , typename AMGContextT >

void viennacl::linalg::detail::amg::amg_interpol | ( | compressed_matrix< NumericT > const & | A,
|  | compressed_matrix< NumericT > & | P,
|  | AMGContextT & | amg_context,
|  | amg_tag & | tag
| ) |  |

Definition at line 103 of file amg_operations.hpp.

template<typename NumericT >

void viennacl::linalg::detail::amg::amg_transpose | ( | compressed_matrix< NumericT > & | A,
|  | compressed_matrix< NumericT > & | B
| ) |  |

Definition at line 132 of file amg_operations.hpp.

template<typename SparseMatrixType , typename NumericT >

viennacl::enable_if< viennacl::is_any_sparse_matrix<SparseMatrixType>::value>::type viennacl::linalg::detail::amg::assign_to_dense | ( | SparseMatrixType const & | A,
|  | viennacl::matrix_base< NumericT > & | B
| ) |  |

Assign sparse matrix A to dense matrix B

Definition at line 174 of file amg_operations.hpp.

template<typename NumericT >

void viennacl::linalg::detail::amg::smooth_jacobi | ( | unsigned int | iterations,
|  | compressed_matrix< NumericT > const & | A,
|  | vector< NumericT > & | x,
|  | vector< NumericT > & | x_backup,
|  | vector< NumericT > const & | rhs_smooth,
|  | NumericT | weight
| ) |  |

Definition at line 203 of file amg_operations.hpp.