This is a simulation calculating the Mandelbrot set. Number crunching code is written in C++, leveraging OpenMP and SSE/AVX instructions for high performance. This is then called in Python via Cython and visualized using pyqtgraph.
You need python 3.x with the following packages:
Cython
numpy
PyQt5
pyqtgraph
I suggest installing virtualenv & virtualenvwrapper, so you don't clutter your system python installation with additional packages.
Clone the git repository
git clone [email protected]:yboetz/mandelbrot.git
Then install the required python packages (best in your virtualenv)
cd mandelbrot
pip install -r requirements.txt
Compile the C++ code with
make build
Finally start the widget
python src/main.py
Basic controls:
- W/A/S/D - move around
- E - zoom in
- Q - zoom out
- C - set number of color steps
- I - set number of iterations to calculate
- R - recenter and zoom out
- Esc - quit app