https://github.com/cschoel/inamo
Modelica re-implementation of the one-dimensional mathematical model of the atrioventricular node by Inada et al. (2009)
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 10 DOI reference(s) in README -
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (16.3%) to scientific vocabulary
Last synced: 10 months ago
·
JSON representation
Repository
Modelica re-implementation of the one-dimensional mathematical model of the atrioventricular node by Inada et al. (2009)
Basic Info
- Host: GitHub
- Owner: CSchoel
- License: mit
- Language: Modelica
- Default Branch: main
- Size: 3.43 MB
Statistics
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
- Releases: 0
Created about 6 years ago
· Last pushed over 3 years ago
https://github.com/CSchoel/inamo/blob/main/
# InaMo

[](https://cschoel.github.io/inamo/dev/)
This project contains a reusable, reproducible, understandable, and extensible reimplementation of the one-dimensional model of the rabbit atrioventricular node by Inada et al. [\[1\]](#ref1).
InaMo is written in Modelica and follows our guidelines for writing models in MoDROGH-languages [\[2\]](#ref2).
## Features
* Composed of small modules with minimal interfaces that are reused throughout the code to avoid code duplication
* Declarative code that focuses on conveying biological meaning instead of technical implementation details
* Reference simulation data published in separate repository [inamo-ref](https://github.com/CSchoel/inamo-ref)
* Variables and parameters with speaking names, SI units, and documentation strings
* Explanations and literature references for all model components
* A reference and/or rationale for every parameter value
* Extensive unit tests based on reference plots from literature
* Graphical representation of components and whole model
* HTML documentation that is generated from the model code using [MoST.jl](https://github.com/THM-MoTE/ModelicaScriptingTools.jl) (WIP)
* A [changelog](CHANGELOG.md) that captures all significant changes to this project
* Continuous integration pipelines that guarantees that
* the full environment required for simulation can be obtained from `.travis.yml`
* models can be simulated without errors
* simulations produce identical results to reference
* simulations work on a machine that is physically separated from development environment
* units are consistent across all models
* documentation remains up to date (WIP)
## Quick start for replication
To simulate the models in this repository on your own machine, you can use the following steps:
* Download and install the following software for your operating system
* [OpenModelica](https://www.openmodelica.org/)
* [Julia](https://julialang.org/) (for unit tests)
* The Python distribution [Anaconda](https://www.anaconda.com/products/individual) (for plots)
* alternatively install the packages listed in `requirements.txt` for your existing Python version
* Clone this repository with Git or download a [ZIP file of the current master branch](https://github.com/CSchoel/hh-modelica/archive/master.zip) and extract it with an archive manager of your choice.
* Run the following commands in a command prompt from the main folder of this project
* `julia -e 'using Pkg; Pkg.add("ModelicaScriptingTools")'` (installs MoST.jl)
* `julia scripts/unittests.jl` (runs unittests)
* `python scripts/plot_validation.py` (produces plots)
Alternatively, you can also simulate the models without Python and Julia by using the OpenModelica Connection Editor (OMEdit):
* Download and install [OpenModelica](https://www.openmodelica.org/) for your operating system
* Start OMEdit and open the folder `InaMo` with "File" "Load Library".
* Open the model you want to simulate, e.g. `InaMo.Examples.FullCell.AllCells` (select from "Libraries Browser" on the left hand side with a double click).
* Simulate the model with "Simulation" "Simulate".
* In the "Variables Browser" on the right hand side select the variable `an.cell.v`, `n.cell.v`, and `nh.cell.v`.
## Documentation
A detailed [documentation of InaMo](https://cschoel.github.io/inamo/dev/) can be found on GitHub pages. (WIP)
## References
[1] S. Inada, J. C. Hancox, H. Zhang, and M. R. Boyett, One-dimensional mathematical model of the atrioventricular node including atrio-nodal, nodal, and nodal-his cells, Biophys. J., vol. 97, no. 8, pp. 21172127, 2009, doi: [10.1016/j.bpj.2009.06.056](https://doi.org/10.1016/j.bpj.2009.06.056).
[2] C. Schlzel, V. Blesius, G. Ernst, and A. Dominik, The impact of mathematical modeling languages on model quality in systems biology: A software engineering perspective, bioRxiv, preprint 10.1101/2019.12.16.875260v3, 2020. doi: [10.1101/2019.12.16.875260](https:://doi.org/10.1101/2019.12.16.875260).
## Publication
This project is described in the following article:
C. Schlzel, V. Blesius, G. Ernst, A. Goesmann, and A. Dominik, Countering reproducibility issues in mathematical models with software engineering techniques: A case study using a one-dimensional mathematical model of the atrioventricular node, PLoS ONE, vol. 16, no. 7, p. e0254749, 2021, doi: [10.1371/journal.pone.0254749](https://doi.org/10.1371/journal.pone.0254749).
Owner
- Name: Christopher Schölzel
- Login: CSchoel
- Kind: user
- Location: Münster, Germany
- Company: LanguageTool
- Website: http://arbitrary-but-fixed.net/
- Repositories: 5
- Profile: https://github.com/CSchoel
AI Engineer at LanguageTool with a passion for teaching and open source