Commit 09587228 authored by St. Elmo's avatar St. Elmo
Browse files

started docs

parent 4109ba0b
......@@ -10,6 +10,7 @@
/notebooks_and_scripts/imgs
/notebooks_and_scripts/fluxes
/notebooks_and_scripts/.ipynb_checkpoints
/notebooks_and_scripts/ipynb_checkpoints
*.png
# Build artifacts for creating documentation generated by the Documenter package
......
using Documenter, CobraTools
cd("docs")
makedocs(sitename="My Documentation")
\ No newline at end of file
makedocs(
sitename="CobraTools.jl",
authors = "St. Elmo Wilken",
pages = [
"Home" => "index.md",
"Model IO" => "io.md",
"Model Construction" => "model_construction.md",
"Optimization Based Analysis" => "basic_analysis.md",
"Sampling Tools" => "sampling_tools.md",
"Equilibrator Interface" => "thermo_tools.md",
"Brenda Interface" => "brenda_tools.jl"
]
)
cd("..")
\ No newline at end of file
# Optimization Based Analysis
# Brenda Interface
\ No newline at end of file
# CobraTools.jl
*CobraTools is a Julia package for constraint based reconstruction and analysis of metabolic models.*
## Contents
```@contents
Pages = [
"io.md",
"model_construction.md",
"basic_analysis.md",
"sampling_tools.md",
"thermo_tools.md",
"brenda_tools.jl"
]
Depth=1
```
## Installation
To install this package: `] add CobraTools`.
Some of the features used in this package require external programs to be installed. These are described below:
* To import Matlab formatted models you will need `MATLAB.jl` installed and a working Matlab. Refer to the documentation of `MATLAB.jl` for installation instructions.
* The Equilibrator interface requires that the Equilibrator-API has been installed and can be accessed through Julia's PyCall package. Refer to the [Equilibrator-API website](https://gitlab.com/equilibrator/equilibrator-api) for installation instructions. Within Julia, if you can call `pyimport("equilibrator_api")` successfully, then you will be able to use the functions exposed here.
* To extract turnover numbers, Km, Kcat/Km and Ki from the Brenda database, you will need to download the database as a txt file [available here](https://www.brenda-enzymes.org/download_brenda_without_registration.php) (~250 MB).
The optimization solvers are implemented through `JuMP` and thus this package should be solver agnostic. All tests are conducted using `Gurobi.jl` but other solvers should work.
## Quick Example
```@example
a = 1
b = 2
a+b
```
# Model IO
\ No newline at end of file
# Model Construction
\ No newline at end of file
# Sampling Tools
\ No newline at end of file
# Equilibrator Interface
The standard (temperature 25 °C, pressue 1 bar, concentration 1M) Gibbs energies of biochemical reactions at various pH levels (ionic strength = 0.1M) mapped to the KEGG database are made available from [Equilibrator](http://equilibrator.weizmann.ac.il/download).
\ No newline at end of file
# CobraTools.jl
*CobraTools is a Julia package for constraint based reconstruction and analysis of metabolic models.*
This is package aims to provide constraint based reconstruction and analysis (COBRA) tools in the Julia environment.
This package provides basic convenience functions, e.g. FBA, pFBA, sampling, model construction, etc.
......@@ -6,11 +7,11 @@ More importantly, it also exposes the user to the core machinery used in this ty
## Installation
To import Matlab formatted models you will need `MATLAB.jl` installed and a working Matlab. Refer to the documentation of MATLAB.jl for installation instructions.
To install this package: `] add CobraTools`. See the documentation for more information.
The optimization solvers are implemented through `JuMP` and thus this package should be solver agnostic. All tests are conducted using `Gurobi.jl` but other solvers should work.
## Quick Example
To install this package: `] add CobraTools`.
TODO.
## Progress
......@@ -36,36 +37,6 @@ To install this package: `] add CobraTools`.
- [ ] Model modifications
- [ ] Distributed analysis (COBRA.jl integration?)
## Usage
### Read and writing models
### Basic analysis
FBA
FVA
pFBA
Knock-outs
### Sampling
### Gibbs
The standard (temperature 25 °C, pressue 1 bar, concentration 1M) Gibbs energies of biochemical reactions at various pH levels (ionic strength = 0.1M) mapped to the KEGG database are made available from [Equilibrator](http://equilibrator.weizmann.ac.il/download). The raw .csv files downloaded from Equilibrator are located in `data`. Temperature and reactant concentration adjustments are made by ΔᵣG = ΔᵣG⁰ + RTln(Q).
### Citations
Cobrapy
Ebrahim, A., Lerman, J.A., Palsson, B.O. & Hyduke, D. R. (2013). COBRApy: COnstraints-Based Reconstruction and Analysis for Python. BMC Systems Biology, 7(74). https://doi.org/10.1186/1752-0509-7-74
ACHR
CHRR
Equilibrator
Noor, E., Bar-Even, A., Flamholz, A., Lubling, Y., Davidi, D., & Milo, R. (2012). An integrated open framework for thermodynamics of reactions that combines accuracy and coverage. Bioinformatics, 28(15), 2037–2044. https://doi.org/10.1093/bioinformatics/bts317
MetaNetX
Bernard, T., Bridge A., Morgat A., Moretti, S., Xenarios, I., Pagni, M., (2014) Reconciliation of metabolites and biochemical reactions for metabolic networks, Briefings in Bioinformatics, 15(1), 123–135, https://doi.org/10.1093/bib/bbs058
\ No newline at end of file
1) Ebrahim, A., Lerman, J.A., Palsson, B.O. & Hyduke, D. R. (2013). COBRApy: COnstraints-Based Reconstruction and Analysis for Python. BMC Systems Biology, 7(74). https://doi.org/10.1186/1752-0509-7-74
2) Noor, E., Bar-Even, A., Flamholz, A., Lubling, Y., Davidi, D., & Milo, R. (2012). An integrated open framework for thermodynamics of reactions that combines accuracy and coverage. Bioinformatics, 28(15), 2037–2044. https://doi.org/10.1093/bioinformatics/bts317
\ No newline at end of file
......@@ -26,7 +26,7 @@ include("io_tools.jl")
include("construction_tools.jl")
include("basic_analysis.jl")
include("gibbs_tools.jl")
include("equilibrator_tools.jl")
include("brenda_tools.jl")
include("sampling_tools.jl")
......@@ -34,6 +34,8 @@ include("sampling_tools.jl")
= Metabolite("∅") # for exchange reactions
export , , , , , ,
export Reaction, Metabolite, Gene
export build_cbm, fba, pfba, map_fluxes, set_bound, exchange_reactions, metabolite_fluxes
# Initialization functions
include("init_functions.jl")
......
"""
cbmodel, v, mb, ubs, lbs = CBM(model::CobraTools.Model)
build_cbm(model::CobraTools.Model)
Initialize a constraint based model. Creates a model that satisfies the mass balance
and flux constraints but no objective or optimizer is set. Returns the JuMP model.
This is useful if you want to write your own optimization problem.
cbmodel is the JuMP model. v are the fluxes, mb is S*v == 0, and lbs <= v <= ubs.
Returns: cbmodel, v, mb, ubs, and lbs, where cbmodel is the JuMP model, v are the fluxes, mb is S*v == 0, and lbs <= v <= ubs.
"""
function build_cbm(model::CobraTools.Model)
S, b, ubs, lbs = get_core_model(model) # Construct S, b, lbs, ubs from model
......@@ -211,7 +211,7 @@ get_exchanges(rxndict::Dict{String, Float64}; topN=8, ignorebound=1000)
Display the topN producing and consuming exchange fluxes. Ignores infinite (problem upper/lower bound) fluxes (set with ignorebound).
"""
function display_exchange_reactions(rxndict::Dict{String, Float64}; topN=8, ignorebound=1000)
function exchange_reactions(rxndict::Dict{String, Float64}; topN=8, ignorebound=1000)
fluxes = Float64[]
rxns = String[]
for (k, v) in rxndict
......@@ -241,6 +241,6 @@ end
"""
"""
function display_metabolite_fluxes(fluxdict::Dict{String, Float64}, model::CobraTools.Model)
function metabolite_fluxes(fluxdict::Dict{String, Float64}, model::CobraTools.Model)
end
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment