The Runge–Kutta–Fehlberg method for ODEs.

The method presented in Fehlberg’s 1969 paper has been dubbed the RKF45 method, and is a method of order $$O(h^4)$$ with an error estimator of order $$O(h^5)$$. The novelty of Fehlberg’s method is that it is an embedded method from the Runge–Kutta family, meaning that identical function evaluations are used in conjunction with each other to create methods of varying order and similar error constants.

Its Butcher table is:

$\begin{split}\begin{array}{l|lllll} 0 & & & & & & \\ 1 / 4 & 1 / 4 & & & & \\ 3 / 8 & 3 / 32 & 9 / 32 & & \\ 12 / 13 & 1932 / 2197 & -7200 / 2197 & 7296 / 2197 & \\ 1 & 439 / 216 & -8 & 3680 / 513 & -845 / 4104 & & \\ 1 / 2 & -8 / 27 & 2 & -3544 / 2565 & 1859 / 4104 & -11 / 40 & \\ \hline & 16 / 135 & 0 & 6656 / 12825 & 28561 / 56430 & -9 / 50 & 2 / 55 \\ & 25 / 216 & 0 & 1408 / 2565 & 2197 / 4104 & -1 / 5 & 0 \end{array}\end{split}$

References

1

https://en.wikipedia.org/wiki/Runge%E2%80%93Kutta%E2%80%93Fehlberg_method

2

Erwin Fehlberg (1969). Low-order classical Runge-Kutta formulas with step size control and their application to some heat transfer problems . NASA Technical Report 315. https://ntrs.nasa.gov/api/citations/19690021375/downloads/19690021375.pdf

__init__(f, var_type=None, dt=None, name=None, adaptive=None, tol=None, show_code=False, state_delays=None, neutral_delays=None)#

Methods

 __init__(f[, var_type, dt, name, adaptive, ...]) build() load_states(filename[, verbose]) Load the model states. nodes([method, level, include_self]) Collect all children nodes. register_implicit_nodes(nodes) register_implicit_vars(variables) save_states(filename[, variables]) Save the model states. set_integral(f) Set the integral function. train_vars([method, level, include_self]) The shortcut for retrieving all trainable variables. unique_name([name, type_]) Get the unique name for this object. vars([method, level, include_self]) Collect all variables in this node and the children nodes.

Attributes

 A B1 B2 C arg_names arguments All arguments when calling the numer integrator of the differential equation. dt The numerical integration precision. integral The integral function. name neutral_delays neutral delays. parameters The parameters defined in the differential equation. state_delays State delays. variables The variables defined in the differential equation.