Run the vaccine model

run(
  country = NULL,
  population = NULL,
  tt_contact_matrix = 0,
  contact_matrix_set = NULL,
  R0 = 3,
  tt_R0 = 0,
  beta_set = NULL,
  time_period = 365,
  replicates = 10,
  seed = stats::runif(1, 0, 1e+08),
  prob_hosp = probs$prob_hosp,
  prob_hosp_multiplier = probs$prob_hosp_multiplier,
  tt_prob_hosp_multiplier = probs$tt_prob_hosp_multiplier,
  prob_severe = probs$prob_severe,
  prob_non_severe_death_treatment = probs$prob_non_severe_death_treatment,
  prob_non_severe_death_no_treatment = probs$prob_non_severe_death_no_treatment,
  prob_severe_death_treatment = probs$prob_severe_death_treatment,
  prob_severe_death_no_treatment = probs$prob_severe_death_no_treatment,
  p_dist = probs$p_dist,
  rel_infectiousness = probs$rel_infectiousness,
  rel_infectiousness_vaccinated = probs$rel_infectiousness_vaccinated,
  dur_E = durs$dur_E,
  dur_IMild = durs$dur_IMild,
  dur_ICase = durs$dur_ICase,
  dur_get_ox_survive = durs$dur_get_ox_survive,
  dur_get_ox_die = durs$dur_get_ox_die,
  dur_not_get_ox_survive = durs$dur_not_get_ox_survive,
  dur_not_get_ox_die = durs$dur_not_get_ox_die,
  dur_get_mv_survive = durs$dur_get_mv_survive,
  dur_get_mv_die = durs$dur_get_mv_die,
  dur_not_get_mv_survive = durs$dur_not_get_mv_survive,
  dur_not_get_mv_die = durs$dur_not_get_mv_die,
  dur_rec = durs$dur_rec,
  dur_R = vaccine_pars$dur_R,
  tt_dur_R = vaccine_pars$tt_dur_R,
  dur_V = vaccine_pars$dur_V,
  vaccine_efficacy_infection = vaccine_pars$vaccine_efficacy_infection,
  tt_vaccine_efficacy_infection = vaccine_pars$tt_vaccine_efficacy_infection,
  vaccine_efficacy_disease = vaccine_pars$vaccine_efficacy_disease,
  tt_vaccine_efficacy_disease = vaccine_pars$tt_vaccine_efficacy_disease,
  max_vaccine = vaccine_pars$max_vaccine,
  tt_vaccine = vaccine_pars$tt_vaccine,
  dur_vaccine_delay = vaccine_pars$dur_vaccine_delay,
  vaccine_coverage_mat = vaccine_pars$vaccine_coverage_mat,
  hosp_bed_capacity = NULL,
  ICU_bed_capacity = NULL,
  tt_hosp_beds = 0,
  tt_ICU_beds = 0,
  seeding_cases = 20,
  seeding_age_order = NULL,
  init = NULL,
  use_dde = TRUE,
  ...
)

Arguments

country

Character for country beign simulated. WIll be used to generate population and contact_matrix_set if unprovided. Either country or population and contact_matrix_set must be provided.

population

Population vector (for each age group). Default = NULL, which will cause population to be sourced from country

tt_contact_matrix

Time change points for matrix change. Default = 0

contact_matrix_set

Contact matrices used in simulation. Default = NULL, which will generate this based on the country.

R0

Basic Reproduction Number. Default = 3

tt_R0

Change time points for R0. Default = 0

beta_set

Alternative parameterisation via beta rather than R0. Default = NULL, which causes beta to be estimated from R0

time_period

Length of simulation. Default = 365

replicates

Number of replicates. Default = 10

seed

Random seed used for simulations. Deafult = runif(1, 0, 10000)

prob_hosp

probability of hospitalisation by age. Default = c(0.000744192, 0.000634166,0.001171109, 0.002394593, 0.005346437, 0.010289885, 0.016234604, 0.023349169, 0.028944623, 0.038607042, 0.057734879, 0.072422135, 0.101602458, 0.116979814, 0.146099064, 0.176634654 ,0.180000000)

prob_hosp_multiplier

Time varying multiplier to probability of hospitalisation. Default = 1, which is no change to provided prob_hosp.

tt_prob_hosp_multiplier

Timing of changes to multiplier of probability of hospitalisation. Default = 0

prob_severe

Probability of developing severe symptoms by age. Default = c(0.05022296, 0.05022296, 0.05022296, 0.05022296, 0.05022296, 0.05022296, 0.05022296, 0.053214942, 0.05974426, 0.074602879, 0.103612417, 0.149427991, 0.223777304, 0.306985918, 0.385779555, 0.461217861, 0.709444444)

prob_non_severe_death_treatment

Probability of death from non severe treated infection. Default = c(0.0125702, 0.0125702, 0.0125702, 0.0125702, 0.0125702, 0.0125702, 0.0125702, 0.013361147, 0.015104687, 0.019164124, 0.027477519, 0.041762108, 0.068531658, 0.105302319, 0.149305732, 0.20349534, 0.5804312)

