SIAMFANLEquations.jl
This is an extension for importing solvers from SIAMFANLEquations.jl into the SciML interface. Note that these solvers do not come by default, and thus one needs to install the package before using these solvers:
import Pkg
Pkg.add("SIAMFANLEquations")
import SIAMFANLEquations
import NonlinearSolve as NLSSolver API
NonlinearSolve.SIAMFANLEquationsJL — TypeSIAMFANLEquationsJL(;
method = :newton, delta = 1e-3, linsolve = nothing, autodiff = missing
)Keyword Arguments
method: the choice of method for solving the nonlinear system.delta: initial pseudo time step, default is 1e-3.linsolve: JFNK linear solvers, choices aregmresandbicgstab.m: Depth for Anderson acceleration, default as 0 for Picard iteration.beta: Anderson mixing parameter, change f(x) to (1-beta)x+beta*f(x), equivalent to accelerating damped Picard iteration.autodiff: Defaults tomissing, which means we will default to lettingSIAMFANLEquationsconstruct the jacobian iff.jacis not provided. In other cases, we use it to generate a jacobian similar to other NonlinearSolve solvers.
Submethod Choice
:newton: Classical Newton method.:pseudotransient: Pseudo transient method.:secant: Secant method for scalar equations.:anderson: Anderson acceleration for fixed point iterations.