Recent Releases of memilio

memilio - v2.1.0

Added features / functionality: - Added a temporal hybrid ODE-ABM-based model - Added spatially resolved feedback simulation - Extended integrator classes and reimplemented SDE models - Adjusted memilio-generation for flow models and automatic differentiation - Added setup for performance monitoring with LIKWID - Introduction of a timing framework - Export TimeSeries objects into csv files - Added quarantine effectiveness parameter to ABM - C++ Code creation based on standardized formats for ODEs - Added GitHub bot to inform on new discussions

General changes: - Reworked ABM state transitions - Updated minimum and latest Ubuntu and Windows versions which are tested in CI - Fully reworked and extended documentation - Deactivated old GitHubPages - Enhanced testing logic in ABM - Improved trip addition in ABM - Changes in model initializations due to changes in provision of intensive care and SARS-CoV-2 vaccination data - Streamline code for reading in data in model specific IO files - Updated simple surrogate models - Renamed compartmentalmodel.h to compartmental_model.h

Corrections: - Corrected the different output on Mac - Fix population download handling - Property of MobilityParametersEdge was not accessible in python bindings

Minor changes: - Updated citations - Updated coding guidelines and pull request template - Cancel concurrent and redundant CI runs

Merged pull requests

  • 1243 Deactivate old github pages documentation by @mknaranja in https://github.com/SciCompMod/memilio/pull/1244
  • 1019 Adjust memilio-generation for flow models and automatic differentiation by @dr2001dlr in https://github.com/SciCompMod/memilio/pull/1153
  • 1264 Introduce likwid to memilio by @charlie0614 in https://github.com/SciCompMod/memilio/pull/1265
  • 1270 Documentation build fails by @kilianvolmer in https://github.com/SciCompMod/memilio/pull/1271
  • 17 Timing framework by @reneSchm in https://github.com/SciCompMod/memilio/pull/1179
  • 703 different output for Mac by @xsaschako in https://github.com/SciCompMod/memilio/pull/1285
  • 1268 Vaccination data reporting expired by @HenrZu in https://github.com/SciCompMod/memilio/pull/1269
  • 1246 Export TimeSeries into csv file by @HenrZu in https://github.com/SciCompMod/memilio/pull/1255
  • 1242 update simple surrogate model by @mhheger in https://github.com/SciCompMod/memilio/pull/1252
  • Bump Windows version in CI by @reneSchm in https://github.com/SciCompMod/memilio/pull/1298
  • 1108 Streamline code for reading in data in model specific IO files by @HenrZu in https://github.com/SciCompMod/memilio/pull/1163
  • 1300 Update surragete model test to work with new pyfakefs version by @xsaschako in https://github.com/SciCompMod/memilio/pull/1301
  • 1299 Fix population download handling by @HenrZu in https://github.com/SciCompMod/memilio/pull/1302
  • 1178 code creation based on standardised formats for ODEs by @kilianvolmer in https://github.com/SciCompMod/memilio/pull/1235
  • 1304 renamed compartmentalmodel.h to compartmental_model.h by @Spiritedswordsman in https://github.com/SciCompMod/memilio/pull/1305
  • 1233 further enhance read the docs by @mknaranja in https://github.com/SciCompMod/memilio/pull/1289
  • 1239 implement temporal hybrid model by @jubicker in https://github.com/SciCompMod/memilio/pull/1262
  • 1312 Accelerate documentation build by @HenrZu in https://github.com/SciCompMod/memilio/pull/1313
  • 1293 update secir groups surrogate models by @mhheger in https://github.com/SciCompMod/memilio/pull/1297
  • 1317 Property of MobilityParametersEdge not accessible in python bindings by @charlie0614 in https://github.com/SciCompMod/memilio/pull/1319
  • 1101 Extend integrator classes and reimplement SDE models. by @reneSchm in https://github.com/SciCompMod/memilio/pull/1296
  • 1277 Quarantine Effectiveness by @xsaschako in https://github.com/SciCompMod/memilio/pull/1282
  • 1310 Spatially resolved feedback simulation by @HenrZu in https://github.com/SciCompMod/memilio/pull/1311
  • 1327 add concurrency for CI by @xsaschako in https://github.com/SciCompMod/memilio/pull/1328
  • 1280 trip addition overhaul by @xsaschako in https://github.com/SciCompMod/memilio/pull/1281
  • 1250 enhance testing logic in abm by @xsaschako in https://github.com/SciCompMod/memilio/pull/1276
  • 1330 GitHub bot by @xsaschako in https://github.com/SciCompMod/memilio/pull/1331
  • 1306 further extend and review the documentation by @HenrZu in https://github.com/SciCompMod/memilio/pull/1314

