SDE
Stochastic Differential Equations


SDE is a FORTRAN90 library which illustrates the properties of stochastic differential equations and some algorithms for handling them, making graphics files for processing and display by gnuplot, by Desmond Higham.

The library requires access to the QR_SOLVE library as well.

The original version of these routines is available at "http://www.maths.strath.ac.uk/~aas96106/algfiles.html".

Licensing:

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

Languages:

SDE is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version.

Related Data and Programs:

BLACK_SCHOLES, a FORTRAN90 library which implements some simple approaches to the Black-Scholes option valuation theory, by Desmond Higham.

BROWNIAN_MOTION_SIMULATION, a MATLAB program which simulates Brownian motion in an M-dimensional region.

CNOISE, a MATLAB library which generates samples of noise obeying a 1/f^alpha power law, by Miroslav Stoyanov.

COLORED_NOISE, a FORTRAN90 library which generates samples of noise obeying a 1/f^alpha power law.

CORRELATION, a FORTRAN90 library which contains examples of statistical correlation functions.

GNUPLOT, FORTRAN90 programs which illustrate how a program can write data and command files so that gnuplot can create plots of the program results.

ORNSTEIN_UHLENBECK, a FORTRAN90 library which approximates solutions of the Ornstein-Uhlenbeck stochastic differential equation (SDE) using the Euler method and the Euler-Maruyama method.

PCE_BURGERS, a FORTRAN90 program which defines and solves a version of the time-dependent viscous Burgers equation, with uncertain viscosity, using a polynomial chaos expansion in terms of Hermite polynomials, by Gianluca Iaccarino.

PCE_LEGENDRE, a MATLAB program which assembles the system matrix associated with a polynomal chaos expansion of a 2D stochastic PDE, using Legendre polynomials;

PCE_ODE_HERMITE, a FORTRAN90 program which sets up a simple scalar ODE for exponential decay with an uncertain decay rate, using a polynomial chaos expansion in terms of Hermite polynomials.

PINK_NOISE, a FORTRAN90 library which computes a "pink noise" signal obeying a 1/f power law.

QR_SOLVE, a FORTRAN90 library which computes the least squares solution of a linear system A*x=b.

STOCHASTIC_DIFFUSION, a FORTRAN90 library which implements several versions of a stochastic diffusivity coefficient.

STOCHASTIC_GRADIENT_ND_NOISE, a MATLAB program which solves an optimization problem involving a functional over a system with stochastic noise.

STOCHASTIC_RK, a FORTRAN90 library which applies a Runge Kutta (RK) scheme to a stochastic differential equation.

Author:

Original MATLAB version by Desmond Higham. FORTRAN90 version by John Burkardt.

Reference:

  1. Desmond Higham,
    An Algorithmic Introduction to Numerical Simulation of Stochastic Differential Equations,
    SIAM Review,
    Volume 43, Number 3, September 2001, pages 525-546.

Source Code:

Examples and Tests:

The calling program creates various data and command files which can be used with GNUPLOT to create images.

List of Routines:

You can go up one level to the FORTRAN90 source codes.


Last revised on 21 September 2012.