The C++ functions bound to R via Rcpp used in outbreaker2
for priors, likelihoods and movements are not visible to the user, as
they are not exported by the package. However, advanced users can access
these functions using get_cpp_api()
, which returns an
environment with all relevant functions:
## <environment: 0x564fb72107e8>
## [1] "cpp_ll_all" "cpp_ll_contact"
## [3] "cpp_ll_genetic" "cpp_ll_reporting"
## [5] "cpp_ll_timing" "cpp_ll_timing_infections"
## [7] "cpp_ll_timing_sampling" "cpp_move_alpha"
## [9] "cpp_move_eps" "cpp_move_kappa"
## [11] "cpp_move_lambda" "cpp_move_mu"
## [13] "cpp_move_pi" "cpp_move_swap_cases"
## [15] "cpp_move_t_inf" "cpp_prior_all"
## [17] "cpp_prior_eps" "cpp_prior_lambda"
## [19] "cpp_prior_mu" "cpp_prior_pi"
## function (data, param, i = NULL, custom_functions = NULL)
## {
## .Call(`_outbreaker2_cpp_ll_all`, data, param, i, custom_functions)
## }
## <bytecode: 0x564fb720fba8>
## <environment: namespace:outbreaker2>
These functions take the following arguments:
## $cpp_ll_all
## function (data, param, i = NULL, custom_functions = NULL)
## NULL
##
## $cpp_ll_contact
## function (data, param, i = NULL, custom_function = NULL)
## NULL
##
## $cpp_ll_genetic
## function (data, param, i = NULL, custom_function = NULL)
## NULL
##
## $cpp_ll_reporting
## function (data, param, i = NULL, custom_function = NULL)
## NULL
##
## $cpp_ll_timing
## function (data, param, i = NULL, custom_functions = NULL)
## NULL
##
## $cpp_ll_timing_infections
## function (data, param, i = NULL, custom_function = NULL)
## NULL
##
## $cpp_ll_timing_sampling
## function (data, param, i = NULL, custom_function = NULL)
## NULL
##
## $cpp_move_alpha
## function (param, data, list_custom_ll = NULL)
## NULL
##
## $cpp_move_eps
## function (param, data, config, custom_ll = NULL, custom_prior = NULL)
## NULL
##
## $cpp_move_kappa
## function (param, data, config, list_custom_ll = NULL)
## NULL
##
## $cpp_move_lambda
## function (param, data, config, custom_ll = NULL, custom_prior = NULL)
## NULL
##
## $cpp_move_mu
## function (param, data, config, custom_ll = NULL, custom_prior = NULL)
## NULL
##
## $cpp_move_pi
## function (param, data, config, custom_ll = NULL, custom_prior = NULL)
## NULL
##
## $cpp_move_swap_cases
## function (param, data, list_custom_ll = NULL)
## NULL
##
## $cpp_move_t_inf
## function (param, data, list_custom_ll = NULL)
## NULL
##
## $cpp_prior_all
## function (param, config, custom_functions = NULL)
## NULL
##
## $cpp_prior_eps
## function (param, config, custom_function = NULL)
## NULL
##
## $cpp_prior_lambda
## function (param, config, custom_function = NULL)
## NULL
##
## $cpp_prior_mu
## function (param, config, custom_function = NULL)
## NULL
##
## $cpp_prior_pi
## function (param, config, custom_function = NULL)
## NULL
Arguments are detailed in the next section.
Arguments of the Rcpp-bound C++ functions are:
## [1] "config" "custom_function" "custom_functions" "custom_ll"
## [5] "custom_prior" "data" "i" "list_custom_ll"
## [9] "param"
alpha
: a vector of integers of
length ‘N’ (number of cases), indicating infectors of each case, with
values from 1 to N; missing values should be NA
config
: a list containing
configuration settings as returned by
create_config
custom_function
: a R function for a
custom prior, with a single argument, which must be a list of parameters
and augmented data with the class outbreaker_param
;
returned values must be on the log scale
custom_functions
: a list of R
functions obeying the rules of custom_function
, named
according to the priors; currently available names are:
## [1] "eps" "lambda" "mu" "pi"
custom_ll
: a R function for a
custom likelihood, taking two arguments: data
(see
data
), and param
(see
param
)
custom_prior
: same as
custom_function
data
: a valid ‘outbreaker_data’
list
i
: an integer scalar indicating the
index of a case, from 1 to N (number of cases)
list_custom_ll
: a list of R
functions obeying the rules of custom_ll
, named according
to the computed likelihood component; available names are:
## [1] "contact" "genetic" "reporting"
## [4] "timing_infections" "timing_sampling"
param
: a list containing parameters
and augmented data with the class outbreaker_param
t_inf
: a vector of integers of
length N (number of cases), indicating infection dates of each case;
missing values should be NA
x
: a vector of integers to be
sampled from