Skip to main content

The commmodelpy package

Project description

PyPI version



CommModelPy is a collection of Python dataclasses and associated functions which aim to help one in generating stoichiometric metabolic models of communities which consist of one or multiple species. All dataclasses and functions are based on cobrapy.

The underlying methods for the generation and analysis of the community models is explained in more detail in CommModelPy's source code documentation.

An exemplary usage of CommModelPy is given in its publiation (Bekiaris & Klamt, in submission).

Installation procedure

Option 1: As PyPI module

You can install CommModelPy as Python module from PyPI using pip:

pip install commmodelpy

Afterwards, you can use CommModelPy just as any other Python module using import in your Python session/script:

import commmodelpy

In order to import CommModelPy's main script with all major dataclasses and functions and which is called "", you can import it using

import commmodelpy.commmodelpy

Option 2: Direct download

If you don't want to use CommModelPy as PyPI module, you can also download this repository directly. The main script file is the Python script in the "commmodelpy" subfolder.

Optional external package: eQuilibrator API

If you want to run the reaction dG0 calulations performed in the course of CommModelPy's publication results (see next chapter), you also have to install the eQuilibrator API (not affiliated with CommModelPy or its developers) which is not included here due to its large download size of >1GB. You can download the API as follows from PyPI:

pip install equilibrator-api

Repository structure

  • The actual commmodelpy pip package can be found in the "commmodelpy" subfolder, where "" contains all relevant functions and dataclasses.
  • All Python scripts which were used in CommModelPy's publication (including the briefly mentioned EColiCore2-compressed and ATP transport cost versions), which use CommModelPy's function for community models without defined growth and with fixed species ratios, can be found in the "publication_runs" subfolder, which is in the "commmodelpy" subfolder. The scripts in the local subfolder "toy_model" contain the script for the generation of the toy model shown in the publication. The scripts in the local subfolder "ecoli_models" contain the generation of dG0 data using the eQuilibrator API as well as the CommModelPy-assisted generation of iML1515 and EcoliCore2 single-species community models. A complete call of all E. coli model scripts in the right order is given by the "" script in the main folder, a call of the toy model scripts is given by the "" script in the main folder.
  • An exemplary usage of CommModelPy with its function with a defined fixed growth rate and free species ratios can be found in the "balanced_growth_example" subfolder. A call of the relevant script is given in the "" script in the main folder.


A documentation of CommModelPy's features and functions can be found in the "docs/commmodelpy/" subfolder of this repository. The documentation's starting point is "index.html". The whole documentation was generated using pdoc3.

You can also access CommModelPy's documentation using Python's help function after importing CommModelPy, e.g. for the whole module:



CommModelPy is described and used in the following publication:


CommModelPy is free and open source, using the Apache License, Version 2

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

commmodelpy-0.0.3.tar.gz (20.3 kB view hashes)

Uploaded Source

Built Distribution

commmodelpy-0.0.3-py3-none-any.whl (19.8 kB view hashes)

Uploaded Python 3

Supported by

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