Skip to main content
Help the Python Software Foundation raise $60,000 USD by December 31st!  Building the PSF Q4 Fundraiser

Object-oriented software for dynamic flux-balance simulations.

Project description

Current PyPI Version Supported Python Versions GPLv3+ Pipeline Status Coverage Report Black

This project provides an object-oriented software package for dynamic flux-balance analysis (DFBA) simulations using implementations of the direct method or Algorithm 1 described in the paper Harwood et al., 2016. The main algorithms for solving embedded LP problems are written in C++ and use the GNU Linear Programming Kit (GLPK) and the Suite of Nonlinear and Differential/Algebraic Equation Solvers (SUNDIALS) CVODE or IDA. Extension modules to cobrapy are provided for easy generation and simulation of DFBA models.

Installation

Currently, we do not provide Python wheels for this package and therefore Installing from source is a bit more involved. The quickest way to run the software is from the provided Docker image:

docker run --rm -it davidtourigny/dfba:latest

Installing from source

Currently this package is compatible with most UNIX-like operating systems. Provided the following Dependencies are installed, the module can be installed from the root of the repository using the command:

pip install .

Dependencies

  • A version of Python 3.6 or higher is required
  • You need cmake for the build process
  • You will need git to clone this repository to access the scripts and build files
  • You need a working compiler with C++11 support, for example, by installing build-essential on Debian-derived Linux systems
  • GLPK version 4.65 is required or can be installed using build_glpk.sh
  • SUNDIALS version 5.0.0 or higher is required or can be installed using build_sundials.sh
  • pybind11 is required or can be installed using build_pybind11.sh

Be aware that some of these packages have their own dependencies that must therefore be installed also (e.g. GLPK depends on GMP and pybind11 requires pytest).

Alternatively, a Dockerfile is provided for building a Docker image to run the software from an interactive container. The Docker image can be built in one step by issuing the command:

make build

from the root of this repository. It can then be started using:

make run

Documentation

Documentation for dfba is provided at readthedocs

Authors

  • David S. Tourigny
  • Moritz E. Beber

Additional contributors

  • Jorge Carrasco Muriel (visualization and documentation)

Funding

  • David S. Tourigny is a Simons Foundation Fellow of the Life Sciences Research Foundation.

Project details


Download files

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

Files for dfba, version 0.1.8
Filename, size File type Python version Upload date Hashes
Filename, size dfba-0.1.8.tar.gz (63.1 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page