3.1-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Files | Classes | Typedefs | Functions

Linear solvers and helpers. More...

Description

Linear solvers and helpers.

Files

file  amgbackend.hh
 Provides a parallel linear solver based on the ISTL AMG preconditioner and the ISTL BiCGSTAB solver.
 
file  amgparallelhelpers.hh
 Provides a helper class for nonoverlapping decomposition using the ISTL AMG.
 
file  amgtraits.hh
 Define traits for the AMG backend.
 
file  linearsolveracceptsmultitypematrix.hh
 Trait checking if linear solvers accept Dune::MultiTypeBlockMatrix or we need to convert the matrix.
 
file  matrixconverter.hh
 A helper classe that converts a Dune::MultiTypeBlockMatrix into a plain Dune::BCRSMatrix.
 
file  linear/pdesolver.hh
 A high-level solver interface for a linear PDE solver.
 
file  scotchbackend.hh
 An interface to the scotch library for matrix reordering.
 
file  scotchbackend.hh
 An interface to the scotch library for matrix reordering.
 
file  seqsolverbackend.hh
 Dumux sequential linear solver backends.
 
file  dumux/linear/solver.hh
 Base class for linear solvers.
 
file  vectorexchange.hh
 Contains a class to exchange entries of a vector.
 

Classes

class  Dumux::ParallelAMGBackend< GridView, AmgTraits >
 A linear solver based on the ISTL AMG preconditioner and the ISTL BiCGSTAB solver. More...
 
class  Dumux::ParallelISTLHelper< GridView, AmgTraits >
 A parallel helper class providing a nonoverlapping decomposition of all degrees of freedom. More...
 
class  Dumux::EntityExchanger< GridView, AmgTraits >
 Helper class for adding up matrix entries on border. More...
 
class  Dumux::MatrixConverter< MultiTypeBlockMatrix, Scalar >
 A helper classe that converts a Dune::MultiTypeBlockMatrix into a plain Dune::BCRSMatrix TODO: allow block sizes for BCRSMatrix other than 1x1 ? More...
 
class  Dumux::VectorConverter< MultiTypeBlockVector, Scalar >
 A helper classe that converts a Dune::MultiTypeBlockVector into a plain Dune::BlockVector and transfers back values. More...
 
class  Dumux::LinearPDESolver< Assembler, LinearSolver >
 An implementation of a linear PDE solver. More...
 
class  Dumux::IterativePreconditionedSolverImpl
 A general solver backend allowing arbitrary preconditioners and solvers. More...
 
class  Dumux::ILUnBiCGSTABBackend
 Sequential ILU(n)-preconditioned BiCSTAB solver. More...
 
class  Dumux::SORBiCGSTABBackend
 Sequential SOR-preconditioned BiCSTAB solver. More...
 
class  Dumux::SSORBiCGSTABBackend
 Sequential SSOR-preconditioned BiCGSTAB solver. More...
 
class  Dumux::GSBiCGSTABBackend
 Sequential GS-preconditioned BiCGSTAB solver. More...
 
class  Dumux::JacBiCGSTABBackend
 Sequential Jacobi-preconditioned BiCSTAB solver. More...
 
class  Dumux::ILUnCGBackend
 Sequential ILU(n)-preconditioned CG solver. More...
 
class  Dumux::SORCGBackend
 Sequential SOR-preconditioned CG solver. More...
 
class  Dumux::SSORCGBackend
 Sequential SSOR-preconditioned CG solver. More...
 
class  Dumux::GSCGBackend
 Sequential GS-preconditioned CG solver. More...
 
class  Dumux::JacCGBackend
 Sequential Jacobi-preconditioned CG solver. More...
 
class  Dumux::SSORRestartedGMResBackend
 Sequential SSOR-preconditioned GMRes solver. More...
 
class  Dumux::ILU0BiCGSTABBackend
 Sequential ILU(0)-preconditioned BiCGSTAB solver. More...
 
class  Dumux::ILU0CGBackend
 Sequential ILU(0)-preconditioned CG solver. More...
 
class  Dumux::ILU0RestartedGMResBackend
 Sequential ILU0-preconditioned GMRes solver. More...
 
class  Dumux::ILUnRestartedGMResBackend
 Sequential ILU(n)-preconditioned GMRes solver. More...
 
class  Dumux::ExplicitDiagonalSolver
 Solver for simple block-diagonal matrices (e.g. from explicit time stepping schemes) More...
 
class  Dumux::BlockDiagILU0Preconditioner< M, X, Y, blockLevel >
 A simple ilu0 block diagonal preconditioner. More...
 
class  Dumux::BlockDiagILU0BiCGSTABSolver
 A simple ilu0 block diagonal preconditioned BiCGSTABSolver. More...
 
class  Dumux::BlockDiagAMGPreconditioner< M, X, Y, blockLevel >
 A simple ilu0 block diagonal preconditioner. More...
 
class  Dumux::BlockDiagAMGBiCGSTABSolver
 A simple ilu0 block diagonal preconditioned BiCGSTABSolver. More...
 
class  Dumux::LinearSolver
 Base class for linear solvers. More...
 
class  Dumux::VectorExchange< Mapper, Vector >
 A data handle class to exchange entries of a vector. More...
 

Typedefs

template<class TypeTag >
using Dumux::AMGBackend = ParallelAMGBackend< GetPropType< TypeTag, Properties::GridView >, AmgTraits< GetPropType< TypeTag, Properties::JacobianMatrix >, GetPropType< TypeTag, Properties::SolutionVector >, GetPropType< TypeTag, Properties::GridGeometry > > >
 A linear solver based on the ISTL AMG preconditioner and the ISTL BiCGSTAB solver. More...
 

Functions

template<class Matrix , class Vector >
void Dumux::scaleLinearSystem (Matrix &matrix, Vector &rhs)
 Scale the linear system by the inverse of its (block-)diagonal entries. More...
 

Typedef Documentation

◆ AMGBackend

A linear solver based on the ISTL AMG preconditioner and the ISTL BiCGSTAB solver.

Note
This is an adaptor using a TypeTag

Function Documentation

◆ scaleLinearSystem()

template<class Matrix , class Vector >
void Dumux::scaleLinearSystem ( Matrix &  matrix,
Vector &  rhs 
)

Scale the linear system by the inverse of its (block-)diagonal entries.

Parameters
matrixthe matrix to scale
rhsthe right hand side vector to scale