midpoint, a C++ code which solves one or more ordinary differential equations (ODE) using the (implicit) midpoint method, with a version of fsolve() handling the associated nonlinear equation, and using a fixed time step.
Each midpoint step requires the solution of an implicit nonlinear equation representing a backward Euler step. A corresponding function has been devised, called fsolve_be(), which carries out the iterative solution process.
The computer code and data files described and made available on this web page are distributed under the MIT license.
midpoint is available in a C version and a C++ version and a Fortran77 version and a Fortran90 version and a FreeFem++ version and a MATLAB version and an Octave version and a Python versionand an R version.
backward_euler, a C++ code which solves one or more ordinary differential equations (ODE) using the (implicit) backward Euler method, using a version of fsolve_be() for the implicit equation.
euler, a C++ code which solves one or more ordinary differential equations (ODE) using the forward Euler method.
fsolve, a C++ code which solves systems of nonlinear equations, inspired by the fsolve() function in minpack(), with special interfaces fsolve_bdf2(), fsolve_be() and fsolve_tr() for handling systems associated with implicit ODE solvers of type bdf2, backward Euler, midpoint, or trapezoidal.
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.
midpoint_fixed a C++ code which solves one or more ordinary differential equations (ODE) using the (implicit) midpoint method, using a fixed point method to solve the associated nonlinear equation.
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).
trapezoidal, a C++ code which solves one or more ordinary differential equations (ODE) using the (implicit) trapezoidal method, and a version of fsolve() to handle the nonlinear equation.