pySODM: Simulating and Optimizing Dynamical Models in Python 3
Abstract
In this work, we present our generic framework to construct, simulate, and calibrate dynamical systems in Python 3. Its goal is to reduce the time it takes to implement a dynamical system with -dimensional states represented by coupled ordinary differential equations (ODEs), simulate the system deterministically or stochastically, and, calibrate the system using n-dimensional data. We demonstrate our code's capabilities by building three models in the context of two case studies. First, we forecast the yields of the enzymatic esterification reaction of D-glucose and lauric acid, performed in a continuous-flow, packed-bed reactor. The model yields a satisfactory description of the reaction yields under different flow rates and can be applied to design a viable process. Second, we build a stochastic, age-stratified model to make forecasts on the evolution of influenza in Belgium during the 2017-2018 season. Using only limited data, our simple model was able to make a fairly accurate assessment of the future course of the epidemic. By presenting real-world case studies from two scientific disciplines, we demonstrate our code's applicability across domains.
Cite
@article{arxiv.2301.10664,
title = {pySODM: Simulating and Optimizing Dynamical Models in Python 3},
author = {Tijs W. Alleman and Christian Stevens and Jan M. Baetens},
journal= {arXiv preprint arXiv:2301.10664},
year = {2023}
}
Comments
Final version, published in the Journal of Computational Science