-
Notifications
You must be signed in to change notification settings - Fork 89
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
1198e8b
commit 8fbd549
Showing
41 changed files
with
1,057 additions
and
38 deletions.
There are no files selected for viewing
Binary file not shown.
Binary file not shown.
Binary file modified
BIN
+102 Bytes
(100%)
docs/_build/doctrees/development/development_index.doctree
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
Complementary Projects | ||
====================== | ||
|
||
The most valuable component for better integrating models with *basically anything else* is a standard language for communicating the structure of those models. That language is `XMILE <http://www.iseesystems.com/community/support/XMILE.aspx>`_. The draft specifications for this have been finalized and the standard should be approved in the next few months. | ||
|
||
A python library for analyzing system dynamics models called the `Exploratory Modeling and Analysis (EMA) Workbench <http://simulation.tbm.tudelft.nl/ema-workbench/contents.html>`_ is being developed by `Erik Pruyt <http://www.tbm.tudelft.nl/en/about-faculty/departments/multi-actor-systems/policy-analysis/people/erik-pruyt/>`_ and `Jan Kwakkel <https://github.com/quaquel>`_ at TU Delft. This package implements a variety of analysis methods that are unique to dynamic models, and could work very tightly with PySD. | ||
|
||
An excellent javascript library called `sd.js <https://github.com/bpowers/sd.js/tree/master>`_ created by Bobby Powers at `SDlabs <http://sdlabs.io/>`_ exists as a standalone SD engine, and provides a beautiful front end. This front end could be rendered as an iPython widget to facilitate display of SD models. | ||
|
||
The `Behavior Analysis and Testing Software(BATS) <http://www.ie.boun.edu.tr/labs/sesdyn/projects/bats/index.html>`_ delveloped by `Gönenç Yücel <http://www.ie.boun.edu.tr/people/pages/yucel.html>`_ includes a really neat method for categorizing behavior modes and exploring parameter space to determine the boundaries between them. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
PySD Development Pathway | ||
======================== | ||
|
||
The basic use case of PySD is for a user to import a fully developed SD model (created in Vensim, or Stella/iThink, etc.) into python; and then use third party tools to perform statistical analysis and inference, and to interface with external data. | ||
|
||
Current Features | ||
---------------- | ||
|
||
* Basic XMILE and Vensim parser, | ||
* Established library structure and data formats | ||
* Simulation using existing python integration tools | ||
* Basic demonstrations of integration with python Data Science functionality | ||
* Run-at-a-time parameter modification | ||
* Step-at-a-time parameter modification / time-variant exogenous inputs | ||
* Extended backends for storing parameters and output values | ||
* Demonstration of integration with Machine Learning/Monte Carlo/Statistical Methods | ||
* Python methods for programmatically manipulating SD model structure | ||
* Turn off and on 'traces' or records of the values of variables | ||
|
||
Possible Future features | ||
------------------------ | ||
|
||
* Complete parsers (including subscripting, etc) | ||
* Embed SD.js front end in iPython widget | ||
* XMILE display component parser | ||
* Customizations of external Data Science tools for dynamic systems | ||
* Incorporation of analysis tools specific to dynamic systems | ||
* Additional SD tools: checks for model units, value limits, etc. | ||
* Python methods for saving XMILE models | ||
* Hover over stock/flow elements to get things like units, descriptions, values, etc. | ||
* Output DataFrame including tags for units | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
PySD Design Philosophy | ||
====================== | ||
|
||
* Do as little as possible. | ||
* Anything that is not endemic to System Dynamics (such as plotting, integration, fitting, etc) should either be implemented using external tools, or omitted. | ||
* Stick to SD. Let other disciplines (ABM, Discrete Event Simulation, etc) create their own tools. | ||
* Use external model creation tools | ||
* Use the language of system dynamics. | ||
* Be simple to use. Let SD practitioners who haven't used python before understand the basics. | ||
* Take advantage of general python constructions and best practices. | ||
* Be simple to maintain. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.