Releases: SciCompMod/memilio
v2.4.1
Added features / functionality:
- (LCT) implement possibility of death from hospitalization without intensive care
Minor changes:
- Windows VS2026 migration
- Move build files into pycode/memilio-simulation and update actions
Merged pull requests
- 1571 Windows VS2026 migration by @HenrZu in #1572
- 1547 (LCT) implement possibility of death from hospitalization without intensive care by @annawendler in #1556
- Move build files into pycode/memilio-simulation and update actions by @reneSchm in #1566
Full Changelog: v2.4.0...v2.4.1
v2.4.0
Added features / functionality:
- Added generic country simulation that automatically downloads contact data for various countries from POLYMOD
- ODE/IDE-based models with hospitalization: Added possibility of death from hospitalization without intensive care
- Added ODE SEIR metapopulation model with implicit mobility
- Added Python bindings for ODE SEIR metapopulation model
- Added PyPI package for memilio-simulation
- Added Graph Neural Networks
- Added ODE model generator from yaml and toml template
General changes:
- Improved functionality for DynamicNPIs
- Use of ContactMatrix instead of CustomIndexArray for contact rates of ABM
- Move output of examples to
example_results
Corrections:
- Corrected macOS import failure due to incorrect runtime library lookup (RPATH)
- Fixed typos and bugs in documentation
- Harmonized description of time series, infection states and other keywords in documentation
- Added ScalarType to code examples in the documentation
- Corrected use of the ABMs RNG after initialization
- Corrected operation to act only on current system state and not on result time series in SMM
Minor changes:
- Build benchmarks in CI
- Switched to Doxysphinx
- Removed log outputs from testing
- Improved documentation of TypeSafe and derived types
- Extended documentation
- Build and test on MacOS
- Replaced the deprecated FetchContent_Populate and increased CMake minimum version to 3.18.
Merged pull requests
- 1478 Switch to Doxysphinx by @kilianvolmer in #1504
- 1463 Remove log outputs from testing by @reneSchm in #1464
- Add binding for clear_dampings by @HenrZu in #1509
- Replace contact rates of ABM by ContactMatrix by @charlie0614 in #1516
- 1442 Generic country Simulation by @HenrZu in #1466
- 1520 Operate only on current system state and not on result time series in SMM by @jubicker in #1521
- 1527 Improve documentation of TypeSafe and derived types by @HenrZu in #1528
- 1508 (ODE) implement possibility of death from hospitalization without intensive care by @HenrZu in #1526
- 1139 introduce improved GNN surrogate models by @mhheger in #1378
- 1400 The ABMs RNG is not used after initialization by @reneSchm in #1534
- 1027 Use FetchContent_MakeAvailable instead of FetchContent_Populate by @reneSchm in #1535
- 1045 Build benchmarks in CI by @HenrZu in #1538
- Extend documentation and fix typos and bugs in documentation by @mknaranja in #1531
- 1003 implement ODE SEIR metapopulation model by @charlie0614 in #1273
- 1519 memilio-simulation PyPI package by @annawendler in #1495
- 1540 (IDE) Implement possibility of death from hospitalization without intensive care by @annawendler in #1542
- 1543 harmonize description of time series infection states etc in documentation by @jubicker in #1545
- 1549 macOS import fails due to incorrect runtime library lookup (RPATH) by @HenrZu in #1550
- 1522 Improve DynamicNPI structure through harmonization across models and more options by @mknaranja in #1523
- 1551 Build and test on MacOS by @reneSchm in #1552
- 1429 move example output to example_results by @reneSchm in #1544
- 1462 Add ScalarType to Code examples in the documentation by @annawendler in #1546
- 1512 Generate ODE models from yaml template by @HenrZu in #1518
- 1560 More supported countries in getContactData by @HenrZu in #1562
- 1003 Add ode seir metapop bindings by @charlie0614 in #1554
- 1564 Dynamic NPIs can create short lifting gaps at renewal time by @HenrZu in #1567
Full Changelog: v2.3.0...v2.4.0
v2.3.0
Added features / functionality:
- Added SEIRDB model for EBOLA
- Added Influenza model
- Added LCT SECIR model with two disease strains
- Enable SMM Model with generic indices
- Generalize ParameterStudy for ODE models in python bindings
- Simplify parameter IO and graph building with constructor
- Make timers MPI compatible
- Added Python bindings for get_times() function
- Improved compile time of flows
General changes:
- Deactivate SBML support by default
- Add CMake option to allow building python simulation without HDF5
- Accelerate add_edge() for large graphs
- Normalize transitions in ode MSEIRS4 model
- Migrate Python packages to use pyproject.toml for builds
- Enable numpy versions 1.22-1.24
- Update Python Version in CI to 3.12
- Read result from HDF5 files uses lexical order
Corrections:
- Correction for SMM model output misaligned with time points
- Detection of duplicate flows in the FlowModel
- Fix documentation build after migration to pyproject toml
- Use correct ParameterStudy in graph examples of Python bindings
- Change default value of MaxRiskOfInfectionFromSymptomatic
- Correct non-ageresolved indices in IDE-SECIR model
- Correction of interpolate_simulation_result which did not yield consistent timepoints
- Correction of memilio.simulation incompatible with pandas 3
Minor changes:
- Improve messages related to parameter checks
- Update citation file
- General documentation improvement
- Modernizations and minor fixes in core C++ library
- Minor additions to how infections in the ABM work
- Revise README for data directory clarification
- Updated holiday data
Merged pull requests
- Improve messages related to parameter checks by @kilianvolmer in #1414
- 1420 Implement SEIRDB model by @HenrZu in #1424
- 1390 further improve documentation by @mknaranja in #1427
- 1423 Generalize ParameterStudy for ODE models in python bindings by @reneSchm in #1428
- 1386 implement influenza model by @HenrZu in #1387
- 1410 Accelerate add_edge for large graphs by @kilianvolmer in #1411
- 1433 partial convert of base types for parameters io of graph by @MaxBetzDLR in #1434
- 1438 normalize transitions in ode mseirs4 model by @HenrZu in #1439
- 1443 Change working_population type to FP by @julianlitz in #1444
- 1110 Migrate Python packages to use pyproject.toml for builds by @HenrZu in #1409
- Fix rtd build after migration to pyproject toml by @HenrZu in #1445
- Allow newer Numpy versions by @kilianvolmer in #1447
- Fixed problem with undefined variable by @nijawa in #1453
- 1454 Use correct ParameterStudy in graph examples of python bindings by @reneSchm in #1455
- 1456 Read result from HDF5 files uses lexical order by @MaxBetzDLR in #1457
- 1272 Holiday data is outdated by @kilianvolmer in #1465
- 1449 Update Python Version by @kilianvolmer in #1450
- 1470 Update license header by @kilianvolmer in #1471
- Change default value of MaxRiskOfInfectionFromSymptomatic by @charlie0614 in #1474
- Improve compile time of Flows by @reneSchm in #1476
- 1451 interpolate_simulation_result does not yield consistent timepoints by @reneSchm in #1482
- 1294 add LCT SECIR model with two disease strains by @an-jung in #1340
- 1279 minor additions to how infections work by @DavidKerkmann in #1320
- 1469 Correct nonageresolved indices in IDE-SECIR model by @annawendler in #1472
- Revise README for data directory clarification by @mknaranja in #1488
- Updates and Fixes in the documentation by @kilianvolmer in #1481
- 1483 memilio.simulation incompatible with pandas 3 by @kilianvolmer in #1484
- 1491-Update MEmilio citation by @kilianvolmer in #1492
- 1341 SMM Model with generic indices by @kilianvolmer in #1460
- 1493 Bindings for get_times() function by @HenrZu in #1494
- 1467 Make timers MPI compatible by @reneSchm in #1468
- 1496 smm model output is misaligned with time points by @kilianvolmer in #1497
- 1498 Detection of non unique flows in the FlowModel by @HenrZu in #1499
- 1486 Modernizations and minor fixes in core C++ library by @reneSchm in #1487
- 1501 Add CMake option to allow building without HDF5 by @HenrZu in #1502
- 1505 Do not include SBML by default by @reneSchm in #1506
New Contributors
Full Changelog: v2.2.0...v2.3.0
v2.2.0
Added features / functionality:
- Added RSV model
- Added ABM parameter study
- Support for IO functionality with single age group for ODE SECIR
- Enabled vaccination data output for NUTS1 and NUTS2 stratifications in Germany
- Extended automatic differentiation (AD) to support to the SECIRVVS model
- Added read_graph to python bindings
- Added Python interface for SDE SIR type models
- Added Geographic location to all of MEmilio
General changes:
- Added return value policy to TimeSeries in python bindings
- Deleted simulation folder after porting to https://github.com/SciCompMod/memilio-simulations/
- When calling print_table from python, the output is now direclty printed in the console per default.
- Added copy constructable simulation for ODE models (changed handling of IntegratorCore)
- Changed python CI to build wheels without SDist
- Changed install requirements for readthedocs to build in two steps
- Added default options and a builder to CLI
- Introduced a naming scheme for concepts
- Added normalization of exposure rate for ABM
- Adjusted epidata code to new NUTS3 file structure
- Updated IDE-SECIR examples and improved documentation
Corrections:
- Fixed the initialization of recovered in ODE SECIR
- Improved consistency of floating-point types
- Fixed potential use of wrong dt_max in ControlledStepperWrapper
- Fixed missing SMM update of internal waiting time at the end of advance
- Fixed file leak in test_mobility_io
- Fixed incorrect overload detection and type mismatch in
test_commuters - Added missing members to ABM serialization
Minor changes:
- Allow threshold for code coverage
- Updated citations
- Extended documentation
Merged pull requests
- Add return_value_policy by @MaxBetzDLR in #1344
- 1324 Direclty print output from print_table in python by @HenrZu in #1325
- 1288 Delete simulation folder by @HenrZu in #1323
- 1348 Fix initialization recovered ode secir by @HenrZu in #1353
- 1356 Allow threshold for code coverage by @HenrZu in #1357
- 1321 copy constructable simulation by @MaxBetzDLR in #1345
- 1361 python CI: Build wheels without SDist by @reneSchm in #1360
- 1315 support IO functionality with single age group for ODE SECIR by @HenrZu in #1354
- Install requirements for readthedocs build in two steps by @HenrZu in #1362
- 1363-add-output-of-germany-vaccination-data by @MaxBetzDLR in #1364
- 1018 use floating point types consistently by @julianlitz in #1307
- 1365 Potential use of wrong dt_max in ControlledStepperWrapper by @reneSchm in #1366
- Update citation for newest release by @HenrZu in #1367
- 1350 Implement RSV model by @HenrZu in #1352
- 1379 Add read_graph to python bindings by @HenrZu in #1380
- 1337-extend-the-documentation by @kilianvolmer in #1338
- 1379 Add default options and a builder to CLI by @reneSchm in #1377
- SMM Update internal waiting time at the end of advance by @jubicker in #1397
- Fix file leak in test_mobility_io by @reneSchm in #1401
- 1382 Fix incorrect overload detection and type mismatch in
test_commutersby @julianlitz in #1394 - 1351 pymio interface for sde sir type models by @MaxBetzDLR in #1371
- 1274 normalizing of exposure rate by @DavidKerkmann in #1322
- Fix Readthedocs build by @HenrZu in #1403
- 1404 Adjust epidata code to new nuts3 file structure by @HenrZu in #1405
- 1342 make geographic location available to all of MEmilio by @kilianvolmer in #1346
- 1392 update IDE-SECIR examples and improve some documentation by @annawendler in #1402
- Add missing members to ABM serialization by @reneSchm in #1408
- 1407 Introduce a naming scheme for concepts by @reneSchm in #1412
- 468 ABM parameter study by @reneSchm in #1395
New Contributors
- @julianlitz made his first contribution in #1307
Full Changelog: v2.1.0...v2.2.0
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 #1244
- 1019 Adjust memilio-generation for flow models and automatic differentiation by @dr2001dlr in #1153
- 1264 Introduce likwid to memilio by @charlie0614 in #1265
- 1270 Documentation build fails by @kilianvolmer in #1271
- 17 Timing framework by @reneSchm in #1179
- 703 different output for Mac by @xsaschako in #1285
- 1268 Vaccination data reporting expired by @HenrZu in #1269
- 1246 Export TimeSeries into csv file by @HenrZu in #1255
- 1242 update simple surrogate model by @mhheger in #1252
- Bump Windows version in CI by @reneSchm in #1298
- 1108 Streamline code for reading in data in model specific IO files by @HenrZu in #1163
- 1300 Update surragete model test to work with new pyfakefs version by @xsaschako in #1301
- 1299 Fix population download handling by @HenrZu in #1302
- 1178 code creation based on standardised formats for ODEs by @kilianvolmer in #1235
- 1304 renamed compartmentalmodel.h to compartmental_model.h by @Spiritedswordsman in #1305
- 1233 further enhance read the docs by @mknaranja in #1289
- 1239 implement temporal hybrid model by @jubicker in #1262
- 1312 Accelerate documentation build by @HenrZu in #1313
- 1293 update secir groups surrogate models by @mhheger in #1297
- 1317 Property of MobilityParametersEdge not accessible in python bindings by @charlie0614 in #1319
- 1101 Extend integrator classes and reimplement SDE models. by @reneSchm in #1296
- 1277 Quarantine Effectiveness by @xsaschako in #1282
- 1310 Spatially resolved feedback simulation by @HenrZu in #1311
- 1327 add concurrency for CI by @xsaschako in #1328
- 1280 trip addition overhaul by @xsaschako in #1281
- 1250 enhance testing logic in abm by @xsaschako in #1276
- 1330 GitHub bot by @xsaschako in #1331
- 1306 further extend and review the documentation by @HenrZu in #1314
New Contributors
Full Changelog: v2.0.0...v2.1.0
v2.0.0
Added features / functionality:
- Integration of the SECIRTS model: a three immunity layer ODE model with waning immunity
- Integration of diffusive ABM (d_abm)
- 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 set_initial_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 #1141
- Bump dawidd6/action-download-artifact from 2 to 6 in /.github/workflows by @dependabot in #1149
- 1144 handle case when group size is equal to 0 for the LCT model by @lenaploetzke in #1156
- 323 SECIRTS model with waning immunity by @HenrZu in #963
- Fix CI by downgrading OS image by @reneSchm in #1160
- 379 implement IDE model with age resolution by @hatrit in #1083
- 1154 integrator is handled as adaptive if using small fixed step sizes by @lenaploetzke in #1155
- 1133 Change member functions in Model class from public to private in IDE model by @annawendler in #1166
- 1167 Update some dependencies by @reneSchm in #1168
- 1170 Use correct targets when setting compile options by @reneSchm in #1171
- 1177 Update license header by @MaxBetzDLR in #1181
- 1185 wrong index in ode seir model by @kilianvolmer in #1186
- 1189 Ensure zero initialization for AD example by @mknaranja in #1190
- 1174 Use DIVI data to scale initial values for LCT model by @lenaploetzke in #1175
- 1132 Rename public members of IDE model by @annawendler in #1173
- 1196 Add missing comment for pop in get_derivatives() by @kilianvolmer in #1197
- 1187 Make set_initial_flows() of IDE model usable with and without age resolution by @annawendler in #1188
- 1191 Initialization of ICU compartments after July 2024 by @HenrZu in #1192
- 1075 Let persons die from hospital (non ICU) in the ABM by @khoanguyen-dev in #1100
- 646 use graph model with ABMs v3 by @jubicker in #1085
- 1159 add diffusive abm and smm by @jubicker in #1162
- 1195 Formatter for date to have consistent Format by @HenrZu in #1198
- 1204 Reduce unnecessary logs and prints when running the examples by @HenrZu in #1205
- 1206 Add CITATION.cff for Repository Citation Metadata by @HenrZu in #1207
- 1215 Preparation for readthedocs by @HenrZu in #1217
- 1222 Add cpp/memilio to doxyfile by @kilianvolmer in #1223
- 1220 Add log for msvc example runs by @HenrZu in #1221
- 1148 Rework Data structure and Rename Mobility and Vaccination file by @HenrZu in #1150
- 1226-fix-python-docstrings by @kilianvolmer in #1227
- 1224 extend read the docs documentation by @kilianvolmer in #1231
- Update ABM README.md by @DavidKerkmann in #1234
- 978 Local Feedback Mechanism by @HenrZu in #1211
- Remove debug output from SDE seirvv model by @reneSchm in #1236
- Bump minimum cmake versions in memilio-simulation and -generation by @reneSchm in #1240
- 410 Make IDE model compatible with graph by @annawendler in #1203
New Contributors
- @kilianvolmer made their first contribution in #1186
Full Changelog: v1.3.0...v1.4.0
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 export_input_data_county_timeseries function
- Reduce use of get_support_max 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 #1106
- 1113 missing includes in python bindings by @MaxBetzDLR in #1114
- 1098 bind different integrators for python by @MaxBetzDLR in #1103
- 1118 Update of Damping not working with negative coefficients by @HenrZu in #1119
- 1028 Reduce export_input_data_county_timeseries by @HenrZu in #1029
- Delete incorrect todo in ABM code by @xsaschako in #1122
- 982 Make NPI delay implementation a parameter, set it and harmonize model advance functions by @mknaranja in #984
- Explicit stepper wrapper by @reneSchm in #1127
- 1123 population data for different years by @patricklnz in #1124
- 1102 divNj creates NaN values if subpopulation is 0 by @HenrZu in #1104
- 1039 Add functions for the Person to choose whether to comply to mask,test and isolation by @khoanguyen-dev in #1040
- 896 add age resolved lct model by @lenaploetzke in #1120
- 1117 reduce use of get support max method in ide model to reduce run time by @annawendler in #1129
- 1084 Handle Epidata FutureWarnings by @patricklnz in #1109
- 1138 plot functions for AST in generation package by @dr2001dlr in #1140
- 652 Add serialization to ABM by @reneSchm in #1072
- 55 Write mobility data by @HenrZu in #971
- 932 Get_default of Parameter HighViralLoadProtectionFactor doesn't work as expected by @khoanguyen-dev in #1068
- 946 implement generalized linear chain trick by @lenaploetzke in #1058
- 1021 Error when compiling on Mac with new boost by @reneSchm in #1146
Full Changelog: v1.2.1...v1.3.0
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 #1044
- 992 download boost libs with URL instead of git repo by @dabele in #1048
- 848 scorep profile of abm by @charlie0614 in #942
- 1038 OdeIntegrator can run indefinitely v2 by @reneSchm in #1049
- Add gperftools profiler by @dabele in #1054
- 914 make the lct secir model a derived class of flowmodel by @lenaploetzke in #1055
- 882 Parameters that describe the multiplicative factor used for the TestAndTraceCapacity by @HenrZu in #1059
- Fix a "use after free" warning with gcc 12.3.0 and above by @reneSchm in #1060
- workaround for github action checkout@v3 by @dabele in #1063
- Upgrade manylinux image used for python in CI by @dabele in #1064
- 897 new add initialization method from flows for lct model 1 by @lenaploetzke in #1005
- Remove call to print_table from TestSeir.FlowSimulation by @reneSchm in #1066
- Extend Test for equilibrium of IDE Model #1037 by @hatrit in #1050
- 757 dont store pointers in the abm by @reneSchm in #863
- 1012 bug in getting testparameters in specific test derived from generictest by @khoanguyen-dev in #1013
- 1061 change return type of check_constraints function in the populations class to bool by @lenaploetzke in #1062
- 916-refactor-epidata-to-support-ingestion-into-the-LOKI-database by @sudiphzi in #1024
- 1079 Handle Chunked-Encoding Downloads by @patricklnz in #1080
- Refactor ABM code: Rename EPI to MIO and migration to mobility and World to Model by @xsaschako in #879
- Increase accuracy of code coverage by @reneSchm in #1076
- 466 add delay in testing and planned migration by @khoanguyen-dev in #866
- 1032 implementation of stochastic two variant seir model by @nijawa in #1047
- 1087 adapt parameters_io of ide model by @annawendler in #1095
- 1092 add warning for end_date later than 2024-07-21 in divi data by @lenaploetzke in #1094
- 1073 Remove credentials from Population Data Download by @patricklnz in #1074
Full Changelog: v1.2.0...v1.2.1
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 #960
- 937 update CI actions by @patricklnz in #938
- 964 Times for Exposed and INS instead of SerialInterval and IncubationTime by @HenrZu in #967
- Add workaround to fix the CI by @reneSchm in #969
- 893 add initialization method with real data for lct model by @lenaploetzke in #920
- Revert "Add workaround to fix the CI (#969)" by @reneSchm in #974
- 958 implement a check for the results of the initialization by @lenaploetzke in #959
- 953 Implement basic stochastic equation based model by @nijawa in #954
- 947 example for ide secir model not working as expected by @lenaploetzke in #948
- 793 add seasonality to ide model by @lenaploetzke in #972
- 956 update Epidata Readme by @patricklnz in #957
- 910 Handle pandas read excel engines by @patricklnz in #940
- 300 python bindings for new vaccination model by @MaxBetzDLR in #906
- 987 Start print_table() with a line break by @mknaranja in #989
- 945 Allow contact increase for simulation of larger events by @HenrZu in #975
- 988 info on sucessful adaptive step sizing is also shown for fixed step size integrators by @reneSchm in #996
- Minor follow up patch to issue 988 by @reneSchm in #1001
- 965 use int instead of unsigned int in lct infection state by @lenaploetzke in #1002
- 977 remove t0 from simulation class and allow flexible start times in model by @annawendler in #979
- 997 Resolve size_t underflow while removing dublicates in dynamic NPIs by using int by @HenrZu in #998
- 983 bundle the boost git repo instead of using the targz archiv by @lenaploetzke in #985
- 1006 Prevent NaNs in SDE models by @reneSchm in #1008
- 990 run 2021 simulation in python by @MaxBetzDLR in #991
- 981 Fix failing RKI urls by @patricklnz in #1007
- 675 alternative computation of compartments in IDE model by @annawendler in #702
- 610 implement initialization scheme for flows by @lenaploetzke in #952
- 976 improve the documentation of the ide secir model by @lenaploetzke in #1000
- 1016 use interpolate_simulation_result for timeseries in secirvvs python by @HenrZu in #1017
- 869 default values of agegroupgotoschoolwork abm parameters by @khoanguyen-dev in #973
- 905 add age group resolution to seir and sir model by @johapau in #911
- 899 new add gamma distribution and other parameters to state age function 1 by @lenaploetzke in #1004
- 1034 ide model simulation does not work under some conditions by @lenaploetzke in #1035
- 636 make python serialization usable again by @MaxBetzDLR in #761
- 894 Implement dynamic optimization by @hannemann-tamas in #895
- 1022 wrong compiler version in ci for gcc by @MaxBetzDLR in #1023
- 944 streamline secir python code by @MaxBetzDLR in #1041
- 305 add ccache to linux build by @dabele in #994
Full Changelog: v1.1.0...v1.2.0
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 #878
- 867 pr template by @xsaschako in #876
- 721 Munich graph sim by @jubicker in #791
- 677 final version secir reproduction number by @johapau in #858
- 402 Surrogate model implementation with multiple age groups and dampings by @HenrZu in #562
- 885 Compatibility of specialized simulation and advance functions in Secir and Secirvvs model with flows by @HenrZu in #889
- Update pull_request_template.md by @mknaranja in #903
- 367 responsibility of testing schemes regarding quarantine by @xsaschako in #890
- replaced print functions by print_table by @lenaploetzke in #900
- 888 Make Apply_variant function more generic and fix issue with default value by @HenrZu in #904
- 720 config file for data downloads by @patricklnz in #902
- 921 Improve PopulationData Download by @patricklnz in #922
- Fix memilio logo in doxygen documentation by @reneSchm in #926
- 271 expand tests of the python bindings by @MaxBetzDLR in #605
- 918 add function to change the tolerance in ide model by @lenaploetzke in #919
- fix parameter rendering by doxygen by @reneSchm in #927
- 934 Add MEmilio favicon to github pages by @mknaranja in #935
- 892 implement simple lct model by @lenaploetzke in #915
- 898 change test for valid transition distibution from ide model by @lenaploetzke in #913
- 769 new initialization for ide model by @lenaploetzke in #770
- Run unit tests with OpenMP in CI by @dabele in #870
- 950 build cpp msvc debug latest fails at the main branch by @lenaploetzke in #951
- 928 add a flow chart for the lct model by @lenaploetzke in #943
- 936 implement the class infectionstate of the lct model more efficiently by @lenaploetzke in #941
Full Changelog: v1.0.0...v1.1.0