This feature can be used as an attribute to the Time and
Stationary features. The nonlinear solver is an affine invariant form of the damped Newton method.
The property dtech controls which damping factor to use in the damped Newton iterations.
For dtech set to
auto, the solver determines an appropriate damping factor automatically. For this method the initial and minimally allowed damping factors are controlled by the properties
initstep and
minstep, respectively. The termination technique is controlled by the property
ntermauto.
For dtech set to
hnlin, the solver determines an appropriate damping factor automatically but treat the problem as being highly nonlinear. This option can be tried if there is no convergence with
dtech set to
auto. For this method the initial and minimally allowed damping factors are controlled by the properties
initsteph and
minsteph respectively. Moreover, certain internal control structures are adapted. Especially, the error control is biased from a more absolute norm toward a relative norm. So this parameter is also useful if a solution with components of highly varying orders of magnitudes are present. In the context of parameter stepping, you can also try this option if the step sizes in the parameter seem to be too small.
When dtech=const, the constant damping factor specified in the property
damp is used. For this method the termination technique is controlled by the property
ntermconst. Furthermore, the property
jtech can be used to control how often the Jacobian is updated. With
jtech=minimal, the Jacobian is updated as seldom as possible (only once for a stationary problem and at most once per time step for a time-dependent problem). For time-dependent problems, the choice
jtech=once makes the solver update the Jacobian once per time step. With
jtech=onevery, the Jacobian is updated on every Newton iteration. The default is
onevery for stationary problems and
minimal for time-dependent problems.
When dtech is set to
ddog (stationary problems), the double dogleg solver is used. The initial damping factor is controlled by the property
ddoginitdamp and the property
resscale controls the residual scaling. The option
resscale=scalefieldwise scales the equations based on the field-wise sizes of the initial residual. When the option
resscale=scaleuniform is selected the algorithm terminates on the relative residual based on the initial residual.
The tolerance ntol gives the criterion for convergence for a stationary problem; see
Stationary Solver in the
COMSOL Multiphysics Reference Manual.
The property ntolfact controls how accurately the nonlinear system of equations is solved. The value given in
ntolfact is multiplied with the main solver tolerance and used in the convergence criteria. Also, the solution process is interrupted (and the Jacobian updated or the time step reduced) if the convergence is too slow. This can be disabled by setting
useratelimit=off. When
useratelimit=on, what is to be considered as too slow convergence can be controlled through the property
ratelimit. The solution process is interrupted if the estimated linear convergence rate (of all steps, when the segregated solver is used) becomes larger than the value given in
ratelimit.
The property stabacc enables or disables pseudo time stepping (for stationary problems) or Anderson acceleration. When enabled the pseudo time stepping is controlled by the scalar-valued controller parameters
cfltol,
initcfl,
kdpid,
kipid, and
kppid. For the Anderson acceleration, the parameter
aaccdim specifies the dimension of the Anderson iteration space.
The property termonres controls the termination criterion for stationary problems when
dtech=const (and
ntermconst is not
iter),
auto, or
hnlin. When
termonres=off the estimated error is solution based, with
termonres=on it is based on a relative residual and for
termonres=auto the estimated error is the minimum of the solution and residual based errors. For
termonres=auto the property
reserrfact is a scalar factor multiplying the relative residual error. For
termonres=both, both methods are used.
The property usecflcmp from earlier versions of COMSOL Multiphysics is not used in version 5.0. Use the property
stabacc instead.