midpoint_adaptive, a C++ code which solves one or more ordinary differential equations (ODE) using the (implicit) midpoint method, relying on fsolve() to solve the implicit equation, and using an adaptive timestep. Plots of the solution and timestep history are created using gnuplot().
The information on this web page is distributed under the MIT license.
midpoint_adaptive is available in a C version and a C++ version and a Fortran90 version and a MATLAB version and an Octave version and a Python version.
backward_euler, a C++ code which solves one or more ordinary differential equations (ODE) using the (implicit) backward Euler method, using fsolve() to solve the implicit equation, and using a fixed time step.
bdf2, a C++ 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.
euler, a C++ code which solves one or more ordinary differential equations (ODE) using the forward Euler method, and using a fixed time step.
midpoint, a C++ code which solves one or more ordinary differential equations (ODE) using the (implicit) midpoint method, relying on fsolve() to solve the implicit equation, and using a fixed time step.
midpoint_explicit, a C++ code which solves one or more ordinary differential equations (ODE) using the (explicit) midpoint method, also called the modified Euler method, and using a fixed time step.
midpoint_fixed, a C++ code which solves one or more ordinary differential equations (ODE) using the (implicit) midpoint method, using a simple fixed-point iteration to solve the implicit equation, and using a fixed time step.
midpoint_gsl_test, a C++ code which calls the Gnu Scientific Library (GSL) implicit midpoint method solver for ordinary differential equation (ODE), and uses gnuplot() to plot the resulting solution.
rk4, a C++ code which applies the fourth order Runge-Kutta (RK) algorithm to estimate the solution of an ordinary differential equation (ODE).
rkf45, a C++ code which implements the Runge-Kutta-Fehlberg ODE solver.
trapezoidal, a C++ code which solves one or more ordinary differential equations (ODE) using the (implicit) trapezoidal method, and using a fixed time step.