epidemics 0.3.0
This is a minor version release of epidemics is the end point of this project that allows vector inputs to the Ebola model (#211, #212).
Breaking changes
-
The Ebola model run with a single parameter set and a single set of composable (i.e., functionality before this vignette) now runs 100 replicates of the model by default, and the output returns the additional column name "replicate" (#211).
-
The Ebola model disallows rate interventions on, and time-dependence for, the 'infectiousness rate' and the 'removal rate' as these control the number of epidemiological sub-compartments and cannot be allowed to vary during run time.
-
The default behaviour of
epidemic_size()
is to exclude the 'dead' compartment from epidemic size calculations; this has changed from including it by default, as most models don't have a 'dead' compartment (#212);
Model functions
-
The Ebola model code has been split into a two-level structure similar to the ODE models. The user facing function
model_ebola()
now handles input checking and some cross-checking, and makes combinations of infection parameter sets and scenarios, and handles output. The internal model function.model_ebola_internal()
is now called over combinations of parameters and scenario elements (#211). -
.model_ebola_internal()
relies on functionality from the {withr} package to preserve the random number seed between parameter set-scenario combinations, and to ensure that each$i$ -th replicate of each scenario starts with the same random number stream.
Model structures
Classes
-
The
<intervention>
helper functions.cumulative_rate_intervention()
and.intervention_on_rates()
have been renamed to include the prefix.
to indicate they are internal functions (#211). -
Small updates to
.cross_check_intervention()
to better handle intervention sets where contacts interventions are optional (the Ebola model) (#211).
Helper functions
-
.check_prepare_args_ebola()
is a new argument cross-checking and preparation function for the Ebola model (#212). -
epidemic_size()
is substantially updated (#212):-
Added option for
time
which returns epidemic size at a specific time point, overriding thestage
argument, defaults toNULL
as the intended use of the function is to return the final size; -
Added option to return epidemic sizes at multiple stages or time points (
stage
andtime
can be vectors); -
Added option to simplify the output to a vector, which is
TRUE
by default to keep consistency with previous functionality; -
Added functionality to handle replicates from the Ebola model;
-
Added tests for new functionality.
-
-
Added function
.output_to_df_ebola()
to handle output from the Ebola model (#211).
Documentation
-
Updates to the Ebola model vignette showing new functionality.
-
Updates to the design decisions vignette documenting decisions taken for the Ebola model.
-
Updated sections on handling social contacts data in the 'Getting started' and 'Modelling interventions on social contacts' vignettes, added reference to Wallinga et al. 2006 https://doi.org/10.1093/aje/kwj317 (#217).
-
Enables auto development mode for the website in
_pkgdown.yml
, and manually specify Bootstrap version 5 (#213). -
Updates WORDLIST.
-
Updates installation instructions in the Readme; link under 'Contribute' correctly directs to pull requests page (#217).
Package
-
{withr} moved from Suggests to Imports due to use in seed management.
-
Added @bahadzie as contributor and @jamesmbaazam as reviewer.
-
Updates to the GitHub Actions workflows and linter config file.
-
Updates the license year to 2024 in all files with the year.