New Contributors

  • @mhheger made their first contribution in https://github.com/SciCompMod/memilio/pull/1252

Full Changelog: https://github.com/SciCompMod/memilio/compare/v2.0.0...v2.1.0

- C++
Published by mknaranja 7 months ago

memilio - v2.0.0

Added features / functionality: - Integration of the SECIRTS model: a three immunity layer ODE model with waning immunity - Integration of diffusive ABM (dabm) - Integration stochastic metatpopulation model (smm) - Provision of age resolution for IDE model - Provision of local feedback mechanism for ODE models - Allow graph model for ABMs - Make IDE model compatible with graph - Use DIVI data to scale initial values for LCT model - Allow agents to die in hospital and when not in ICU - Make setinitial_flows() of IDE model usable with and without age resolution - Integration of new documentation

General changes: - Change member functions in Model class from public to private in IDE model - Update dependencies - minimum required cmake 3.11 -> 3.13 - spdlog 1.11.0 -> 1.15.0 - Eigen 3.3.9 -> 3.4.0 - JsonCpp 1.9.5 -> 1.9.6 - Temporarily fix CI by downgrading OS image - Print date object per default in ISO format when using spdlog - Rename public members of IDE model - Updated ABM readme - Reduce unnecessary logs and prints when running the examples - Add citation file - Add log for MSVC example runs - Rework data structure and rename mobility and vaccination file

Corrections: - Initialization of ICU compartments after July 2024 - Handle case when group size in LCT model is zero - Integrator was handled as adaptive if using small fixed step sizes - Use correct targets when setting compile options - Wrong index in ODE SEIR model - Ensure zero initialization for AD example - Add missing comment for pop in get_derivatives() - Bump minimum cmake versions in memilio-simulation and -generation

Minor changes: - Improvement of ABM software and unit tests - Bump download artifact version in CI - Update license headers

