Dense output coefficients for the variable-step RK formulas.
Each *_dense_coefficients routine returns the matrix b (number_of_stages x degree)
defining the interpolant over the step , along with its form: either
the polynomial form (dense_form_polynomial), or the form used in DOPRI5 and DOP853
(dense_form_dopri). See dense_coefficients. So, the coefficients can be entered
as they are published.
If the dense output needs function evaluations in addition to the ones from the step,
these are computed in the *_dense_extra_stages routine, and stored in me%funcs
after the ones from the step.
Dense output for the Dormand-Prince 5(4) method rkdp54.
This is the 4th order continuous extension due to Shampine (as used in DOPRI5).
The coefficients are given here in the polynomial form
(row i contains the coefficients of ).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkdp54_class), | intent(in) | :: | me | |||
| real(kind=wp), | intent(out), | dimension(:,:), allocatable | :: | b |
dense output coefficients |
|
| integer, | intent(out) | :: | form |
the form of |
Dense output for the Dormand-Prince 8(5) method rkdp85.
This is the 7th order continuous extension from DOP853. It requires 4 additional
function evaluations (see rkdp85_dense_extra_stages).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkdp85_class), | intent(in) | :: | me | |||
| real(kind=wp), | intent(out), | dimension(:,:), allocatable | :: | b |
dense output coefficients |
|
| integer, | intent(out) | :: | form |
the form of |
The additional function evaluations for the dense output of rkdp85.
These are stored in me%funcs(:,13:16). Stage 13 is f at the end of the step,
which is cached for the first stage of the next step (as in DOP853).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkdp85_class), | intent(inout) | :: | me |
Dense output for Verner's "most efficient" 6(5) method rkv65e.
This is the interpolant of order 6 (bi6) from the coefficient file, which requires 3 additional
function evaluations (see rkv65e_dense_extra_stages).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkv65e_class), | intent(in) | :: | me | |||
| real(kind=wp), | intent(out), | dimension(:,:), allocatable | :: | b |
dense output coefficients |
|
| integer, | intent(out) | :: | form |
the form of |
The additional function evaluations for the dense output of rkv65e.
These are stored in me%funcs(:,10:12).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkv65e_class), | intent(inout) | :: | me |
Dense output for Verner's "most robust" 6(5) method rkv65r.
This is the interpolant of order 6 (bi6) from the coefficient file, which requires 3 additional
function evaluations (see rkv65r_dense_extra_stages).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkv65r_class), | intent(in) | :: | me | |||
| real(kind=wp), | intent(out), | dimension(:,:), allocatable | :: | b |
dense output coefficients |
|
| integer, | intent(out) | :: | form |
the form of |
The additional function evaluations for the dense output of rkv65r.
These are stored in me%funcs(:,10:12).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkv65r_class), | intent(inout) | :: | me |
Dense output for Verner's "most efficient" 7(6) method rkv76e.
This is the interpolant of order 7 (bi7) from the coefficient file, which requires 6 additional
function evaluations (see rkv76e_dense_extra_stages).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkv76e_class), | intent(in) | :: | me | |||
| real(kind=wp), | intent(out), | dimension(:,:), allocatable | :: | b |
dense output coefficients |
|
| integer, | intent(out) | :: | form |
the form of |
The additional function evaluations for the dense output of rkv76e.
These are stored in me%funcs(:,11:16). Stage 11 is f at the end of the step,
which is cached for the first stage of the next step (see set_fsal_cache).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkv76e_class), | intent(inout) | :: | me |
Dense output for Verner's "most robust" 7(6) method rkv76r.
This is the interpolant of order 7 (bi7) from the coefficient file, which requires 6 additional
function evaluations (see rkv76r_dense_extra_stages).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkv76r_class), | intent(in) | :: | me | |||
| real(kind=wp), | intent(out), | dimension(:,:), allocatable | :: | b |
dense output coefficients |
|
| integer, | intent(out) | :: | form |
the form of |
The additional function evaluations for the dense output of rkv76r.
These are stored in me%funcs(:,11:16). Stage 11 is f at the end of the step,
which is cached for the first stage of the next step (see set_fsal_cache).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkv76r_class), | intent(inout) | :: | me |
Dense output for Verner's "most efficient" 8(7) method rkv87e.
This is the interpolant of order 8 (bi8) from the coefficient file, which requires 8 additional
function evaluations (see rkv87e_dense_extra_stages).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkv87e_class), | intent(in) | :: | me | |||
| real(kind=wp), | intent(out), | dimension(:,:), allocatable | :: | b |
dense output coefficients |
|
| integer, | intent(out) | :: | form |
the form of |
The additional function evaluations for the dense output of rkv87e.
These are stored in me%funcs(:,14:21). Stage 14 is f at the end of the step,
which is cached for the first stage of the next step (see set_fsal_cache).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkv87e_class), | intent(inout) | :: | me |
Dense output for Verner's "most robust" 8(7) method rkv87r.
This is the interpolant of order 8 (bi8) from the coefficient file, which requires 8 additional
function evaluations (see rkv87r_dense_extra_stages).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkv87r_class), | intent(in) | :: | me | |||
| real(kind=wp), | intent(out), | dimension(:,:), allocatable | :: | b |
dense output coefficients |
|
| integer, | intent(out) | :: | form |
the form of |
The additional function evaluations for the dense output of rkv87r.
These are stored in me%funcs(:,14:21). Stage 14 is f at the end of the step,
which is cached for the first stage of the next step (see set_fsal_cache).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkv87r_class), | intent(inout) | :: | me |
Dense output for Verner's "most efficient" 9(8) method rkv98e.
This is the interpolant of order 9 (bi9) from the coefficient file, which requires 10 additional
function evaluations (see rkv98e_dense_extra_stages).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkv98e_class), | intent(in) | :: | me | |||
| real(kind=wp), | intent(out), | dimension(:,:), allocatable | :: | b |
dense output coefficients |
|
| integer, | intent(out) | :: | form |
the form of |
The additional function evaluations for the dense output of rkv98e.
These are stored in me%funcs(:,17:26). Stage 17 is f at the end of the step,
which is cached for the first stage of the next step (see set_fsal_cache).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkv98e_class), | intent(inout) | :: | me |
Dense output for Verner's "most robust" 9(8) method rkv98r.
This is the interpolant of order 9 (bi9) from the coefficient file, which requires 10 additional
function evaluations (see rkv98r_dense_extra_stages).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkv98r_class), | intent(in) | :: | me | |||
| real(kind=wp), | intent(out), | dimension(:,:), allocatable | :: | b |
dense output coefficients |
|
| integer, | intent(out) | :: | form |
the form of |
The additional function evaluations for the dense output of rkv98r.
These are stored in me%funcs(:,17:26). Stage 17 is f at the end of the step,
which is cached for the first stage of the next step (see set_fsal_cache).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkv98r_class), | intent(inout) | :: | me |
Dense output for the Prince-Dormand 8(7) (RK8(7)13M) method rkdp87. This is an interpolant of order 8 constructed by P. Stone, which requires 8 additional function evaluations (see rkdp87_dense_extra_stages).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkdp87_class), | intent(in) | :: | me | |||
| real(kind=wp), | intent(out), | dimension(:,:), allocatable | :: | b |
dense output coefficients |
|
| integer, | intent(out) | :: | form |
the form of |
The additional function evaluations for the dense output of rkdp87.
These are stored in me%funcs(:,14:21). Stage 14 is f at the end of the step,
which is cached for the first stage of the next step (see set_fsal_cache).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkdp87_class), | intent(inout) | :: | me |
Dense output for the Enright-Verner 8(7) method rkev87. This is an interpolant of order 8 constructed by P. Stone, which requires 8 additional function evaluations (see rkev87_dense_extra_stages).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkev87_class), | intent(in) | :: | me | |||
| real(kind=wp), | intent(out), | dimension(:,:), allocatable | :: | b |
dense output coefficients |
|
| integer, | intent(out) | :: | form |
the form of |
The additional function evaluations for the dense output of rkev87.
These are stored in me%funcs(:,14:21). Stage 14 is f at the end of the step,
which is cached for the first stage of the next step (see set_fsal_cache).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(rkev87_class), | intent(inout) | :: | me |
Dense output for the Verner 8(7) (Maple's dverk78) method dverk78.
This is an interpolant of order 8 constructed by P. Stone, which requires 9 additional
function evaluations (see dverk78_dense_extra_stages).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dverk78_class), | intent(in) | :: | me | |||
| real(kind=wp), | intent(out), | dimension(:,:), allocatable | :: | b |
dense output coefficients |
|
| integer, | intent(out) | :: | form |
the form of |
The additional function evaluations for the dense output of dverk78.
These are stored in me%funcs(:,14:22). Stage 14 is f at the end of the step,
which is cached for the first stage of the next step (see set_fsal_cache).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dverk78_class), | intent(inout) | :: | me |