Home / WPyCX-0.3
Name Modified Size InfoDownloads / Week
Parent folder
experiments 2013-09-02
net-randomwalk.py 2013-09-02 950 Bytes
README.txt 2013-09-02 4.5 kB
realtime-simulation-template.py 2013-09-02 2.1 kB
misc-fileio-csv.py 2013-09-02 605 Bytes
misc-fileio.py 2013-09-02 503 Bytes
ds-lotka-volterra.py 2013-09-02 792 Bytes
ds-logistic.py 2013-09-02 417 Bytes
ds-euler-forward-method.py 2013-09-02 426 Bytes
ds-cobwebplot.py 2013-09-02 790 Bytes
ds-bifurcationdiagram.py 2013-09-02 697 Bytes
net-synchronization.py 2013-09-02 1.8 kB
net-voter.py 2013-09-02 1.0 kB
pycxsimulator.py 2013-09-02 11.1 kB
net-epidemics-adaptive.py 2013-09-02 2.3 kB
net-epidemics-parametersweep.py 2013-09-02 2.8 kB
net-epidemics.py 2013-09-02 2.1 kB
net-majority.py 2013-09-02 1.5 kB
net-networkgrowth.py 2013-09-02 1.7 kB
net-networkxdemo1.py 2013-09-02 3.0 kB
net-networkxdemo2.py 2013-09-02 1.6 kB
ca-rumor.py 2013-09-02 1.6 kB
ca-scheling.py 2013-09-02 3.6 kB
ca-turing.py 2013-09-02 1.7 kB
LICENSE.txt 2013-09-02 2.1 kB
net-cascade-of-failure.py 2013-09-02 1.8 kB
abm-predatorprey-withplot.py 2013-09-02 4.0 kB
abm-randomwalk.py 2013-09-02 1.6 kB
ca-droplet.py 2013-09-02 1.8 kB
ca-excitablemedia.py 2013-09-02 1.7 kB
ca-forestfire.py 2013-09-02 2.3 kB
ca-GoL.py 2013-09-02 2.3 kB
ca-hostpathogen.py 2013-09-02 1.9 kB
ca-majority.py 2013-09-02 1.7 kB
abm-ants-pheromone.py 2013-09-02 2.9 kB
abm-ants.py 2013-09-02 2.6 kB
abm-DLA.py 2013-09-02 2.1 kB
abm-predatorprey.py 2013-09-02 3.6 kB
WPyCX-0.3.zip 2013-09-02 43.5 kB
Totals: 39 Items   123.4 kB 0
######################################################################
######################################################################
##
## WPyCX 0.3 
## [PyCX 0.3 port to Python 3 plus "experiments" module]
## Complex Systems Simulation Sample Code Repository
##
## 2008-2013 (c) Copyright by Hiroki Sayama
## 2012 (c) Copyright by Chun Wong & Hiroki Sayama
## 2013 (c) Copyright by Przemyslaw Szufel & Bogumil Kaminski
##          Porting to Python 3 dialect (Python 3.3)
##			Experiments module
##          Extensions to GUI module, some revisions
## All rights reserved
##
## See LICENSE.txt for more details of license information.
##
## Send any correspondences to:
##   Hiroki Sayama, D.Sc.
##   Associate Professor, Departments of Bioengineering &
##   Systems Science and Industrial Engineering
##   Binghamton University, State University of New York
##   P.O. Box 6000, Binghamton, NY 13902-6000, USA
##   Tel: +1-607-777-4439  Fax: +1-607-777-5780
##   Email: sayama@binghamton.edu
##
## http://pycx.sf.net/
##
######################################################################
######################################################################


1. What is PyCX?

The PyCX Project aims to develop an online repository of simple,
crude, yet easy-to-understand Python sample codes for dynamic complex
systems simulations, including iterative maps, cellular automata,
dynamical networks and agent-based models. You can run, read and
modify any of its codes to learn the basics of complex systems
simulation in Python.

The target audiences of PyCX are researchers and students who are
interested in developing their own complex systems simulation software
using a general-purpose programming language but do not have much
experience in computer programming.

The core philosophy of PyCX is therefore placed on the simplicity,
readability, generalizability and pedagogical values of simulation
codes. This is often achieved even at the cost of computational speed,
efficiency or maintainability. For example, PyCX does not use
object-oriented programming paradigms, it does use global variables
frequently, and so on. These choices were intentionally made based on
our experience in teaching complex systems modeling and simulation to
non-computer scientists.

For more information, please see the following open-access article:
Sayama, H. (2013) PyCX: A Python-based simulation code repository for
complex systems education. Complex Adaptive Systems Modeling 1:2.
http://www.casmodeling.com/content/1/1/2

2. What's new in version PyCX 0.3?

* Przemyslaw Szufel & Bogumil Kaminski at the Warsaw School of
  Economics made a substantial improvement to the "pycxsimulator.py"
  GUI module, implementing interactive control of model and
  visualization parameters. This improvement is fully backward
  compatible, so you can run old PyCX 0.2 simulator codes with this
  new GUI module.

* Several new sample simulation codes were added, including:

    Contributions by Przemyslaw Szufel & Bogumil Kaminski:
    - "ca-schelling.py" (Tom Schelling's segregation model)
    - "ca-rumor.py" (Spread of rumor)
    The above two codes show how to use the new interactive parameter
    setting feature.

    Other additions of dynamical network models:
    - "net-randomwalk.py" (Random walk on a network)
    - "net-voter.py" (Voter model of opinion formation on a network)
    - "net-epidemics-adaptive.py" (Epidemics on a network, with adaptive link cutting)
    - "misc-fileio-csv.py" (Example of how to read/write CSV files)


3. What are the the differences between PyCX 0.3 and WPyCX 0.3 ?
(i) WPyCX 0.3 is a Python 3 dialect port of PyCX 0.3 (currently Python 3.3)
    developed by Przemyslaw Szufel & Bogumil Kaminski
    at Warsaw School of Economics
(ii) The code contains an extension module for simulation experiments 
    (see the experiments folder)

4. How to use it?

(i) Install Python 3.3, NumPy, SciPy, matplotlib and NetworkX.
Installers are available from the following websites:
  http://python.org/
  http://scipy.org/
  http://matplotlib.org/
  http://networkx.github.io/

(ii) Choose a WPyCX sample code of your interest.

(iii) Run it. This should be just double clicking the file in most cases.

(iv) Read the code to learn how the simulation was implemented.

(v) Change the code as you like.


Questions? Comments? Send them to sayama@binghamton.edu.
Source: README.txt, updated 2013-09-02