naginterfaces.library.ode.ivp_stiff_sparjac_diag¶
- naginterfaces.library.ode.ivp_stiff_sparjac_diag(icall, lblock, comm)[source]¶
ivp_stiff_sparjac_diag
is an optional output function which you may call, on exit from an integrator in submoduleode
, if sparse matrix linear algebra has been selected.For full information please refer to the NAG Library document for d02nx
https://support.nag.com/numeric/nl/nagdoc_30.2/flhtml/d02/d02nxf.html
- Parameters
- icallint
Indicates whether or not all output arguments have been set during the call to the integrator. If so, that is, if the integrator returned with the function exits successfully or = 12, then must be set to . Otherwise must be set to , indicating that integration did not take place due to lack of space in arrays and , and only , , , have been set.
- lblockbool
The value used for the argument when calling
ivp_stiff_sparjac_setup()
.- commdict, communication object
Communication structure.
This argument must have been initialized by a prior call to
ivp_stiff_exp_sparjac()
,ivp_stiff_imp_sparjac()
orivp_stiff_imp_revcom()
.
- Returns
- liwreqint
The length of the int workspace reserved for the sparse matrix functions.
- liwusdint
The length of the int workspace actually used by the sparse matrix functions.
- lrwreqint
The length of the float workspace reserved for the sparse matrix functions.
- lrwusdint
The length of the float workspace actually used by the sparse matrix functions.
- nluint
The number of decompositions done during the integration.
- nnzint
The number of nonzeros in the Jacobian.
- ngpint
The number of or calls needed to form the Jacobian.
- isplitint
An appropriate value for the argument when calling
ivp_stiff_sparjac_setup()
for subsequent runs of similar problems.- igrowint
An estimate of the growth of the elements encountered during the last decomposition performed. If the actual estimate exceeds the largest possible integer value for the machine being used (see
machine.integer_max
) is set to the value returned bymachine.integer_max
.- nblockint
If , contains the number of diagonal blocks in the Jacobian matrix permuted to block lower triangular form. If then on subsequent runs of a similar problem should be set to in the call to
ivp_stiff_sparjac_setup()
.If , .
- Notes
No equivalent traditional C interface for this routine exists in the NAG Library.
ivp_stiff_sparjac_diag
permits you to examine the various outputs from the sparse linear algebra functions called by the integrator.