NewtonSolver.h¶
Note
The documentation on this page was automatically extracted from the DOLFIN C++ code and may need to be edited or expanded.
-
class
NewtonSolver
¶ Parent class(es)
This class defines a Newton solver for nonlinear systems of equations of the form \(F(x) = 0\).
-
NewtonSolver
()¶ Create nonlinear solver
Create nonlinear solver using provided linear solver
- Arguments
- solver (
GenericLinearSolver
) - The linear solver.
- factory (
GenericLinearAlgebraFactory
) - The factory.
- solver (
-
std::pair<std::size_t, bool>
solve
(NonlinearProblem &nonlinear_function, GenericVector &x)¶ Solve abstract nonlinear problem \(F(x) = 0\) for given \(F\) and Jacobian \(\dfrac{\partial F}{\partial x}\).
- Arguments
- nonlinear_function (
NonlinearProblem
) - The nonlinear problem.
- x (
GenericVector
) - The vector.
- nonlinear_function (
- Returns
- std::pair<std::size_t, bool>
- Pair of number of Newton iterations, and whether iteration converged)
-
std::size_t
iteration
() const¶ Return Newton iteration number
- Returns
- std::size_t
- The iteration number.
-
double
residual
() const¶ Return current residual
- Returns
- double
- Current residual.
-
double
relative_residual
() const¶ Return current relative residual
- Returns
- double
- Current relative residual.
-
GenericLinearSolver &
linear_solver
() const¶ Return the linear solver
- Returns
GenericLinearSolver
- The linear solver.
-
static Parameters
default_parameters
()¶ Default parameter values
- Returns
Parameters
- Parameter values.
-
bool
converged
(const GenericVector &r, const NonlinearProblem &nonlinear_problem, std::size_t iteration)¶ Convergence test
-