Go to the documentation of this file.
60 solverType(IML_ST_CG),
61 precondType(IML_VoidPrec),
83 M = std::make_unique<DiagPreconditioner>();
85 M = std::make_unique<VoidPreconditioner>();
87 M = std::make_unique<CompRow_ILUPreconditioner>();
89 M = std::make_unique<CompCol_ILUPreconditioner>();
91 M = std::make_unique<CompCol_ICPreconditioner>();
97 return M->initializeFrom(ir);
128 double t = this->
tol;
130 result = CG(*
lhs, x, b, *
M, mi, t);
131 OOFEM_LOG_INFO(
"CG(%s): flag=%d, nite %d, achieved tol. %g\n",
M->giveClassName(), result, mi, t);
135 result = GMRES(*
lhs, x, b, *
M, H, restart, mi, t);
136 OOFEM_LOG_INFO(
"GMRES(%s): flag=%d, nite %d, achieved tol. %g\n",
M->giveClassName(), result, mi, t);
#define REGISTER_SparseLinSolver(class, type)
Index giveSize() const
Returns the size of receiver.
IMLSolverType
Solver type.
bool precondInit
Precond. init flag.
SparseMtrx * lhs
Last mapped Lhs matrix.
IMLPrecondType precondType
IML Preconditioner type.
std::unique_ptr< Preconditioner > M
Preconditioner.
double tol
Tolerance of residual.
IMLPrecondType
Preconditioner type.
int maxite
Max number of iterations.
SparseMtrx::SparseMtrxVersionType lhsVersion
Last mapped matrix version.
IMLSolverType solverType
IML Solver type.
SparseMtrxVersionType giveVersion()
Return receiver version.
double getUtime()
Returns total user time elapsed in seconds.
#define _IFT_IMLSolver_stype
#define _IFT_IMLSolver_lsiter
#define _IFT_IMLSolver_lstol
#define _IFT_IMLSolver_lsprecond
#define OOFEM_LOG_INFO(...)
This page is part of the
OOFEM-3.0 documentation. Copyright Copyright (C) 1994-2025 Borek Patzak
Bořek Patzák
Project e-mail:
oofem@fsv.cvut.cz
Generated at for OOFEM by
doxygen
1.15.0 written by Dimitri van Heesch,
© 1997-2011