Merged pull requests

  • 1067 improve abm tests by @khoanguyen-dev in https://github.com/SciCompMod/memilio/pull/1141
  • Bump dawidd6/action-download-artifact from 2 to 6 in /.github/workflows by @dependabot in https://github.com/SciCompMod/memilio/pull/1149
  • 1144 handle case when group size is equal to 0 for the LCT model by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/1156
  • 323 SECIRTS model with waning immunity by @HenrZu in https://github.com/SciCompMod/memilio/pull/963
  • Fix CI by downgrading OS image by @reneSchm in https://github.com/SciCompMod/memilio/pull/1160
  • 379 implement IDE model with age resolution by @hatrit in https://github.com/SciCompMod/memilio/pull/1083
  • 1154 integrator is handled as adaptive if using small fixed step sizes by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/1155
  • 1133 Change member functions in Model class from public to private in IDE model by @annawendler in https://github.com/SciCompMod/memilio/pull/1166
  • 1167 Update some dependencies by @reneSchm in https://github.com/SciCompMod/memilio/pull/1168
  • 1170 Use correct targets when setting compile options by @reneSchm in https://github.com/SciCompMod/memilio/pull/1171
  • 1177 Update license header by @MaxBetzDLR in https://github.com/SciCompMod/memilio/pull/1181
  • 1185 wrong index in ode seir model by @kilianvolmer in https://github.com/SciCompMod/memilio/pull/1186
  • 1189 Ensure zero initialization for AD example by @mknaranja in https://github.com/SciCompMod/memilio/pull/1190
  • 1174 Use DIVI data to scale initial values for LCT model by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/1175
  • 1132 Rename public members of IDE model by @annawendler in https://github.com/SciCompMod/memilio/pull/1173
  • 1196 Add missing comment for pop in get_derivatives() by @kilianvolmer in https://github.com/SciCompMod/memilio/pull/1197
  • 1187 Make setinitialflows() of IDE model usable with and without age resolution by @annawendler in https://github.com/SciCompMod/memilio/pull/1188
  • 1191 Initialization of ICU compartments after July 2024 by @HenrZu in https://github.com/SciCompMod/memilio/pull/1192
  • 1075 Let persons die from hospital (non ICU) in the ABM by @khoanguyen-dev in https://github.com/SciCompMod/memilio/pull/1100
  • 646 use graph model with ABMs v3 by @jubicker in https://github.com/SciCompMod/memilio/pull/1085
  • 1159 add diffusive abm and smm by @jubicker in https://github.com/SciCompMod/memilio/pull/1162
  • 1195 Formatter for date to have consistent Format by @HenrZu in https://github.com/SciCompMod/memilio/pull/1198
  • 1204 Reduce unnecessary logs and prints when running the examples by @HenrZu in https://github.com/SciCompMod/memilio/pull/1205
  • 1206 Add CITATION.cff for Repository Citation Metadata by @HenrZu in https://github.com/SciCompMod/memilio/pull/1207
  • 1215 Preparation for readthedocs by @HenrZu in https://github.com/SciCompMod/memilio/pull/1217
  • 1222 Add cpp/memilio to doxyfile by @kilianvolmer in https://github.com/SciCompMod/memilio/pull/1223
  • 1220 Add log for msvc example runs by @HenrZu in https://github.com/SciCompMod/memilio/pull/1221
  • 1148 Rework Data structure and Rename Mobility and Vaccination file by @HenrZu in https://github.com/SciCompMod/memilio/pull/1150
  • 1226-fix-python-docstrings by @kilianvolmer in https://github.com/SciCompMod/memilio/pull/1227
  • 1224 extend read the docs documentation by @kilianvolmer in https://github.com/SciCompMod/memilio/pull/1231
  • Update ABM README.md by @DavidKerkmann in https://github.com/SciCompMod/memilio/pull/1234
  • 978 Local Feedback Mechanism by @HenrZu in https://github.com/SciCompMod/memilio/pull/1211
  • Remove debug output from SDE seirvv model by @reneSchm in https://github.com/SciCompMod/memilio/pull/1236
  • Bump minimum cmake versions in memilio-simulation and -generation by @reneSchm in https://github.com/SciCompMod/memilio/pull/1240
  • 410 Make IDE model compatible with graph by @annawendler in https://github.com/SciCompMod/memilio/pull/1203

New Contributors

  • @kilianvolmer made their first contribution in https://github.com/SciCompMod/memilio/pull/1186

Full Changelog: https://github.com/SciCompMod/memilio/compare/v1.3.0...v1.4.0

- C++
Published by mknaranja 11 months ago

memilio - v1.3.0

Added features / functionality:

  • Allow output of mobility data for Graph-ODE model
  • Added age resolution for LCT model
  • Implementation of Generalized Linear Chain Trick model
  • Allow variable dynamic NPI delay implementation
  • Update of Damping now allows negative coefficients (i.e., contact increases)
  • Added serialization to ABM
  • Added functions for a person in the ABM to choose whether to comply to mask,test and isolation
  • Allow explicit stepper wrappers (i.e., fixed step size numerical integrators)
  • Bind different numerical integrators for python
  • Allow download of population data for different years
  • Plot functions for AST in generation package

