Dune Core Modules (2.4.2)

Block Recursive Iterative Kernels

Classes

struct  Dune::BL< l >
compile-time parameter for block recursion depth More...

Functions

template<class M , class X , class Y >
void Dune::bltsolve (const M &A, X &v, const Y &d)
block lower triangular solve

template<class M , class X , class Y , class K >
void Dune::bltsolve (const M &A, X &v, const Y &d, const K &w)
relaxed block lower triangular solve

template<class M , class X , class Y >
void Dune::ubltsolve (const M &A, X &v, const Y &d)
unit block lower triangular solve

template<class M , class X , class Y , class K >
void Dune::ubltsolve (const M &A, X &v, const Y &d, const K &w)
relaxed unit block lower triangular solve

template<class M , class X , class Y >
void Dune::butsolve (const M &A, X &v, const Y &d)
block upper triangular solve

template<class M , class X , class Y , class K >
void Dune::butsolve (const M &A, X &v, const Y &d, const K &w)
relaxed block upper triangular solve

template<class M , class X , class Y >
void Dune::ubutsolve (const M &A, X &v, const Y &d)
unit block upper triangular solve

template<class M , class X , class Y , class K >
void Dune::ubutsolve (const M &A, X &v, const Y &d, const K &w)
relaxed unit block upper triangular solve

template<class M , class X , class Y , int l>
void Dune::bltsolve (const M &A, X &v, const Y &d, BL< l >)
block lower triangular solve

template<class M , class X , class Y , class K , int l>
void Dune::bltsolve (const M &A, X &v, const Y &d, const K &w, BL< l >)
relaxed block lower triangular solve

template<class M , class X , class Y , int l>
void Dune::ubltsolve (const M &A, X &v, const Y &d, BL< l >)
unit block lower triangular solve

template<class M , class X , class Y , class K , int l>
void Dune::ubltsolve (const M &A, X &v, const Y &d, const K &w, BL< l >)
relaxed unit block lower triangular solve

template<class M , class X , class Y , int l>
void Dune::butsolve (const M &A, X &v, const Y &d, BL< l > bl)
block upper triangular solve

template<class M , class X , class Y , class K , int l>
void Dune::butsolve (const M &A, X &v, const Y &d, const K &w, BL< l > bl)
relaxed block upper triangular solve

template<class M , class X , class Y , int l>
void Dune::ubutsolve (const M &A, X &v, const Y &d, BL< l > bl)
unit block upper triangular solve

template<class M , class X , class Y , class K , int l>
void Dune::ubutsolve (const M &A, X &v, const Y &d, const K &w, BL< l > bl)
relaxed unit block upper triangular solve

template<class M , class X , class Y >
void Dune::bdsolve (const M &A, X &v, const Y &d)
block diagonal solve, no relaxation

template<class M , class X , class Y , class K >
void Dune::bdsolve (const M &A, X &v, const Y &d, const K &w)
block diagonal solve, with relaxation

template<class M , class X , class Y , int l>
void Dune::bdsolve (const M &A, X &v, const Y &d, BL< l >)
block diagonal solve, no relaxation

template<class M , class X , class Y , class K , int l>
void Dune::bdsolve (const M &A, X &v, const Y &d, const K &w, BL< l >)
block diagonal solve, with relaxation

template<class M , class X , class Y , class K >
void Dune::dbgs (const M &A, X &x, const Y &b, const K &w)
GS step.

template<class M , class X , class Y , class K , int l>
void Dune::dbgs (const M &A, X &x, const Y &b, const K &w, BL< l >)
GS step.

template<class M , class X , class Y , class K >
void Dune::bsorf (const M &A, X &x, const Y &b, const K &w)
SOR step.

template<class M , class X , class Y , class K , int l>
void Dune::bsorf (const M &A, X &x, const Y &b, const K &w, BL< l >)
SOR step.

template<class M , class X , class Y , class K >
void Dune::bsorb (const M &A, X &x, const Y &b, const K &w)
SSOR step.

template<class M , class X , class Y , class K , int l>
void Dune::bsorb (const M &A, X &x, const Y &b, const K &w, BL< l >)
Backward SOR step.

template<class M , class X , class Y , class K >
void Dune::dbjac (const M &A, X &x, const Y &b, const K &w)
Jacobi step.

template<class M , class X , class Y , class K , int l>
void Dune::dbjac (const M &A, X &x, const Y &b, const K &w, BL< l >)
Jacobi step.

template<class M >
void Dune::bilu0_decomposition (M &A)
compute ILU decomposition of A. A is overwritten by its decomposition

template<class M , class X , class Y >
void Dune::bilu_backsolve (const M &A, X &v, const Y &d)
LU backsolve with stored inverse.

template<class M >
void Dune::bilu_decomposition (const M &A, int n, M &ILU)

Detailed Description

Generic iterative kernels for the solvers which work on the block recursive structure of the matrices and vectors.

◆ bilu_decomposition()

template<class M >
 void Dune::bilu_decomposition ( const M & A, int n, M & ILU )

ILU decomposition of order n Computes ILU decomposition of order n. The matrix ILU should be an empty matrix in row_wise creation mode. This allows the user to either specify the number of nonzero elements or to determine it automatically at run-time.

|  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.80.0 (Feb 21, 23:30, 2024)