Package: rbapy
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 forBacillus subtilis 168(wild type),Escherichia coli K-12(wild type) and CO2-fixingEscherichia coli K-12(an engineered strain) can be found here:https://github.com/SysBioInra/Bacterial-RBA-models.For a complete documentation on RBApy installation and usage, please visit the website:https://sysbioinra.github.io/RBApy/InstallationRBApy requires one of the linear programming solversIBM CPLEX,GLPK, orGurobi. 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.Optionally, install the CPLEX linear programming solver.Install this package from PyPI:` pip install rbapy `Optionally, also install CPLEX by installing RBApy with thecplexoption. Note, this requires a CPLEX license.:` pip install rbapy[cplex] `Optionally, also install GLPK by installing RBApy with theswiglpkoption. Note, this requireslibglpk-dev.:` pip install rbapy[swiglpk] `Optionally, also install Gurobi by installing RBApy with thegurobioption. Note, this requires a Gurobi license.:` pip install rbapy[gurobi] `More information about how to install RBApy is available athttps://sysbioinra.github.io/RBApy/installation.html.Remark on usageWhen using RBApy in own Python code, it must be imported as: rba` import rba `RunningFor more detailed instructions on usage, please refer to the RBApy websitehttps://sysbioinra.github.io/RBApy/.Put the SBML file containing the Genome Size Metabolic Model (GSMM) of your organism of interest in theinputdirectory and fill in the
parameter fileinput/params.in. Then open a console at the root
of the repository and run:` python generate_rba_model.py input/params.in `or, more generally:` python generate_rba_model.py path/to/params.in `The script will generate several files used as an input for the RBA solver.
By default, they will be written to theoutputdirectory.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-modelpath/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-modelpath/to/model `Running RBApy with GurobiTo 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.licfor Linux).Encode your license variables (e.g.,WLSACCESSID,WLSSECRET,LICENSEID) into environment variables with the prefixGRB_(e.g.,GRB_WLSACCESSID,GRB_WLSSECRET,GRB_LICENSEID).SBML file requirementsThe 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.AuthorsFischer S. , Bulovic A. , Goelzer A. , Bodeit, O., Dinh M.CitationIf 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.LicenseCopyright (c) 2018 INRAE - MaIAGE - 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/>