Dumux preconditioners for iterative solvers.  
#include <dune/common/exceptions.hh>
#include <dune/common/float_cmp.hh>
#include <dune/common/indices.hh>
#include <dune/istl/preconditioners.hh>
#include <dune/istl/paamg/amg.hh>
#include <dune/istl/gsetc.hh>
#include <dumux/assembly/coloring.hh>
#include <dumux/common/parameters.hh>
#include <dumux/common/typetraits/matrix.hh>
#include <dumux/linear/istlsolverregistry.hh>
#include <dumux/parallel/parallel_for.hh>
Go to the source code of this file.
|  | 
| class | Dumux::SeqUzawa< M, X, Y, l > | 
|  | A preconditioner based on the Uzawa algorithm for saddle-point problems of the form                  \(\begin{pmatrix}
   A & B \\
   C & D
\end{pmatrix}
\begin{pmatrix}
   u\\
   p
\end{pmatrix}
=
\begin{pmatrix}
   f\\
   g
\end{pmatrix}
\).  More... 
 | 
|  | 
| class | Dumux::ParMTJac< M, X, Y, l > | 
|  | Multi-threaded Jacobi preconditioner.  More... 
 | 
|  | 
| class | Dumux::ParMTSOR< M, X, Y, l > | 
|  | Multi-threaded SOR preconditioner using coloring.  More... 
 | 
|  | 
| class | Dumux::ParMTSSOR< M, X, Y, l > | 
|  | Multithreaded SSOR preconditioner using coloring.  More... 
 | 
|  | 
| struct | Dune::Amg::ConstructionTraits< Dumux::ParMTJac< M, X, Y, l > > | 
|  | 
| struct | Dune::Amg::ConstructionTraits< Dumux::ParMTSOR< M, X, Y, l > > | 
|  | 
| struct | Dune::Amg::SmootherApplier< Dumux::ParMTSOR< M, X, Y, l > > | 
|  | 
| struct | Dune::Amg::ConstructionTraits< Dumux::ParMTSSOR< M, X, Y, l > > | 
|  | 
|  | 
|  | Dumux::DUMUX_REGISTER_PRECONDITIONER ("uzawa", Dumux::MultiTypeBlockMatrixPreconditionerTag, Dune::defaultPreconditionerBlockLevelCreator< Dumux::SeqUzawa, 1 >()) | 
|  | 
|  | Dumux::DUMUX_REGISTER_PRECONDITIONER ("par_mt_jac", Dune::PreconditionerTag, Dune::defaultPreconditionerBlockLevelCreator< Dumux::ParMTJac >()) | 
|  | 
| template<class M> | 
| void | Dumux::Detail::Preconditioners::computeColorsForMatrixSweep_ (const M &matrix, std::deque< std::vector< std::size_t > > &coloredIndices) | 
|  | 
| template<bool forward, int l, class M, class X, class Y, class K> | 
| void | Dumux::Detail::Preconditioners::parallelBlockSOR_ (const M &A, X &update, const Y &b, const K &relaxationFactor, const std::deque< std::vector< std::size_t > > &coloredIndices) | 
|  | 
|  | Dumux::DUMUX_REGISTER_PRECONDITIONER ("par_mt_sor", Dune::PreconditionerTag, Dune::defaultPreconditionerBlockLevelCreator< Dumux::ParMTSOR >()) | 
|  | 
|  | Dumux::DUMUX_REGISTER_PRECONDITIONER ("par_mt_ssor", Dune::PreconditionerTag, Dune::defaultPreconditionerBlockLevelCreator< Dumux::ParMTSSOR >()) | 
|  |