General changes:

  • Redesign of python bindings structure to improve typing
  • Reduction of exportinputdatacountytimeseries function
  • Reduce use of getsupportmax method in IDE model to reduce run time
  • Handle Epidata FutureWarnings

Corrections:

  • Error when compiling on Mac with new boost
  • Missing includes in python bindings
  • Deleted incorrect todo in ABM code
  • divNj in ODE models creates NaN values if subpopulation is zero
  • Get_default of parameter HighViralLoadProtectionFactor did not work as expected

Merged pull requests

  • 1105 redesign bindings structure to improve typing by @MaxBetzDLR in https://github.com/SciCompMod/memilio/pull/1106
  • 1113 missing includes in python bindings by @MaxBetzDLR in https://github.com/SciCompMod/memilio/pull/1114
  • 1098 bind different integrators for python by @MaxBetzDLR in https://github.com/SciCompMod/memilio/pull/1103
  • 1118 Update of Damping not working with negative coefficients by @HenrZu in https://github.com/SciCompMod/memilio/pull/1119
  • 1028 Reduce exportinputdatacountytimeseries by @HenrZu in https://github.com/SciCompMod/memilio/pull/1029
  • Delete incorrect todo in ABM code by @xsaschako in https://github.com/SciCompMod/memilio/pull/1122
  • 982 Make NPI delay implementation a parameter, set it and harmonize model advance functions by @mknaranja in https://github.com/SciCompMod/memilio/pull/984
  • Explicit stepper wrapper by @reneSchm in https://github.com/SciCompMod/memilio/pull/1127
  • 1123 population data for different years by @patricklnz in https://github.com/SciCompMod/memilio/pull/1124
  • 1102 divNj creates NaN values if subpopulation is 0 by @HenrZu in https://github.com/SciCompMod/memilio/pull/1104
  • 1039 Add functions for the Person to choose whether to comply to mask,test and isolation by @khoanguyen-dev in https://github.com/SciCompMod/memilio/pull/1040
  • 896 add age resolved lct model by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/1120
  • 1117 reduce use of get support max method in ide model to reduce run time by @annawendler in https://github.com/SciCompMod/memilio/pull/1129
  • 1084 Handle Epidata FutureWarnings by @patricklnz in https://github.com/SciCompMod/memilio/pull/1109
  • 1138 plot functions for AST in generation package by @dr2001dlr in https://github.com/SciCompMod/memilio/pull/1140
  • 652 Add serialization to ABM by @reneSchm in https://github.com/SciCompMod/memilio/pull/1072
  • 55 Write mobility data by @HenrZu in https://github.com/SciCompMod/memilio/pull/971
  • 932 Get_default of Parameter HighViralLoadProtectionFactor doesn't work as expected by @khoanguyen-dev in https://github.com/SciCompMod/memilio/pull/1068
  • 946 implement generalized linear chain trick by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/1058
  • 1021 Error when compiling on Mac with new boost by @reneSchm in https://github.com/SciCompMod/memilio/pull/1146

Full Changelog: https://github.com/SciCompMod/memilio/compare/v1.2.1...v1.3.0

- C++
Published by mknaranja about 1 year ago

memilio - v1.2.1

Added features / functionality:

  • Implementation of stochastic two variant SEIR models
  • Added delay in testing and planned mobility in ABM
  • ScoreP performance profile of ABM
  • gperftools profiler
  • New initialization method from flows for LCT model
  • Stub generation for python bindings

General changes:

  • Refactored ABM code: Rename EPI to MIO, migration to mobility, and World to Model
  • Replaced pointers in ABM by new structure
  • Make the LCT secir model a derived class of CompartmentalModel
  • New parameters that describe the multiplicative factor used for the TestAndTraceCapacity
  • Extended test for equilibrium of IDE model
  • Change return type of check_constraints function in the populations class to bool
  • Adapt parameters_io of IDE SECIR model
  • Small refacturing of epidata package
  • Remove necessity for credentials of population data download
  • Download boost libs with URL instead of git repo
  • Upgrade manylinux image used for python in CI
  • Workaround for github action checkout@v3

