Skip to main content

Package for automated generation, simulation and calibration of Resource Balance Analysis (RBA) models

Project description

RBApy is a open-source Python package for the automated generation of bacterial Resource Balance Analysis (RBA) models (https://rba.inrae.fr). Existing RBA models of prokaryotic and eukaryotic cells are available in the RBA-model repository: https://github.com/RBAgroup/RBA-models.

For a complete documentation on RBApy installation and usage, please visit the website: https://rbagroup.github.io/RBApy/

Installation

RBApy requires one of the linear programming solvers IBM CPLEX, GLPK, or Gurobi. Note, while GLPK is capable of executing the example models in the tutorial, in our experience, GLPK is prohibitively slow for real RBA models. IBM and Gurobi both provide free licenses for academic research.

  1. Optionally, install the CPLEX linear programming solver.

  2. Install this package from PyPI:

    ` pip install rbapy `

    Optionally, also install CPLEX by installing RBApy with the cplex option. Note, this requires a CPLEX license.:

    ` pip install rbapy[cplex] `

    Optionally, also install GLPK by installing RBApy with the swiglpk option. Note, this requires libglpk-dev.:

    ` pip install rbapy[swiglpk] `

    Optionally, also install Gurobi by installing RBApy with the gurobi option. Note, this requires a Gurobi license.:

    ` pip install rbapy[gurobi] `

More information about how to install RBApy is available at https://rbagroup.github.io/RBApy/installation.html.

Remark on usage

When using RBApy in own Python code, it must be imported as: rba

` import rba `

Running

For more detailed instructions on usage, please refer to the RBApy website https://rbagroup.github.io/RBApy/.

Put the SBML file containing the Genome Size Metabolic Model (GSMM) of your organism of interest in the input directory and fill in the parameter file input/params.in. Then open a console at the root of the repository and run the following command line in your terminal:

` python generate_rba_model.py path/to/params.in `

The script will generate several files used as an input for the RBA solver.

Warning: for the first run, the script will download and parse Uniprot data as best it can. Unfortunately, numerous values cannot be parsed properly and are replaced with default values. The script will generate many helper files to replace these default values with hand-curated values. You should fill in these helper files and rerun the script to obtain more relevant output (see instructions below).

If rbapy has been installed properly, there also exists command-line interface called by:

` generate-rba-model path/to/params.in `

Once the RBA model has been generated, you can solve it using:

` python solve_rba_model.py path/to/model `

where the path points to the directory containing the XML files defining the RBA model.

If rbapy was installed properly, there also exists command-line interface called by:

` solve-rba-model path/to/model `

Running RBApy with Gurobi

To use RBApy with Gurobi, either:

  • Save your license to your home directory (~/gurobi.lic) or to the appropriate location for your OS (e.g., /opt/gurobi/gurobi.lic for Linux).

  • Encode your license variables (e.g., WLSACCESSID, WLSSECRET, LICENSEID) into environment variables with the prefix GRB_ (e.g., GRB_WLSACCESSID, GRB_WLSSECRET, GRB_LICENSEID).

SBML file requirements

The SBML file must be a valid SBML file, with gene-reaction associations. RBApy assumes that the boolean relation is always “or”s of “and”s, e.g. (g1 and g2) or (g3 and g4) Moreover, the words “or” and “and” must be written in lowercase letters. Empty fields in Gene-association will be interpreted as a diffusion reaction.

Authors

RBApy is developed by MaIAGE (https://maiage.inrae.fr/biosys) and MIAT units (https://miat.inrae.fr/teams/biocomp/) at INRAE, by Bodeit, O., Fischer S., Bulovic A., Goelzer A.

Citations

If you use RBApy for scientific publications, please cite - Bulović A., Fischer S., Dinh M., Golib F., Liebermeister W., Poirier C., Tournier L., Klipp E., Fromion V., Goelzer A. (2019), “Automated generation of bacterial resource allocation models”, Metabolic Engineering 55 (2019) 12–22. https://doi.org/10.1016/j.ymben.2019.06.001. - and (…)

License

Copyright (c) 2018-2026 INRAE - France.

RBApy is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

RBApy is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with RBApy. If not, see <https://www.gnu.org/licenses/>

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rbapy-3.0.tar.gz (301.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rbapy-3.0-py2.py3-none-any.whl (332.7 kB view details)

Uploaded Python 2Python 3

File details

Details for the file rbapy-3.0.tar.gz.

File metadata

  • Download URL: rbapy-3.0.tar.gz
  • Upload date:
  • Size: 301.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.18

File hashes

Hashes for rbapy-3.0.tar.gz
Algorithm Hash digest
SHA256 af9d6e2729d2e1b3cad48ffb011a8a6441034bc3d3d9c36f4f77cb6a99bd8831
MD5 78f09badde8be930903c083276b6f5a9
BLAKE2b-256 67174a0fe048a46908e3513b05294d1c8db365c8899c5ad751cfa62abb5cf2bd

See more details on using hashes here.

File details

Details for the file rbapy-3.0-py2.py3-none-any.whl.

File metadata

  • Download URL: rbapy-3.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 332.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.18

File hashes

Hashes for rbapy-3.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 74411a384f27bea83b6b7d81db2b3e3fc74676b88de399281f076bb7f3d989b2
MD5 fd582b58681d6d5bcea39c5a9c12ab92
BLAKE2b-256 5ccf5c74e6c061559ba8e10f1c941fb8f55480d30a14718dd0ef6788c2da8d66

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page