COBRA.jl - COnstraint-Based Reconstruction and Analysis
COBRA.jl is a package written in Julia used to perform COBRA analyses such as Flux Balance Anlysis (FBA), Flux Variability Anlysis (FVA), or any of its associated variants such as
FBA and FVA rely on the solution of LP problems. The package can be used with ease when the LP problem is defined in a
.mat file according to the format outlined in the COBRAToolbox .
Installation of COBRA
If you are new to Julia, you may find the Beginner's Guide interesting. A working installation of Julia is required.
At the Julia prompt, add the
COBRA.jl module by running:
julia> using COBRA
COBRA.jl has been tested on
Julia v0.5+ on Ubuntu Linux 14.04+, MacOS 10.7+, and Windows 7 (64-bit). All solvers supported by
MathProgBase.jl are supported by
COBRA.jl, but must be installed separately. A COBRA model saved as a
.mat file can be read in using
MAT.jl are automatically installed during the installation of the
Tutorial, documentation and FAQ
The comprehensive tutorial is based on the interactive Jupyter notebook.
COBRA.jl package is fully documented here. You may also display the documentation in the Julia REPL:
julia> ? distributedFBA
:bulb: Should you encounter any errors or unusual behavior, please refer first to the FAQ section or open an issue.
Testing and benchmarking
You can test the package using:
Shall no solvers be detected on your system, error messages may be thrown when testing the
The code has been benchmarked against the
fastFVA implementation . A test model
ecoli_core_model.mat  can be used to pre-compile the code and can be downloaded using
julia> using Requests julia> include("$(Pkg.dir("COBRA"))/test/getTestModel.jl") julia> getTestModel()
How to cite
The corresponding paper can be downloaded from here. You may cite
distributedFBA.jl as follows:
Laurent Heirendt, Ines Thiele, Ronan M. T. Fleming; DistributedFBA.jl: high-level, high-performance flux balance analysis in Julia. Bioinformatics 2017 btw838. doi: 10.1093/bioinformatics/btw838
Latest version of
If you want to enjoy the latest untagged (but eventually unstable) features of
COBRA.jl, do the following from
julia> Pkg.checkout("COBRA", "develop")
At present, a COBRA model in
.matformat is loaded using the
MAT.jlpackage. A valid MATLAB license is not required.
The inner layer parallelization is currently done within the solver. No log files of each spawned thread are generated.
The current benchmarks have been performed using default optimization and compilation options of Julia and a set of solver parameters. The performance may be further improved by tuning these parameters.
B. O. Palsson. Systems Biology: Constraint-based Reconstruction and Analysis. Cambridge University Press, NY, 2015.
Schellenberger, J. et al. COBRA Toolbox 2.0. 05 2011.
Steinn, G. et al. Computationally efficient flux variability analysis. BMC Bioinformatics, 11(1):1–3, 2010.
Orth, J. et al. Reconstruction and use of microbial metabolic networks: the core escherichia coli metabolic model as an educational guide. EcoSal Plus, 2010.