PySCeS (the Python Simulator for Cellular Systems)

Category Cross-Omics>Agent-Based Modeling/Simulation/Tools

Abstract PySCeS (the Python Simulator for Cellular Systems) is an extendable toolkit for the analysis and investigation of cellular systems.

Computer modeling has become an integral tool in the analysis and understanding of the 'reaction networks' that underlie cellular processes.

As such, numerous software packages have been developed for simulating and analyzing such networks, each with its own advantages and disadvantages.

The need for a flexible, customizable and extensible 'simulation system' prompted the manufacturer to develop PySCeS, the Python Simulator for Cellular Systems.

PySCeS is open-source, multi-platform software. It is built on the programming language Python and makes use of the SciPy library of scientific tools for Python.

SciPy library --

SciPy (pronounced "Sigh Pie") is open-source software for mathematics, science, and engineering. The SciPy library depends on NumPy, which provides convenient and fast N-dimensional array manipulation.

The SciPy library is built to work with NumPy arrays, and provides many user-friendly and efficient numerical routines such as routines for numerical integration and optimization.

Together, they run on all popular operating systems, are quick to install, and are free of charge. NumPy and SciPy are easy to use, but advanced enough to be depended upon by some of the world's leading scientists and engineers.

PySCeS supports the following types of analysis: structural analysis including calculation of elementary modes, time-course simulation, solving for steady-state, control analysis, stability analysis and eigenvalue determination, data output in LATEX (see below...) and HyperText Markup Language (HTML) format, and model import and export in the Systems Biology Markup Language (SBML).

LaTeX --

LaTeX is a document markup language and document preparation system for the TeX typesetting program. Within the typesetting system, its name is styled as LaTeX.

LaTeX is most widely used by mathematicians, scientists, engineers, philosophers, economists and other scholars in academia and the commercial world, and other professionals.

Simulation results can be graphed with the interface to the matplotlib plotting library.

matplotlib plotting library --

matplotlib is a python 2D plotting library which produces publication quality figures in a variety of hardcopy formats and interactive environments across platforms.

matplotlib can be used in python scripts, the python and ipython shell (via MATLAB or Mathematica), web application servers, and six (6) graphical user interface (GUI) toolkits.

matplotlib tries to make easy things easy and hard things possible. You can generate plots, histograms, power spectra, bar charts, error-charts, scatter-plots, etc, with just a few lines of code.

One of PySCeS's particular strengths is its modular design that allows it to take full advantage of Python's ability to interface with numerical routines implemented in FORTRAN and C. Such routines can then be directly accessed from within PySCeS.

PySCeS provides a ‘variety of tools’ for the analysis of cellular systems --

1) Input via a text based model description language.

2) A structural analysis module.

3) Integrators for the simulation of a cellular system's evolution over time (LSODA).


The LSODA solver [a solver for ordinary differential equation (ODE) systems] was written in FORTRAN by Alan Hindmarsh and Linda Petzhold of Lawrence Livermore National Labs and is part of the ODEPACK collection of solvers. It is a very robust adaptive step-size solver that automatically switches to a BDF multi-step method if necessary.

4) Non-linear solvers that can be used to calculate systems steady state (HYBRD, NLEQ2).

5) A module for performing Metabolic Control Analysis (i.e. elasticities, flux and concentration control coefficients).

6) A bifurcation module for the study of systems which exhibit multiple (stable and unstable) steady states (PITCON).

PITCON - The Continuation Method --

PITCON is an implementation of the continuation method for systems of nonlinear equations. The program is designed for problems in which N variables are constrained by N-1 nonlinear equations.

Generally, there is an entire family of solutions to such a problem, which can be thought of as a curve in N-dimensional space.

Given one solution, PITCON attempts to determine the curve of solutions through that point, and to produce further solutions along the curve.

7) A variety of extra utilities such for performing parameter scans, data output and plotting.

8) SBML import and export capability.

9) PySCeS is developed as Open Source software distributed under a BSD style license.

PySCeS -- core process --

Models are initially described as PySCeS input files in a human readable model description language (MDL). The manufacturer implemented a MDL parser using David Beazley's PLY. Alternatively, PySCeS supports translation to and from the SBML, the de facto standard for model exchange.

Once a PySCeS model object has been instantiated with an input file, all model properties are represented by attributes. Specifically, the kinetic rate equations are represented by rate equation objects.

During the load process a stoichiometric analysis is automatically performed, thus generating the ordinary differential equations (ODEs) describing the system.

After translation into ODEs the system can be analyzed with a number of algorithms in terms of its time-dependent (LSODA, CVODE) and steady- state (HYBRD, NLEQ2, KINSOL) solutions.

PySCeS also allows higher level system properties to be analyzed using Metabolic Control Analysis, a theoretical framework for the study of the control and regulatory properties of a cellular reaction network at steady state.

The stability of the system can be evaluated by automatic computation of the eigenvalues of the Jacobian matrix.

PySCeS Documentation --

The manufacturer provides an extensive PySCeS User Guide (contains both the old Quick Reference and Input File Guides) that explains modeling, Parameter scanning, Plotting, etc. functions.

System Requirements



PySCeS is developed by the 'Triple-J Group for Molecular Cell Physiology' in order to model and understand the complex processes which make up the living cell.

Manufacturer Web Site PySCeS

Price Contact manufacturer.

G6G Abstract Number 20472

G6G Manufacturer Number 104097