Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hhio618/golem-lorenz-attractor
Simulating Lorenz attractor on Golem.network
https://github.com/hhio618/golem-lorenz-attractor
lorenz-attractor scipy simulation
Last synced: 3 months ago
JSON representation
Simulating Lorenz attractor on Golem.network
- Host: GitHub
- URL: https://github.com/hhio618/golem-lorenz-attractor
- Owner: hhio618
- License: gpl-3.0
- Created: 2020-10-24T19:58:54.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2020-11-06T09:53:44.000Z (about 4 years ago)
- Last Synced: 2024-06-11T19:32:27.259Z (5 months ago)
- Topics: lorenz-attractor, scipy, simulation
- Language: Python
- Homepage:
- Size: 13.6 MB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-golem - Golem Lorenz-attractor - A system of three coupled, first-order, nonlinear differential equations which describe the trajectory of a particle through time. (Archive / Apps)
README
# Lorenz attractor on Golem network
![gif animation](./output.gif?raw=true)
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]](#refs).
## Tutorial (Youtube)
[![Lorenz attractor on Golem network](https://img.youtube.com/vi/SPCUOPL6gqs/0.jpg)](https://youtu.be/SPCUOPL6gqs "Lorenz attractor on Golem network")
## Prerequisites
### Install yagna
```$ sh curl -sSf https://join.golem.network/as-requestor | bash -```
### Install ffmpeg (required for converting png files to gif animation)
```bash
$ sudo apt-get install ffmpeg
```
### Install python requirements
```sh
$ # Using python3.6+
$ source ~/your/virtual/env
$ pip install -r requirements.txt
```
### Build using docker
```sh
$ docker build -t golem-lorenza:latest
```
### Build/push Golem vm
```sh
$ gvmkit-build golem-lorenz:latest
$ gvmkit-build golem-lorenz:latest --push
```
### Run yagna daemon
```sh
$ yagna service run
```
### Run Lorenz attractor on Golem!
```sh
$ yagna app-key create requestor
$ yagna payment init -r
$ export YAGNA_APPKEY=
$ 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](https://youtu.be/SPCUOPL6gqs)!
### Refs
[1] https://jakevdp.github.io/blog/2013/02/16/animating-the-lorentz-system-in-3d.