Corrections:

  • Add warning for end_date later than 2024-07-21 in intensive care data
  • OdeIntegrator could run indefinitely
  • Removed bug in getting test parameters in specific test derived from generic test

Merged pull requests

  • 1042 stub generation for python bindings by @MaxBetzDLR in https://github.com/SciCompMod/memilio/pull/1044
  • 992 download boost libs with URL instead of git repo by @dabele in https://github.com/SciCompMod/memilio/pull/1048
  • 848 scorep profile of abm by @charlie0614 in https://github.com/SciCompMod/memilio/pull/942
  • 1038 OdeIntegrator can run indefinitely v2 by @reneSchm in https://github.com/SciCompMod/memilio/pull/1049
  • Add gperftools profiler by @dabele in https://github.com/SciCompMod/memilio/pull/1054
  • 914 make the lct secir model a derived class of flowmodel by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/1055
  • 882 Parameters that describe the multiplicative factor used for the TestAndTraceCapacity by @HenrZu in https://github.com/SciCompMod/memilio/pull/1059
  • Fix a "use after free" warning with gcc 12.3.0 and above by @reneSchm in https://github.com/SciCompMod/memilio/pull/1060
  • workaround for github action checkout@v3 by @dabele in https://github.com/SciCompMod/memilio/pull/1063
  • Upgrade manylinux image used for python in CI by @dabele in https://github.com/SciCompMod/memilio/pull/1064
  • 897 new add initialization method from flows for lct model 1 by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/1005
  • Remove call to print_table from TestSeir.FlowSimulation by @reneSchm in https://github.com/SciCompMod/memilio/pull/1066
  • Extend Test for equilibrium of IDE Model #1037 by @hatrit in https://github.com/SciCompMod/memilio/pull/1050
  • 757 dont store pointers in the abm by @reneSchm in https://github.com/SciCompMod/memilio/pull/863
  • 1012 bug in getting testparameters in specific test derived from generictest by @khoanguyen-dev in https://github.com/SciCompMod/memilio/pull/1013
  • 1061 change return type of check_constraints function in the populations class to bool by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/1062
  • 916-refactor-epidata-to-support-ingestion-into-the-LOKI-database by @sudiphzi in https://github.com/SciCompMod/memilio/pull/1024
  • 1079 Handle Chunked-Encoding Downloads by @patricklnz in https://github.com/SciCompMod/memilio/pull/1080
  • Refactor ABM code: Rename EPI to MIO and migration to mobility and World to Model by @xsaschako in https://github.com/SciCompMod/memilio/pull/879
  • Increase accuracy of code coverage by @reneSchm in https://github.com/SciCompMod/memilio/pull/1076
  • 466 add delay in testing and planned migration by @khoanguyen-dev in https://github.com/SciCompMod/memilio/pull/866
  • 1032 implementation of stochastic two variant seir model by @nijawa in https://github.com/SciCompMod/memilio/pull/1047
  • 1087 adapt parameters_io of ide model by @annawendler in https://github.com/SciCompMod/memilio/pull/1095
  • 1092 add warning for end_date later than 2024-07-21 in divi data by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/1094
  • 1073 Remove credentials from Population Data Download by @patricklnz in https://github.com/SciCompMod/memilio/pull/1074

Full Changelog: https://github.com/SciCompMod/memilio/compare/v1.2.0...v1.2.1

- C++
Published by mknaranja over 1 year ago

memilio - v1.2.0

