biosimulators-rbapy 0.0.4
BioSimulators-compliant command-line interface to the RBApy simulation program.
License: MIT
Keywords: reaction network,systems biology,computational biology,numerical simulation,resource balance analysis,RBA,BioSimulators,SBML,SED-ML,COMBINE,OMEX,RBApy

|Latest release| |PyPI| |CI status| |Test coverage| |All Contributors|

BioSimulators-RBApy
===================

BioSimulators-compliant command-line interface to the
`RBApy <https://sysbioinra.github.io/RBApy/>`__ simulation program for
Resource Balance Analysis (RBA) models.

This command-line interface and Docker image enable users to use RBApy
to execute `COMBINE/OMEX archives <https://combinearchive.org/>`__ that
describe one or more simulation experiments (in `SED-ML
format <https://sed-ml.org>`__) of one or more RBA models in the `RBApy
format <https://sysbioinra.github.io/RBApy/usage.html>`__.

A list of the algorithms and algorithm parameters supported by RBApy is
available at
`BioSimulators <https://biosimulators.org/simulators/rbapy>`__.

A simple web application and web service for using RBApy to execute
COMBINE/OMEX archives is also available at
`runBioSimulations <https://run.biosimulations.org>`__.

Installation
------------

BioSimulators-RBApy requires one of the linear programming solvers `IBM
CPLEX <https://www.ibm.com/analytics/cplex-optimizer>`__,
`GLPK <https://www.gnu.org/software/glpk/>`__, or
`Gurobi <https://www.gurobi.com/products/gurobi-optimizer/>`__. Note,
GLPK is slower than CPLEX and Gurobi. IBM and Gurobi both provide free
licenses for academic research.

Install Python package
~~~~~~~~~~~~~~~~~~~~~~

1. Install requirements

   -  `Python <https://python.org>`__
   -  `Pip <https://pip.pypa.io/>`__
   -  Optionally, install CPLEX

2. Install this package

   ::

      pip install biosimulators-rbapy

   To use BioSimulators-RBApy with CPLEX, install BioSimulators-RBApy
   with the ``cplex`` option. Note, this requires CPLEX and a CPLEX
   license:

   ::

      pip install rbapy[cplex]

   To use BioSimulators-RBApy with GLPK, install BioSimulators-RBApy
   with the ``glpk`` option. Note, this requires ``libglpk-dev``:

   ::

      pip install rbapy[glpk]

   To use BioSimulators-RBApy with Gurobi, install BioSimulators-RBApy
   with the ``gurobi`` option. Note, this requires a Gurobi license:

   ::

      pip install rbapy[gurobi]

Install Docker image
~~~~~~~~~~~~~~~~~~~~

::

   docker pull ghcr.io/biosimulators/rbapy

Usage
-----

Local usage
~~~~~~~~~~~

::

   usage: biosimulators-rbapy [-h] [-d] [-q] -i ARCHIVE [-o OUT_DIR] [-v]

   BioSimulators-compliant command-line interface to the RBApy simulation program <https://sysbioinra.github.io/RBApy/>.

   optional arguments:
     -h, --help            show this help message and exit
     -d, --debug           full application debug mode
     -q, --quiet           suppress all console output
     -i ARCHIVE, --archive ARCHIVE
                           Path to OMEX file which contains one or more SED-ML-
                           encoded simulation experiments
     -o OUT_DIR, --out-dir OUT_DIR
                           Directory to save outputs
     -v, --version         show program's version number and exit

Usage through Docker container
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The entrypoint to the Docker image supports the same command-line
interface described above.

For example, the following command could be used to use the Docker image
to execute the COMBINE/OMEX archive ``./modeling-study.omex`` and save
its outputs to ``./``.

::

   docker run \
     --tty \
     --rm \
     --mount type=bind,source="$(pwd)",target=/root/in,readonly \
     --mount type=bind,source="$(pwd)",target=/root/out \
     ghcr.io/biosimulators/rbapy:latest \
       -i /root/in/modeling-study.omex \
       -o /root/out

Using BioSimulators-RBApy with a Gurobi license
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Gurobi licenses can be used either by setting environment variables
prefixed with ``GRB_`` or by saving your license to your home directory
(``~/gurobi.lic``) or the appropriate location for your OS (e.g.,
``/opt/gurobi/gurobi.lic`` for Linux).

Documentation
-------------

Documentation is available at
https://docs.biosimulators.org/Biosimulators_RBApy/.

License
-------

This package is released under the `MIT license <LICENSE>`__.

Development team
----------------

This package was developed by the `Center for Reproducible Biomedical
Modeling <http://reproduciblebiomodels.org>`__ and the `Karr
Lab <https://www.karrlab.org>`__ at the Icahn School of Medicine at
Mount Sinai in New York with assistance from the contributors listed
`here <CONTRIBUTORS.md>`__.

Questions and comments
----------------------

Please contact the `BioSimulators
Team <mailto:info@biosimulators.org>`__ with any questions or comments.

.. |Latest release| image:: https://img.shields.io/github/v/tag/biosimulators/Biosimulators_RBApy
   :target: https://github.com/biosimulations/Biosimulators_RBApy/releases
.. |PyPI| image:: https://img.shields.io/pypi/v/biosimulators_rbapy
   :target: https://pypi.org/project/biosimulators_rbapy/
.. |CI status| image:: https://github.com/biosimulators/Biosimulators_RBApy/workflows/Continuous%20integration/badge.svg
   :target: https://github.com/biosimulators/Biosimulators_RBApy/actions?query=workflow%3A%22Continuous+integration%22
.. |Test coverage| image:: https://codecov.io/gh/biosimulators/Biosimulators_RBApy/branch/dev/graph/badge.svg
   :target: https://codecov.io/gh/biosimulators/Biosimulators_RBApy
.. |All Contributors| image:: https://img.shields.io/github/all-contributors/biosimulators/Biosimulators_RBApy/HEAD
   :target: #contributors-