Skip to main content

Simulation of the Belousov-Zhabotinski reaction using ASCII art

Project description

Belousov-Zhabotinsky

About

The python package you never knew you needed! Now you can appreciate all the glory of the Belousov-Zhabotinsky reaction (and also Turing Patterns) from the comfort of your console window in a state of the art ASCII art rendering. Your life will never be the same!

BONUS: easy to play around with the parameters and colors/chars. Since version 0.5 supports n-fold symmetrical grid ('cos why not).

Both the belousov-zhabotinsky reaction and turing patterns are classical examples of non-linear dynamics in chemical systems(or reaction-diffusion systems). Their dynamics can by described by simple systems of non-linear equations:

BZ Equations:

TP Equations:

WIP

The oscillatory behavior is only possible because those systems are far from thermodynamical equilibrium -- so there's no violation of the 2nd law. In the real word the oscillation will slowly die out due to dissipation of entropy.

You can learn more about the belousov-zhabotinsky reaction here:

https://en.wikipedia.org/wiki/Belousov-Zhabotinsky_reaction

Dynamics and Chaos - Steven H. Strogatz

Chaotic Dynamics, an indroduction - G. L. Baker and J. P. Gollub

Inspired by the following blog posts:

https://scipython.com/blog/simulating-the-belousov-zhabotinsky-reaction/

http://www.degeneratestate.org/posts/2017/May/05/turing-patterns/

Installation

No python 2 support

Needs numpy and scipy

You can pip install the python module with the following command

pip install --user belousov-zhabotinsky

Usage

$ belousov-zhabotinsky

Check options with: $ belousov-zhabotinsky --help

You can exit the program by pressing any key, but the Ctrl key may cause your terminal window to bug

Future

Update README.md and add a math overview

Write tests

Make it faster

Implement a screen saver

My First GitHub project; HOORAY!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

belousov-zhabotinsky-0.6.1.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

belousov_zhabotinsky-0.6.1-py3-none-any.whl (17.9 kB view details)

Uploaded Python 3

File details

Details for the file belousov-zhabotinsky-0.6.1.tar.gz.

File metadata

  • Download URL: belousov-zhabotinsky-0.6.1.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.6.8

File hashes

Hashes for belousov-zhabotinsky-0.6.1.tar.gz
Algorithm Hash digest
SHA256 909f897f088bd712739119c86aef89211b4fc1de2d181ef9b71e2dcc2ddafb96
MD5 929021c2133b16b2b98624030e4993bc
BLAKE2b-256 d8fb6fcdc83709e39f908e6f0a262a36fdaa6960c0f9484456fbbb6fc131bbd5

See more details on using hashes here.

File details

Details for the file belousov_zhabotinsky-0.6.1-py3-none-any.whl.

File metadata

  • Download URL: belousov_zhabotinsky-0.6.1-py3-none-any.whl
  • Upload date:
  • Size: 17.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.6.8

File hashes

Hashes for belousov_zhabotinsky-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 572c650816869575238006096c26616bfeea07c15979f706d46c5af050ccb959
MD5 0154b98ab959ba38c8e6b61449ca07db
BLAKE2b-256 2e9e8ed2b2ed9362134fd14c453e1f44ac02c84519f0f3ff5073e57dd306f34d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page