IsoSim is an R toolbox dedicated to simulation and analysis of metabolic systems under stationary or dynamic conditions.
IsoSim is a highly versatile platform designed for integration of metabolomics, proteomics and isotopic data with kinetic, thermodynamic, regulatory and stoichiometric constraints.
IsoSim also implements ScalaFlux, a scalable 13C-fluxomics approach to quantify fluxes in metabolic subnetworks (see ScalaFlux publication for details).
The code is open-source, and available under a GPLv3 license. Additional information can be found in IsoSim and ScalaFlux publications.
- construction and analysis of stoichiometric and kinetic models of metabolic systems
- simulation of the dynamics of metabolite concentration and/or isotope propagation
- 13C-flux calculation under instationary and dynamic conditions (other isotopic tracers can also be used)
- 13C-flux calculation using the ScalaFlux approach (e.g. functions to fit the labeling dynamics of metabolites used as local label inputs, see the ScalaFlux publication for details on this approach)
- estimation of kinetic parameters of enzymes
- non linear sensitivity analysis (Monte Carlo) to determine the precision on estimated parameters
- parallelization to reduce calculation times on multicore platforms
R, a set of R development tools and additional R packages (nnls, numDeriv, Matrix, deSolve, stringr, RColorBrewer, pso, parallel) are required. This code was tested on Windows 7 and R 3.2, but should also run on Linux, MacOS and other platforms supporting R.
R can be downloaded online at http://cran.r-project.org/ and must be installed manually. You will also need a set of development tools. On Windows,
download and install Rtools (Rtools should also be in the PATH variable of your system, see Rtools documentation for details). On Mac, install the Xcode command line tools.
On Linux, install the R development package, usually called r-devel
or r-base-dev
.
-
To install all the packages required by IsoSim, run the following command in an R console:
> install.packages(c("nnls", "numDeriv", "Matrix", "deSolve", "stringr", "RColorBrewer", "pso", "parallel"))
Note: to analyse the network provided as example 1, you will also need the package vioplot, which can be installed with this command:
> install.packages("vioplot")
-
To verify that IsoSim works correctly on your system:
-
Go to IsoSim directory, e.g.:
$ cd /home/usr/isosim/isosim/
-
Open an R console:
$ R
-
Load IsoSim:
> source("isosim.R")
Note: A message will be displayed if some required packages are missing. In this case, follow the instructions to install the required package(s), then reload IsoSim.
-
Run the test function:
> isosim_test()
This function builds a test model (network shown in Figure 1A of IsoSim publication), simulates labeling kinetics, and recalculates some fluxes from this theoretical dataset. Most of the practical situations and features should be covered by these tests.
-
A folder test
containing all the results should be created in the working directory (here /home/usr/isosim/isosim/test/
), and no error should be displayed.
If an error is displayed at the compilation step, check that the set of R development tools is correctly installed.
Please refers to IsoSim code or submit a new issue to our GitHub issue tracker for other problems.
We have implemented the ScalaFlux approach in IsoSim to quantity fluxes in metabolic subnetworks.
A documentation describing a typical ScalaFlux workflow
using IsoSim is provided in doc/scalaflux_workflow.md
.
We also provide the code to analyze two metabolic systems:
-
a theoretical network (shown in Figure 1A of ScalaFlux publication)
-
the yeast prenyl pyrophosphate pathway (shown in Figure 5A of ScalaFlux publication)
The code used to perform the calculations detailed in the publication is provided in the models
folder of this repository. To run the calculations, download
the current repository and follow the instructions provided below.
Note: folders isosim
and models
should be in the same directory.
Note: this script also requires the package vioplot (see Installation).
To run flux calculations on the example network and reproduce Figure 3 (panels B and C) and Figure 4 (panels B and C):
-
Go to the example directory, e.g.:
$ cd /home/usr/isosim/models/example_network/
-
Open an R console:
$ R
-
Run the example file:
> source("example_network.R")
All output files should be in a res
folder of the example directory (here /home/usr/isosim/models/example_network/res/
).
To run flux calculations on the prenyl pyrophosphate biosynthetic pathway and reproduce Figure 5 (panels B-E):
-
Go to the example directory, e.g.:
$ cd /home/usr/isosim/models/prenylpyrophosphate_pathway/
-
Open an R console:
$ R
-
Run the example file:
> source("example_prenylpyrophosphate.R")
All output files should be in a res
folder of the example directory (here /home/usr/isosim/models/prenylpyrophosphate_pathway/res/
).
Thank you for using IsoSim and citing us in your work! It means a lot to us and encourages us to continue its development.
Millard P., Schmitt U., Kiefer P., Vorholt J., Heux S., Portais J.C. (2019). ScalaFlux: a scalable approach to quantify fluxes in metabolic subnetworks. BioRxiv, DOI: 10.1101/735308.
Pierre Millard, INRA
Toulouse Biotechnology Institute, France
📧 Pierre Millard, millard@insa-toulouse.fr