ME modelling

From Alliance Doc
Jump to navigation Jump to search
This site replaces the former Compute Canada documentation site, and is now being managed by the Digital Research Alliance of Canada.

Ce site remplace l'ancien site de documentation de Calcul Canada et est maintenant géré par l'Alliance de recherche numérique du Canada.

Introduction[edit]

Models of metabolism and expression (ME-models) are mathematical knowledgebases that integrate information on both the expression machinery and metabolism of a cell and are capable of generating predictions of phenotype. They are formulated as optimization problems where a bisection method finds the optimum growth rate and proteome allocation. Solving these complex methods hence requires an efficient computing approach that is best obtained in low-level programming languages. The solveME[1] Python wrapper allows the utilization of fortran efficiency and the qMinos solver[2]. The CobraME[3] package provides useful function to build and solve ME models with the ease of Python. The EcoliME package provides the ability to construct the iJL1678b[4] ME-model of Escherichia coli.

Installation[edit]

The ME-modelling environment contains many dependencies that are more easily managed by the use of a Python Virtual environment. We provide the steps to setup a virtual environment in Python2 using the virtualenv software, using conda or venv would also work. More detailed information on how to create a virtual environment can be found here.

Setup the virtual environment[edit]

We suggest creating a folder containing all ME-modelling related packages. Setup a virtual environment for ME-modelling using virtualenv in Python2.7, on mp2:

       ml python/2.7.14
       pip install virtualenv –user
       mkdir ME_modelling
       cd ME_modelling
       virtualenv -p /home/username/opt/python-2.7.15/bin/python ME_env

Activate the virtual environment, the virtual environment remains active in all following steps:

       source ME_env/bin/activate

Install required dependencies, note that more-itertools==5.0.0 is the last Python2.7 supported version:

       pip install pandas
       pip install sympy
       pip install more-itertools==5.0.0 

Important: the Python compiler should be GCC > 5.4.0 Compiling numpy with this version is also necessary:

       pip install git+https://github.com/numpy/numpy@v1.14.0

Install cobrapy==0.5.11 within the virtual environment. The required cobrapy==0.5.11 is not available for installation via pip install. This version can be obtained from GitHub:

       git clone https://github.com/opencobra/cobrapy.git
       cd cobrapy-0.5.11
       python setup.py develop

Install ME-modelling softwares[edit]

Get solvemepy from GitHub (https://github.com/SBRG/solvemepy):

       git clone https://github.com/SBRG/solvemepy.git

Obtain quadMinos. This quad precision solver can be obtained for academic use from Pr. Michael Saunders at Stanford University. Once downloaded, compile the solver, these installation steps can be found here:

       cd solvemepy
       cp Makefile.defs quadLP_root/minos56/ 
       cp Makefile.defs quadLP_root/qminos56/
       cd [solveme_root]
       cp [qminos_root]/qminos56/lib/libquadminos.a ./
       cp [qminos_root]/minos56/lib/libminos.a ./

Install solvemepy:

       cd solvemepy
       python setup.py develop

Get CobraME from GitHub (https://github.com/SBRG/cobrame) and install:

       git clone https://github.com/SBRG/cobrame.git
       cd cobrame
       python setup.py develop         

Get EcoliME from GitHub (https://github.com/SBRG/ecolime/tree/master/ecolime) and install:

       git clone https://github.com/SBRG/ecolime.git
       cd ecolime
       python setup.py develop

Building and solving a ME-model[edit]

Cobrame[3] conveniently contains all scripts and files required to build a complete ME-model for Escherichia coli from scratch.

The ME-model can be built from:

  1. A jupyter notebook
  2. A python script

Virtual environment in Jupyter notebook[edit]

A jupyter notebook can be run on an interactive node. The information for installation can be found here.

To build, solve and modify a ME-model in jupyter, setup the virtual environment previously created to run in jupyter lab or jupyter notebook. Click for more information on virtual environment in ipython.. In the activated virtual environment:

     pip install ipykernel
     ipython kernel install --user --name=ME_env_name

The ecoliME package contains a jupyter notebook to build the iJL1768b E. coli ME-model:

     https://github.com/SBRG/ecolime/blob/master/ecolime/build_me_model.ipynb

and to solve the ME-model:

     https://github.com/SBRG/ecolime/blob/master/ecolime/solve_demo.ipynb


Using the ME model[edit]

This section has yet to be completed