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
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 909f897f088bd712739119c86aef89211b4fc1de2d181ef9b71e2dcc2ddafb96 |
|
MD5 | 929021c2133b16b2b98624030e4993bc |
|
BLAKE2b-256 | d8fb6fcdc83709e39f908e6f0a262a36fdaa6960c0f9484456fbbb6fc131bbd5 |
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 572c650816869575238006096c26616bfeea07c15979f706d46c5af050ccb959 |
|
MD5 | 0154b98ab959ba38c8e6b61449ca07db |
|
BLAKE2b-256 | 2e9e8ed2b2ed9362134fd14c453e1f44ac02c84519f0f3ff5073e57dd306f34d |