OpenFOAM offers preconditioned conjugate gradient solvers for sparse
symmetric and asymmetric matrices; both incomplete-Cholesky and diagonal
preconditioning are available in the library. OpenFOAM also includes a
Gauss-Seidel solver.
OpenFOAM has an efficient implementation algebraic multi-grid (AMG)
solver. AMG uses the principle of: generating a quick solution on a mesh with a
small number of cells; mapping this solution onto a finer mesh; using it as an
initial guess to obtain an accurate solution on the fine mesh. ts aim is to be faster
than standard methods when the increase in speed by solving first on coarser
meshes outweighs the additional costs of mesh refinement and mapping of field
data.