Skip to content

SABS-R3-projects/Gray-Scott-PDE

Repository files navigation

Gray-Scott-PDE

David Augustin, Jakke Neiro, Thijs van der Plas

29 November 2019

Gray-Scott equations:

The Gray-Scott equations originate from the class of reaction-diffusion equations, and depending or their two-dimensional parameter settings (F, k) they can model a variety of patterns, such as spots, stripes, maze formations, ripples et cetera [1]. The Gray-Scott equations model the following chemical reaction:

U  + 2V \to 3V

 V \to P

This is modelled by the following coupled Partial Differential Equations (PDEs), consisting of a diffusion term, interaction term, negative U and V feeds and positive U feed [2]:

 \frac{\delta U}{\delta t} = \epsilon_1 \Delta U - UV^2 + F(1 - U)

 \frac{\delta V}{\delta t} = \epsilon_2 \Delta V + UV^2 - (F + k)V

Here, U and V are two-dimensional in space (x, y), and \Delta denotes their laplacian operator. Here, we numerically solve these equations by approximating the time derivative by finite difference methods. The time derivative and laplacian are approximated by a forward difference and central difference scheme respectively [3].

Without the interaction and feed terms, the PDEs collapse to regular (uncoupled) heat equations. This case is also considered in our code as a test case.

[1] Trefethen, Nick "The (Unfinished) PDE Coffee Table Book". http://people.maths.ox.ac.uk/trefethen/pdectb/reaction2.pdf

[2] Pearson, John E. "Complex patterns in a simple system." Science 261.5118 (1993): 189-192.

[3] Recktenwald, Gerald W. "Finite-difference approximations to the heat equation." Mechanical Engineering 10 (2004): 1-27. Updated in 2011.

Installation

Clone repository by opening the terminal and typing

git clone https://github.com/SABS-R3-projects/Gray-Scott-PDE/

Then install the grayscott module and all dependencies with

pip install .

Congratulations! You successfully installed grayscott.

Executing

All the code can be run by executing the jupyter notebook Main.ipynb. The Jupyter interface is initiated by running jupyter notebook in your terminal.

This project is release under a BSD 3-Clause License.

Enjoy!

picture

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published