The systems biology simulation core algorithm
- Equal contributors
1 Center for Bioinformatics Tuebingen (ZBIT), University of Tuebingen, Tübingen, Germany
2 Graduate School of Science and Technology, Keio University, Yokohama, Japan
3 Department of Stem Cell and Regenerative Biology, Harvard University, Cambridge, MA, USA
4 SynthSys Edinburgh, CH Waddington Building, University of Edinburgh, Edinburgh EH9 3JD, UK
5 European Bioinformatics Institute, Wellcome Trust Genome Campus, Hinxton, Cambridge, UK
6 Babraham Institute, Babraham, Cambridge, UK
7 Present address: Natural and Medical Sciences Institute at the University of Tuebingen Reutlingen, Germany
8 Present address: University of California, San Diego, 417 Powell-Focht Bioengineering Hall 9500, Gilman Drive, La Jolla, CA 92093-0412, USA
BMC Systems Biology 2013, 7:55 doi:10.1186/1752-0509-7-55Published: 5 July 2013
With the increasing availability of high dimensional time course data for metabolites, genes, and fluxes, the mathematical description of dynamical systems has become an essential aspect of research in systems biology. Models are often encoded in formats such as SBML, whose structure is very complex and difficult to evaluate due to many special cases.
This article describes an efficient algorithm to solve SBML models that are interpreted in terms of ordinary differential equations. We begin our consideration with a formal representation of the mathematical form of the models and explain all parts of the algorithm in detail, including several preprocessing steps. We provide a flexible reference implementation as part of the Systems Biology Simulation Core Library, a community-driven project providing a large collection of numerical solvers and a sophisticated interface hierarchy for the definition of custom differential equation systems. To demonstrate the capabilities of the new algorithm, it has been tested with the entire SBML Test Suite and all models of BioModels Database.
The formal description of the mathematics behind the SBML format facilitates the implementation of the algorithm within specifically tailored programs. The reference implementation can be used as a simulation backend for Java™-based programs. Source code, binaries, and documentation can be freely obtained under the terms of the LGPL version 3 from http://simulation-core.sourceforge.net webcite. Feature requests, bug reports, contributions, or any further discussion can be directed to the mailing list email@example.com.