epiverse-trace / epidemics

A library of published compartmental epidemic models, and classes to represent demographic structure, non-pharmaceutical interventions, and vaccination regimes, to compose epidemic scenarios.
https://epiverse-trace.github.io/epidemics/
Other
8 stars 2 forks source link

Add function to calculate timing and size of epidemic peak #127

Closed pratikunterwegs closed 3 months ago

pratikunterwegs commented 11 months ago

This issue comes from comments on #33 (https://github.com/epiverse-trace/epidemics/issues/33#issuecomment-1751216372), and is to request the addition of functions that find and calculate the size and timing of a peak in any of the compartments in an epidemic.

The functionality should include the option to calculate the peak separately for demographic groups. This function may require the use of change-point detection algorithms, or multivariate segmentation clustering algorithms.

A vignette should be added for this functionality and should include examples where the peak is not easy to define, such as when implementing interventions that reduce transmission ("flattening the curve").

pratikunterwegs commented 7 months ago

Just adding some context and considerations for this issue: the function would need to be robust to, or somehow accommodate, scenarios where the peak is ambiguous such as where $R_0$ is low, or intervention measures are applied that 'flatten the curve', or where there are multiple peaks due to seasonality in infectiousness.

A more general function would ideally also be applicable to long-term models' output (e.g. multi-year models with multiple peaks).