Added features / functionality:

  • Stochastic differential equation based SIR and SEIR models
  • Linear Chain Trick ODE-based model with initialization methods for real world data
  • Automatic differentiation for ODE-based models and dynamic optimization examples
  • Allow contact increase for simulation of larger events
  • Allow flexible start day in IDE SECIR model
  • Added seasonality for IDE SECIR model
  • Alternative computation of compartments in IDE SECIR
  • Implement initialization scheme for flows in IDE SECIR model
  • Add Gamma distribution and other parameters to state age function for IDE models
  • Python support for ODE SECIRVVS model
  • Python support for 2021 metapopulation/Graph-ODE SECIRVVS simulation
  • Age group resolution for ODE SIR and SEIR models
  • Use ccache in CI for linux builds

General changes:

  • Use times for exposed and infected, no symptoms state in particular ODE models instead of SerialInterval and IncubationTime
  • Updated CI actions
  • Updated epidata readme
  • Improve IDE SECIR model readme
  • Handle pandas read excel engines
  • Bundle the boost git repo instead of providing a targz archive
  • Streamline ODE SECIR python code

Corrections:

  • Corrected handling of minimal step size in numerical integration
  • Corrected functionality of IDE SECIR model example
  • Prevent NaNs in newly added SDE models
  • Resolve size_t underflow in dynamic NPIs
  • Fix failing RKI urls
  • Make python serialization working again
  • Corrected IDE SECIR model simulation for certain conditions
  • Corrected gcc compiler version in CI

Merged pull requests

  • 949 Correct handling of dt_min in integrators by @reneSchm in https://github.com/SciCompMod/memilio/pull/960
  • 937 update CI actions by @patricklnz in https://github.com/SciCompMod/memilio/pull/938
  • 964 Times for Exposed and INS instead of SerialInterval and IncubationTime by @HenrZu in https://github.com/SciCompMod/memilio/pull/967
  • Add workaround to fix the CI by @reneSchm in https://github.com/SciCompMod/memilio/pull/969
  • 893 add initialization method with real data for lct model by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/920
  • Revert "Add workaround to fix the CI (#969)" by @reneSchm in https://github.com/SciCompMod/memilio/pull/974
  • 958 implement a check for the results of the initialization by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/959
  • 953 Implement basic stochastic equation based model by @nijawa in https://github.com/SciCompMod/memilio/pull/954
  • 947 example for ide secir model not working as expected by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/948
  • 793 add seasonality to ide model by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/972
  • 956 update Epidata Readme by @patricklnz in https://github.com/SciCompMod/memilio/pull/957
  • 910 Handle pandas read excel engines by @patricklnz in https://github.com/SciCompMod/memilio/pull/940
  • 300 python bindings for new vaccination model by @MaxBetzDLR in https://github.com/SciCompMod/memilio/pull/906
  • 987 Start print_table() with a line break by @mknaranja in https://github.com/SciCompMod/memilio/pull/989
  • 945 Allow contact increase for simulation of larger events by @HenrZu in https://github.com/SciCompMod/memilio/pull/975
  • 988 info on sucessful adaptive step sizing is also shown for fixed step size integrators by @reneSchm in https://github.com/SciCompMod/memilio/pull/996
  • Minor follow up patch to issue 988 by @reneSchm in https://github.com/SciCompMod/memilio/pull/1001
  • 965 use int instead of unsigned int in lct infection state by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/1002
  • 977 remove t0 from simulation class and allow flexible start times in model by @annawendler in https://github.com/SciCompMod/memilio/pull/979
  • 997 Resolve size_t underflow while removing dublicates in dynamic NPIs by using int by @HenrZu in https://github.com/SciCompMod/memilio/pull/998
  • 983 bundle the boost git repo instead of using the targz archiv by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/985
  • 1006 Prevent NaNs in SDE models by @reneSchm in https://github.com/SciCompMod/memilio/pull/1008
  • 990 run 2021 simulation in python by @MaxBetzDLR in https://github.com/SciCompMod/memilio/pull/991
  • 981 Fix failing RKI urls by @patricklnz in https://github.com/SciCompMod/memilio/pull/1007
  • 675 alternative computation of compartments in IDE model by @annawendler in https://github.com/SciCompMod/memilio/pull/702
  • 610 implement initialization scheme for flows by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/952
  • 976 improve the documentation of the ide secir model by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/1000
  • 1016 use interpolatesimulationresult for timeseries in secirvvs python by @HenrZu in https://github.com/SciCompMod/memilio/pull/1017
  • 869 default values of agegroupgotoschoolwork abm parameters by @khoanguyen-dev in https://github.com/SciCompMod/memilio/pull/973
  • 905 add age group resolution to seir and sir model by @johapau in https://github.com/SciCompMod/memilio/pull/911
  • 899 new add gamma distribution and other parameters to state age function 1 by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/1004
  • 1034 ide model simulation does not work under some conditions by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/1035
  • 636 make python serialization usable again by @MaxBetzDLR in https://github.com/SciCompMod/memilio/pull/761
  • 894 Implement dynamic optimization by @hannemann-tamas in https://github.com/SciCompMod/memilio/pull/895
  • 1022 wrong compiler version in ci for gcc by @MaxBetzDLR in https://github.com/SciCompMod/memilio/pull/1023
  • 944 streamline secir python code by @MaxBetzDLR in https://github.com/SciCompMod/memilio/pull/1041
  • 305 add ccache to linux build by @dabele in https://github.com/SciCompMod/memilio/pull/994

