Changelog
Source:NEWS.md
daedalus 0.0.7
This patch adds functionality to calculate pandemic costs using the newly added function get_costs()
. This patch also adds life_value
, a list of country-wise, age-specific values of statistical life lost as package data.
Other changes:
Data preparation scripts and raw data that are used to generate the
life_value
data. Subsetting the countries to those for which this data is available leaves 67 countries; Taiwan and Hong Kong are removed due to lack of life value data.<daedalus_output>
now includes a measure of the total simulation time which could be useful for future calculations of percentage GDP loss.<daedalus_output>
also returns the openness coefficient vector associated with the model response strategy.Tests and documentation for all changes in the form of function docs and vignette updates.
Package data.table now imported for use in cost calculations.
Package DESCRIPTION updated to reflect scenario modelling rather than optimisation.
daedalus 0.0.6
This patch adds the <daedalus_infection>
class to represent and hold infection parameter data for daedalus()
. Access, assignment, and print methods are also added, in addition to internal helpers such as as_country()
. The class is tested with newly added tests.
Other changes:
The
get_data()
,set_data()
andprepare_parameters()
generics now have methods for<daedalus_infection>
s.Removes
make_infection_parameters()
in favour ofprepare_parameters.infection()
.daedalus()
argumentepidemic
accepting epidemic name string is changed to argumentinfection
accepting<daedalus_infection>
objects or epidemic names.Vignettes have been updated to use
<daedalus_infection>
objects.Website reference page updated to have sections.
daedalus 0.0.5
This patch adds the <daedalus_country>
class to represent country and territory data for daedalus()
. Access, assignment, and print methods are also added, in addition to internal helpers such as as_daedalus_country()
. The class is tested with newly added tests.
Other changes:
Adds the generic functions
get_data()
,set_data()
andprepare_parameters()
, with methods for<daedalus_country>
objects. Methods for infection data are also anticipated.Removes
make_country_parameters()
in favour ofprepare_parameters.daedalus_country()
.daedalus()
accepts its first argument as either a country name or a<daedalus_country>
, and no longer accepts acountry_params_manual
argument; all changes to country parameters should be made via the class.make_initial_state()
works on<daedalus_country>
objects instead of country names. Since this is an internal function it does not support passing a country string name.Vignettes have been updated to show how to use
<daedalus_country>
objects.
daedalus 0.0.4
This patch adds some basic pandemic response functionality (#15). This functionality is shown in a new vignette thresholded_interventions.Rmd
.
The function signature for
daedalus()
has been changed to acceptresponse_strategy
,implementation_level
,response_time
, andresponse_threshold
arguments which specify these parameters. Sensible defaults for the strategy are “none”, and a “light” implementation level for other strategies.The model supports the “none”, “economic closures”, “school closures”, and “elimination” strategies, with economic sector openness coefficients for the “light” and “heavy” implementation of these strategies stored in the package data object
closure_data
. Thedata-raw/closure_data.R
file shows how this data is generated from raw data files provided by EPPI and added ininst/extdata
.Closures are triggered by the response time being reached, or the total hospitalisation reaching the response threshold. The state variable has been expanded by one to accommodate a switch that is initially zero, is changed to one (for on) when the response is activated, and back to zero when the response ends. Responses currently end on the same trigger of the effective R being less than 1.0.
The
make_parameters()
function has been split intomake_infect_parameters()
andmake_country_parameters()
to be clearer and more manageable.daedalus()
-level override for parameters which was originally implemented as...
has been replaced with three separate overrides:country_params_manual
,infect_params_manual
, andinitial_state_manual
, for users to pass custom values.prepare_output()
has been made internal; it omits data for non-working age groups in economic sectors (as these are always 0), and pads all sector numbers to fit the formatsector_XX
.Internal functions for R effective calculations and getting the total hospitalisations,
r_eff()
andget_hospitalisations()
have been added.Closures are implemented as
deSolve::events
triggered by a rootfinding function, with separate functions for activation and termination, which are implemented asmake_response_threshold_event()
andmake_rt_end_event()
.contacts_between_sectors
is now set to 0.0, it was previously 1e-6.Added tests for closure triggers having expected effects; but closure end points are not specifically tested.
daedalus 0.0.3
This patch version adds workplace infections to the epidemiological model, and adds country demography data.
Added worker-to-worker infections within and between sectors, and consumer to worker contacts (#9).
Added package data:
country_data
(country demography data) andeconomic_contacts
(sector-wise contacts data). Note that worker-to-worker contacts between sectors currently takes a dummy value as it is not expected to be used in the near future (#11).Modified
daedalus::daedalus()
to take a single required argument for country name to run the model with package data for country contact matrices and economic and demographic data (#11). Users can still pass infection parameters via...
.Made package function
default_parameters()
internal and renamed tomake_parameters()
; added the internal helper functionmake_initial_state()
to quickly generate country-appropriate initial states.Added documentation and tests for modified function calls.
daedalus 0.0.2
This patch version adds a basic epidemiological model (#7).
Added the model functions
daedalus()
(user-facing) and.daedalus_ode()
(internal) to run a simple age-stratified (4 age groups) SEIR-HD epidemiological model taken from @robj411 https://github.com/robj411/p2_drivers,Added default model parameters in
default_parameters()
which correspond roughly to pandemic influenza,Added
prepare_output()
to preparedaedalus()
output,Added tests for all functions,
Updated the package infrastructure:
DESCRIPTION
,NAMESPACE
,WORDLIST
,.Rbuildignore
, and_pkgdown.yml
reference.Disabled the
undesirable_function_linter
in the vignettes as it flagslibrary()
calls.Updated the Readme and added content to the ‘Get started’ vignette.
daedalus 0.0.1
Initial package setup including GitHub Actions workflows and code quality checks.
Updated GH Actions workflows for R CMD check (fails on ‘NOTE’) and code test coverage;
Added linting, citation update, Readme rendering, and license year update workflows;
Added spellchecking and a known words list.