Skip to content
Snippets Groups Projects
README.md 1.4 KiB
Newer Older
# Pydynamo
Pydynamo is a module to define, run and analyse system dynamics.

BAUCHER Achille's avatar
BAUCHER Achille committed
It was originally created to run the World3 model [2], written in DYNAMO language [1]. Included in the module are functions to convert DYNAMO code to pydynamo syntax. All scenarios of *Limits to Growth*, updated with 2003 version, are shown in [LimitsToGrowth03](./examples/LimitsToGrowth03.ipynb).
BAUCHER Achille's avatar
BAUCHER Achille committed
Documentation about the World models is in <https://abaucher.gitlabpages.inria.fr/pydynamo/> !
BAUCHER Achille's avatar
BAUCHER Achille committed

# Installation
- clone this repository and got to folder
- python -m pip install -r requirements.txt
- you can import pydynamo
BAUCHER Achille's avatar
BAUCHER Achille committed
# Note
_This is a beta version and all documentation and commands may not be complete or updated_

abaucher's avatar
abaucher committed
# Usage (see [BTmodel](./examples/BTmodel.ipynb) for example)
- Define the system equations in a function or file with pydynamo syntax
- Get a System object from this function or file
- Run, change parameters, re-run, plot


# Author
Achille BAUCHER for my internship at the LIG-lab. I used some functions from pyworld3 [3], and nice explanations by it's author Charles Vanwynsberghe.

# References
- [1] How DYNAMO  works: <https://archive.org/details/dynamousersmanua0000pugh/>
  - Some additional explanations about DYNAMO language are in [dynamo_doc](./dynamo_doc.md)
- [2] Book describing the world3 model: <https://archive.org/details/dynamicsofgrowth0000unse/>
abaucher's avatar
abaucher committed
- [3] Pyworld3: <https://github.com/cvanwynsberghe/pyworld3>