spiral_pde


spiral_pde, an Octave code which solves a pair of reaction-diffusion partial differential equations (PDE), in two spatial dimensions and time, over a rectangular domain with periodic boundary condition, whose solution is known to evolve into a pair of spirals.

Because of the large number of variables, ode45() might not be a suitable solver, since it can run out of memory. For this problem, a simple Forward Euler ODE approach is used instead.

The PDE has the form:

        du/dt =         del u + u * ( 1 - u ) * ( u - ( v + beta ) / alpha ) ) / epsilon
        dv/dt = delta * del v + u - v
      

The domain is the square 0 <= x <= 80, 0 <= y <= 80, with zero Neumann boundary conditions.

The initial conditions are

        u = 0       for x < 40
            1       for     40 < x
        v = 0       for y < 40
            alpha/2 for     40 < y
      

The parameters are

        alpha   = 0.25
        beta    = 0.001
        delta   = 0.0
        epsilon = 0.002
      

Licensing:

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

Languages:

spiral_pde is available in a MATLAB version and an Octave version and a Python version.

Related Data and Programs:

spiral_pde_test

advection_pde, an Octave code which solves the advection PDE dudt + c * dudx = 0 in one spatial dimension, with a constant velocity c, and periodic boundary conditions, using the FTCS method, forward time difference, centered space difference.

allen_cahn_pde, an Octave code which sets up and solves the Allen-Cahn reaction-diffusion system of partial differential equations (PDE) in 1 space dimension and time.

artery_pde, an Octave code which solves a partial differential equation (PDE) that models the displacement of arterial walls under pressure.

diffusion_pde, an Octave code which solves the diffusion partial differential equation (PDE) dudt - mu * d2udx2 = 0 in one spatial dimension, with a constant diffusion coefficient mu, and periodic boundary conditions, using FTCS, the forward time difference, centered space difference method.

gray_scott_pde, an Octave code which solves the partial differential equation (PDE) known as the Gray-Scott reaction diffusion equation, displaying a sequence of solutions as time progresses.

schroedinger_linear_pde, an Octave code which solves the complex partial differential equation (PDE) known as Schroedinger's linear equation: dudt = i uxx, in one spatial dimension, with Neumann boundary conditions.

schroedinger_nonlinear_pde, an Octave code which solves the complex partial differential equation (PDE) known as Schroedinger's nonlinear equation: dudt = i uxx + gamma * |u|^2 u, in one spatial dimension, with Neumann boundary conditions.

string_pde, an Octave code which sets up and solves the partial differential equations (PDE) describing a vibrating string.

wave_pde, an Octave code which uses finite differences in space, and the method of lines in time, to set up and solve the partial differential equations (PDE) known as the wave equations, utt = c uxx.

Reference:

Source Code:


Last revised on 21 September 2024.