From 9a6369fc64fc757c8e1a8ef7f3ac33a00c77a953 Mon Sep 17 00:00:00 2001 From: InCogNiTo124 Date: Thu, 27 Feb 2020 00:40:25 +0100 Subject: [PATCH] Improve README --- ChaosPlotterScreenshot.png | Bin 0 -> 61453 bytes README.md | 36 +++++++++++++++++++++++++++--------- setup.sh | 25 +++++++++++++++++++++++++ 3 files changed, 52 insertions(+), 9 deletions(-) create mode 100644 ChaosPlotterScreenshot.png create mode 100644 setup.sh diff --git a/ChaosPlotterScreenshot.png b/ChaosPlotterScreenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..d034bbc96fc9e8add86c6d3dca0754143576332a GIT binary patch literal 61453 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 literal 0 HcmV?d00001 diff --git a/README.md b/README.md index 0de48e9..40908b0 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,33 @@ # ChaosPlotter +![Screenshot](/ChaosPlotterScreenshot.png) Plot chaos using Python/Kivy ## What is it? -TODO, but google "Chaos theory" and "bifurcation" +It's a visualization of iterated maps. A starting population P is selected (by a vertical slider on the far left) and then run through a function (as selected in the upper left). The result is then feeded once again through the same function, over and over again. This is called *map iteration*. Sequential values are plotted in the graph in the upper right. +An interesting behaviour can be observed if the value of R (big central horizontal slide) is increased. At first, almost every^(1)^ starting population converges to a fixed number. By increasing the R slider even more, our iterated map starts to oscillate between 2 values. If R keeps getting bigger, we see the period 4, than 8, 16... and so on until it gets chaotic and starts to take any value from [0, 1] interval in a seemingly random fashion. +AND THEN, if R keeps increasing, from chaos emerges order. Our wild iterated map settles down to oscillations with period of 3. And then 6. And then 12. And then more chaos^(2)^, until R hits 4, where our maps starts to diverge. +If we plot the values that he map converges to as a function of R, we get a [bifurcation diagram](https://en.wikipedia.org/wiki/Bifurcation_diagram) (the big graph at the bottom). The bifurcation is a fancy word to say "it splits in two and looks like a fork". +- ^(1)^ This is true for all values in <0, 1>, and maybe some points inside +- ^(2)^ Actually, you can find periods of any length: 5, 13, 120497... you name it, it's there somewhere + +## How to use it? +1. Choose a function you wish to iterate. The first one usually gives the best results. +2. Observe the bifurcation diagram slowly appearing in front of you and be amazed. +3. Change the R with the big slider in the middle. Observe what happens with the population graph. The vertical line in the diagram shows where the population graph from above fits into the bifurcation diagram. Be more amazed. +4. Change the starting population: + 1. If you're in the "tame" zone, observe how the oscillating values don't change much with the starting population. + 2. If you're in the "chaotic" zone, observe how the small changes in the starting population appear to have a massive effect on a population dynamics. Also, try to find very different starting populations that have similar dynamics. Both exist :) and 0 and 1 don't count >:( +5. Try a new map and be amazed :D + ## How to run? -1. `git clone https://github.com/InCogNiTo124/ChaosPlotter && cd ChaosPlotter` -2. *(Optional but strongly recommended)* Build a virtualenv and activate it -3. `pip install kivy` -4. `garden install --app tickmarker graph` -5. *(Maybe some steps in between, such as installing Cython and building tickmarker manually)* -6. `python chaosplotter.py` -7. Enjoy! -### TODO: make build bash script +I've prepared a simple bash script to get you going: +```bash +git clone https://github.com/InCogNiTo124/ChaosPlotter.git && cd ChaosPlotter +. setup +``` +This script will build a virtual environment `venv`, install and initialize dependencies in it. If you wish to install dependencies globally, just call `setup` with `--no-venv`. **This is strongly discouraged**. +After setting this repo up, simply run: +```bash +python chaosplotter.py +``` diff --git a/setup.sh b/setup.sh new file mode 100644 index 0000000..f88963c --- /dev/null +++ b/setup.sh @@ -0,0 +1,25 @@ +#!/usr/bin/env bash +set -e +error() { + echo "Invoke this script with no arguments or '--no-venv' only." + exit 1 +} +if [ $# -gt 1 ]; then + error +fi + +if [[ $1 == "" ]]; then + command -v virtualenv >/dev/null 2>&1 || { echo >&2 "virtualenv is required but it's not installed. Aborting."; exit 1; } + virtualenv venv + source venv/bin/activate +elif [[ $1 != "--no-venv" ]]; then + error +fi + +pip3 install kivy Cython +garden install --app graph +garden install --app tickmarker +pushd libs/garden/garden.tickmarker +python setup.py build install +popd +echo -e "----------\nSUCCESS!\n"