Preconditioners
[Iterative Solvers]
Detailed Description
All of our Krylow solvers are preconditioned versions. There are sequential preconditioners (e,g. SeqJacobi, SeqSOR, SeqSSOR) as well as parallel preconditioners (e.g. AMG, BlockPreconditioner) available for plugging them into the solvers together with matching ScalarProducts.
Some of the available perconditioners (e.g. SeqJacobi, SeqSOR, SeqSSOR)) may be given an aditional int as a template parameter, the block recursion level. These preconditioners can be used on blockrecursive matrices with an arbitrary hierarchy depths (eg. BCRSMatrix<BCRSMatrix<FieldMatrix,n,m> > >. Given a block recursion level those preconditioners work as normal on the offdiagonal blocks, treating them as traditional matrix entries. For the diagonal values a special procedure applies: If
the diagonal is treated as a matrix itself and the preconditioner is applied recursively on the matrix representing the diagonal value
with block level
. For the case that
the diagonal is treated as a matrix entry resulting in a linear solve or an identity operation depending on the algorithm.
Files | |
file | preconditioners.hh |
Define general preconditioner interface. | |
Modules | |
Parallel Algebraic Multigrid | |
A Parallel Algebraic Multigrid based on Agglomeration. | |
Classes | |
class | Dune::Preconditioner< X, Y > |
Base class for matrix free definition of preconditioners. More... | |
class | Dune::SeqSSOR< M, X, Y, l > |
Sequential SSOR preconditioner. More... | |
class | Dune::SeqSOR< M, X, Y, l > |
Sequential SOR preconditioner. More... | |
class | Dune::SeqGS< M, X, Y, l > |
Sequential Gauss Seidel preconditioner. More... | |
class | Dune::SeqJac< M, X, Y, l > |
The sequential jacobian preconditioner. More... | |
class | Dune::SeqILU0< M, X, Y > |
Sequential ILU0 preconditioner. More... | |
class | Dune::SeqILUn< M, X, Y > |
Sequential ILU(n) preconditioner. More... | |
class | Dune::ParSSOR< M, X, Y, C > |
A parallel SSOR preconditioner. More... | |
class | Dune::BlockPreconditioner< X, Y, C, T > |
Block parallel preconditioner. More... |