Awesome
Lorenz attractor on Golem network
The Lorenz Equations are a system of three coupled, first-order, nonlinear differential equations which describe the trajectory of a particle through time. The system was originally derived by Lorenz as a model of atmospheric convection, but the deceptive simplicity of the equations have made them an often-used example in fields beyond atmospheric physics [1].
Tutorial (Youtube)
Prerequisites
Install yagna
$ sh curl -sSf https://join.golem.network/as-requestor | bash -
Install ffmpeg (required for converting png files to gif animation)
$ sudo apt-get install ffmpeg
Install python requirements
$ # Using python3.6+
$ source ~/your/virtual/env
$ pip install -r requirements.txt
Build using docker
$ docker build -t golem-lorenza:latest
Build/push Golem vm
$ gvmkit-build golem-lorenz:latest
$ gvmkit-build golem-lorenz:latest --push
Run yagna daemon
$ yagna service run
Run Lorenz attractor on Golem!
$ yagna app-key create requestor
$ yagna payment init -r
$ export YAGNA_APPKEY=<your-key>
$ python main.py
usage: main.py [-h] [--output_dir OUTPUT_DIR] [--time_delta TIME_DELTA] [--duration DURATION] [--num_trajectories NUM_TRAJECTORIES]
Lorenz attractor simulation on Golem network
optional arguments:
-h, --help show this help message and exit
--output_dir OUTPUT_DIR, -o OUTPUT_DIR
Output directory
--time_delta TIME_DELTA, -l TIME_DELTA
Time delta for changes
--duration DURATION, -d DURATION
Duration (seconds)
--num_trajectories NUM_TRAJECTORIES, -m NUM_TRAJECTORIES
Number of trajectories
Watch full steps on Youtube!
Refs
[1] https://jakevdp.github.io/blog/2013/02/16/animating-the-lorentz-system-in-3d.