nl_gauss_seidel.py¶
Gauss Seidel non-linear solver.
-
class
openmdao.solvers.nl_gauss_seidel.
NLGaussSeidel
[source]¶ Bases:
openmdao.solvers.solver_base.NonLinearSolver
Nonlinear Gauss Seidel solver. This is the default solver for a Group. If there are no cycles, then the system will solve its subsystems once and terminate. Equivalent to fixed point iteration in cases with cycles.
Options: options[‘atol’] : float(1e-06)
Absolute convergence tolerance.
options[‘err_on_maxiter’] : bool(False)
If True, raise an AnalysisError if not converged at maxiter.
options[‘iprint’] : int(0)
Set to 0 to print only failures, set to 1 to print iteration totals to stdout, set to 2 to print the residual each iteration to stdout, or -1 to suppress all printing.
options[‘maxiter’] : int(100)
Maximum number of iterations.
options[‘rtol’] : float(1e-06)
Relative convergence tolerance.
options[‘utol’] : float(1e-12)
Convergence tolerance on the change in the unknowns.
-
solve
(driver, params, unknowns, resids, system, metadata)[source]¶ Solves the system using Gauss Seidel.
Args: params : VecWrapper
VecWrapper containing parameters. (p)
unknowns : VecWrapper
VecWrapper containing outputs and states. (u)
resids : VecWrapper
VecWrapper containing residuals. (r)
system : System
Parent System object.
metadata : dict, optional
Dictionary containing execution metadata (e.g. iteration coordinate).
-