midpoint_fixed


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

Unless the right hand side of the ODE is linear in the dependent variable, each midpoint step requires the solution of an implicit nonlinear equation. Such equations can be approximately solved using methods such as fixed point iteration.

Licensing:

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

Languages:

midpoint_fixed 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.

Related Data and codes:

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

lorenz_ode, a C++ code which approximates solutions to the Lorenz system, creating output files that can be displayed by gnuplot().

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_test

predator_prey_ode, a C++ code which solves a pair of predator prey ordinary differential equations (ODE).

rk4, a C++ code which applies the fourth order Runge-Kutta (RK) algorithm to estimate the solution of an ordinary differential equation (ODE).

spring_ode, a C++ code which shows how line printer graphics can be used to make a crude illustration of a solution of the ordinary differential equation (ODE) that describes the motion of a weight attached to a spring.

stiff_ode, a C++ code which considers an ordinary differential equation (ODE) which is an example of a stiff ODE.

Reference:

  1. Catalin Trenchea, John Burkardt,
    Refactorization of the midpoint rule,
    Applied Mathematics Letters,
    Volume 107, September 2020.

Source Code:


Last revised on 07 April 2021.