SegregatedStep
Handle a segregated solution step, which can be added as a subfeature to a Segregated feature.
Syntax
model.sol(sname).feature(solv).feature(segregated).create(fname,"SegregatedStep")
model.sol(sname).feature(solv).feature(segregated).feature(fname).set(pname,value)
model.sol(sname).feature(solv).feature(segregated).feature(fname).feature(sname).
set(pname,value)
Description
This feature controls one segregated solution step.
all | manual
Use Anderson acceleration, when subdtech is set to const or bcktrack.
Use adaptive tolerance in the linear solver, when subdtech is set to const or bcktrack.
fullerrorest | partialerrorest | nonlinresidual | onlycfl | onlyerr
The error estimation method to use if subadapttol is set to true. fullerrorest uses the full information about the linear and nonlinear error estimates to determine the tolerance. partialerrorest uses partial information about the linear and nonlinear error estimates to determine the tolerance. nonlinresidual uses the nonlinear residual only to determine the tolerance. onlycfl applies CFL suppression to the initial tolerance for models using pseudo time stepping. onlyerr applies a suppression mechanism based on the nonlinear error estimate for models with a stationary solver and not using pseudo time stepping.
Damping in one step, when subdtech is set to bcktrack and subbackmethod is set to conststep.
fullest | conststep
Backtracking method when subdtech is set to bcktrack: full estimation or constant step.
Backtrack at least once when subdtech is set to bcktrack and subbackmethod is set to fullest.
Damping exponent, if subatolchoice is set to nonlinresidual.
Damping factor, if subatolchoice is set to nonlinresidual.
Initial damping factor for subdtech set to ddog.
const | auto | bcktrack | hnlin | ddog
Maximal tolerance, if subadapttol is set to true.
minimal | once | onfirst | onevery
Substep Jacobian update technique when subdtech is set to const or bcktrack.
auto | sparse | filled | free
The maximum damping factor. If backtracking returns a damping larger than this value, submaxdamp is used. Available only if subdtech is set to bcktrack.
Substep minimum damping factor when subdtech is set to bcktrack.
Substep minimum damping factor when subdtech is set to auto.
Substep minimum damping factor when subdtech is set to hnlin.
Relaxation factor, if subressmooth is set to true.
Residual factor when subtermonres is set to auto or both.
scalefieldwise | scaleuniform
iter | tol | itertol
Substep termination technique when subdtech is set to const or bcktrack.
tol | itertol
Substep termination technique when subdtech is set to auto or hnlin.
off | on | auto | both
auto/off
Update automatic scale factors in weights when subdtech is set to const or bcktrack.
true | false | wthresh
Updates the weights for automatic scales if they change two orders of magnitude and then restart the Newton solver from the current solution if true. If set to wthresh, you can use thresholds for the weights. All updweights properties are available for stationary and parametric studies and for Newton solvers only (that is, subdtech is not ddog, bcktrack, or const).
current | manual
Available if subupdweightsauto is wthresh. Use fraction of the current damping factor at update (current) or a constant update damping factor (manual).
Fraction of current damping factor. If subupdweightsauto is wthresh and subupdweightsdamp is current.
Update damping factor. If subupdweightsauto is wthresh and subupdweightsdamp is manual.
Weights threshold factor for update. If subupdweightsauto is wthresh.
The fields/states to include in the step are defined through the property segvar. The property segvarspec controls which components of the fields/states in segvar to include in the step. By default segvarspec is all, in which case all components in the fields/states of segvar are included. By setting segvarspec to manual, a subset of the fields/states of segvar can be included in the step. The components to include in the step are then defined through the property segcomp.
Analogously, the property subterm controls how each substep is terminated through the properties maxsubiter, subiter, and subntol/subntolfact for a stationary or time-dependent problem.
The damping technique used in each substep is controlled by the property subdtech. The default setting is const, which means that damped Newton iterations with a fixed damping factor is used. The damping factor is set in the property subdamp. The other available damping technique is autodamp in which case the damping factor is automatically adjusted. For substeps which uses autodamp, four other properties are supported: subhnlin, subinitstep, subminstep, and subrstep. For each substep, these properties set the properties hnlin, initstep, minstep, and rstep supported by the nonlinear solver, see FullyCoupled.
In substeps with subdtech=const or bcktrack, the property subjtech controls how often the Jacobian is updated. The values minimal, once, and onevery give the same Jacobian update techniques as they do when applied to the coupled solver through the property jtech; see FullyCoupled. The value onfirst makes the solver update the Jacobian of the substep on the first subiteration each time the substep is solved for. Default value is onevery for stationary problems and minimal for time-dependent problems.
When subdtech is set to ddog (stationary problems), the double dogleg solver is used. The initial damping factor is controlled by the property subddoginitdamp and the property subresscale controls the residual scaling. The option resscale=scalefieldwise scales the equations based on the field-wise sizes of the initial residual. When the option subresscale=scaleuniform is selected the algorithm terminates on the relative residual based on the initial residual.
The property subtermonres controls the termination criterion for stationary problems when segterm is not iter. When subtermonres=off the estimated error is solution based, with subtermonres=on it is based on a relative residual, and for subtermonres=auto the estimated error is the minimum of the solution and residual based errors. For subtermonres=auto the property subreserrfact is a scalar factor multiplying the relative residual error. For subtermonres=both, both methods are used.