Skip to content

Nonlinearsolver context

Knut Morten Okstad edited this page Jun 8, 2019 · 3 revisions

The <nonlinearsolver> context is used for everything related to the incremental solution of a nonlinear systems of equations. It can have the following sub-contexts:

<timestepping>

Use this to control everything related to (pseudo-)time stepping. See the Timestepping context page.

<maxits>

Use this to control the maximum number of Newton-Raphson iterations in a time step.

Attributes: None

Value: The maximum number of iterations

Example:

<maxits>10</maxits>

<nupdate>

Use this to control the number of iterations with recalculation of tangent matrices (modified Newton-Raphson).

Attributes: None

Value: The number of iterations.

Example:

<nupdate>2</nupdate>

<rtol>

Use this to control the convergence tolerance.

Attributes: None

Value: The convergence tolerance, εtol (default 1.0e-6)

The nonlinear iterations are converged when δE = δuR < εtol Eref where δu denotes the iterative solution vector, R is the associated force residual, and Eref is the reference energy norm, typically δE evaluated in iteration 0 of the time step in question.

Example:

<rtol>1.0e-6</rtol>

<dtol>

Use this to control the divergence tolerance.

Attributes: None

Value: The divergence tolerance, εdiv (default 10.0)

The nonlinear iterations have diverged if δE > εdivEref or if δE is increasing in three consecutive iterations. Iteration cut-back is then performed (if possible), or the simulation is terminated.

Example:

<dtol>1.0e3</dtol>

<eta>

Use this to control the line search tolerance (when to switch to a simple line search).

Attributes: None

Value: The line search tolerance, η.

Example:

<eta>1.0e-3</eta>

<printSlow>

Use this to print out the worst DOFs, i.e., the DOFs with the largest contribution to the convergence norm, in case slow convergence is detected.

Attributes: None

Value: Number of DOFs to print out (default 0, i.e., no print)

This option can be useful as a model debugging tool, to help pinpoint problem regions in numerically unstable models. The DOFs are identified with the global node number and the local DOF withing that node. The DOF type is also printed if the model contains DOFs of different types.

Example:

<printSlow>5</printSlow>

<referenceNorm>

Use this to specify how the reference norm used in the convergence check should be updated.

Attributed: None

Value: MAX (default) or ALL. If ALL, always use the energy norm of iteration 0 as reference in the subsequent iterations of that time step. If MAX, use the highest energy norm of the zero'th iteration detected so far, as reference norm in the next time step.