Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion cpp/models/lct_secir/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# LCT SECIR model

This directory contains a model implementation based on an ODE formulation using the linear chain trick.
To get started, check out the [official documentation](https://memilio.readthedocs.io/en/latest/cpp/models/lctsecir.html)
To get started, check out the [official documentation](https://memilio.readthedocs.io/en/latest/cpp/models/lsecir.html)
or the [code example](../../examples/lct_secir.cpp).
2 changes: 1 addition & 1 deletion cpp/models/ode_sir/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

This directory contains a model implementation based on an ODE formulation.
To get started, check out the [official documentation](https://memilio.readthedocs.io/en/latest/cpp/models/osir.html)
or the [code example](../../examples/sde_sir.cpp).
or the [code example](../../examples/ode_sir.cpp).
2 changes: 1 addition & 1 deletion cpp/models/sde_sirs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@

This directory contains a model implementation based on an SDE formulation.
To get started, check out the [official documentation](https://memilio.readthedocs.io/en/latest/cpp/models/ssirs.html)
or the [code example](../../examples/ode_sir.cpp).
or the [code example](../../examples/sde_sirs.cpp).
2 changes: 1 addition & 1 deletion cpp/models/smm/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Stochastic Metapopulation Model

This directory contains a model implementation based on a stochastic metapopulation model formulation.
To get started, check out the [official documentation](https://memilio.readthedocs.io/en/latest/cpp/models/isecir.html)
To get started, check out the [official documentation](https://memilio.readthedocs.io/en/latest/cpp/smm.html)
or the [code example](../../examples/smm.cpp).
Binary file added docs/source/_static/funder/bmftr.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion docs/source/cpp/interfaces.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Extensions

MEmilio provides several extensions to interact with external data structures or software.

- :doc:The `Systems Biology Markup Language <https://sbml.org/>`_ (`SBML <sbml>`) can be used to semi-automatically create (or load) models in MEmilio from a given model description in SBML format.
- The :doc:`SBML importer <sbml>` can be used to semi-automatically create (or load) models in MEmilio from a given model description in `Systems Biology Markup Language <https://sbml.org/>`_ (SBML) format.

**Further advice:**

Expand Down
2 changes: 1 addition & 1 deletion docs/source/cpp/lct.rst
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ We use different types of parameters to represent epidemiological parameters suc
compartment or the contact rates between different age groups. Most model parameters are constants that describe
pathogen-specific characteristics (possibly resolved by sociodemographic groups) and are represented by a vector with a value for each sociodemographic group.
To model different contact rates between different sociodemographic groups, we use a parameter denoted **ContactPatterns** of type **UncertainContactMatrix**.
The **UncertainContactMatrix** contains anmarbitrary large set of contact matrices which can represent the different contact locations in the model like
The **UncertainContactMatrix** contains an arbitrary large set of contact matrices which can represent the different contact locations in the model like
schools, workplaces, or homes. The matrices can be loaded or stored in the particular example.
In the **ContactPatterns**, each matrix element stores baseline contact rates :math:`c_{i,j}` between sociodemographic group :math:`i` to group :math:`j`.
The dimension of the matrix is automatically defined by the model initialization and is reduced to one value if no stratification is used.
Expand Down
2 changes: 1 addition & 1 deletion docs/source/cpp/model_creation.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Model creation
==============

While MEmilio already preimplements many different models, it is possible to create new models. This section describes how to create a new model in MEmilio. All of MEmilio's models have been designed to share a maximum of structure and functionality, however, the creation of a new aggregated model differs fundamentally from the creation of a new inidividual-based model. New metapopulation models are generally created by implementing an aggregated model in a graph structure.
While MEmilio already preimplements many different models, it is possible to create new models. This section describes how to create a new model in MEmilio. All of MEmilio's models have been designed to share a maximum of structure and functionality, however, the creation of a new aggregated model differs fundamentally from the creation of a new individual-based model. New metapopulation models are generally created by implementing an aggregated model in a graph structure.
In addition, MEmilio also provides an :doc:`extension<sbml>` to create models from `Systems Biology Markup Language (SBML) <https://sbml.org/>`_ files.

.. toctree::
Expand Down
4 changes: 2 additions & 2 deletions docs/source/cpp/models/osir.rst
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ and all other compartments.
.. code-block:: cpp

for (auto i = mio::AgeGroup(0); i < nb_groups; i++){
model.populations[{i, mio::osir::InfectionState::Exposed}] = 1/nb_groups * nb_exp_t0;
model.populations[{i, mio::osir::InfectionState::Infected}] = 1/nb_groups * nb_inf_t0;
model.populations[{i, mio::osir::InfectionState::Recovered}] = 1/nb_groups * nb_rec_t0;

model.populations.set_difference_from_group_total<mio::AgeGroup>(
Expand All @@ -117,7 +117,7 @@ Basic dampings can be added to the ContactPatterns as follows:

contact_matrix[0] = mio::ContactMatrix(Eigen::MatrixXd::Constant(nb_groups, nb_groups, 1/nb_groups * cont_freq));

// Add a uniform damping acress all age groups
// Add a uniform damping across all age groups
contact_matrix.add_damping(Eigen::MatrixXd::Constant(nb_groups, nb_groups, 0.7), mio::SimulationTime(30.));


Expand Down
2 changes: 1 addition & 1 deletion docs/source/cpp/models/ssirs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ Below is an overview of the model architecture and its compartments.
+-------------------------------+-----------------------------------------------+--------------------------------------------------------------------------------------------------+

An example can be found in the
`examples/ode_sir.cpp <https://github.com/SciCompMod/memilio/blob/main/cpp/examples/ode_sir.cpp>`_.
`examples/ode_sir.cpp <https://github.com/SciCompMod/memilio/blob/main/cpp/examples/sde_sirs.cpp>`_.


Overview of the ``ssirs`` namespace:
Expand Down
2 changes: 1 addition & 1 deletion docs/source/development.rst
Original file line number Diff line number Diff line change
Expand Up @@ -230,7 +230,7 @@ If using autopep8, e.g., of the Python plugin for Visual Studio Code or VSCodium

.. code::

"python.formatting.autopep8Args": ["--max-line-length", "79", "--experimental"]
"autopep8.args": ["--max-line-length", "79", "--experimental"]

to your corresponding ``settings.json``.

Expand Down
2 changes: 1 addition & 1 deletion docs/source/getting_started.rst
Original file line number Diff line number Diff line change
Expand Up @@ -207,4 +207,4 @@ For the latter, no regular testing is conducted. If you encounter errors, please

Further questions
~~~~~~~~~~~~~~~~~~~~~
If you have any further questions, please take a look at our :doc:`faq` and feel free to contact us via `e-mail <mailto:Martin.Kuehn@DLR.de>`_ or open an issue or discusion on `github <https://github.com/SciCompMod/memilio/>`_.
If you have any further questions, please take a look at our :doc:`faq` and feel free to contact us via `e-mail <mailto:Martin.Kuehn@DLR.de>`_ or open an issue or discussion on `github <https://github.com/SciCompMod/memilio/>`_.
2 changes: 1 addition & 1 deletion docs/source/python/m-simulation_common_patterns.rst
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
How to: Common patterns and guidlines
How to: Common patterns and guidelines
==========================================

We want to look at some common patterns developers will encounter when extending the ``memilio.simulation`` package and explain how to handle them.
Expand Down
2 changes: 1 addition & 1 deletion docs/source/python/m-simulation_model_usage.rst
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ pythonic interface.
Now you can use the usual data handling options and make use of the easy visualization tools that are part of Python.
Some plotting functions specific to MEmilio and created as part of the project are combined in the :doc:`MEmilio Plot Package <m-plot>`.

Additional ressources
Additional resources
---------------------

Further examples are provided at `examples/simulation <https://github.com/SciCompMod/memilio/blob/main/pycode/examples/simulation/>`_.
Expand Down
6 changes: 3 additions & 3 deletions docs/source/references.rst
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
References
===========

The following gives an overview on (peer-reviewed) publications extending or using MEmilio. If you would like to add a publication, `contact us <mailto:Martin.Kuehn@DLR.de>`.
The following gives an overview on (peer-reviewed) publications extending or using MEmilio. If you would like to add a publication, `contact us <mailto:Martin.Kuehn@DLR.de>`_.

Recently submitted publications
--------------------------------------

- Schmidt A, Zunker H, Heinlein A, Kühn MJ. (2025). *Graph Neural Network Surrogates to leverage Mechanistic Expert Knowledge towards Reliable and Immediate Pandemic Response*. arXiv. `arXiv:2411.06500 <https://arxiv.org/abs/2411.06500>`_
- Schmidt A, Zunker H, Heinlein A, Kühn MJ. (2025). *Graph Neural Network Surrogates to leverage Mechanistic Expert Knowledge towards Reliable and Immediate Pandemic Response*. arXiv. `arXiv:2411.06500 <https://arxiv.org/abs/2411.06500>`_
- Plötzke L, Wendler A, Schmieding R, Kühn MJ. (2024). *Revisiting the Linear Chain Trick in epidemiological models: Implications of underlying assumptions for numerical solutions*. Accepted for publication. `DOI:10.48550/arXiv.2412.09140 <https://doi.org/10.48550/arXiv.2412.09140>`_


Expand All @@ -15,7 +15,7 @@ Peer-reviewed publications

**2026**

- Wendler A, Plötzke L, Tritzschak H, Kühn MJ. (2026). *A nonstandard numerical scheme for a novel SECIR integro differential equation-based model with nonexponentially distributed stay times*. *Applied Mathematics and Cmputation* 509: 129636. `DOI:10.1016/j.amc.2025.129636 <https://doi.org/10.1016/j.amc.2025.129636>`_
- Wendler A, Plötzke L, Tritzschak H, Kühn MJ. (2026). *A nonstandard numerical scheme for a novel SECIR integro differential equation-based model with nonexponentially distributed stay times*. *Applied Mathematics and Computation* 509: 129636. `DOI:10.1016/j.amc.2025.129636 <https://doi.org/10.1016/j.amc.2025.129636>`_

**2025**

Expand Down
86 changes: 83 additions & 3 deletions docs/source/team.rst
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ Martin Kühn studied at University of Cologne, Germany, and Université de Montr
Henrik Zunker
^^^^^^^^^^^^^

.. image:: _static/team/max_mustermann.jpg
.. image:: https://martinkuehn.eu/research/images/henrik.png
:alt: Henrik Zunker
:width: 150px
:align: left
Expand Down Expand Up @@ -264,10 +264,86 @@ He is interested in the development of agent-based models for infectious disease

* `ORCID Profile: 0009-0007-9109-096X <https://orcid.org/0009-0007-9109-096X>`_


.. _former_core_developers:

Former Core Developers
----------------------

Daniel Abele
^^^^^^^^^^^^

**Research Focus:** Scientific Computing, Software Architecture, Ordinary and Partial Differential Equations

Daniel Abele is a research software engineer at the Institute of Software Technology at the German Aerospace Center (DLR) and was part of the MEmilio team from its beginnings in 2020 until 2024. As one of its leading software engineers, he contributed to the early architecture of the code, including ODE and agent based models, as well as to the development processes and infrastructure. He left the project to focus on his PhD in numerical simulation of continental ice sheets.

.. dropdown:: Selected Publications
:animate: fade-in-slide-down

* Kühn MJ, **Abele D**, Mitra T, Koslow W, Abedi M, et al. (2021). *Assessment of effective mitigation and prediction of the spread of SARS-CoV-2 in Germany using demographic information and spatial resolution*. *Mathematical Biosciences*. https://doi.org/10.1016/j.mbs.2021.108648

.. dropdown:: Links
:animate: fade-in-slide-down

* `ORCID Profile: 0000-0001-7021-1573 <https://orcid.org/0000-0001-7021-1573>`_


Margrit Klitz
^^^^^^^^^^^^^^

.. image:: https://martinkuehn.eu/research/images/margrit.png
:alt: Margrit Klitz
:width: 150px
:align: left
:class: developer-photo

**Research Focus:** High-Performance Computing, Data Management, Digitalization, Software Development

Margrit Klitz holds a PhD in mathematics from the University of Bonn. She worked in the High-Performance Computing department at the German Aerospace Center (DLR) before joining the German Center for Neurodegenerative Diseases (DZNE), where she led IT and data management for the Rhineland Study. Since 2025, she heads the group “Digitalisation, Software, and AI” at the Space Agency at DLR. In the MEmilio project, she made the very first commit and supported the team through project coordination, scientific writing, and proposal development for PANDEMOS and LOKI-Pandemics.

.. dropdown:: Links
:animate: fade-in-slide-down

* `ORCID Profile: 0000-0003-3657-4180 <https://orcid.org/0000-0003-3657-4180>`_



Agatha Schmidt
^^^^^^^^^^^^^

.. image:: https://martinkuehn.eu/research/images/agatha.png
:alt: Agatha Schmidt
:width: 150px
:align: left
:class: developer-photo

**Research Focus:** Machine Learning, Surrogate Modelling, Graph Neural Networks, High-Performance Computing

Agatha Schmidt completed her Master's degree at the University of Cologne in collaboration with the German Aerospace Center (DLR), where she worked on machine learning-based surrogate models for ODE-based systems. After graduating, she continued her research by writing a paper focused on the application of graph neural networks as surrogate models. She was part of the team from May 2022 to December 2024.

.. dropdown:: Selected Publications
:animate: fade-in-slide-down

* **Schmidt A**, Zunker H, Heinlein A, Kühn MJ. (2025). *Graph Neural Network Surrogates to leverage Mechanistic Expert Knowledge towards Reliable and Immediate Pandemic Response*. Submitted for publication. `arXiv:2411.06500 <https://arxiv.org/abs/2411.06500>`_

.. dropdown:: Links
:animate: fade-in-slide-down

* `ORCID Profile: 0009-0006-5766-8804 <https://orcid.org/0009-0006-5766-8804>`_


.. _contributors:

Contributors
------------
Further Active or Former Contributors
--------------------------------------

Paul Johannssen
^^^^^^^^^^^^^^^

**Research Focus:** ODE models, Runge-Kutta methods, reproduction numbers.

Paul Johannssen studied mathematics at the University of Bonn. He worked on the MEmilio project from March 2023 to March 2024 as a working student. In this time, he manually derived and implemented formulas in closed form for the computation of reproduction numbers in the ODE-based SEIR, SECIR, and SECIRVVS models.


We thank all contributors, who have contributed to MEmilio. For a complete list of contributors, please see our `GitHub Contributors page <https://github.com/SciCompMod/memilio/graphs/contributors>`_.

Expand Down Expand Up @@ -298,6 +374,10 @@ MEmilio has been supported by various project grants. Since 2020, MEmilio has be
* by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) under grant agreement 528702961,
* by German Federal Ministry of Education and Research under grant agreement 031L0319A and 031L0319B (Project AIMS).

.. |bmbf| image:: _static/funder/bmftr.jpg
:width: 200px
:alt: Bundesministerium für Forschung, Technologie und Raumfahrt

.. |helmholtz| image:: _static/funder/helmholtz.jpg
:width: 200px
:alt: Helmholtz Association
Expand Down