# Module Cvode.Sls

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

type 'f sparse_jac_fn = (Sundials.RealArray.t Cvode.triple, Sundials.RealArray.t) Cvode.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 Cvode.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 $\partial y_i/\partial y_j$, i.e., the partial derivative of the ith equation with respect to the jth variable, evaluated at the values of t 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: CVSlsSparseJacFn
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).