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
Hashes for belousov-zhabotinsky-0.6.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 909f897f088bd712739119c86aef89211b4fc1de2d181ef9b71e2dcc2ddafb96 |
|
MD5 | 929021c2133b16b2b98624030e4993bc |
|
BLAKE2b-256 | d8fb6fcdc83709e39f908e6f0a262a36fdaa6960c0f9484456fbbb6fc131bbd5 |
Hashes for belousov_zhabotinsky-0.6.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 572c650816869575238006096c26616bfeea07c15979f706d46c5af050ccb959 |
|
MD5 | 0154b98ab959ba38c8e6b61449ca07db |
|
BLAKE2b-256 | 2e9e8ed2b2ed9362134fd14c453e1f44ac02c84519f0f3ff5073e57dd306f34d |