**bdf2**,
a Python code which
solves one or more ordinary differential equations (ODE)
using BDF2, the (implicit) backward difference formula
of order 2, using fsolve() to solve the implicit equation.

The computer code and data files described and made available on this web page are distributed under the MIT license

**bdf2** is available in
a MATLAB version and
a Python version.

backward_euler, a Python code which solves one or more ordinary differential equations (ODE) using the (implicit) backward Euler method.

backward_euler_fixed, a Python code which solves one or more ordinary differential equations (ODE) using the implicit backward Euler method, using a fixed point iteration for the implicit equation.

euler, a Python code which solves one or more ordinary differential equations (ODE) using the forward Euler method.

leapfrog, a Python code which uses the leapfrog method to solve a second order ordinary differential equation (ODE) of the form y''=f(t,y).

midpoint, a Python code which solves one or more ordinary differential equations (ODE) using the (implicit) midpoint method.

midpoint_explicit, a Python code which solves one or more ordinary differential equations (ODE) using the (explicit) midpoint method, also called the modified Euler method.

midpoint_fixed, a Python code which solves one or more ordinary differential equations (ODE) using the (implicit) midpoint method, using a simple fixed-point iteration to solve the nonlinear equation.

rk4, a Python code which applies the fourth order Runge-Kutta (RK) algorithm to estimate the solution of an ordinary differential equation (ODE) at the next time step.

rkf45, a Python code which implements the Runge-Kutta-Fehlberg (RKF) solver for the solution of a system of ordinary differential equations (ODE).

trapezoidal, a Python code which solves one or more ordinary differential equations (ODE) using the (implicit) trapezoidal method.

trapezoidal_explicit, a Python code which solves one or more ordinary differential equations (ODE) using the explicit trapezoidal method.

trapezoidal_fixed, a Python code which solves one or more ordinary differential equations (ODE) using the (implicit) trapezoidal method, using a fixed point method to handle the implicit system.

- bdf2_test.py, the source code.
- bdf2_test.sh, runs all the tests.
- bdf2_test.txt, the output file.