XLPack 6.1
C/C++ API Reference Manual
Loading...
Searching...
No Matches

◆ _derkf_int()

void _derkf_int ( int  n,
double  t,
double  y[],
double  work[] 
)

Initial value problem of a system of first order ordinary differential equations (5(4)-th order Runge-Kutta-Fehlberg method) (Interpolation for dense output)

Purpose
This is the support routine which interpolates the solution for dense output when an initial value problem of a system of ordinary differential equations is solved by derkf. For the details of interpolants used here, refer to the reference below.

derkf must be called with setting parameter mode = 2 to enable dense output. Note that larger work array work[] is required. Additional function evaluation for dense output is not required.
When returned from derkf with info = 2 (info = 1 for last step) after accepted step, the interporated solution within latest step interval can be computed by using this routine.
Parameters
[in]nNumber of differential equations. (n >= 1)
[in]tt at which the interpolated solution is computed.
t must be in the interval of the last step. That is, t1 <= t <= t2 where t1 is the value of t on the previous return from derkf with info = 2, and t2 is the value on the last return with info = 2.
[out]y[]Array y[ly] (ly >= n)
Interpoolated solution at t.
[in]work[]Array work[lwork]
Work array work[] used by derkf.
Reference
W H Enright et al. "Interpolants for Runge-Kutta Formulas" ACM Transactions on Mathematical Software Vol.12, No.3, 1986, pp.193-218