DefaultNonlinearConvergence

This Convergence is the default convergence for FEProblem, using a combination of criteria to determine convergence.

warningwarning:Shared executioner parameters

This object shares several parameters with the executioner. If one of these parameters is set by the user in the executioner and not in the convergence object, then the value is taken from the executioner, rather than the default value. If a parameter is set by the user in both the executioner and the convergence object, an error is thrown.

Consider the system of algebraic equations:

This class reports convergence of the solution to this system if any of the following conditions are true:

This class reports divergence if any of the following conditions are true:

where

  • is the discrete norm,

  • is the initial (guess) residual vector,

  • is the solution step vector,

  • "NaN" is a not-a-number value,

  • is the absolute residual tolerance, specified with the "nl_abs_tol" parameter.

  • is the relative residual tolerance, provided by "nl_rel_tol".

  • is the relative step tolerance., provided by "nl_rel_step_tol".

  • is the absolute residual divergence tolerance, provided by "nl_abs_div_tol".

  • is the relative residual divergence tolerance, provided by "nl_div_tol".

  • is the number of residual evaluations.

  • is the maximum number of residual evaluations, provided by "nl_max_funcs".

  • is the number of ping-pong iterations (consecutive iterations in which the residual grows then reduces on every other iteration).

  • is the maximum number of ping-pong iterations, provided by "n_max_nonlinear_pingpong".

Input Parameters

  • execute_onLINEARThe list of flag(s) indicating when this object should be executed. For a description of each flag, see https://mooseframework.inl.gov/source/interfaces/SetupInterface.html.

    Default:LINEAR

    C++ Type:ExecFlagEnum

    Unit:(no unit assumed)

    Options:NONE, INITIAL, LINEAR, NONLINEAR_CONVERGENCE, NONLINEAR, POSTCHECK, TIMESTEP_END, TIMESTEP_BEGIN, MULTIAPP_FIXED_POINT_END, MULTIAPP_FIXED_POINT_BEGIN, FINAL, CUSTOM

    Controllable:No

    Description:The list of flag(s) indicating when this object should be executed. For a description of each flag, see https://mooseframework.inl.gov/source/interfaces/SetupInterface.html.

  • nl_abs_step_tol0Nonlinear Absolute step Tolerance

    Default:0

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Nonlinear Absolute step Tolerance

  • verboseFalseEnable printing of additional information, including convergence and divergence reasons.

    Default:False

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:Enable printing of additional information, including convergence and divergence reasons.

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector<std::string>

    Unit:(no unit assumed)

    Controllable:No

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:Set the enabled status of the MooseObject.

Advanced Parameters

  • n_max_nonlinear_pingpong100The maximum number of times the nonlinear residual can ping pong before requesting halting the current evaluation and requesting timestep cut for transient simulations

    Default:100

    C++ Type:unsigned int

    Unit:(no unit assumed)

    Controllable:No

    Description:The maximum number of times the nonlinear residual can ping pong before requesting halting the current evaluation and requesting timestep cut for transient simulations

  • nl_abs_div_tol1e+50Nonlinear Absolute Divergence Tolerance. A negative value disables this check.

    Default:1e+50

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Nonlinear Absolute Divergence Tolerance. A negative value disables this check.

  • nl_abs_tol1e-50Nonlinear Absolute Tolerance

    Default:1e-50

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Nonlinear Absolute Tolerance

  • nl_div_tol1e+10Nonlinear Relative Divergence Tolerance. A negative value disables this check.

    Default:1e+10

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Nonlinear Relative Divergence Tolerance. A negative value disables this check.

  • nl_forced_its0The Number of Forced Nonlinear Iterations

    Default:0

    C++ Type:unsigned int

    Unit:(no unit assumed)

    Controllable:No

    Description:The Number of Forced Nonlinear Iterations

  • nl_max_funcs10000Max Nonlinear solver function evaluations

    Default:10000

    C++ Type:unsigned int

    Unit:(no unit assumed)

    Controllable:No

    Description:Max Nonlinear solver function evaluations

  • nl_max_its50Max Nonlinear Iterations

    Default:50

    C++ Type:unsigned int

    Unit:(no unit assumed)

    Controllable:No

    Description:Max Nonlinear Iterations

  • nl_rel_step_tol0Nonlinear Relative step Tolerance

    Default:0

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Nonlinear Relative step Tolerance

  • nl_rel_tol1e-08Nonlinear Relative Tolerance

    Default:1e-08

    C++ Type:double

    Unit:(no unit assumed)

    Controllable:No

    Description:Nonlinear Relative Tolerance

Nonlinear Solver Parameters