Full Changelog: https://github.com/SciCompMod/memilio/compare/v1.1.0...v1.2.0

- C++
Published by mknaranja over 1 year ago

memilio - MEmilio v1.1.0

Added features / functionality: - Graph simulation with metapopulation model for Munich - Computation of reproduction number for ODE SECIR model - Machine learnt surrogate model for ODE SECIR model with multiple age groups and contact change points - Linear Chain Trick SECIR model - New initialization for IDE model - Unit Tests with OpenMP

Corrections: - Correct selection of specialized simulation and advance functions in python bindings - Corrections for new MSVC

Other: - Expanded tests for python bindings simulations - Small changes and fixes (logo, pull request template, ...)

Merged pull requests

  • remove experimental benchmark pipeline by @dabele in https://github.com/SciCompMod/memilio/pull/878
  • 867 pr template by @xsaschako in https://github.com/SciCompMod/memilio/pull/876
  • 721 Munich graph sim by @jubicker in https://github.com/SciCompMod/memilio/pull/791
  • 677 final version secir reproduction number by @johapau in https://github.com/SciCompMod/memilio/pull/858
  • 402 Surrogate model implementation with multiple age groups and dampings by @HenrZu in https://github.com/SciCompMod/memilio/pull/562
  • 885 Compatibility of specialized simulation and advance functions in Secir and Secirvvs model with flows by @HenrZu in https://github.com/SciCompMod/memilio/pull/889
  • Update pullrequesttemplate.md by @mknaranja in https://github.com/SciCompMod/memilio/pull/903
  • 367 responsibility of testing schemes regarding quarantine by @xsaschako in https://github.com/SciCompMod/memilio/pull/890
  • replaced print functions by print_table by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/900
  • 888 Make Apply_variant function more generic and fix issue with default value by @HenrZu in https://github.com/SciCompMod/memilio/pull/904
  • 720 config file for data downloads by @patricklnz in https://github.com/SciCompMod/memilio/pull/902
  • 921 Improve PopulationData Download by @patricklnz in https://github.com/SciCompMod/memilio/pull/922
  • Fix memilio logo in doxygen documentation by @reneSchm in https://github.com/SciCompMod/memilio/pull/926
  • 271 expand tests of the python bindings by @MaxBetzDLR in https://github.com/SciCompMod/memilio/pull/605
  • 918 add function to change the tolerance in ide model by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/919
  • fix parameter rendering by doxygen by @reneSchm in https://github.com/SciCompMod/memilio/pull/927
  • 934 Add MEmilio favicon to github pages by @mknaranja in https://github.com/SciCompMod/memilio/pull/935
  • 892 implement simple lct model by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/915
  • 898 change test for valid transition distibution from ide model by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/913
  • 769 new initialization for ide model by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/770
  • Run unit tests with OpenMP in CI by @dabele in https://github.com/SciCompMod/memilio/pull/870
  • 950 build cpp msvc debug latest fails at the main branch by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/951
  • 928 add a flow chart for the lct model by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/943
  • 936 implement the class infectionstate of the lct model more efficiently by @lenaploetzke in https://github.com/SciCompMod/memilio/pull/941

