SimPy Homepage

SimPy Overview
Downloads
Documentation
SimPy Recipes
Examples
HowTo's
Support
SimPy lab
Status and Plans
SimPy book

Welcome to the home page for SimPy. Take a look at What's New in our web.

SimPy (= Simulation in Python) is an object-oriented, process-based discrete-event simulation language based on standard Python. It is released under the GNU Lesser GPL (LGPL) license, starting with version 1.5.1 (previous versions were released under GPL). It provides the modeler with components of a simulation model including processes, for active components like customers, messages, and vehicles, and resources, for passive components that form limited capacity congestion points like servers, checkout counters, and tunnels. It also provides monitor variables to aid in gathering statistics. Random variates are provided by the standard Python random module.

The latest production release of SimPy is version 2.0.1 (April 2009).

Many users claim that SimPy is one of the cleanest, easiest to use discrete event simulation packages!

SimPy comes with data collection capabilities, GUI and plotting packages. It can be easily interfaced to other Python packages for plotting, statistics, GUI, spreadsheets, data bases etc.

There is a SimPy wiki at http://www.mcs.vuw.ac.nz/cgi-bin/wiki/SimPy where you can publish your input/questions/issues related to SimPy and read what others are doing.

Another important communication channel for the SimPy user community is the SimPy User Group mailing list to which you can subscribe at http://lists.sourceforge.net/lists/listinfo/simpy-users.

A list for SimPy developers only is the simpy-developers list. We are always looking for more developers and code reviewers!

The public simpy-checkins mailing list is the list for code reviewers. It shows all additions to and changes in the SimPy code- and documentation CVS repository on SourceForge. You can subscribe at  http://lists.sourceforge.net/lists/listinfo/simpy-checkins.

horizontal rule

 
  search the web    search this site

What's New

September 2009

Visit the new SimPy Recipes library! You can learn new, elegant ways of coding SimPy models with these recipes.

All SimPy users are invited to share their expertise by submitting recipes. You all have something to contribute!

September 2009

Do you speak Java? Use SimPy with Java by running Jython! If you download and install Jython, the Java implementation of Python, you can use all of SimPy's simulation capabilities and models unchanged in a Java environment. The only exceptions are models using the SimPy libraries based on Tkinter (i.e. SimGUI and SimPlot). Tkinter is not supported by Jython.

You can use all of your favourite Java libraries with your SimPy models. Python, Java and SimPy, what a powerful brew!

July 2009

Learn SimPy tricks and application solutions from other users!  If you are not subscribed to the SimPy User Group mailing list, you are missing out on a great opportunity to learn from other SimPy users! Did you know

bulletthat important communications protocol simulation work is being done with SimPy?,
bullethow to program a state machine with SimPy?,
bulletthat an alternative financial currency network is being modeled with SimPy?

You can find these and many other gems in the SimPy Users List message archive.

April 8, 2009

SimPy 2.0.1 has been released. It is a bug-fix release of 2.0 which repairs errors in SimPy libraries, documentation and models. Download from SourceForge or from the Python Package Index.

January 29, 2009

SimPy 2.0 has been released and is available for download from SourceForge.net. This exciting new version is a must-have for any SimPy user. It is fully backward compatible, yet it brings significant changes and additions:

bullet

New Object Oriented API

In addition to its existing Application Programming Interface (API), SimPy now also has an object oriented API.
 
The additional API

- allows running SimPy in parallel on multiple processors or multi-core CPUs, using Parallel Python.
- supports better structuring of SimPy programs,
- allows easy extension of model classes by sub-classing, great for developing application libraries,
- allows sub classing of classes Simulation/SimulationTrace/SimulationStep/SimulationRT, and

- reduces the total amount of SimPy code, thereby making it easier to maintain.

 

SimPy 2.0 has been primarily developed by Stefan Scherfke and Ontje Lünsdorf, starting from SimPy 1.9. Their work has resulted in a most elegant combination of the object oriented API with the existing API, maintaining full backward compatibility.

bullet

Debugging with GUI

A new debugging and teaching tool has been added. With the SimulationGUIDebug library, SimPy now supports the user-driven event stepping through models. Windows show the event list and the status of Process and Resource instances.

This powerful tool has been provided by Brian Jacobs, Kip Nicol and Logan Rockmore, a group of senior students of Professor Norm Matloff at U. of California at Davis.

bullet

Extended and reformatted ocumentation

SimPy's documentation has been expanded, restructured and processed by the Sphinx documentation generation tool. This has generated one coherent, well structured HTML document which can be easily browsed. A search capability is included.
 

June 2008

Learning and teaching simulation with SimPy has gotten a lot easier with the publication of an online book by Professor Norm Matloff (U. of California, Davis, U.S.):

"A Discrete-Event Simulation Course Based on the SimPy Language"

This outstanding book has been evolved by Prof. Matloff for his SimPy course. It covers:

bullet

introduction to simulation

bullet

review of discrete probability

bullet

review of continuous probability

bullet

introduction to DES and SimPy

bullet

advanced SimPy features

bullet

statistical inference on simulation output

bullet

random number generation

bullet

SimPy internals

Back to Top

horizontal rule

Get SimPy Simulation Package at SourceForge.net. Fast, secure and Free Open Source software downloads ©Copyright 2004, 2005, 2006, 2007, 2008, 2009 SimPy Developer Team.
For problems or questions regarding this web contact SimPy webmaster.
Last updated: 2009-09-07.