Simulating System Dynamics Models in Python

made-with-sphinx-doc DOI PyPI license conda package PyPI package PyPI status PyPI pyversions

This project is a simple library for running System Dynamics models in python, with the purpose of improving integration of Big Data and Machine Learning into the SD workflow.

PySD translates Vensim or XMILE model files into python modules, and provides methods to modify, simulate, and observe those translated models.

Additional Resources

PySD Cookbook

A cookbook of simple recipes for advanced data analytics using PySD is available at:

The cookbook includes models, sample data, and code in the form of ipython notebooks that demonstrate a variety of data integration and analysis tasks. These models can be executed on your local machine, and modified to suit your particular analysis requirements.


The code for this package is available at:

If you find a bug, or are interested in a particular feature, see reporting bugs.

If you are interested in contributing to the development of PySD, see the developer documentation listed above.


If you use PySD in any published work, consider citing the PySD Introductory Paper:

Houghton, James; Siegel, Michael. "Advanced data analytics for system dynamics models using PySD." *Proceedings of the 33rd International Conference of the System Dynamics Society.* 2015.

You can also cite the library using the DOI provided by Zenodo. It is recomendable to specify the used PySD version and its correspondent DOI. If you want to cite all versions you can use the generic DOI for PySD instead:



For additional help or consulting, contact or