opencobra/COBRA.jl

Name: COBRA.jl

Owner: openCOBRA

Description: High-level, high-performance, constraint-based reconstruction and analysis in Julia

Created: 2016-10-25 07:02:19.0

Updated: 2018-01-11 15:51:01.0

Pushed: 2017-10-21 18:26:46.0

Homepage: https://opencobra.github.io/COBRA.jl

Size: 11073

Language: Julia

GitHub Committers

UserMost Recent Commit# Commits

Other Committers

UserEmailMost Recent Commit# Commits

README

COBRA.jl - COnstraint-Based Reconstruction and Analysis

| Documentation | Coverage | PackageEvaluator | Build Status | |:——————–:|:——————–:|:——————–:|:——————–:| | | coverage statusCoverage Status | COBRACOBRA | Build StatusBuild status ||

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 distributedFBA [1].

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 [2].

Layout

Code Layout

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 package:

a> Pkg.add("COBRA")

Use the COBRA.jl module by running:

a> 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. MathProgBase.jl and MAT.jl are automatically installed during the installation of the COBRA.jl package.

Tutorial, documentation and FAQ

The comprehensive tutorial is based on the interactive Jupyter notebook.

The COBRA.jl package is fully documented here. You may also display the documentation in the Julia REPL:

a> ? 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:

a> Pkg.test("COBRA")

Shall no solvers be detected on your system, error messages may be thrown when testing the COBRA.jl package.

The code has been benchmarked against the fastFVA implementation [3]. A test model ecoli_core_model.mat [4] can be used to pre-compile the code and can be downloaded using

a> using Requests
a> include("$(Pkg.dir("COBRA"))/test/getTestModel.jl")
a> getTestModel()
How to cite distributedFBA.jl?

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 COBRA.jl

If you want to enjoy the latest untagged (but eventually unstable) features of COBRA.jl, do the following from Julia:

a> Pkg.checkout("COBRA", "develop")
Limitations
References
  1. B. O. Palsson. Systems Biology: Constraint-based Reconstruction and Analysis. Cambridge University Press, NY, 2015.
  2. Schellenberger, J. et al. COBRA Toolbox 2.0. 05 2011.
  3. Steinn, G. et al. Computationally efficient flux variability analysis. BMC Bioinformatics, 11(1):1?3, 2010.
  4. Orth, J. et al. Reconstruction and use of microbial metabolic networks: the core escherichia coli metabolic model as an educational guide. EcoSal Plus, 2010.

This work is supported by the National Institutes of Health's National Center for Advancing Translational Sciences, Grant Number U24TR002306. This work is solely the responsibility of the creators and does not necessarily represent the official views of the National Institutes of Health.