Systems biology relies heavily on building mathematical models to help understand and make predictions of biological processes. Specialized software to assist in building models has been developed since the arrival of the first digital computers. The following list gives the currently supported software applications available to researchers.
The vast majority of modern systems biology modeling software support SBML, which is the de facto standard for exchanging models of biological cellular processes. Some tools also support CellML, a standard used for representing physiological processes. The advantage of using standard formats is that even though a particular software application may eventually become unsupported and even unusable, the models developed by that application can be easily transferred to more modern equivalents. This allows scientific research to be reproducible long after the original publication of the work.
To obtain more information about a particular tool, click on the name of the tool. This will direct you either to a peer-reviewed publication or, in some rare cases, to a dedicated Wikipedia page.
Actively supported open-source software applications
General information
When an entry in the SBML column states "Yes, but only for reactions.", it means that the tool only supports the reaction component of SBML. For example, rules, events, etc. are not supported.
Name Description/Notability OSLicenseSiteSBML Support iBioSim iBioSim is a computer-aided design (CAD) tool for the modeling, analysis, and design of genetic circuits.multiplatform (Java/C++)Apache License Yes CompuCell3D GUI/Scripting tool for building and simulating multicellular models.multiplatform (C++/Python)MIT Yes, but only for reactions. COPASI GUI tool for analyzing and simulating SBML models.multiplatform (C++)Artistic License Yes Cytosim Spatial simulator for flexible cytoskeletal filaments and motor proteins Mac, Linux, Cygwin (C++) GPL3 Not applicable Libroadrunner High-performance software library for simulation and analysis of SBML modelsmultiplatform (C/C++)Apache License Yes massPy Simulation tool that can work with COBRApymultiplatform (Python)MIT Yes MCell GUI tool for particle-based spatial stochastic simulation with individual molecules multiplatform MIT and GPLv2 Not applicableOpenCORA cross-platform modelling environment, which is aimed at organizing, editing, simulating, and analysing CellML files on Windows, Linux and macOS.multiplatform (C++/Python)GPLv3Uses CellML PhysiBoSS A specialized form of the PhysiCell agent-based modeling platform that directly integrates Boolean signaling networks into cell Agentsmultiplatform (C++)BSD-3 Yes, but only for reactions PhysiCell A agent-based modeling framework for multicellular systems biology.multiplatform (C++)BSD-3 Yes, but only for reactions PolyHoop Mesh-based program for the dynamic simulation of cellular tissue mechanics in 2D with topological transitionsmultiplatform (C++)BSD-3 Not applicable PolyMorph Program for the dynamic simulation of cellular tissue mechanics in 2D coupled to chemical signalingmultiplatform (C++)BSD-3 Not applicable PySCeS Python tool for modeling and analyzing SBML modelsmultiplatform (Python)BSD-3 Yes pySB Python-based platform with specialization in rule-based models.multiplatform (Python)BSD-3 Partial ReaDDy Particle-based spatial simulator with intermolecular potentials Linux and Mac Custom Not applicable SBSCL Java library with efficient and exhaustive support for SBMLmultiplatform (Java)LGPL Yes SBW (software) A distributed workbench that includes many modeling toolsmultiplatform (C/C++)BSD-3 Yes SimuCell3D Mesh-based modeling framework for the dynamic simulation of cellular tissue mechanics in 3D with polarized cellsmultiplatform (C++)BSD-3 Not applicable Smoldyn Particle-based simulator for spatial stochastic simulations with individual molecules multiplatform (C/C++/Python)LGPLNot applicable Spatiocyte Spatial modeling software that uses a fine lattice with up to one molecule per site multiplatform Unknown Not applicable SpringSaLaD Particle-based spatial simulator in which molecules are spheres that are linked by springs multiplatform Unknown Not applicable STEPSStochastic reaction-diffusion and membrane potential solver on distributed meshesmultiplatform (C++/Python)GPLv2Partial Tellurium (software) Simulation environment, that packages multiple libraries into one platform.multiplatform (Python)Apache License Yes URDME Stochastic reaction-diffusion simulation on unstructured meshes MatLab on Mac, Linux GPL3 Not applicable VCell Comprehensive modeling platform for non-spatial, spatial, deterministic and stochastic simulations, including both reaction networks and reaction rules. multiplatform (Java)MIT Yes
Specialist Tools
The following table lists specialist tools that cannot be grouped with the modeling tools.
Name Description/Notability OSLicenseSite PySCeSToolbox PySCeSToolbox is a set of metabolic model analysis tools. Among other features, it can be used to generate the control analysis equations that relate the elasticities to the control coefficients. The package is cross-platform and requires PySCeS and Maxima to operate. multiplatform (C++/Python)BSD-3 MassChargeCuration (MCC) MCC is a Python tool for automatically curating mass and charge assignments for metabolites in metabolic network modelling that requires Microsoft Research's Z3 to run.multiplatform (Python)MIT License
Feature Tables
Supported modeling paradigms
Name ODE Constraint based Stochastic Logical Agent based Spatial (particle) Spatial (continuous) iBioSim Yes No Yes No Limited No No CompuCell3D Yes No No No Yes No Yes COPASI Yes No Yes No No No No Cytosim No No Yes No ? Yes ? libRoadRunner Yes No Yes No No No No massPy Uses libRoadRunner Uses COBRApy No No No No MCell No No Yes No No Yes No OpenCOR Yes No No No No No No PhysiBoSS PhysiCell Uses libRoadRunner No No No Yes ? Yes PySCeS Yes No ? No No No No pySB Yes No No No No No No ReaDDy SBSCL Yes Yes Yes No No No No SBW Yes No Yes No No No No Smoldyn No No Yes No No Yes No Spatiocyte SpringSaLaD STEPS Tellurium (software) Uses libRoadRunner URDME VCell Yes No ? No No No Single Cell
Differential equation specific features
Name Non-stiff solver Stiff solver Steady-state solver Steady-state sensitivities Time-dependent sensitivities Bifurcation Analysis iBioSim Yes Yes No No ? No CompuCell3D Uses libRoadRunner NA COPASI Yes Yes Yes Yes ? Limited libRoadRunner Yes Yes Yes Yes Yes via AUTO2000 plugin masspy Uses libRoadRunner OpenCOR Yes Yes ? ? ? No PhysiBoSS PhysiCell Uses libRoadRunner PySCeS Yes Yes Yes Yes ? Limited+ pySB Yes No No No No No SBSCL Yes Yes Yes SBW Uses C# edition of roadrunner Yes Tellurium (software) Uses libRoadRunner VCell Yes Yes No No No No
File format support and interface type
Name Import Export Primary Interface Network visualization (editing) iBioSim SBML SBML GUI Yes (Yes) CompuCell3D Native XML specification format and SBML Native XML GUI/Python scripting No COPASI Native XML specification format and SBML Native XML and SBML GUI Yes (No) libRoadRunner SBML SBML Python scripting No masspy SBML SBML Python scripting No
Advanced features (where applicable)
Name Stoichiometry matrix Reduced stoich matrix Conserved moiety analysis Jacobian MCA COPASI Yes Yes Yes Yes Yes libRoadRunner Yes Yes Yes Yes Yes masspy via libRoadRunner PySCeS Yes Yes Yes Yes Yes VCell ? ? ? ? Limited
Other features
Name Parameter Estimation DAE support Units support iBioSim No ? ? ComputeCell3D NA NA ? COPASI Yes Limited Yes libRoadRunner via Python packages Limited Yes masspy via Python packages Limited Yes SBSCL No Yes Yes
Particle-based simulators
Particle based simulators treat each molecule of interest as an individual particle in continuous space, simulating molecular diffusion, molecule-membrane interactions and chemical reactions.
Comparison of particle-based simulators
The following list compares the features for several particle-based simulators. This table is edited from a version that was originally published in the Encyclopedia of Computational Neuroscience. System boundaries codes: R = reflecting, A = absorbing, T = transmitting, P = periodic, and I = interacting. * Algorithm is exact but software produced incorrect results at the time of original table compilation. † These benchmark run times are not comparable with others due to differing levels of detail.
Feature MCell Smoldyn eGFRD SpringSaLaD ReaDDy Time steps ~1 us ns to ms event-based ~10 ns ~0.1 ns to us Molecules points points, spheres spheres multi-spheres multi-spheres Dimensions 2,3 1,2,3 3 3 3 System boundaries R,A,P,T R,A,P,T P R P,I Surfaces triangle mesh many primitives - 1 flat surface plane, sphere Surface molecules 1/tile, 2 states unlimited, 4 states - unlimited, 3 states - Excluded volume - excellent exact good excellent Multimers states only rule-based model - explicit explicit Allostery - yes - yes - Reaction accuracy very good excellent exact* excellent excellent Dissociation products stochastic fixed separation adjacent adjacent adjacent Molecule-surface interactions good excellent - to sites only potentials Long-range interactions - yes - - yes Benchmark run time 67 s 22 s 13 days† 9.1 months† 13 minutes Distribution executable executable self-compile Java file self-compile User interface GUI, text text text GUI Python script Graphical output excellent good partial support partial support good Library interface Python C/C++, Python - - Python References
Model calibration software
Model calibration is a key activity when developing systems biology models. This table highlights some of the current model calibration tools available to systems biology modelers. The first table list tools that are SBML compatible.
+ToolPEtab Compatible P1 P2pyPESTOYesNANA COPASI Yes NA NA
PEtab is a community standard for specifying model calibration runs.
Legacy open-source software applications
The following list some very early software for modeling biochemical systems that were developed pre-1980s There are listed for historical interest.
Name Description/Notability Language Terminus ante quemBased on earliest publication date BIOSIM The first ever recorded digital simulator of biochemical networks (by David Garfinkel) FORTRAN IV 1968 KDF 9 First simulator to support MCA. Developed by the late Jim Burns in Edinburgh Early form of FORTRAN 1968 METASIM Early simulator by Park and Wright PL/1 1973
The following list shows some of the software modeling applications that were developed in the 1980s and 1990s. There are listed for historical interest.
Name Description/Notability Language SBML Support Terminus ante quemBased on earliest publication dateCORFirst public CellML-based environment.Object PascalUses CellML2010 DBsolve Early GUI based simulation platform. C/C++ No 1999 E-Cell One of the earliest attempts at a whole-cell modeling platform. C/C++ No 1999 Gepasi First GUI application that supported metabolic control analysis and parameter estimation. C/C++ Yes 1993 Jarnac First GUI based application to support scripting in systems biology modeling. Object Pascal Yes 2000 JSim First Java-based systems biology modeling platform Java Yes 2003 MetaMod One of the first PC-based systems biology simulators BBC Micro No 1986 MetaModel Early PC-based systems biology simulator Turbo Pascal 5.0 No 1991 MIST GUI based simulator Borland Pascal 7.0 No 1995 SCAMP First application to support metabolic control analysis and simulation on a PC Pascal, later in C No 1985 (Thesis)
References