Metadata-Version: 2.1
Name: icomo
Version: 0.1.7
Summary: This toolbox aims to simplify the construction of compartmental models and the inference of their parameters
Author-email: Jonas Dehning <jonas.dehning@ds.mpg.de>
Project-URL: Homepage, https://github.com/Priesemann-Group/icomo
Project-URL: Bug Tracker, https://github.com/Priesemann-Group/icomo/issues
Project-URL: Discussions, https://github.com/Priesemann-Group/icomo/discussions
Project-URL: Changelog, https://github.com/Priesemann-Group/icomo/releases
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.8.1
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy
Requires-Dist: matplotlib
Requires-Dist: pymc>=5.0.0
Requires-Dist: pytensor
Requires-Dist: arviz
Requires-Dist: numpyro
Requires-Dist: ipywidgets
Requires-Dist: graphviz
Requires-Dist: diffrax
Requires-Dist: optax
Requires-Dist: jaxopt
Provides-Extra: dev
Requires-Dist: pytest>=7.3.2; extra == "dev"
Requires-Dist: black>=23.3.0; extra == "dev"
Requires-Dist: isort>=5.12.0; extra == "dev"
Requires-Dist: pre-commit>=3.3.2; extra == "dev"
Requires-Dist: ruff>=0.0.272; extra == "dev"
Requires-Dist: mypy>=1.3.0; extra == "dev"
Requires-Dist: pydocstyle>=6.3.0; extra == "dev"
Requires-Dist: ipython<8; extra == "dev"
Requires-Dist: ipykernel>=6.0.0; extra == "dev"
Requires-Dist: Sphinx>=6.2.1; extra == "dev"
Requires-Dist: sphinx-book-theme; extra == "dev"
Requires-Dist: importlib-metadata>=6.5.1; extra == "dev"
Requires-Dist: myst-parser>=0.19.2; extra == "dev"
Requires-Dist: nbsphinx>=0.9.2; extra == "dev"
Requires-Dist: pandoc>=2.3; extra == "dev"

# Inference of Compartmental Models (ICoMo) Toolbox

This toolbox aims to simplify the construction of compartmental models and the inference of their parameters.

The aim isn't to provide a complete package that will build models from A to Z, but rather
provide different helper functions examples and guidelines to help leverage modern python
packages like [JAX](https://jax.readthedocs.io/en/latest/),
[Diffrax](https://docs.kidger.site/diffrax/) and
[PyMC](https://www.pymc.io/welcome.html) to build, automatically differentiate and fit
compartmental models.

* Documentation: https://icomo.readthedocs.io.

## Features

* Facilitate the construction of compartmental models by only defining flow between compartments, and
  automatically generating the corresponding ODEs.
* Plot the graph of the compartmental model to verify the correctness of the model.
* Integrate the ODEs using diffrax, automatically generating the Jacobian of the parameters of the ODE
* Fit the parameters using minimization algorithms or build a Bayesian model using PyMC.




