Implements a generic linear solver abstraction. More...
#include "parallelbasebackend.hh"
#include "bicgstabsolver.hh"
#include "combinedcriterion.hh"
#include <memory>
Go to the source code of this file.
Classes | |
class | Ewoms::Linear::ParallelBiCGStabSolverBackend< TypeTag > |
Implements a generic linear solver abstraction. More... | |
class | Ewoms::Linear::ParallelBiCGStabSolverBackend< TypeTag > |
Implements a generic linear solver abstraction. More... | |
Functions | |
Ewoms::Properties::NEW_TYPE_TAG (ParallelBiCGStabLinearSolver, INHERITS_FROM(ParallelBaseLinearSolver)) | |
Ewoms::Properties::NEW_PROP_TAG (LinearSolverMaxError) | |
Ewoms::Properties::SET_TYPE_PROP (ParallelBiCGStabLinearSolver, LinearSolverBackend, Ewoms::Linear::ParallelBiCGStabSolverBackend< TypeTag >) | |
Ewoms::Properties::SET_SCALAR_PROP (ParallelBiCGStabLinearSolver, LinearSolverMaxError, 1e7) | |
Implements a generic linear solver abstraction.
Chosing the preconditioner works by setting the "PreconditionerWrapper" property:
Where the choices possible for '$PRECONDITIONER'
are:
Jacobi:
A Jacobi preconditionerGaussSeidel:
A Gauss-Seidel preconditionerSSOR:
A symmetric successive overrelaxation (SSOR) preconditionerSOR:
A successive overrelaxation (SOR) preconditionerILUn:
An ILU(n) preconditionerILU0:
An ILU(0) preconditioner. The results of this preconditioner are the same as setting the PreconditionerOrder property to 0 and using the ILU(n) preconditioner. The reason for the existence of ILU0 is that it is computationally cheaper because it does not need to consider things which are only required for higher orders