The GECKO toolbox is a Matlab/Python package for enhancing a Genome-scale model to account for Enzyme Constraints, using Kinetics and Omics. It is the companion software to this publication, and it has two main parts:
geckomat
: Matlab+Python scripts to fetch online data and build/simulate enzyme-constrained models.geckopy
: a Python package which can be used with cobrapy to obtain a ecYeastGEM model object, optionally adjusted for provided proteomics data.
Last update: 2021-02-17
This repository is administered by Benjamin J. Sanchez (@BenjaSanchez), Division of Systems and Synthetic Biology, Department of Biology and Biological Engineering, Chalmers University of Technology.
SOAPpy:
easy_install-2.7 SOAPpy
- MATLAB 9.1 (R2016b) or higher + Optimization Toolbox.
- The COBRA toolbox for MATLAB.
- The RAVEN toolbox for MATLAB.
- The libSBML MATLAB API (version 5.17.0 is recommended).
- For creating an enzyme constrained model:
- Update the following data files in
/databases
with your organism infomation:databases/prot_abundance.txt
: Protein abundance Data from Pax-DB. If data is not available for your organism, then a relative proteomics dataset (in molar fractions) can be used instead. The required format is a tab-separated file, named asdatabases/relative_proteomics.txt
, with a single header line and 2 columns; the first with gene IDs and the second with the relative abundances for each protein.databases/uniprot.tab
: Gene-proteins data from uniprot.databases/chemostatData.tsv
: Chemostat data for estimating GAM (optional, called byfitGAM.m
).databases/manual_data.txt
: Kcat data from eventual manual curations (optional, called bymanualModifications.m
).
- Adapt the following functions in
/geckomat
to your organism:geckomat/getModelParameters.m
geckomat/change_model/manualModifications.m
geckomat/limit_proteins/sumProtein.m
geckomat/limit_proteins/scaleBioMass.m
geckomat/kcat_sensitivity_analysis/changeMedia_batch.m
(optional)geckomat/change_model/removeIncorrectPathways.m
(optional, called bymanualModifications.m
)geckomat/limit_proteins/sumBioMass.m
(optional, called bysumProtein.m
&scaleBiomass.m
)
- Run
geckomat/get_enzyme_data/updateDatabases.m
to updateProtDatabase.mat
. - Run
geckomat/enhanceGEM.m
with your metabolic model as input.
- Update the following data files in
- For performing simulations with an enzyme-constrained model: Enzyme-constrained models can be used as any other metabolic model, with toolboxes such as COBRA or RAVEN. For more information on rxn/met naming convention, see the supporting information of Sanchez et al. (2017)
If all you need is the ecYeastGEM model to use together with cobrapy you can use the geckopy
Python package.
- Python 3.6, 3.7 or 3.8
- cobrapy
pip install geckopy
from geckopy import GeckoModel
import pandas
some_measurements = pandas.Series({'P00549': 0.1, 'P31373': 0.1, 'P31382': 0.1})
model = GeckoModel('multi-pool')
model.limit_proteins(some_measurements)
model.optimize()
Contributions are always welcome! Please read the contributing guidelines to get started.
- Ivan Domenzain (@IVANDOMENZAIN), Chalmers University of Technology, Gothenburg Sweden
- Eduard Kerkhoven (@edkerk), Chalmers University of Technology, Gothenburg Sweden
- Benjamin J. Sanchez (@BenjaSanchez), Chalmers University of Technology, Gothenburg Sweden
- Moritz Emanuel Beber (@Midnighter), Danish Technical University, Lyngby Denmark
- Henning Redestig (@hredestig), Danish Technical University, Lyngby Denmark
- Cheng Zhang, Science for Life Laboratory, KTH - Royal Institute of Technology, Stockholm Sweden