Module Ida.Sls

module Sls: sig .. end
Sparse Linear Solvers.
See sundials: The SLS modules

type 'f sparse_jac_fn = (Sundials.RealArray.t Ida.triple, Sundials.RealArray.t) Ida.jacobian_arg ->
'f Sls.SparseMatrix.t -> unit
Callback functions that compute sparse approximations to a Jacobian matrix. In the call sparse_jac_fn arg jac, arg is a Ida.jacobian_arg with three work vectors and the computed Jacobian must be stored in jac.

The callback should load the (i,j)th entry of jac with $\frac{\partial F_i}{\partial y_j} + c_j\frac{\partial F_i}{\partial\dot{y}_j}$, i.e., the partial derivative of the ith equation with respect to the jth variable, evaluated at the values of t, y, and y' obtained from arg. Only nonzero elements need be loaded into jac.

Raising Sundials.RecoverableFailure indicates a recoverable error. Any other exception is treated as an unrecoverable error.

Neither the elements of arg nor the matrix jac should be accessed after the function has returned.

See sundials: IDASlsSparseJacFn
module Klu: sig .. end
KLU sparse-direct linear solver module (requires KLU).
module Superlumt: sig .. end
SuperLU_MT sparse-direct linear solver module (requires SuperLU_MT).