**theta_method**,
a MATLAB code which
solves one or more ordinary differential equations (ODE)
using the theta method.

The theta method uses a parameter theta, between 0 and 1. Special values of theta are:

- theta = 0: backward Euler method;
- theta = 1/2: trapezoidal method;
- theta = 1: forward Euler method;

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

**theta_method** is available in
a MATLAB version.

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

backward_euler_fixed, a MATLAB 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.

cauchy_method, a MATLAB code which solves one or more ordinary differential equations (ODE) using the Cauchy method.

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

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

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

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

midpoint_fixed, a MATLAB 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.

rk12, a MATLAB code which implements Runge-Kutta solvers of orders 1 and 2 for a system of ordinary differential equations (ODE).

rk23, a MATLAB code which implements Runge-Kutta ODE solvers of orders 2 and 3.

rk34, a MATLAB code which implements Runge-Kutta ODE solvers of orders 3 and 4.

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

rk45, a MATLAB code which implements Runge-Kutta ODE solvers of orders 4 and 5.

rkf45, a MATLAB code which implements the Runge-Kutta-Fehlberg ODE solver.

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

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

velocity_verlet, a MATLAB code which uses a version of the velocity Verlet method to solve a secord order ordinary differential equation (ODE) of the form y''=f(t,y).

- theta_method.m, implements the theta method, solving the implicit theta method step equation using fsolve() from the MATLAB Optimization Toolbox.