module Newton:sig
..end
Generic nonlinear solver based on Newton's method.
val make : ?context:Sundials.Context.t ->
('d, 'k) Nvector.t -> ('d, 'k, 's, [ `Nvec ]) Sundials_NonlinearSolver.t
Creates a nonlinear solver based on Newton's method. Solves nonlinear systems of the form $F(y) = 0$ .
val make_sens : ?context:Sundials.Context.t ->
int ->
('d, 'k) Nvector.t -> ('d, 'k, 's, [ `Sens ]) Sundials_NonlinearSolver.t
Creates a nonlinear solver based on Newton's method for sensitivity-enabled integrators. Solves nonlinear systems of the form $F(y) = 0$ .
In the call make_sens count y
,
count
is the number of vectors in the nonlinear problem,
if there are $N_s$ sensitivities, then count
should be
$N_s + 1$ if using a simultaneous corrector
or $N_s$ if using a staggered corrector; and,y
is a template for cloning vectors.val get_sys_fn : ('d, 'k, 's, [ `Nvec ]) Sundials_NonlinearSolver.t ->
(('d, 'k) Nvector.t, 's) Sundials_NonlinearSolver.sysfn option
Returns the residual function that defines the nonlinear system.
Raises Invalid_argument
if called on a nonlinear solver that was not
created by this module.