Loading...
Searching...
No Matches
preconditioners.hh File Reference
Iterative Solvers Template Library (ISTL) » Iterative Solvers » Preconditioners

Define general preconditioner interface. More...

`#include <cmath>`
`#include <complex>`
`#include <iostream>`
`#include <iomanip>`
`#include <memory>`
`#include <string>`
`#include <dune/common/simd/simd.hh>`
`#include <dune/common/parametertree.hh>`
`#include <dune/istl/solverregistry.hh>`
`#include "preconditioner.hh"`
`#include "solver.hh"`
`#include "solvercategory.hh"`
`#include "istlexception.hh"`
`#include "matrixutils.hh"`
`#include "gsetc.hh"`
`#include "dilu.hh"`
`#include "ildl.hh"`
`#include "ilu.hh"`

Go to the source code of this file.

## Classes

class | Dune::InverseOperator2Preconditioner< O, c >
| Turns an InverseOperator into a Preconditioner. 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::SeqJac< M, X, Y, l >
| The sequential jacobian preconditioner. More...
class | Dune::SeqDILU< M, X, Y, l >
| Sequential DILU preconditioner. More...
class | Dune::SeqILU< M, X, Y, l >
| Sequential ILU preconditioner. More...
class | Dune::Richardson< X, Y >
| Richardson preconditioner. More...
class | Dune::SeqILDL< M, X, Y >
| sequential ILDL preconditioner More...

## Namespaces

namespace | Dune

## Typedefs

template<class M, class X, class Y, int l = 1>
using | Dune::SeqGS = SeqSOR<M,X,Y,l>
| Sequential Gauss Seidel preconditioner.

## Functions

| Dune::DUNE_REGISTER_PRECONDITIONER ("ssor", defaultPreconditionerBlockLevelCreator< Dune::SeqSSOR >())
| Dune::DUNE_REGISTER_PRECONDITIONER ("sor", defaultPreconditionerBlockLevelCreator< Dune::SeqSOR >())
| Dune::DUNE_REGISTER_PRECONDITIONER ("gs", defaultPreconditionerBlockLevelCreator< Dune::SeqGS >())
| Dune::DUNE_REGISTER_PRECONDITIONER ("jac", defaultPreconditionerBlockLevelCreator< Dune::SeqJac >())
| Dune::DUNE_REGISTER_PRECONDITIONER ("dilu", defaultPreconditionerBlockLevelCreator< Dune::SeqDILU >())
| Dune::DUNE_REGISTER_PRECONDITIONER ("ilu", defaultPreconditionerBlockLevelCreator< Dune::SeqILU >())
| Dune::DUNE_REGISTER_PRECONDITIONER ("richardson", [](auto opTraits, const auto &, const ParameterTree &config){ using OpTraits=std::decay_t< decltype(opTraits)>;using D=typename OpTraits::domain_type;using R=typename OpTraits::range_type;return std::make_shared< Richardson< D, R > >(config);})
| Dune::DUNE_REGISTER_PRECONDITIONER ("ildl", defaultPreconditionerCreator< Dune::SeqILDL >())

## Detailed Description

Define general preconditioner interface.

Wrap the methods implemented by ISTL in this interface. However, the interface is extensible such that new preconditioners can be implemented and used with the solvers.