FE2D_PREDATOR_PREY_FAST
Predator-prey simulations in arbitrary shaped 2D habitats


FE2D_PREDATOR_PREY_FAST is a MATLAB library which implements finite element solvers for predator prey simulations with time and 2D spatial dependence over an arbitrary domain that has been triangulated. A variety of boundary conditions may be specified. The solvers integrate the associated partial differential equations over a given time interval, and create plots of the predator and prey population densities at the final time.

These codes are a finite element generalization of earlier MATLAB algorithms developed using finite difference methods.

The algorithms presented here are "fast" versions of scripts that were originally written by Marcus Garvie, of the University of Guelph. They have been modified by John Burkardt to run much more quickly.

Licensing:

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

Languages:

FE2D_PREDATOR_PREY_FAST is available in a MATLAB version.

Related Data and Programs:

FD_PREDATOR_PREY, a MATLAB program which solves a pair of predator prey ODE's using a finite difference approximation.

FD1D_PREDATOR_PREY, a MATLAB program which uses finite differences to solve a 1D predator prey problem.

FD2D_PREDATOR_PREY, a MATLAB program which implements a finite difference algorithm for a predator-prey system with spatial variation in 2D.

ODE_PREDATOR_PREY, a MATLAB program which solves a pair of predator prey differential equations using MATLAB's ODE23 solver.

Author:

Original MATLAB versions by Marcus Garvie; Modifications by John Burkardt.

Reference:

  1. http://www.uoguelph.ca/~mgarvie/ , Marcus Garvie's web page.
  2. Marcus Garvie, John Burkardt, Jeff Morgan,
    Simple finite element methods for approximating predator-prey dynamics in two dimensions using Matlab,
    Submitted to Bulletin of Mathematical Biology.
  3. Marcus Garvie,
    Finite-Difference Schemes for Reaction-Diffusion Equations Modeling Predator-Prey Interactions in MATLAB,
    Bulletin of Mathematical Biology,
    Volume 69, Number 3, 2007, pages 931-956.

Source Codes:

FE2D_D: Scheme 2 applied to Kinetics 1 with pure Dirichlet boundary conditions. This problem is posed on a region whose nodes and triangulation are supplied by the user. The sample problem uses the lake.

FE2D_N: Scheme 2 applied to Kinetics 1 with pure Neumann boundary conditions. This problem is posed on a region whose nodes and triangulation are supplied by the user. The sample problem uses the lake.

FE2D_ND: Scheme 2 applied to Kinetics 1 with a mixture of Neumann and Dirichlet boundary conditions. This problem is posed on a region whose nodes and triangulation are supplied by the user. The user must also supply lists of the boundary nodes at which Neumann and Dirichlet conditions are to be applied. The sample problem uses the lake.

FE2D_NR: Scheme 2 applied to Kinetics 1 with a mixture of Neumann and Robin boundary conditions. This problem is posed on a region whose nodes and triangulation are supplied by the user. The user must also supply lists of the boundary nodes at which Neumann and Robin conditions are to be applied. The sample problem uses the lake.

FE2D_P: Scheme 2 applied to Kinetics 1 with periodic boundary conditions. This problem is posed on the unit square.

FE2D_R: Scheme 2 applied to Kinetics 1 with pure Robin boundary conditions. This problem is posed on a region whose nodes and triangulation are supplied by the user. The sample problem uses the lake.

FE2DX_D: Scheme 1 applied to Kinetics 1 with pure Dirichlet boundary conditions. This problem is posed on a region whose nodes and triangulation are supplied by the user. The sample problem uses the lake.

FE2DX_N: Scheme 1 applied to Kinetics 1 with pure Neumann boundary conditions. This problem is posed on a region whose nodes and triangulation are supplied by the user. The sample problem uses the lake.

FE2DX_ND: Scheme 1 applied to Kinetics 1 with a mixture of Neumann and Dirichlet boundary conditions. This problem is posed on a region whose nodes and triangulation are supplied by the user. The user must also supply lists of the boundary nodes at which Neumann and Dirichlet conditions are to be applied. The sample problem uses the lake.

FE2DX_NR: Scheme 1 applied to Kinetics 1 with a mixture of Neumann and Robin boundary conditions. This problem is posed on a region whose nodes and triangulation are supplied by the user. The user must also supply lists of the boundary nodes at which Neumann and Robin conditions are to be applied. The sample problem uses the lake.

FE2DX_NR_ALT: Scheme 1 applied to Kinetics 1 with a mixture of Neumann and Robin boundary conditions. This problem is posed on a region whose nodes and triangulation are supplied by the user. The user must also supply lists of the boundary nodes at which Neumann and Robin conditions are to be applied. This program is the same as that in FE2DX_NR, except that the Robin condition is applied implicitly. The sample problem uses the lake.

FE2DX_P: Scheme 1 applied to Kinetics 1 with periodic boundary conditions. This problem is posed on the unit square.

FE2DX_R: Scheme 1 applied to Kinetics 1 with pure Robin boundary conditions. This problem is posed on a region whose nodes and triangulation are supplied by the user. The sample problem uses the lake.

Auxilliary Files and Data

A number of the test codes use the lake geometry. All such codes will require the list of nodes and elements. Codes which have a mixture of boundary conditions will also require the two files which separate the boundary nodes into those on the outer boundary of the lake, and those which mark the boundary of the island.

Auxilliary functions include:

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


Last revised on 24 May 2014.