prob_non_severe_death_no_treatment

Probability of death in non severe hospital inections that aren't treated

prob_severe_death_treatment

Probability of death from severe infection that is treated. Default = rep(0.5, 17)

prob_severe_death_no_treatment

Probability of death from severe infection that is not treated. Default = rep(0.95, 17)

p_dist

Preferentiality of age group receiving treatment relative to other age groups when demand exceeds healthcare capacity.

rel_infectiousness

Relative infectiousness per age category relative to maximum infectiousness category. Default = rep(1, 17)

rel_infectiousness_vaccinated

Relative infectiousness per age category of vaccinated individuals relative to unvaccinated individuals. Default = rep(1, 17), which is no impact of vaccination on onwards transmissions

dur_E

Mean duration of incubation period (days). Default = 4.6

dur_IMild

Mean duration of mild infection (days). Default = 2.1

dur_ICase

Mean duration from symptom onset to hospitil admission (days). Default = 4.5

dur_get_ox_survive

Mean duration of oxygen given survive. Default = 5

dur_get_ox_die

Mean duration of oxygen given death. Default = 5

dur_not_get_ox_survive

Mean duration without oxygen given survive. Default = 5

dur_not_get_ox_die

Mean duration without oxygen given death. Default = 5

dur_get_mv_survive

Mean duration of ventilation given survive. Default = 7.3

dur_get_mv_die

Mean duration of ventilation given death. Default = 6

dur_not_get_mv_survive

Mean duration without ventilation given survive. Default = 7.3

dur_not_get_mv_die

Mean duration without ventilation given death. Default = 1

dur_rec

Duration of recovery after coming off ventilation. Default = 2

dur_R

Mean duration of naturally acquired immunity (days). Can be time varying, with timing of changes given by tt_dur_R.

tt_dur_R

Timing of changes in duration of natural immunity.

dur_V

Mean duration of vaccine-derived immunity (days)

vaccine_efficacy_infection

Efficacy of vaccine against infection. This parameter must either be length 1 numeric (a single efficacy for all age groups) or length 17 numeric vector (an efficacy for each age group). An efficacy of 1 will reduce FOI by 100 percent, an efficacy of 0.2 will reduce FOI by 20 percent etc. To specify changes in vaccine efficacy over time, vaccine efficacies must be provided as a list, with each list element being the efficacy at each time point specified by tt_vaccine_efficacy_infection. These efficacies must also be length 1 numeric (a single efficacy for all age groups) or length 17 numeric vector (an efficacy for each age group)

tt_vaccine_efficacy_infection

Timing of changes in vaccine efficacy against infection. Default = 0, which assumes fixed efficacy over time. Must be the same length as the length of vaccine_efficacy_infection when provided as a list. Time changing efficacies can occur in response to changing vaccines being given and dosing strategy changes.

vaccine_efficacy_disease

Efficacy of vaccine against severe (requiring hospitilisation) disease (by age). This parameter must either be length 1 numeric (a single efficacy for all age groups) or length 17 numeric vector (an efficacy for each age group). An efficacy of 1 will reduce the probability of hospitalisation by 100 percent, an efficacy of 0.2 will reduce the probability of hospitalisation by 20 percent etc. To specify changes in vaccine efficacy over time, vaccine efficacies must be provided as a list, with each list element being the efficacy at each time point specified by tt_vaccine_efficacy_disease. These efficacies must also be length 1 numeric (a single efficacy for all age groups) or length 17 numeric vector (an efficacy for each age group).

tt_vaccine_efficacy_disease

Timing of changes in vaccine efficacy against disease. Default = 0, which assumes fixed efficacy over time. Must be the same length as the length of vaccine_efficacy_disease when provided as a list. Time changing efficacies can occur in response to changing vaccines being given and dosing strategy changes.

max_vaccine

The maximum number of individuals who can be vaccinated per day.

tt_vaccine

Time change points for vaccine capacity (max_vaccine).

dur_vaccine_delay

Mean duration of period from vaccination to vaccine protection.

vaccine_coverage_mat

Vaccine coverage targets by age (columns) and priority (row)

hosp_bed_capacity

General bed capacity. Can be single number of vector if capacity time-varies.

ICU_bed_capacity

ICU bed capacity. Can be single number of vector if capacity time-varies.

tt_hosp_beds

Times at which hospital bed capacity changes (Default = 0 = doesn't change)

tt_ICU_beds

Times at which ICU bed capacity changes (Default = 0 = doesn't change)

seeding_cases

Initial number of cases seeding the epidemic

seeding_age_order

Vector specifying the order in which seeds are allocated to ages. If NULL, seeds are distributed randomly within working ages. If specified, must be a vector of length 17 specifying the order seeds are allocated, e.g. 1:17 will allocate first seed to the youngest age group, then the second youngest and so on. Default = NULL

init

Initial conditions for simulation provided. Allows overriding if initial conditions start with an already infected population etc. Default = NULL.

use_dde

Use the dde solver (default is TRUE)

...

Additional arguments for solver

Value

Simulation output