midpoint


midpoint, a MATLAB code which solves one or more ordinary differential equations (ODE) using the (implicit) midpoint method, with fsolve() solving the implicit equation, and using a fixed time step.

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, or an implicit equation solver like fsolve().

Licensing:

The information on this web page is distributed under the MIT license.

Languages:

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 version and an R version.

Related Data and codes:

midpoint_test

matlab_ode_solver, a MATLAB code which solves one or more differential equations (ODE) using a method of a particular order, either explicit or implicit. Some methods require a nonlinear equation solver. Some methods used a fixed stepsize, while others adapt the stepsize based on an error estimate.

Reference:

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

Source Code:


Last revised on 21 February 2022.