Installation
============
Using PIP
---------
ETFBA is compatible with Python versions 3.8 through 3.11 and can be easily installed using *pip* from PyPI. To get started, first upgrade pip using the following command:
.. code-block:: python
python -m pip install --upgrade pip
Next, install ETFBA with the command:
.. code-block:: python
pip install etfba
Alternatively, you can install FreeFlux from the source code by cloning the GitHub repository using the following command (assuming you have `git `__ installed):
.. code-block:: python
git clone https://github.com/Chaowu88/etfba.git /path/to/etfba
Then, install ETFBA using *pip*:
.. code-block:: python
pip install /path/to/etfba
.. Note::
It's recommended to install ETFBA within a virtual environment to avoid conflicts with other Python packages. Refer to these `instructions `_ on creating virtual environments or `here `_ for Conda environments.
Solver Installation
-------------------
ETFBA uses the modeling language `Pyomo `__ to formulate linear programming (LP) and mixed integer linear programming (MILP) problems. For small-sized models, the freely available solver glpk is capable of handling the workload, which can be installed by:
.. code-block:: python
conda install -c conda-forge glpk
For larger models, such as genome scale models, it is highly recommended to use the commercial optimizer `Gurobi `_ and install the Python support:
.. code-block:: python
conda install -c gurobi gurobi