Linear solvers

Work in progress

This page is a work in progress.

It was published in this state to make existing content available to users and highlight missing parts to contributors.

Contributors: please see Documentation Contribution Guide to contribute to the documentation.

Users: the content of this page has been verified and is correct. Please return later for more content!

An important parameter defined for each iterative linear solver is the “error tolerance” (direct solvers don’t use the tolerance settings). Combined with abstols from section Time loop it defines the acceptable level of error in the obtained result. Those two parameters are interconnected with each other. Setting either of them too tightly will result in an error message referring to problems, implying that a smaller time step needs to be set up. If the settings are too loose, results may be erroneous. As the variables are interconnected, it is possible to avoid error when one of the tolerances is set too low, by setting the other one a bit too high.

Generally, the error tolerance of a linear solver should always be tighter than abstols. Unlike abstol, “error tolerance” is not specific to “process variables” and is defined as one value. For most cases value below $10^{-10}$ is recommended.

Eigen

PETSc

See Running OGS with MPI-page for details.


This article was written by Feliks Kiszkurno. If you are missing something or you find an error please let us know.
Generated with Hugo 0.122.0 in CI job 482627 | Last revision: July 5, 2024
Commit: [T] Are times equivalent for tiny time increments 4bf1ab6  | Edit this page on