Skip to content

rivm-syso/euromix-to-sbml

Repository files navigation

EuroMix model to SBML

This repository contains a re-implementation of the EuroMix PBK model in Antimony and demonstrates how this Antimony model implementation is automatically converted to an annotated Systems Biology Markup Language (SBML) file using the SBML PBK workflow. The purpose of this repository is to test/demonstrate how to create and publish interoperable PBK models using the EuroMix PBK model as example.

Model diagram

Model diagram of the EuroMix PBK model

Reimplementation in Antimony

The model was reimplemented in Antimony, see file euromix.ant.

Notebook validate_antimony_model.ipynb shows the results of the validation comparison with the results obtained by the R/MCSim/deSolve implementation. The results of the R simulation and the SBML simulation (using libroadrunner in Python) match. Note that the libRoadRunner engine that is used for the python simulations returns concentrations, also if a species is declared to be substanceOnly. Therefore it is necessary to convert the output to amounts by multiplying the concentration with volume of the compartment the species is placed in in order to obtain amounts.

Model annotation

Annotations of the model and its element are specified in the file euromix.annotations.csv. This annotations file links the different model elements (e.g., compartments and parameters) to ontological terms and specifies the units of measure. For the annotations of modelling terms, the PBPK ontology is used. For the annotation of the units of measure, the UCUM notation is adopted.

SBML conversion and SBML model annotation

Conversion to an annotated SBML file is done automatically using the SBML PBK workflow. This workflow follows several steps. It first converts the Antimony model implementation to SBML. Then, it annotates this SBML file using the annotations specified in the euromix.annotations.csv file. After this, it runs validation scripts on the generated SBML file to check for consistency and completeness (e.g, of the units). Finally, it publishes the generated SBML file (and log files) as build artifacts and adds/updates the generated/updated SBML file (euromix.sbml) in this repository.

Notebook get_sbml_model_info.ipynb shows how information can be retrieved from the annotated SBML model file (e.g., units, differential equations, diagrams, semantic annotations). Notebook run_sbml_model.ipynb demonstrates how to run the SBML model.

Running the Jupyter notebooks

To run the Jupyter notebook, install Jupyter notebook and the the required python packages.

Install notebook, using the command:

pip install notebook

Install the required python packages using the command:

pip install -r requirements.txt

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages