Linear Solvers

Solvers for linear systems. More...

Classes

class  concepts::BiCGStab< F, G >
 Solves a symmetric system of linear equations with BiConjugate Gradient Stabilized (BICGSTAB). More...
 
class  concepts::CG< F >
 Solves a symmetric system of linear equations with conjugate gradients (CG). More...
 
class  concepts::Constrained
 Solves a linear system of equations subject to linear constraints. More...
 
class  concepts::DiagonalSolver< F >
 A solver for diagonal matrices. More...
 
class  concepts::GMRes< F >
 Solves a system of linear equations with general minimal residuals (GMRes). More...
 
class  concepts::Mumps< F >
 MUMPS : MUltifrontal Massively Parallel sparse direct Solver. More...
 
class  concepts::MumpsOverlap< F >
 MUMPS : MUltifrontal Massively Parallel sparse direct Solver. More...
 
class  concepts::Pardiso
 Sparse direct solver for symmetric and unsymmetric matrices. More...
 
class  concepts::PETSc
 Interface to the iterative solvers of the PETSc library. More...
 
class  concepts::PrecondSolverFabric< F, G >
 Abstract fabric class for linear solvers with preconditoner. More...
 
class  concepts::SolverConjugate
 Solver for a complex system. More...
 
class  concepts::SolverFabric< F >
 Abstract fabric class for linear solvers. More...
 
class  concepts::SuperLU< F >
 Direct sparse solver for unsymmetric matrices. More...
 
class  concepts::Umfpack
 Sparse direct solver for unsymmetric matrices. More...
 

Detailed Description

Solvers for linear systems.

All solvers which are just an interface to an external solver require that the respective software package is installed and that the library is correctly configured to use it.

Iterative Solvers

concepts::CG is an implementation of the conjugate gradient method.

concepts::GMRes is an implementation of the general minimal residual method.

concepts::PETSc is an interface to PETSc (web links in the class description) featuring many different iterative solvers and preconditioners.

Direct Solvers

concepts::SuperLU is an interface to SuperLU (web links in the class description), a sparse LU decomposition.

concepts::Pardiso is an interface to Pardiso (web links in the class description), a sparse decomposition (multithreaded if requested).

concepts::Umfpack is an interface to Umfpack (web links in the class description) using the unsymmetric multi-frontal method.

concepts::DiagonalSolver solves a diagonal linear system.

Solver Fabrics

Most of the solvers have a respective fabric class derived from concepts::SolverFabric. The idea is that all parameters (like convergence criteria etc.) are given in the construction of the fabric and the solver itself is constructed by the fabric given the matrix. This construction call is the the same for all solvers as all parameters are known before.

Constrained Problems

concepts::Constrained is a solver for a system with (non-homogenous) linear constraints. It modifies the stiffness matrix and the right hand side such that the constraints are fulfilled, then the modified system is solved with a given solver (via a concepts::SolverFabric).

Author
Philipp Frauenfelder, 2004
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich