Run a single instance of the branching process model

outbreak_model(
  num.initial.cases = NULL,
  prop.ascertain = NULL,
  cap_max_days = NULL,
  cap_cases = NULL,
  r0isolated = NULL,
  r0community = NULL,
  r0subclin = NULL,
  disp.iso = NULL,
  disp.com = NULL,
  disp.subclin = NULL,
  k,
  delay_shape = NULL,
  delay_scale = NULL,
  prop.asym = NULL,
  quarantine = NULL
)

Arguments

num.initial.cases

The number of initial or starting cases which are all assumed to be missed.

prop.ascertain

numeric proportion of infectious contacts ascertained by contact tracing (must be 0<=x<=1)

cap_max_days

Stop the simulation when this many days is reached.

cap_cases

Stop the simulation when this many cases is reached.

r0isolated

numeric reproduction number for isolated cases (must be >0)

r0community

numeric reproduction number for non-isolated cases (must be >0)

r0subclin

numeric reproduction number for sub-clinical non-isolated cases (must be >0)

disp.iso

numeric dispersion parameter for isolated cases (must be >0)

disp.com

numeric dispersion parameter for non-isolated cases (must be >0)

disp.subclin

numeric dispersion parameter for sub-clincial non-isolated cases (must be >0)

k

numeric skew parameter for sampling the serial interval from the incubation period

delay_shape

numeric shape parameter of delay distribution

delay_scale

numeric scale parameter of delay distribution

prop.asym

proportion of cases that are completely asymptomatic.

quarantine

logical whether quarantine is in effect, if TRUE then traced contacts are isolated before symptom onset

Value

data.table of cases by week, cumulative cases, and the effective reproduction number of the outreak

Author

Joel Hellewell

Examples


if (FALSE) {
incfn <- dist_setup(dist_shape = 2.322737,dist_scale = 6.492272)
# delay distribution sampling function
delayfn <- dist_setup(2, 4)
# generate initial cases
case_data <- outbreak_setup(num.initial.cases = 5,
                            incfn=incfn,
                            delayfn = delayfn,
                            k=1.95,
                            prop.asym=0)
# generate next generation of cases
case_data <- outbreak_step(case_data = case_data,
                           disp.iso = 1,
                           disp.com = 0.16,
                           disp.subclin = 0.16,
                           r0isolated = 0,
                           r0community = 2.5,
                           r0subclin = 1.25,
                           prop.asym = 0,
                           incfn = incfn,
                           delayfn = delayfn,
                           prop.ascertain = 0,
                           k = 1.95,
                           quarantine = FALSE)
}