Package: commmodelpy
CommModelPyDescriptionCommModelPy is a collection of Pythondataclassesand 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 oncobrapy.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 procedureOption 1: As PyPI moduleYou can install CommModelPy as Python module fromPyPIusingpip:pip install commmodelpyAfterwards, you can use CommModelPy just as any other Python module usingimportin your Python session/script:import commmodelpyIn order to import CommModelPy's main script with all major dataclasses and functions and which is called "commmodelpy.py", you can import it usingimport commmodelpy.commmodelpyOption 2: Direct downloadIf you don't want to use CommModelPy as PyPI module, you can also download this repository directly. The main script file is the commmodelpy.py Python script in the "commmodelpy" subfolder.Optional external package: eQuilibrator APIIf 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 theeQuilibrator 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-apiRepository structureThe actual commmodelpy pip package can be found in the "commmodelpy" subfolder, where "commmodelpy.py" 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 theeQuilibrator APIas 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 "execute_publication_ecoli_model_scripts.py" script in the main folder, a call of the toy model scripts is given by the "execute_publication_toy_model_script.py" 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 "execute_balanced_growth_example.py" script in the main folder.DocumentationA 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 usingpdoc3.You can also access CommModelPy's documentation using Python's help function after importing CommModelPy, e.g. for the whole module:help(commmodelpy)PublicationCommModelPy is described and used in the following publication:Bekiaris, P. S., & Klamt, S. (2021). Designing microbial communities to maximize the thermodynamic driving force for the production of chemicals. PLOS Computational Biology, 17(6), e1009093.LicenseCommModelPy is free and open source, using the Apache License, Version 2