Full Changelog: https://github.com/SciCompMod/memilio/compare/v1.0.0...v1.1.0

- C++
Published by mknaranja almost 2 years ago

memilio - MEmilio v1.0.0

MEmilio implements various models for infectious disease dynamics, from simple compartmental (ODE) models through Integro-Differential equation-based (IDE) models (sometimes also denoted "age of infection models") to agent- or individual-based models (ABMs). Its modular design allows the combination of different models with different mobility patterns. Through efficient implementation and parallelization, MEmilio brings cutting edge and compute intensive epidemiological models to a large scale, enabling a precise and high-resolution spatiotemporal infectious disease dynamics.

In version 1.0.0, we publish:

Basic models (with local focus or without spatial resolution): - four different ODE-based models from simple SIR to extended models with three subpopulations of different immunity levels and eight different compartments from asymptomatic to severe and critical disease states - two IDE-based models in which more realistic transmission and compartment stays can be realized - one agent-based model (ABM) which, due to its object-oriented implementation, allows for simulation of different immunity levels and multiple virus (variants) --> All models can be resolved for demographic features such as age or income.

Inflow and outflow computation for compartmental models Basic compartmental models inherit from either a parental CompartmentalModel or a FlowModel so that new ODE-based models with standard analyses tools can be implemented time-efficient. In contrast to classical implementations of ODE-based models, FlowModels ensure a continuous computation of inflows and outflows of the compartments such that, e.g., new hospitalizations can be tracked easily.

Mobility concepts which leverage basic models to spatially resolved models - A deterministic mobility concept with predefined round-trip trajectories. - A stochastic mobility concept which allows for non-deterministic mobility.

Parameters and demography Parameters and demography are implemented by generic concepts such that they can be easily extended to more general lists of parameters or additional stratifications like age or income.

Ensemble run concepts Via standardized implementations, parameter sampling and ensemble run simulations can be conducted to assess uncertainty of the particular model outcomes.

Optimizations - MPI-parallel implementation of ensemble runs for parameter sampling for ODE-based models - OpenMP-parallel implementation of agent-based models - Optimizations towards compile-time evaluation of software parts.

Helpers, utilities, math, ... MEmilio also provides a lot of mathematical algorithms, helper tools, and utilities and to simulate or analyze results.

Tests and benchmarks The MEmilio C++ backend is largely covered by software and unit tests (>95%) and benchmarks for some models are already available. A continuous integration pipeline ensures functionality of the software.

Python frontend to efficient C++ backend To open MEmilio to python developers, a variety of implemented C++ models can already be called from python via the memilio-simulation package.

Python scripts for Sars-CoV-2 and demographic data In order to run simulations for Sars-CoV-2 in Germany, several official data sources can be downloaded and postprocessed uniformly by the memilio-epidata package.

Model code generation Due to the standardized structure of compartmental models, a part of new model code can be automatically created via the memilio-generation package.

Surrogate modeling With the memilio-surrogatemodel package, expert models will be considered to be replaced by artificial intelligence and neural networks.

Visualization MEmilio also already provides certain tools for visualization of simulation results.

In order to understand MEmilio, a lot of examples have already been implemented.

MEmilio quality control via detailed review processes ensures validation of implemented code concepts by independent developers.

For more details, see the readmes on https://github.com/SciCompMod/memilio in the particular (sub)directories.

- C++
Published by mknaranja about 2 years ago