From 65312a58f712c70cd2308b6b82b5aa7681201a9d Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Thu, 19 Sep 2024 07:46:14 -0400 Subject: [PATCH 01/59] add all non depracted cmdstanr::sample args to mcmc options --- R/wwinference.R | 121 ++++++++++++++++++++++++++++++++++++++-- man/get_mcmc_options.Rd | 91 ++++++++++++++++++++++++++++-- 2 files changed, 202 insertions(+), 10 deletions(-) diff --git a/R/wwinference.R b/R/wwinference.R index 1e10e6ea..339b5bfb 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -337,7 +337,31 @@ fit_model <- function(compiled_model, iter_warmup = fit_opts$iter_warmup, max_treedepth = fit_opts$max_treedepth, chains = fit_opts$n_chains, - parallel_chains = fit_opts$n_chains + parallel_chains = fit_opts$parallel_chains, + show_messages = fit_opts$show_messages, + refresh = fit_opts$refresh, + save_latent_dynamics = fit_opts$save_latent_dynamics, + output_dir = fit_opts$output_dir, + output_basename = fit_opts$output_basename, + sig_figs = fit_opts$sig_figs, + chain_ids = fit_opts$chain_ids, + threads_per_chain = fit_opts$threads_per_chain, + opencl_ids = fit_opts$opencl_ids, + save_warmup = fit_opts$save_warmup, + thin = fit_opts$thin, + adapt_engaged = fit_opts$adapt_engaged, + step_size = fit_opts$step_size, + metric = fit_opts$metric, + metric_file = fit_opts$metric_file, + inv_metric = fit_opts$inv_metric, + init_buffer = fit_opts$init_buffer, + term_buffer = fit_opts$term_buffer, + window = fit_opts$window, + fixed_param = fit_opts$fixed_param, + show_exceptions = fit_opts$show_exceptions, + diagnostics = fit_opts$diagnostics, + save_metric = fit_opts$save_metric, + save_cmdstan_config = fit_opts$save_cmdstan_config ) return(fit) @@ -350,7 +374,10 @@ fit_model <- function(compiled_model, #' This function returns a list of MCMC settings to pass to the #' `cmdstanr::sample()` function to fit the model. The default settings are #' specified for production-level runs, consider adjusting to optimize -#' for speed while iterating. +#' for speed while iterating. All input arguments to `cmdstanr::sample()` +#' are configurable by the user. See `cmdstanr::sample()` documentation +#' https://mc-stan.org/cmdstanr/reference/model-method-sample.html for a full +#' description of each argument. #' #' #' @param iter_warmup integer indicating the number of warm-up iterations, @@ -359,14 +386,45 @@ fit_model <- function(compiled_model, #' default is `500` #' @param n_chains integer indicating the number of MCMC chains to run, default #' is `4` -#' @param seed set of integers indicating the random seed of the stan sampler, +#' @param parallel_chains integer indicating the number of chains to run +#' in parallel, default is `4` +#' @param seed set of integers indicating the random seed of the Stan sampler, #' default is NULL #' @param adapt_delta float between 0 and 1 indicating the average acceptance #' probability, default is `0.95` #' @param max_treedepth integer indicating the maximum tree depth of the #' sampler, default is 12 +#' @param show_messages logical indicating whether to print all output +#' during the execution process, default is `TRUE` +#' @param save_latent_dynamics logical cmdstanr default, default is `FALSE` +#' @param output_dir string cmdstanr default, default is +#' `getOption("cmdstanr_output_dir")` +#' @param output_basename string cmdstanr default, default is `NULL` +#' @param sig_figs positive integer cmdstanr default, default is `NULL` +#' @param chain_ids integer vector cdmstanr default, default is +#' `seq_len(n_chains)`, +#' @param threads_per_chain positive integer cmdstanr default, default +#' is `NULL` +#' @param opencl_ids integer vector of length 2 cmdstanr default, default +#' is `NULL` +#' @param save_warmup logical cmdstanr default, default is `FALSE` +#' @param thin positive integer cmdstanr default, default is `NULL` +#' @param adapt_engaged logical cmdstanr default, default is `TRUE` +#' @param step_size positive real cmdstanr default, default is `NULL` +#' @param metric string cmdstanr default, default is `NULL` +#' @param metric_file character vector cmdstanr default, default is `NULL` +#' @param inv_metric vector, matrix cmdstanr default, default is `NULL`` +#' @param init_buffer nonnegative integer cmdstanr default, default is `NULL` +#' @param term_buffer nonnegative integer cmdstanr default, default is `NULL` +#' @param window nonnegative integer cmdstanr default, default is `NULL` +#' @param fixed_param logical cmdstanr default, default is `FALSE` +#' @param show_exceptions logical cmdstanr default, default is TRUE, +#' @param diagnostics character vector cmdstanr default, default is +#' `c("divergences", "treedepth", "ebfmi")` +#' @param save_metric logical cmdstanr default, default is `NULL` +#' @param save_cmdstan_config logical cmdstanr default, default is `NULL` #' -#' @return a list of mcmc settings with the values given by the function +#' @return a list of MCMC settings with the values given by the function #' arguments #' @export #' @@ -376,16 +434,67 @@ get_mcmc_options <- function( iter_warmup = 750, iter_sampling = 500, n_chains = 4, + parallel_chains = 4, seed = NULL, adapt_delta = 0.95, - max_treedepth = 12) { + max_treedepth = 12, + show_messages = TRUE, + # CmdstanR default configurations + refresh = NULL, + save_latent_dynamics = FALSE, + output_dir = getOption("cmdstanr_output_dir"), + output_basename = NULL, + sig_figs = NULL, + chain_ids = seq_len(n_chains), + threads_per_chain = NULL, + opencl_ids = NULL, + save_warmup = FALSE, + thin = NULL, + adapt_engaged = TRUE, + step_size = NULL, + metric = NULL, + metric_file = NULL, + inv_metric = NULL, + init_buffer = NULL, + term_buffer = NULL, + window = NULL, + fixed_param = FALSE, + show_exceptions = TRUE, + diagnostics = c("divergences", "treedepth", "ebfmi"), + save_metric = NULL, + save_cmdstan_config = NULL) { mcmc_settings <- list( iter_warmup = iter_warmup, iter_sampling = iter_sampling, n_chains = n_chains, seed = seed, adapt_delta = adapt_delta, - max_treedepth = max_treedepth + max_treedepth = max_treedepth, + show_messages = show_messages, + refresh = refresh, + save_latent_dynamics = save_latent_dynamics, + output_dir = output_dir, + output_basename = output_basename, + sig_figs = sig_figs, + parallel_chains = parallel_chains, + chain_ids = chain_ids, + threads_per_chain = threads_per_chain, + opencl_ids = opencl_ids, + save_warmup = save_warmup, + thin = thin, + adapt_engaged = adapt_engaged, + step_size = step_size, + metric = metric, + metric_file = metric_file, + inv_metric = inv_metric, + init_buffer = init_buffer, + term_buffer = term_buffer, + window = window, + fixed_param = fixed_param, + show_exceptions = show_exceptions, + diagnostics = diagnostics, + save_metric = save_metric, + save_cmdstan_config = save_cmdstan_config ) return(mcmc_settings) diff --git a/man/get_mcmc_options.Rd b/man/get_mcmc_options.Rd index 454b2c9a..e1c7f0ad 100644 --- a/man/get_mcmc_options.Rd +++ b/man/get_mcmc_options.Rd @@ -8,9 +8,34 @@ get_mcmc_options( iter_warmup = 750, iter_sampling = 500, n_chains = 4, + parallel_chains = 4, seed = NULL, adapt_delta = 0.95, - max_treedepth = 12 + max_treedepth = 12, + show_messages = TRUE, + refresh = NULL, + save_latent_dynamics = FALSE, + output_dir = getOption("cmdstanr_output_dir"), + output_basename = NULL, + sig_figs = NULL, + chain_ids = seq_len(n_chains), + threads_per_chain = NULL, + opencl_ids = NULL, + save_warmup = FALSE, + thin = NULL, + adapt_engaged = TRUE, + step_size = NULL, + metric = NULL, + metric_file = NULL, + inv_metric = NULL, + init_buffer = NULL, + term_buffer = NULL, + window = NULL, + fixed_param = FALSE, + show_exceptions = TRUE, + diagnostics = c("divergences", "treedepth", "ebfmi"), + save_metric = NULL, + save_cmdstan_config = NULL ) } \arguments{ @@ -23,7 +48,10 @@ default is \code{500}} \item{n_chains}{integer indicating the number of MCMC chains to run, default is \code{4}} -\item{seed}{set of integers indicating the random seed of the stan sampler, +\item{parallel_chains}{integer indicating the number of chains to run +in parallel, default is \code{4}} + +\item{seed}{set of integers indicating the random seed of the Stan sampler, default is NULL} \item{adapt_delta}{float between 0 and 1 indicating the average acceptance @@ -31,16 +59,71 @@ probability, default is \code{0.95}} \item{max_treedepth}{integer indicating the maximum tree depth of the sampler, default is 12} + +\item{show_messages}{logical indicating whether to print all output +during the execution process, default is \code{TRUE}} + +\item{save_latent_dynamics}{logical cmdstanr default, default is \code{FALSE}} + +\item{output_dir}{string cmdstanr default, default is +\code{getOption("cmdstanr_output_dir")}} + +\item{output_basename}{string cmdstanr default, default is \code{NULL}} + +\item{sig_figs}{positive integer cmdstanr default, default is \code{NULL}} + +\item{chain_ids}{integer vector cdmstanr default, default is +\code{seq_len(n_chains)},} + +\item{threads_per_chain}{positive integer cmdstanr default, default +is \code{NULL}} + +\item{opencl_ids}{integer vector of length 2 cmdstanr default, default +is \code{NULL}} + +\item{save_warmup}{logical cmdstanr default, default is \code{FALSE}} + +\item{thin}{positive integer cmdstanr default, default is \code{NULL}} + +\item{adapt_engaged}{logical cmdstanr default, default is \code{TRUE}} + +\item{step_size}{positive real cmdstanr default, default is \code{NULL}} + +\item{metric}{string cmdstanr default, default is \code{NULL}} + +\item{metric_file}{character vector cmdstanr default, default is \code{NULL}} + +\item{inv_metric}{vector, matrix cmdstanr default, default is `NULL``} + +\item{init_buffer}{nonnegative integer cmdstanr default, default is \code{NULL}} + +\item{term_buffer}{nonnegative integer cmdstanr default, default is \code{NULL}} + +\item{window}{nonnegative integer cmdstanr default, default is \code{NULL}} + +\item{fixed_param}{logical cmdstanr default, default is \code{FALSE}} + +\item{show_exceptions}{logical cmdstanr default, default is TRUE,} + +\item{diagnostics}{character vector cmdstanr default, default is +\code{c("divergences", "treedepth", "ebfmi")}} + +\item{save_metric}{logical cmdstanr default, default is \code{NULL}} + +\item{save_cmdstan_config}{logical cmdstanr default, default is \code{NULL}} } \value{ -a list of mcmc settings with the values given by the function +a list of MCMC settings with the values given by the function arguments } \description{ This function returns a list of MCMC settings to pass to the \code{cmdstanr::sample()} function to fit the model. The default settings are specified for production-level runs, consider adjusting to optimize -for speed while iterating. +for speed while iterating. All input arguments to \code{cmdstanr::sample()} +are configurable by the user. See \code{cmdstanr::sample()} documentation +https://mc-stan.org/cmdstanr/reference/model-method-sample.html for a full +description of each argument. } \examples{ mcmc_settings <- get_mcmc_options() From 4ae40f390126b9acae30a76f28ebe941ffbed018 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Thu, 19 Sep 2024 07:48:45 -0400 Subject: [PATCH 02/59] set show messages to false in the test data mcmc options --- data-raw/test_data.R | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/data-raw/test_data.R b/data-raw/test_data.R index fbbeb29a..8be5d7e3 100644 --- a/data-raw/test_data.R +++ b/data-raw/test_data.R @@ -50,7 +50,8 @@ mcmc_options <- wwinference::get_mcmc_options( seed = 55, iter_warmup = 25, iter_sampling = 25, - n_chains = 1 + n_chains = 1, + show_messages = FALSE ) generate_initial_values <- TRUE From d65a5cc7908381ce000d7fa28e2307d58e4fc88a Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Thu, 19 Sep 2024 11:59:25 +0000 Subject: [PATCH 03/59] update test data --- R/sysdata.rda | Bin 38164 -> 38455 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/R/sysdata.rda b/R/sysdata.rda index beb919b8985998bbb58200e9b96fc75b512d9fa4..97efee789e93c25f44e7e66f4ae949936375e7ac 100644 GIT binary patch literal 38455 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 DWrUNx literal 38164 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�}(iY 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 From 10711ed4385ee245f089408bf5903faddaed5813 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Thu, 19 Sep 2024 12:10:21 +0000 Subject: [PATCH 04/59] add documentation for refresh --- R/wwinference.R | 1 + man/get_mcmc_options.Rd | 2 ++ 2 files changed, 3 insertions(+) diff --git a/R/wwinference.R b/R/wwinference.R index 339b5bfb..00bcbe96 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -396,6 +396,7 @@ fit_model <- function(compiled_model, #' sampler, default is 12 #' @param show_messages logical indicating whether to print all output #' during the execution process, default is `TRUE` +#' @param refresh non-negative integer cmdstanr default, default is `NULL` #' @param save_latent_dynamics logical cmdstanr default, default is `FALSE` #' @param output_dir string cmdstanr default, default is #' `getOption("cmdstanr_output_dir")` diff --git a/man/get_mcmc_options.Rd b/man/get_mcmc_options.Rd index e1c7f0ad..f9cd1628 100644 --- a/man/get_mcmc_options.Rd +++ b/man/get_mcmc_options.Rd @@ -63,6 +63,8 @@ sampler, default is 12} \item{show_messages}{logical indicating whether to print all output during the execution process, default is \code{TRUE}} +\item{refresh}{non-negative integer cmdstanr default, default is \code{NULL}} + \item{save_latent_dynamics}{logical cmdstanr default, default is \code{FALSE}} \item{output_dir}{string cmdstanr default, default is From 4ae2e9dd626162e898fc404147e01338267702b3 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Thu, 19 Sep 2024 13:39:37 +0000 Subject: [PATCH 05/59] update tests to expect all args to mcmc_options --- tests/testthat/test_wwinference.R | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/tests/testthat/test_wwinference.R b/tests/testthat/test_wwinference.R index 6abf6ab5..5531b6f0 100644 --- a/tests/testthat/test_wwinference.R +++ b/tests/testthat/test_wwinference.R @@ -61,9 +61,14 @@ test_that("Function to get mcmc options produces the expected outputs", { expected_names <- c( "iter_warmup", "iter_sampling", "n_chains", "seed", "adapt_delta", "max_treedepth", - "compute_likelihood" + "show_messages", "refresh", "save_latent_dynamics", "output_dir", + "output_basename", "sig_figs", "parallel_chains", "chain_ids", + "threads_per_chain", "opencl_ids", "save_warmup", "thin", + "adapt_engaged", "step_size", "metric", "metric_file", "inv_metric", + "init_buffer", "term_buffer", "window", "fixed_param", "show_exceptions", + "diagnostics", "save_metric", "save_cmdstan_config" ) - # Checkmade doesn't work here for a list, says it must be a character vector + # Checkmare doesn't work here for a list, says it must be a character vector expect_true(all(names(mcmc_options) %in% expected_names)) }) From 7543c2bac82a729a2a0cc14ce81483d2a8128131 Mon Sep 17 00:00:00 2001 From: kaitejohnson Date: Thu, 19 Sep 2024 13:39:47 -0400 Subject: [PATCH 06/59] replace very verbose handling of passing cmdstanr::sample with a do.call --- R/sysdata.rda | Bin 38164 -> 38498 bytes R/wwinference.R | 59 ++++++++++++++----------------------------- data-raw/test_data.R | 2 +- 3 files changed, 20 insertions(+), 41 deletions(-) diff --git a/R/sysdata.rda b/R/sysdata.rda index beb919b8985998bbb58200e9b96fc75b512d9fa4..07b0b01b24bef11085bb50a72f8681644051407d 100644 GIT binary patch literal 38498 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�}(iY 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 diff --git a/R/wwinference.R b/R/wwinference.R index 339b5bfb..1009ae6a 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -138,7 +138,7 @@ #' fit_opts = get_mcmc_options( #' iter_warmup = 250, #' iter_sampling = 250, -#' n_chains = 2 +#' chains = 2 #' ) #' ) #' } @@ -204,7 +204,7 @@ wwinference <- function(ww_data, if (generate_initial_values) { withr::with_seed(initial_values_seed, { init_lists <- lapply( - 1:fit_opts$n_chains, + 1:fit_opts$chains, \(x) { get_inits_for_one_chain(stan_data_list) } @@ -329,39 +329,18 @@ fit_model <- function(compiled_model, stan_data_list, fit_opts, init_lists) { - fit <- compiled_model$sample( - data = stan_data_list, - init = init_lists, - seed = fit_opts$seed, - iter_sampling = fit_opts$iter_sampling, - iter_warmup = fit_opts$iter_warmup, - max_treedepth = fit_opts$max_treedepth, - chains = fit_opts$n_chains, - parallel_chains = fit_opts$parallel_chains, - show_messages = fit_opts$show_messages, - refresh = fit_opts$refresh, - save_latent_dynamics = fit_opts$save_latent_dynamics, - output_dir = fit_opts$output_dir, - output_basename = fit_opts$output_basename, - sig_figs = fit_opts$sig_figs, - chain_ids = fit_opts$chain_ids, - threads_per_chain = fit_opts$threads_per_chain, - opencl_ids = fit_opts$opencl_ids, - save_warmup = fit_opts$save_warmup, - thin = fit_opts$thin, - adapt_engaged = fit_opts$adapt_engaged, - step_size = fit_opts$step_size, - metric = fit_opts$metric, - metric_file = fit_opts$metric_file, - inv_metric = fit_opts$inv_metric, - init_buffer = fit_opts$init_buffer, - term_buffer = fit_opts$term_buffer, - window = fit_opts$window, - fixed_param = fit_opts$fixed_param, - show_exceptions = fit_opts$show_exceptions, - diagnostics = fit_opts$diagnostics, - save_metric = fit_opts$save_metric, - save_cmdstan_config = fit_opts$save_cmdstan_config + args_for_stan_sampling <- + c( + list( + data = stan_data_list, + init = init_lists + ), + fit_opts + ) + + fit <- do.call( + compiled_model$sample, + args_for_stan_sampling ) return(fit) @@ -384,7 +363,7 @@ fit_model <- function(compiled_model, #' default is `750` #' @param iter_sampling integer indicating the number of sampling iterations, #' default is `500` -#' @param n_chains integer indicating the number of MCMC chains to run, default +#' @param chains integer indicating the number of MCMC chains to run, default #' is `4` #' @param parallel_chains integer indicating the number of chains to run #' in parallel, default is `4` @@ -402,7 +381,7 @@ fit_model <- function(compiled_model, #' @param output_basename string cmdstanr default, default is `NULL` #' @param sig_figs positive integer cmdstanr default, default is `NULL` #' @param chain_ids integer vector cdmstanr default, default is -#' `seq_len(n_chains)`, +#' `seq_len(chains)`, #' @param threads_per_chain positive integer cmdstanr default, default #' is `NULL` #' @param opencl_ids integer vector of length 2 cmdstanr default, default @@ -433,7 +412,7 @@ fit_model <- function(compiled_model, get_mcmc_options <- function( iter_warmup = 750, iter_sampling = 500, - n_chains = 4, + chains = 4, parallel_chains = 4, seed = NULL, adapt_delta = 0.95, @@ -445,7 +424,7 @@ get_mcmc_options <- function( output_dir = getOption("cmdstanr_output_dir"), output_basename = NULL, sig_figs = NULL, - chain_ids = seq_len(n_chains), + chain_ids = seq_len(chains), threads_per_chain = NULL, opencl_ids = NULL, save_warmup = FALSE, @@ -466,7 +445,7 @@ get_mcmc_options <- function( mcmc_settings <- list( iter_warmup = iter_warmup, iter_sampling = iter_sampling, - n_chains = n_chains, + chains = chains, seed = seed, adapt_delta = adapt_delta, max_treedepth = max_treedepth, diff --git a/data-raw/test_data.R b/data-raw/test_data.R index 8be5d7e3..08d8873a 100644 --- a/data-raw/test_data.R +++ b/data-raw/test_data.R @@ -50,7 +50,7 @@ mcmc_options <- wwinference::get_mcmc_options( seed = 55, iter_warmup = 25, iter_sampling = 25, - n_chains = 1, + chains = 1, show_messages = FALSE ) From 221304c2139849bf4f6269ac11bb58497a71494c Mon Sep 17 00:00:00 2001 From: kaitejohnson Date: Thu, 19 Sep 2024 14:28:21 -0400 Subject: [PATCH 07/59] update docs --- man/get_mcmc_options.Rd | 8 ++++---- man/wwinference.Rd | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/man/get_mcmc_options.Rd b/man/get_mcmc_options.Rd index f9cd1628..3d486ffd 100644 --- a/man/get_mcmc_options.Rd +++ b/man/get_mcmc_options.Rd @@ -7,7 +7,7 @@ get_mcmc_options( iter_warmup = 750, iter_sampling = 500, - n_chains = 4, + chains = 4, parallel_chains = 4, seed = NULL, adapt_delta = 0.95, @@ -18,7 +18,7 @@ get_mcmc_options( output_dir = getOption("cmdstanr_output_dir"), output_basename = NULL, sig_figs = NULL, - chain_ids = seq_len(n_chains), + chain_ids = seq_len(chains), threads_per_chain = NULL, opencl_ids = NULL, save_warmup = FALSE, @@ -45,7 +45,7 @@ default is \code{750}} \item{iter_sampling}{integer indicating the number of sampling iterations, default is \code{500}} -\item{n_chains}{integer indicating the number of MCMC chains to run, default +\item{chains}{integer indicating the number of MCMC chains to run, default is \code{4}} \item{parallel_chains}{integer indicating the number of chains to run @@ -75,7 +75,7 @@ during the execution process, default is \code{TRUE}} \item{sig_figs}{positive integer cmdstanr default, default is \code{NULL}} \item{chain_ids}{integer vector cdmstanr default, default is -\code{seq_len(n_chains)},} +\code{seq_len(chains)},} \item{threads_per_chain}{positive integer cmdstanr default, default is \code{NULL}} diff --git a/man/wwinference.Rd b/man/wwinference.Rd index 41306ea9..49c6b4fa 100644 --- a/man/wwinference.Rd +++ b/man/wwinference.Rd @@ -184,7 +184,7 @@ ww_fit <- wwinference(input_ww_data, fit_opts = get_mcmc_options( iter_warmup = 250, iter_sampling = 250, - n_chains = 2 + chains = 2 ) ) } From dcb5dc0949aa18afa1d681581334ca7463dca92a Mon Sep 17 00:00:00 2001 From: kaitejohnson Date: Thu, 19 Sep 2024 15:47:05 -0400 Subject: [PATCH 08/59] fix test --- tests/testthat/test_wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/testthat/test_wwinference.R b/tests/testthat/test_wwinference.R index 5531b6f0..7765a561 100644 --- a/tests/testthat/test_wwinference.R +++ b/tests/testthat/test_wwinference.R @@ -60,7 +60,7 @@ test_that("Function to get mcmc options produces the expected outputs", { mcmc_options <- get_mcmc_options() expected_names <- c( "iter_warmup", "iter_sampling", - "n_chains", "seed", "adapt_delta", "max_treedepth", + "chains", "seed", "adapt_delta", "max_treedepth", "show_messages", "refresh", "save_latent_dynamics", "output_dir", "output_basename", "sig_figs", "parallel_chains", "chain_ids", "threads_per_chain", "opencl_ids", "save_warmup", "thin", From 702db9495542326ace8901ad5268da155a4c3110 Mon Sep 17 00:00:00 2001 From: kaitejohnson Date: Thu, 19 Sep 2024 17:14:27 -0400 Subject: [PATCH 09/59] try to suppress ESS warning --- tests/testthat/test_ww_model.R | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/testthat/test_ww_model.R b/tests/testthat/test_ww_model.R index 0e9b90b6..6dfd2c1b 100644 --- a/tests/testthat/test_ww_model.R +++ b/tests/testthat/test_ww_model.R @@ -2,12 +2,12 @@ test_that("Test the wastewater inference model on simulated data.", { ####### # run model briefly on the simulated data ####### - withr::with_seed(5, { + expect_warnin(withr::with_seed(5, { fit <- do.call( wwinference::wwinference, model_test_data ) - }) + })) params <- model_test_data$model_spec$params obs_last_draw <- posterior::subset_draws(fit$fit$result$draws(), From 7d4e01f4352d04693e25ff3405ff0d0c10c0eae2 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Thu, 19 Sep 2024 17:20:29 -0400 Subject: [PATCH 10/59] Update tests/testthat/test_ww_model.R Co-authored-by: Dylan H. Morris --- tests/testthat/test_ww_model.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/testthat/test_ww_model.R b/tests/testthat/test_ww_model.R index 6dfd2c1b..69a37157 100644 --- a/tests/testthat/test_ww_model.R +++ b/tests/testthat/test_ww_model.R @@ -2,7 +2,7 @@ test_that("Test the wastewater inference model on simulated data.", { ####### # run model briefly on the simulated data ####### - expect_warnin(withr::with_seed(5, { + expect_warning(withr::with_seed(5, { fit <- do.call( wwinference::wwinference, model_test_data From 48312589d99a4d52ef946d273f7af4f2ba4d1104 Mon Sep 17 00:00:00 2001 From: kaitejohnson Date: Thu, 19 Sep 2024 17:20:47 -0400 Subject: [PATCH 11/59] set fit_opts as an empty list --- R/wwinference.R | 21 ++++++++++++--------- man/wwinference.Rd | 13 +++++-------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/R/wwinference.R b/R/wwinference.R index 64b48346..018d482c 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -31,13 +31,10 @@ #' `get_model_spec()`. The default here pertains to the `forecast_date` in the #' example data provided by the package, but this should be specified by the #' user based on the date they are producing a forecast -#' @param fit_opts The fit options, which in this case default to the -#' MCMC parameters as defined using `get_mcmc_options()`. This includes -#' the following arguments, which are passed to -#' [`$sample()`][cmdstanr::model-method-sample]: -#' the number of chains, the number of warmup -#' and sampling iterations, the maximum tree depth, the average acceptance -#' probability, and the stan PRNG seed +#' @param fit_opts The fit options to pass to +#' [`$sample()`][cmdstanr::model-method-sample], must be a valid cmdstanr +#' sample arg. Default is an empty list, which uses the +#' default parameters in `get_mcmc_options()` #' @param generate_initial_values Boolean indicating whether or not to specify #' the initialization of the sampler, default is `TRUE`, meaning that #' initialization lists will be generated and passed as the `init` argument @@ -150,7 +147,7 @@ wwinference <- function(ww_data, calibration_time = 90, forecast_horizon = 28, model_spec = get_model_spec(), - fit_opts = get_mcmc_options(), + fit_opts = list(), generate_initial_values = TRUE, initial_values_seed = NULL, compiled_model = compile_model()) { @@ -160,6 +157,12 @@ wwinference <- function(ww_data, ) } + fit_opts_use <- get_mcmc_options() # get defaults + # this overwrites all and only the values the user sets in `fit_opts` + fit_opts_use[names(fit_opts)] <- fit_opts + + # maybe check for invalid options here? + # Check that data is compatible with specifications assert_no_dates_after_max(ww_data$date, forecast_date) assert_no_dates_after_max(count_data$date, forecast_date) @@ -220,7 +223,7 @@ wwinference <- function(ww_data, fit <- safe_fit_model( compiled_model = compiled_model, stan_data_list = stan_data_list, - fit_opts = fit_opts, + fit_opts = fit_opts_use, init_lists = init_lists ) diff --git a/man/wwinference.Rd b/man/wwinference.Rd index 49c6b4fa..02bf1fc4 100644 --- a/man/wwinference.Rd +++ b/man/wwinference.Rd @@ -15,7 +15,7 @@ wwinference( calibration_time = 90, forecast_horizon = 28, model_spec = get_model_spec(), - fit_opts = get_mcmc_options(), + fit_opts = list(), generate_initial_values = TRUE, initial_values_seed = NULL, compiled_model = compile_model() @@ -50,13 +50,10 @@ forecast date, to produce forecasts for, default is \code{28}} example data provided by the package, but this should be specified by the user based on the date they are producing a forecast} -\item{fit_opts}{The fit options, which in this case default to the -MCMC parameters as defined using \code{get_mcmc_options()}. This includes -the following arguments, which are passed to -\code{\link[cmdstanr:model-method-sample]{$sample()}}: -the number of chains, the number of warmup -and sampling iterations, the maximum tree depth, the average acceptance -probability, and the stan PRNG seed} +\item{fit_opts}{The fit options to pass to +\code{\link[cmdstanr:model-method-sample]{$sample()}}, must be a valid cmdstanr +sample arg. Default is an empty list, which uses the +default parameters in \code{get_mcmc_options()}} \item{generate_initial_values}{Boolean indicating whether or not to specify the initialization of the sampler, default is \code{TRUE}, meaning that From c780542d3029ec81dbe6b109493e5f054b68b65f Mon Sep 17 00:00:00 2001 From: kaitejohnson Date: Thu, 19 Sep 2024 17:28:13 -0400 Subject: [PATCH 12/59] replace test with checkmate --- tests/testthat/test_wwinference.R | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tests/testthat/test_wwinference.R b/tests/testthat/test_wwinference.R index 7765a561..391805b5 100644 --- a/tests/testthat/test_wwinference.R +++ b/tests/testthat/test_wwinference.R @@ -68,8 +68,7 @@ test_that("Function to get mcmc options produces the expected outputs", { "init_buffer", "term_buffer", "window", "fixed_param", "show_exceptions", "diagnostics", "save_metric", "save_cmdstan_config" ) - # Checkmare doesn't work here for a list, says it must be a character vector - expect_true(all(names(mcmc_options) %in% expected_names)) + checkmate::check_names(names(mcmc_options), must.include = expected_names) }) test_that("Function to get model specs produces expected outputs", { From 8447704e41317a116e2600f595f33c9df18c4446 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Thu, 19 Sep 2024 18:29:11 -0400 Subject: [PATCH 13/59] add wrapper function to silence warnings on mcmc tests --- tests/testthat/helper.R | 7 +++++++ tests/testthat/test_ww_model.R | 6 +++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/tests/testthat/helper.R b/tests/testthat/helper.R index 59e37f77..8264c677 100644 --- a/tests/testthat/helper.R +++ b/tests/testthat/helper.R @@ -131,3 +131,10 @@ diff_ar1_from_z_scores_alt <- function(x0, ar, sd, z, stationary = FALSE) { return(x) } + +silent_wwinference <- function(...) { + utils::capture.output( + fit <- suppressMessages(wwinference(...)) + ) + return(fit) +} diff --git a/tests/testthat/test_ww_model.R b/tests/testthat/test_ww_model.R index 69a37157..4d72b98c 100644 --- a/tests/testthat/test_ww_model.R +++ b/tests/testthat/test_ww_model.R @@ -2,12 +2,12 @@ test_that("Test the wastewater inference model on simulated data.", { ####### # run model briefly on the simulated data ####### - expect_warning(withr::with_seed(5, { + withr::with_seed(5, { fit <- do.call( - wwinference::wwinference, + silent_wwinference, model_test_data ) - })) + }) params <- model_test_data$model_spec$params obs_last_draw <- posterior::subset_draws(fit$fit$result$draws(), From 5dc640cdc0fd0acc94741e03d77ca3b2964f6c93 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Sun, 22 Sep 2024 10:01:10 -0400 Subject: [PATCH 14/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index 018d482c..ecea71b0 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -158,7 +158,7 @@ wwinference <- function(ww_data, } fit_opts_use <- get_mcmc_options() # get defaults - # this overwrites all and only the values the user sets in `fit_opts` + # this overwrites defaults with all and only the values the user sets in `fit_opts` fit_opts_use[names(fit_opts)] <- fit_opts # maybe check for invalid options here? From 2dba97b98cd5e34e3632188f4589df145e743263 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Sun, 22 Sep 2024 10:11:56 -0400 Subject: [PATCH 15/59] remove extra args from get mcmc options --- R/wwinference.R | 83 ++--------------------------------------- man/get_mcmc_options.Rd | 76 +------------------------------------ 2 files changed, 5 insertions(+), 154 deletions(-) diff --git a/R/wwinference.R b/R/wwinference.R index ecea71b0..ad067c2b 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -158,7 +158,8 @@ wwinference <- function(ww_data, } fit_opts_use <- get_mcmc_options() # get defaults - # this overwrites defaults with all and only the values the user sets in `fit_opts` + # this overwrites defaults with all and only the values the user sets in + # `fit_opts` fit_opts_use[names(fit_opts)] <- fit_opts # maybe check for invalid options here? @@ -378,34 +379,6 @@ fit_model <- function(compiled_model, #' sampler, default is 12 #' @param show_messages logical indicating whether to print all output #' during the execution process, default is `TRUE` -#' @param refresh non-negative integer cmdstanr default, default is `NULL` -#' @param save_latent_dynamics logical cmdstanr default, default is `FALSE` -#' @param output_dir string cmdstanr default, default is -#' `getOption("cmdstanr_output_dir")` -#' @param output_basename string cmdstanr default, default is `NULL` -#' @param sig_figs positive integer cmdstanr default, default is `NULL` -#' @param chain_ids integer vector cdmstanr default, default is -#' `seq_len(chains)`, -#' @param threads_per_chain positive integer cmdstanr default, default -#' is `NULL` -#' @param opencl_ids integer vector of length 2 cmdstanr default, default -#' is `NULL` -#' @param save_warmup logical cmdstanr default, default is `FALSE` -#' @param thin positive integer cmdstanr default, default is `NULL` -#' @param adapt_engaged logical cmdstanr default, default is `TRUE` -#' @param step_size positive real cmdstanr default, default is `NULL` -#' @param metric string cmdstanr default, default is `NULL` -#' @param metric_file character vector cmdstanr default, default is `NULL` -#' @param inv_metric vector, matrix cmdstanr default, default is `NULL`` -#' @param init_buffer nonnegative integer cmdstanr default, default is `NULL` -#' @param term_buffer nonnegative integer cmdstanr default, default is `NULL` -#' @param window nonnegative integer cmdstanr default, default is `NULL` -#' @param fixed_param logical cmdstanr default, default is `FALSE` -#' @param show_exceptions logical cmdstanr default, default is TRUE, -#' @param diagnostics character vector cmdstanr default, default is -#' `c("divergences", "treedepth", "ebfmi")` -#' @param save_metric logical cmdstanr default, default is `NULL` -#' @param save_cmdstan_config logical cmdstanr default, default is `NULL` #' #' @return a list of MCMC settings with the values given by the function #' arguments @@ -421,31 +394,7 @@ get_mcmc_options <- function( seed = NULL, adapt_delta = 0.95, max_treedepth = 12, - show_messages = TRUE, - # CmdstanR default configurations - refresh = NULL, - save_latent_dynamics = FALSE, - output_dir = getOption("cmdstanr_output_dir"), - output_basename = NULL, - sig_figs = NULL, - chain_ids = seq_len(chains), - threads_per_chain = NULL, - opencl_ids = NULL, - save_warmup = FALSE, - thin = NULL, - adapt_engaged = TRUE, - step_size = NULL, - metric = NULL, - metric_file = NULL, - inv_metric = NULL, - init_buffer = NULL, - term_buffer = NULL, - window = NULL, - fixed_param = FALSE, - show_exceptions = TRUE, - diagnostics = c("divergences", "treedepth", "ebfmi"), - save_metric = NULL, - save_cmdstan_config = NULL) { + show_messages = TRUE) { mcmc_settings <- list( iter_warmup = iter_warmup, iter_sampling = iter_sampling, @@ -453,31 +402,7 @@ get_mcmc_options <- function( seed = seed, adapt_delta = adapt_delta, max_treedepth = max_treedepth, - show_messages = show_messages, - refresh = refresh, - save_latent_dynamics = save_latent_dynamics, - output_dir = output_dir, - output_basename = output_basename, - sig_figs = sig_figs, - parallel_chains = parallel_chains, - chain_ids = chain_ids, - threads_per_chain = threads_per_chain, - opencl_ids = opencl_ids, - save_warmup = save_warmup, - thin = thin, - adapt_engaged = adapt_engaged, - step_size = step_size, - metric = metric, - metric_file = metric_file, - inv_metric = inv_metric, - init_buffer = init_buffer, - term_buffer = term_buffer, - window = window, - fixed_param = fixed_param, - show_exceptions = show_exceptions, - diagnostics = diagnostics, - save_metric = save_metric, - save_cmdstan_config = save_cmdstan_config + show_messages = show_messages ) return(mcmc_settings) diff --git a/man/get_mcmc_options.Rd b/man/get_mcmc_options.Rd index 3d486ffd..cf7800c5 100644 --- a/man/get_mcmc_options.Rd +++ b/man/get_mcmc_options.Rd @@ -12,30 +12,7 @@ get_mcmc_options( seed = NULL, adapt_delta = 0.95, max_treedepth = 12, - show_messages = TRUE, - refresh = NULL, - save_latent_dynamics = FALSE, - output_dir = getOption("cmdstanr_output_dir"), - output_basename = NULL, - sig_figs = NULL, - chain_ids = seq_len(chains), - threads_per_chain = NULL, - opencl_ids = NULL, - save_warmup = FALSE, - thin = NULL, - adapt_engaged = TRUE, - step_size = NULL, - metric = NULL, - metric_file = NULL, - inv_metric = NULL, - init_buffer = NULL, - term_buffer = NULL, - window = NULL, - fixed_param = FALSE, - show_exceptions = TRUE, - diagnostics = c("divergences", "treedepth", "ebfmi"), - save_metric = NULL, - save_cmdstan_config = NULL + show_messages = TRUE ) } \arguments{ @@ -62,57 +39,6 @@ sampler, default is 12} \item{show_messages}{logical indicating whether to print all output during the execution process, default is \code{TRUE}} - -\item{refresh}{non-negative integer cmdstanr default, default is \code{NULL}} - -\item{save_latent_dynamics}{logical cmdstanr default, default is \code{FALSE}} - -\item{output_dir}{string cmdstanr default, default is -\code{getOption("cmdstanr_output_dir")}} - -\item{output_basename}{string cmdstanr default, default is \code{NULL}} - -\item{sig_figs}{positive integer cmdstanr default, default is \code{NULL}} - -\item{chain_ids}{integer vector cdmstanr default, default is -\code{seq_len(chains)},} - -\item{threads_per_chain}{positive integer cmdstanr default, default -is \code{NULL}} - -\item{opencl_ids}{integer vector of length 2 cmdstanr default, default -is \code{NULL}} - -\item{save_warmup}{logical cmdstanr default, default is \code{FALSE}} - -\item{thin}{positive integer cmdstanr default, default is \code{NULL}} - -\item{adapt_engaged}{logical cmdstanr default, default is \code{TRUE}} - -\item{step_size}{positive real cmdstanr default, default is \code{NULL}} - -\item{metric}{string cmdstanr default, default is \code{NULL}} - -\item{metric_file}{character vector cmdstanr default, default is \code{NULL}} - -\item{inv_metric}{vector, matrix cmdstanr default, default is `NULL``} - -\item{init_buffer}{nonnegative integer cmdstanr default, default is \code{NULL}} - -\item{term_buffer}{nonnegative integer cmdstanr default, default is \code{NULL}} - -\item{window}{nonnegative integer cmdstanr default, default is \code{NULL}} - -\item{fixed_param}{logical cmdstanr default, default is \code{FALSE}} - -\item{show_exceptions}{logical cmdstanr default, default is TRUE,} - -\item{diagnostics}{character vector cmdstanr default, default is -\code{c("divergences", "treedepth", "ebfmi")}} - -\item{save_metric}{logical cmdstanr default, default is \code{NULL}} - -\item{save_cmdstan_config}{logical cmdstanr default, default is \code{NULL}} } \value{ a list of MCMC settings with the values given by the function From 3dc8b9556c4084c8a9e3dc4e3f104fdd44a016d0 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Sun, 22 Sep 2024 10:26:48 -0400 Subject: [PATCH 16/59] fix example and rerun documentation --- R/wwinference.R | 20 +++++++++++++------- man/wwinference.Rd | 23 +++++++++++++---------- 2 files changed, 26 insertions(+), 17 deletions(-) diff --git a/R/wwinference.R b/R/wwinference.R index ad067c2b..a3a0da69 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -121,24 +121,27 @@ #' calibration_time <- 90 #' forecast_horizon <- 28 #' include_ww <- 1 -#' ww_fit <- wwinference(input_ww_data, -#' input_count_data, +#' +#' ww_fit <- wwinference( +#' ww_data = input_ww_data, +#' count_data = input_count_data, +#' forecast_date = forecast_date, +#' calibration_time = calibration_time, +#' forecast_horizon = forecast_horizon, #' model_spec = get_model_spec( -#' forecast_date = forecast_date, -#' calibration_time = calibration_time, -#' forecast_horizon = forecast_horizon, #' generation_interval = generation_interval, -#' inf_to_count_delay = inf_to_coutn_delay, +#' inf_to_count_delay = inf_to_count_delay, #' infection_feedback_pmf = infection_feedback_pmf, #' params = params #' ), -#' fit_opts = get_mcmc_options( +#' fit_opts = list( #' iter_warmup = 250, #' iter_sampling = 250, #' chains = 2 #' ) #' ) #' } +#' #' @rdname wwinference #' @aliases wwinference_fit wwinference <- function(ww_data, @@ -162,6 +165,9 @@ wwinference <- function(ww_data, # `fit_opts` fit_opts_use[names(fit_opts)] <- fit_opts + # Check that the fit options passed to wwinference are valid cmdstanr::sample + # arguments + # maybe check for invalid options here? # Check that data is compatible with specifications diff --git a/man/wwinference.Rd b/man/wwinference.Rd index 02bf1fc4..5c6273ea 100644 --- a/man/wwinference.Rd +++ b/man/wwinference.Rd @@ -167,24 +167,27 @@ forecast_date <- "2023-11-06" calibration_time <- 90 forecast_horizon <- 28 include_ww <- 1 -ww_fit <- wwinference(input_ww_data, - input_count_data, + +ww_fit <- wwinference( + ww_data = input_ww_data, + count_data = input_count_data, + forecast_date = forecast_date, + calibration_time = calibration_time, + forecast_horizon = forecast_horizon, model_spec = get_model_spec( - forecast_date = forecast_date, - calibration_time = calibration_time, - forecast_horizon = forecast_horizon, - generation_interval = generation_interval, - inf_to_count_delay = inf_to_coutn_delay, + generation_interval = generation_interval, + inf_to_count_delay = inf_to_count_delay, infection_feedback_pmf = infection_feedback_pmf, params = params ), - fit_opts = get_mcmc_options( + fit_opts = list( iter_warmup = 250, - iter_sampling = 250, - chains = 2 + iter_sampling = 250, + chains = 2 ) ) } + } \seealso{ Other diagnostics: From 3c76895415b43f886fe243817a12944fb37d7deb Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Sun, 22 Sep 2024 10:30:26 -0400 Subject: [PATCH 17/59] add checkmates expect names to only allow cmdstanr$ sample args to be passed to fit opts --- R/wwinference.R | 3 +++ 1 file changed, 3 insertions(+) diff --git a/R/wwinference.R b/R/wwinference.R index a3a0da69..7d3cd83d 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -167,6 +167,9 @@ wwinference <- function(ww_data, # Check that the fit options passed to wwinference are valid cmdstanr::sample # arguments + checkmate::expect_names(names(fit_opts), + subset.of = formalArgs(compiled_model$sample) + ) # maybe check for invalid options here? From f7d7d3933d06ed78670b0613bcd62c92fcecb815 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Sun, 22 Sep 2024 10:32:17 -0400 Subject: [PATCH 18/59] make get_mcmc_options an internal function --- NAMESPACE | 1 - R/wwinference.R | 1 - man/wwinference.Rd | 8 ++++---- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/NAMESPACE b/NAMESPACE index 6adf538f..af72d30e 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -26,7 +26,6 @@ export(get_draws_df) export(get_ind_m) export(get_input_count_data_for_stan) export(get_input_ww_data_for_stan) -export(get_mcmc_options) export(get_model_diagnostic_flags) export(get_model_spec) export(get_params) diff --git a/R/wwinference.R b/R/wwinference.R index 7d3cd83d..54471330 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -391,7 +391,6 @@ fit_model <- function(compiled_model, #' #' @return a list of MCMC settings with the values given by the function #' arguments -#' @export #' #' @examples #' mcmc_settings <- get_mcmc_options() diff --git a/man/wwinference.Rd b/man/wwinference.Rd index 5c6273ea..4d90ef33 100644 --- a/man/wwinference.Rd +++ b/man/wwinference.Rd @@ -175,15 +175,15 @@ ww_fit <- wwinference( calibration_time = calibration_time, forecast_horizon = forecast_horizon, model_spec = get_model_spec( - generation_interval = generation_interval, + generation_interval = generation_interval, inf_to_count_delay = inf_to_count_delay, infection_feedback_pmf = infection_feedback_pmf, params = params ), - fit_opts = list( + fit_opts = list( iter_warmup = 250, - iter_sampling = 250, - chains = 2 + iter_sampling = 250, + chains = 2 ) ) } From ccc779226554d28219b4a82aa2a8c8c5e703a29e Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Sun, 22 Sep 2024 10:34:09 -0400 Subject: [PATCH 19/59] modify wwinference call to pass a list not function to fit_opts --- data-raw/test_data.R | 2 +- vignettes/wwinference.Rmd | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/data-raw/test_data.R b/data-raw/test_data.R index 08d8873a..ee71180c 100644 --- a/data-raw/test_data.R +++ b/data-raw/test_data.R @@ -46,7 +46,7 @@ model_spec <- wwinference::get_model_spec( params = params ) -mcmc_options <- wwinference::get_mcmc_options( +mcmc_options <- list( seed = 55, iter_warmup = 25, iter_sampling = 25, diff --git a/vignettes/wwinference.Rmd b/vignettes/wwinference.Rmd index e19c7c3f..518e0826 100644 --- a/vignettes/wwinference.Rmd +++ b/vignettes/wwinference.Rmd @@ -374,7 +374,7 @@ ww_fit <- wwinference::wwinference( infection_feedback_pmf = infection_feedback_pmf, params = params ), - fit_opts = get_mcmc_options(seed = 123), + fit_opts = list(seed = 123), compiled_model = model ) ``` @@ -561,7 +561,7 @@ fit_hosp_only <- wwinference::wwinference( include_ww = FALSE, params = params ), - fit_opts = get_mcmc_options(seed = 123), + fit_opts = list(seed = 123), compiled_model = model ) ``` From 0a9c49bb6268fbdaf1cb69ca30f4eb1c34f2462c Mon Sep 17 00:00:00 2001 From: kaitejohnson Date: Sun, 22 Sep 2024 10:44:28 -0400 Subject: [PATCH 20/59] fix call to get number of chains --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index 54471330..eafa1960 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -217,7 +217,7 @@ wwinference <- function(ww_data, if (generate_initial_values) { withr::with_seed(initial_values_seed, { init_lists <- lapply( - 1:fit_opts$chains, + 1:fit_opts_use$chains, \(x) { get_inits_for_one_chain(stan_data_list) } From 9965832e233546c4e7abe6259cfac7a40f0aa637 Mon Sep 17 00:00:00 2001 From: kaitejohnson Date: Sun, 22 Sep 2024 10:54:51 -0400 Subject: [PATCH 21/59] update package data --- R/sysdata.rda | Bin 38498 -> 38324 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/R/sysdata.rda b/R/sysdata.rda index 07b0b01b24bef11085bb50a72f8681644051407d..e4c688440befab2c80c9557435876d9e51c21246 100644 GIT binary patch literal 38324 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 Date: Sun, 22 Sep 2024 10:57:49 -0400 Subject: [PATCH 22/59] modify language in vignette to no longer reference get_mcmc_options --- vignettes/wwinference.Rmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vignettes/wwinference.Rmd b/vignettes/wwinference.Rmd index 518e0826..f0616e87 100644 --- a/vignettes/wwinference.Rmd +++ b/vignettes/wwinference.Rmd @@ -357,7 +357,7 @@ to achieve improved model convergence and/or faster model fitting times. See the We also pass our preprocessed datasets (`ww_data_to_fit` and `hosp_data_preprocessed`), specify our model using `get_model_spec()`, -set the MCMC settings using `get_mcmc_options()`, and pass in our +set the MCMC settings by passing a list of arguments to `fit_opts` that will be passed to the `cmdstanr::sample()` function, and pass in our pre-compiled model(`model`) to `wwinference()` where they are combined and used to fit the model. From 388a81c6866e7734895d5dea14722abeeccdf92c Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Sun, 22 Sep 2024 11:08:06 -0400 Subject: [PATCH 23/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/R/wwinference.R b/R/wwinference.R index eafa1960..a759e606 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -31,10 +31,11 @@ #' `get_model_spec()`. The default here pertains to the `forecast_date` in the #' example data provided by the package, but this should be specified by the #' user based on the date they are producing a forecast -#' @param fit_opts The fit options to pass to -#' [`$sample()`][cmdstanr::model-method-sample], must be a valid cmdstanr -#' sample arg. Default is an empty list, which uses the -#' default parameters in `get_mcmc_options()` +#' @param fit_opts MCMC fitting options, as a list of keys and values. +#' These are passed as keyword arguments to [`$sample()`][cmdstanr::model-method-sample]. +#' Where no option is specified, [wwinference()] will fall back first on a package-specific default value +#' defined by [get_mcmc_options()]. If no package-specific default exists, it will fall back on +#' the default value defined in [`$sample()`][cmdstanr::model-method-sample]. #' @param generate_initial_values Boolean indicating whether or not to specify #' the initialization of the sampler, default is `TRUE`, meaning that #' initialization lists will be generated and passed as the `init` argument From 6e417352ac7e3bd02e7bbd70f57ced3bfca7a752 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Sun, 22 Sep 2024 11:09:10 -0400 Subject: [PATCH 24/59] update documentation --- man/wwinference.Rd | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/man/wwinference.Rd b/man/wwinference.Rd index 4d90ef33..dff07c4c 100644 --- a/man/wwinference.Rd +++ b/man/wwinference.Rd @@ -50,10 +50,11 @@ forecast date, to produce forecasts for, default is \code{28}} example data provided by the package, but this should be specified by the user based on the date they are producing a forecast} -\item{fit_opts}{The fit options to pass to -\code{\link[cmdstanr:model-method-sample]{$sample()}}, must be a valid cmdstanr -sample arg. Default is an empty list, which uses the -default parameters in \code{get_mcmc_options()}} +\item{fit_opts}{MCMC fitting options, as a list of keys and values. +These are passed as keyword arguments to \code{\link[cmdstanr:model-method-sample]{$sample()}}. +Where no option is specified, \code{\link[=wwinference]{wwinference()}} will fall back first on a package-specific default value +defined by \code{\link[=get_mcmc_options]{get_mcmc_options()}}. If no package-specific default exists, it will fall back on +the default value defined in \code{\link[cmdstanr:model-method-sample]{$sample()}}.} \item{generate_initial_values}{Boolean indicating whether or not to specify the initialization of the sampler, default is \code{TRUE}, meaning that From be2aaa37fd4893f07c7977c2f86df966230d98d4 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Sun, 22 Sep 2024 11:13:16 -0400 Subject: [PATCH 25/59] run precommit --- R/wwinference.R | 10 ++++++---- man/wwinference.Rd | 8 +++++--- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/R/wwinference.R b/R/wwinference.R index a759e606..11cf259a 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -31,10 +31,12 @@ #' `get_model_spec()`. The default here pertains to the `forecast_date` in the #' example data provided by the package, but this should be specified by the #' user based on the date they are producing a forecast -#' @param fit_opts MCMC fitting options, as a list of keys and values. -#' These are passed as keyword arguments to [`$sample()`][cmdstanr::model-method-sample]. -#' Where no option is specified, [wwinference()] will fall back first on a package-specific default value -#' defined by [get_mcmc_options()]. If no package-specific default exists, it will fall back on +#' @param fit_opts MCMC fitting options, as a list of keys and values. +#' These are passed as keyword arguments to +#' [`$sample()`][cmdstanr::model-method-sample]. +#' Where no option is specified, [wwinference()] will fall back first on +#' package-specific default value defined by [get_mcmc_options()]. If no +#' package-specific default exists, it will fall back on #' the default value defined in [`$sample()`][cmdstanr::model-method-sample]. #' @param generate_initial_values Boolean indicating whether or not to specify #' the initialization of the sampler, default is `TRUE`, meaning that diff --git a/man/wwinference.Rd b/man/wwinference.Rd index dff07c4c..c4f444cf 100644 --- a/man/wwinference.Rd +++ b/man/wwinference.Rd @@ -51,9 +51,11 @@ example data provided by the package, but this should be specified by the user based on the date they are producing a forecast} \item{fit_opts}{MCMC fitting options, as a list of keys and values. -These are passed as keyword arguments to \code{\link[cmdstanr:model-method-sample]{$sample()}}. -Where no option is specified, \code{\link[=wwinference]{wwinference()}} will fall back first on a package-specific default value -defined by \code{\link[=get_mcmc_options]{get_mcmc_options()}}. If no package-specific default exists, it will fall back on +These are passed as keyword arguments to +\code{\link[cmdstanr:model-method-sample]{$sample()}}. +Where no option is specified, \code{\link[=wwinference]{wwinference()}} will fall back first on +package-specific default value defined by \code{\link[=get_mcmc_options]{get_mcmc_options()}}. If no +package-specific default exists, it will fall back on the default value defined in \code{\link[cmdstanr:model-method-sample]{$sample()}}.} \item{generate_initial_values}{Boolean indicating whether or not to specify From fc635a2078ce626bc47e1d155fac1ee0d66a7ffd Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Sun, 22 Sep 2024 12:07:06 -0400 Subject: [PATCH 26/59] remove example for function thts not exported --- R/wwinference.R | 2 -- man/get_mcmc_options.Rd | 3 --- 2 files changed, 5 deletions(-) diff --git a/R/wwinference.R b/R/wwinference.R index 11cf259a..0adaa0dc 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -395,8 +395,6 @@ fit_model <- function(compiled_model, #' @return a list of MCMC settings with the values given by the function #' arguments #' -#' @examples -#' mcmc_settings <- get_mcmc_options() get_mcmc_options <- function( iter_warmup = 750, iter_sampling = 500, diff --git a/man/get_mcmc_options.Rd b/man/get_mcmc_options.Rd index cf7800c5..e12dc6af 100644 --- a/man/get_mcmc_options.Rd +++ b/man/get_mcmc_options.Rd @@ -53,6 +53,3 @@ are configurable by the user. See \code{cmdstanr::sample()} documentation https://mc-stan.org/cmdstanr/reference/model-method-sample.html for a full description of each argument. } -\examples{ -mcmc_settings <- get_mcmc_options() -} From 1932126693b391a83202dd9ea442c106f0298836 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Sun, 22 Sep 2024 12:09:31 -0400 Subject: [PATCH 27/59] fix test --- tests/testthat/test_wwinference.R | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/tests/testthat/test_wwinference.R b/tests/testthat/test_wwinference.R index 391805b5..255e6d32 100644 --- a/tests/testthat/test_wwinference.R +++ b/tests/testthat/test_wwinference.R @@ -61,14 +61,9 @@ test_that("Function to get mcmc options produces the expected outputs", { expected_names <- c( "iter_warmup", "iter_sampling", "chains", "seed", "adapt_delta", "max_treedepth", - "show_messages", "refresh", "save_latent_dynamics", "output_dir", - "output_basename", "sig_figs", "parallel_chains", "chain_ids", - "threads_per_chain", "opencl_ids", "save_warmup", "thin", - "adapt_engaged", "step_size", "metric", "metric_file", "inv_metric", - "init_buffer", "term_buffer", "window", "fixed_param", "show_exceptions", - "diagnostics", "save_metric", "save_cmdstan_config" + "show_messages" ) - checkmate::check_names(names(mcmc_options), must.include = expected_names) + checkmate::expect_names(names(mcmc_options), must.include = expected_names) }) test_that("Function to get model specs produces expected outputs", { From 4af34d69823632a1cb2f86c22ab017f73154d18f Mon Sep 17 00:00:00 2001 From: kaitejohnson Date: Sun, 22 Sep 2024 18:47:16 -0400 Subject: [PATCH 28/59] modify test data and rerun --- R/sysdata.rda | Bin 38324 -> 37982 bytes data-raw/test_data.R | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/R/sysdata.rda b/R/sysdata.rda index e4c688440befab2c80c9557435876d9e51c21246..4cdca32912e89dd6de0428f000374e08ef91e669 100644 GIT binary patch literal 37982 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 Date: Mon, 23 Sep 2024 15:43:39 -0400 Subject: [PATCH 29/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index 0adaa0dc..e86cdda8 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -34,7 +34,7 @@ #' @param fit_opts MCMC fitting options, as a list of keys and values. #' These are passed as keyword arguments to #' [`$sample()`][cmdstanr::model-method-sample]. -#' Where no option is specified, [wwinference()] will fall back first on +#' Where no option is specified, [wwinference()] will fall back first on a #' package-specific default value defined by [get_mcmc_options()]. If no #' package-specific default exists, it will fall back on #' the default value defined in [`$sample()`][cmdstanr::model-method-sample]. From 53f47727cd7f60af24d5d4a3088a7da2a65562ea Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Mon, 23 Sep 2024 15:43:45 -0400 Subject: [PATCH 30/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index e86cdda8..d70e16cb 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -35,7 +35,7 @@ #' These are passed as keyword arguments to #' [`$sample()`][cmdstanr::model-method-sample]. #' Where no option is specified, [wwinference()] will fall back first on a -#' package-specific default value defined by [get_mcmc_options()]. If no +#' package-specific default value given by [get_mcmc_options()], if one exists. If no #' package-specific default exists, it will fall back on #' the default value defined in [`$sample()`][cmdstanr::model-method-sample]. #' @param generate_initial_values Boolean indicating whether or not to specify From 811c4f3c48395dde9c6f77eec1e3e260afdaafcb Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Mon, 23 Sep 2024 15:43:53 -0400 Subject: [PATCH 31/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index d70e16cb..688ed120 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -36,7 +36,7 @@ #' [`$sample()`][cmdstanr::model-method-sample]. #' Where no option is specified, [wwinference()] will fall back first on a #' package-specific default value given by [get_mcmc_options()], if one exists. If no -#' package-specific default exists, it will fall back on +#' package-specific default exists, [wwinference()] will fall back on #' the default value defined in [`$sample()`][cmdstanr::model-method-sample]. #' @param generate_initial_values Boolean indicating whether or not to specify #' the initialization of the sampler, default is `TRUE`, meaning that From fea1582a76a1375b655e7068b46ce3aa661aaa7f Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Mon, 23 Sep 2024 15:44:00 -0400 Subject: [PATCH 32/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 1 - 1 file changed, 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index 688ed120..d1875803 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -174,7 +174,6 @@ wwinference <- function(ww_data, subset.of = formalArgs(compiled_model$sample) ) - # maybe check for invalid options here? # Check that data is compatible with specifications assert_no_dates_after_max(ww_data$date, forecast_date) From d02c83c060c30be7f91821ea73b930191c374fe8 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Mon, 23 Sep 2024 15:44:23 -0400 Subject: [PATCH 33/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index d1875803..c57e5de2 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -170,7 +170,7 @@ wwinference <- function(ww_data, # Check that the fit options passed to wwinference are valid cmdstanr::sample # arguments - checkmate::expect_names(names(fit_opts), + checkmate::assert_names(names(fit_opts), subset.of = formalArgs(compiled_model$sample) ) From 8aeddc0541eb26054f9b16759643325869b5cfa1 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Mon, 23 Sep 2024 15:44:37 -0400 Subject: [PATCH 34/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index c57e5de2..efb3eeae 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -391,7 +391,7 @@ fit_model <- function(compiled_model, #' @param show_messages logical indicating whether to print all output #' during the execution process, default is `TRUE` #' -#' @return a list of MCMC settings with the values given by the function +#' @return A list of MCMC settings with the values given by the function. #' arguments #' get_mcmc_options <- function( From abac5749595735a237b5da8a969e166134335ceb Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Mon, 23 Sep 2024 15:45:43 -0400 Subject: [PATCH 35/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index efb3eeae..e7e10391 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -379,7 +379,7 @@ fit_model <- function(compiled_model, #' @param iter_sampling integer indicating the number of sampling iterations, #' default is `500` #' @param chains integer indicating the number of MCMC chains to run, default -#' is `4` +#' is `4`. #' @param parallel_chains integer indicating the number of chains to run #' in parallel, default is `4` #' @param seed set of integers indicating the random seed of the Stan sampler, From 68db82c93159735c8ea75b825f831a46c279bd1e Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Mon, 23 Sep 2024 15:45:56 -0400 Subject: [PATCH 36/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index e7e10391..b9776047 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -375,7 +375,7 @@ fit_model <- function(compiled_model, #' #' #' @param iter_warmup integer indicating the number of warm-up iterations, -#' default is `750` +#' default is `750`. #' @param iter_sampling integer indicating the number of sampling iterations, #' default is `500` #' @param chains integer indicating the number of MCMC chains to run, default From 5bff3df77dbfd96c132fe7fa6f0f5150db88ac5d Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Mon, 23 Sep 2024 15:46:19 -0400 Subject: [PATCH 37/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index b9776047..e5587f6c 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -377,7 +377,7 @@ fit_model <- function(compiled_model, #' @param iter_warmup integer indicating the number of warm-up iterations, #' default is `750`. #' @param iter_sampling integer indicating the number of sampling iterations, -#' default is `500` +#' default is `500`. #' @param chains integer indicating the number of MCMC chains to run, default #' is `4`. #' @param parallel_chains integer indicating the number of chains to run From 77c7b730f227cdb4e1cd2f43492cea5a32de7cd1 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Mon, 23 Sep 2024 15:46:31 -0400 Subject: [PATCH 38/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index e5587f6c..ee1b7a73 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -381,7 +381,7 @@ fit_model <- function(compiled_model, #' @param chains integer indicating the number of MCMC chains to run, default #' is `4`. #' @param parallel_chains integer indicating the number of chains to run -#' in parallel, default is `4` +#' in parallel, default is `4`. #' @param seed set of integers indicating the random seed of the Stan sampler, #' default is NULL #' @param adapt_delta float between 0 and 1 indicating the average acceptance From 1608f233b950633e4291978ac963939be8a6b994 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Mon, 23 Sep 2024 15:46:37 -0400 Subject: [PATCH 39/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index ee1b7a73..4c8df0d6 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -389,7 +389,7 @@ fit_model <- function(compiled_model, #' @param max_treedepth integer indicating the maximum tree depth of the #' sampler, default is 12 #' @param show_messages logical indicating whether to print all output -#' during the execution process, default is `TRUE` +#' during the execution process, default is `TRUE`. #' #' @return A list of MCMC settings with the values given by the function. #' arguments From 3bc1ac123fdfc05e316453220116266fba80b035 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Mon, 23 Sep 2024 15:46:49 -0400 Subject: [PATCH 40/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index 4c8df0d6..28e85154 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -383,7 +383,7 @@ fit_model <- function(compiled_model, #' @param parallel_chains integer indicating the number of chains to run #' in parallel, default is `4`. #' @param seed set of integers indicating the random seed of the Stan sampler, -#' default is NULL +#' default is `NULL`. #' @param adapt_delta float between 0 and 1 indicating the average acceptance #' probability, default is `0.95` #' @param max_treedepth integer indicating the maximum tree depth of the From a255fc28ed1fb8dc619cc99cbfeec5e491f054ff Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Mon, 23 Sep 2024 15:46:58 -0400 Subject: [PATCH 41/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index 28e85154..2092a549 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -385,7 +385,7 @@ fit_model <- function(compiled_model, #' @param seed set of integers indicating the random seed of the Stan sampler, #' default is `NULL`. #' @param adapt_delta float between 0 and 1 indicating the average acceptance -#' probability, default is `0.95` +#' probability, default is `0.95`. #' @param max_treedepth integer indicating the maximum tree depth of the #' sampler, default is 12 #' @param show_messages logical indicating whether to print all output From f202eb0cee4acd9689031e16b7b8d9fd84ce927d Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Mon, 23 Sep 2024 15:47:12 -0400 Subject: [PATCH 42/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index 2092a549..e103a554 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -387,7 +387,7 @@ fit_model <- function(compiled_model, #' @param adapt_delta float between 0 and 1 indicating the average acceptance #' probability, default is `0.95`. #' @param max_treedepth integer indicating the maximum tree depth of the -#' sampler, default is 12 +#' sampler, default is 12. #' @param show_messages logical indicating whether to print all output #' during the execution process, default is `TRUE`. #' From c2c65a1ab83b63f39d61617354e3b99fa14a4d94 Mon Sep 17 00:00:00 2001 From: kaitejohnson Date: Mon, 23 Sep 2024 16:04:06 -0400 Subject: [PATCH 43/59] export function and remove args that are already defaults --- NAMESPACE | 1 + R/wwinference.R | 17 +++++------------ man/get_mcmc_options.Rd | 24 ++++++++---------------- man/wwinference.Rd | 6 +++--- 4 files changed, 17 insertions(+), 31 deletions(-) diff --git a/NAMESPACE b/NAMESPACE index af72d30e..6adf538f 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -26,6 +26,7 @@ export(get_draws_df) export(get_ind_m) export(get_input_count_data_for_stan) export(get_input_ww_data_for_stan) +export(get_mcmc_options) export(get_model_diagnostic_flags) export(get_model_spec) export(get_params) diff --git a/R/wwinference.R b/R/wwinference.R index e103a554..7cec93a7 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -35,8 +35,8 @@ #' These are passed as keyword arguments to #' [`$sample()`][cmdstanr::model-method-sample]. #' Where no option is specified, [wwinference()] will fall back first on a -#' package-specific default value given by [get_mcmc_options()], if one exists. If no -#' package-specific default exists, [wwinference()] will fall back on +#' package-specific default value given by [get_mcmc_options()], if one exists. +#' If no package-specific default exists, [wwinference()] will fall back on #' the default value defined in [`$sample()`][cmdstanr::model-method-sample]. #' @param generate_initial_values Boolean indicating whether or not to specify #' the initialization of the sampler, default is `TRUE`, meaning that @@ -378,8 +378,6 @@ fit_model <- function(compiled_model, #' default is `750`. #' @param iter_sampling integer indicating the number of sampling iterations, #' default is `500`. -#' @param chains integer indicating the number of MCMC chains to run, default -#' is `4`. #' @param parallel_chains integer indicating the number of chains to run #' in parallel, default is `4`. #' @param seed set of integers indicating the random seed of the Stan sampler, @@ -388,29 +386,24 @@ fit_model <- function(compiled_model, #' probability, default is `0.95`. #' @param max_treedepth integer indicating the maximum tree depth of the #' sampler, default is 12. -#' @param show_messages logical indicating whether to print all output -#' during the execution process, default is `TRUE`. #' #' @return A list of MCMC settings with the values given by the function. #' arguments #' +#' @export get_mcmc_options <- function( iter_warmup = 750, iter_sampling = 500, - chains = 4, parallel_chains = 4, seed = NULL, adapt_delta = 0.95, - max_treedepth = 12, - show_messages = TRUE) { + max_treedepth = 12) { mcmc_settings <- list( iter_warmup = iter_warmup, iter_sampling = iter_sampling, - chains = chains, seed = seed, adapt_delta = adapt_delta, - max_treedepth = max_treedepth, - show_messages = show_messages + max_treedepth = max_treedepth ) return(mcmc_settings) diff --git a/man/get_mcmc_options.Rd b/man/get_mcmc_options.Rd index e12dc6af..61cc849a 100644 --- a/man/get_mcmc_options.Rd +++ b/man/get_mcmc_options.Rd @@ -7,41 +7,33 @@ get_mcmc_options( iter_warmup = 750, iter_sampling = 500, - chains = 4, parallel_chains = 4, seed = NULL, adapt_delta = 0.95, - max_treedepth = 12, - show_messages = TRUE + max_treedepth = 12 ) } \arguments{ \item{iter_warmup}{integer indicating the number of warm-up iterations, -default is \code{750}} +default is \code{750}.} \item{iter_sampling}{integer indicating the number of sampling iterations, -default is \code{500}} - -\item{chains}{integer indicating the number of MCMC chains to run, default -is \code{4}} +default is \code{500}.} \item{parallel_chains}{integer indicating the number of chains to run -in parallel, default is \code{4}} +in parallel, default is \code{4}.} \item{seed}{set of integers indicating the random seed of the Stan sampler, -default is NULL} +default is \code{NULL}.} \item{adapt_delta}{float between 0 and 1 indicating the average acceptance -probability, default is \code{0.95}} +probability, default is \code{0.95}.} \item{max_treedepth}{integer indicating the maximum tree depth of the -sampler, default is 12} - -\item{show_messages}{logical indicating whether to print all output -during the execution process, default is \code{TRUE}} +sampler, default is 12.} } \value{ -a list of MCMC settings with the values given by the function +A list of MCMC settings with the values given by the function. arguments } \description{ diff --git a/man/wwinference.Rd b/man/wwinference.Rd index c4f444cf..7090d6c3 100644 --- a/man/wwinference.Rd +++ b/man/wwinference.Rd @@ -53,9 +53,9 @@ user based on the date they are producing a forecast} \item{fit_opts}{MCMC fitting options, as a list of keys and values. These are passed as keyword arguments to \code{\link[cmdstanr:model-method-sample]{$sample()}}. -Where no option is specified, \code{\link[=wwinference]{wwinference()}} will fall back first on -package-specific default value defined by \code{\link[=get_mcmc_options]{get_mcmc_options()}}. If no -package-specific default exists, it will fall back on +Where no option is specified, \code{\link[=wwinference]{wwinference()}} will fall back first on a +package-specific default value given by \code{\link[=get_mcmc_options]{get_mcmc_options()}}, if one exists. If no +package-specific default exists, \code{\link[=wwinference]{wwinference()}} will fall back on the default value defined in \code{\link[cmdstanr:model-method-sample]{$sample()}}.} \item{generate_initial_values}{Boolean indicating whether or not to specify From f684518a3fbedf3415a1a050853563a0ecf935b0 Mon Sep 17 00:00:00 2001 From: kaitejohnson Date: Mon, 23 Sep 2024 16:24:26 -0400 Subject: [PATCH 44/59] fix tests --- tests/testthat/test_wwinference.R | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/tests/testthat/test_wwinference.R b/tests/testthat/test_wwinference.R index 255e6d32..182ae6e9 100644 --- a/tests/testthat/test_wwinference.R +++ b/tests/testthat/test_wwinference.R @@ -59,9 +59,7 @@ test_that("wwinference model can compile", { test_that("Function to get mcmc options produces the expected outputs", { mcmc_options <- get_mcmc_options() expected_names <- c( - "iter_warmup", "iter_sampling", - "chains", "seed", "adapt_delta", "max_treedepth", - "show_messages" + "iter_warmup", "iter_sampling", "seed", "adapt_delta", "max_treedepth", ) checkmate::expect_names(names(mcmc_options), must.include = expected_names) }) From c594a28fadfb134fe4b29680cc72c30599c3ee82 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Mon, 23 Sep 2024 17:27:00 -0400 Subject: [PATCH 45/59] fix test, add formalArgs to imports --- R/wwinference-package.R | 1 + tests/testthat/test_wwinference.R | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/R/wwinference-package.R b/R/wwinference-package.R index bdac6131..a638f5b9 100644 --- a/R/wwinference-package.R +++ b/R/wwinference-package.R @@ -17,4 +17,5 @@ #' @importFrom stats dnbinom dweibull ecdf plogis qlogis rlnorm rnbinom rnorm #' rt sd time #' @importFrom tibble tibble +#' @importFrom methods formalArgs NULL diff --git a/tests/testthat/test_wwinference.R b/tests/testthat/test_wwinference.R index 182ae6e9..a3419c4f 100644 --- a/tests/testthat/test_wwinference.R +++ b/tests/testthat/test_wwinference.R @@ -59,7 +59,7 @@ test_that("wwinference model can compile", { test_that("Function to get mcmc options produces the expected outputs", { mcmc_options <- get_mcmc_options() expected_names <- c( - "iter_warmup", "iter_sampling", "seed", "adapt_delta", "max_treedepth", + "iter_warmup", "iter_sampling", "seed", "adapt_delta", "max_treedepth" ) checkmate::expect_names(names(mcmc_options), must.include = expected_names) }) From d7d77e7291d3332038d5a3f9eb1cd9418b9e7df8 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Mon, 23 Sep 2024 17:28:53 -0400 Subject: [PATCH 46/59] remove parallel chains and set to default, document things --- NAMESPACE | 1 + R/wwinference.R | 3 --- man/get_mcmc_options.Rd | 4 ---- man/wwinference.Rd | 4 ++-- 4 files changed, 3 insertions(+), 9 deletions(-) diff --git a/NAMESPACE b/NAMESPACE index 6adf538f..39f9a5ed 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -85,6 +85,7 @@ importFrom(ggplot2,theme_bw) importFrom(ggplot2,xlab) importFrom(ggplot2,ylab) importFrom(lubridate,ymd) +importFrom(methods,formalArgs) importFrom(posterior,as_draws_list) importFrom(posterior,subset_draws) importFrom(rlang,.data) diff --git a/R/wwinference.R b/R/wwinference.R index 7cec93a7..e050e256 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -378,8 +378,6 @@ fit_model <- function(compiled_model, #' default is `750`. #' @param iter_sampling integer indicating the number of sampling iterations, #' default is `500`. -#' @param parallel_chains integer indicating the number of chains to run -#' in parallel, default is `4`. #' @param seed set of integers indicating the random seed of the Stan sampler, #' default is `NULL`. #' @param adapt_delta float between 0 and 1 indicating the average acceptance @@ -394,7 +392,6 @@ fit_model <- function(compiled_model, get_mcmc_options <- function( iter_warmup = 750, iter_sampling = 500, - parallel_chains = 4, seed = NULL, adapt_delta = 0.95, max_treedepth = 12) { diff --git a/man/get_mcmc_options.Rd b/man/get_mcmc_options.Rd index 61cc849a..22f7a32c 100644 --- a/man/get_mcmc_options.Rd +++ b/man/get_mcmc_options.Rd @@ -7,7 +7,6 @@ get_mcmc_options( iter_warmup = 750, iter_sampling = 500, - parallel_chains = 4, seed = NULL, adapt_delta = 0.95, max_treedepth = 12 @@ -20,9 +19,6 @@ default is \code{750}.} \item{iter_sampling}{integer indicating the number of sampling iterations, default is \code{500}.} -\item{parallel_chains}{integer indicating the number of chains to run -in parallel, default is \code{4}.} - \item{seed}{set of integers indicating the random seed of the Stan sampler, default is \code{NULL}.} diff --git a/man/wwinference.Rd b/man/wwinference.Rd index 7090d6c3..34a3e363 100644 --- a/man/wwinference.Rd +++ b/man/wwinference.Rd @@ -54,8 +54,8 @@ user based on the date they are producing a forecast} These are passed as keyword arguments to \code{\link[cmdstanr:model-method-sample]{$sample()}}. Where no option is specified, \code{\link[=wwinference]{wwinference()}} will fall back first on a -package-specific default value given by \code{\link[=get_mcmc_options]{get_mcmc_options()}}, if one exists. If no -package-specific default exists, \code{\link[=wwinference]{wwinference()}} will fall back on +package-specific default value given by \code{\link[=get_mcmc_options]{get_mcmc_options()}}, if one exists. +If no package-specific default exists, \code{\link[=wwinference]{wwinference()}} will fall back on the default value defined in \code{\link[cmdstanr:model-method-sample]{$sample()}}.} \item{generate_initial_values}{Boolean indicating whether or not to specify From 43571c1a1ab502adcd87482346b19e089bda3936 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Mon, 23 Sep 2024 20:24:51 -0400 Subject: [PATCH 47/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 ++ 1 file changed, 2 insertions(+) diff --git a/R/wwinference.R b/R/wwinference.R index e050e256..5b3d6e8c 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -38,6 +38,8 @@ #' package-specific default value given by [get_mcmc_options()], if one exists. #' If no package-specific default exists, [wwinference()] will fall back on #' the default value defined in [`$sample()`][cmdstanr::model-method-sample]. +#' See the documentation for [`$sample()`][cmdstanr::model-method-sample] for +#' details on available options. #' @param generate_initial_values Boolean indicating whether or not to specify #' the initialization of the sampler, default is `TRUE`, meaning that #' initialization lists will be generated and passed as the `init` argument From 718ebcfeaa61d9f526eb7553e7989be134c92999 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Mon, 23 Sep 2024 20:25:13 -0400 Subject: [PATCH 48/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index 5b3d6e8c..8fbe002f 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -33,7 +33,7 @@ #' user based on the date they are producing a forecast #' @param fit_opts MCMC fitting options, as a list of keys and values. #' These are passed as keyword arguments to -#' [`$sample()`][cmdstanr::model-method-sample]. +#' [`compiled_model$sample()`][cmdstanr::model-method-sample]. #' Where no option is specified, [wwinference()] will fall back first on a #' package-specific default value given by [get_mcmc_options()], if one exists. #' If no package-specific default exists, [wwinference()] will fall back on From 606eff33bfd9f07e157d99867e4f5a0c842efc16 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Mon, 23 Sep 2024 20:26:54 -0400 Subject: [PATCH 49/59] update docs --- man/wwinference.Rd | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/man/wwinference.Rd b/man/wwinference.Rd index 34a3e363..bfc62d04 100644 --- a/man/wwinference.Rd +++ b/man/wwinference.Rd @@ -52,11 +52,13 @@ user based on the date they are producing a forecast} \item{fit_opts}{MCMC fitting options, as a list of keys and values. These are passed as keyword arguments to -\code{\link[cmdstanr:model-method-sample]{$sample()}}. +\code{\link[cmdstanr:model-method-sample]{compiled_model$sample()}}. Where no option is specified, \code{\link[=wwinference]{wwinference()}} will fall back first on a package-specific default value given by \code{\link[=get_mcmc_options]{get_mcmc_options()}}, if one exists. If no package-specific default exists, \code{\link[=wwinference]{wwinference()}} will fall back on -the default value defined in \code{\link[cmdstanr:model-method-sample]{$sample()}}.} +the default value defined in \code{\link[cmdstanr:model-method-sample]{$sample()}}. +See the documentation for \code{\link[cmdstanr:model-method-sample]{$sample()}} for +details on available options.} \item{generate_initial_values}{Boolean indicating whether or not to specify the initialization of the sampler, default is \code{TRUE}, meaning that From becd54929b4fcef006b99caec452b8c321f7f312 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Mon, 23 Sep 2024 20:33:45 -0400 Subject: [PATCH 50/59] run precommit and add new test --- R/wwinference.R | 2 +- tests/testthat/test_wwinference.R | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index 8fbe002f..033c26e0 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -38,7 +38,7 @@ #' package-specific default value given by [get_mcmc_options()], if one exists. #' If no package-specific default exists, [wwinference()] will fall back on #' the default value defined in [`$sample()`][cmdstanr::model-method-sample]. -#' See the documentation for [`$sample()`][cmdstanr::model-method-sample] for +#' See the documentation for [`$sample()`][cmdstanr::model-method-sample] for #' details on available options. #' @param generate_initial_values Boolean indicating whether or not to specify #' the initialization of the sampler, default is `TRUE`, meaning that diff --git a/tests/testthat/test_wwinference.R b/tests/testthat/test_wwinference.R index a3419c4f..4775dee6 100644 --- a/tests/testthat/test_wwinference.R +++ b/tests/testthat/test_wwinference.R @@ -74,3 +74,16 @@ test_that("Function to get model specs produces expected outputs", { # Checkmade doesn't work here for a list, says it must be a character vector expect_true(all(names(model_spec) %in% expected_names)) }) + +test_that(c( + "Passing arguments that are not expected in cmdstanr::sample ", + "throws an error" +), { + expect_error(wwinference( + ww_data = input_ww_data, + count_data = input_count_data, + forecast_date = forecast_date, + model_spec = get_model_spec, + fit_opts = list(not_an_arg = 4) + )) +}) From dc67274530711c5c6ffef19f7f7577cfae04062f Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Mon, 23 Sep 2024 20:56:53 -0400 Subject: [PATCH 51/59] add reg exp to test --- tests/testthat/test_wwinference.R | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/tests/testthat/test_wwinference.R b/tests/testthat/test_wwinference.R index 4775dee6..aa7f904d 100644 --- a/tests/testthat/test_wwinference.R +++ b/tests/testthat/test_wwinference.R @@ -75,15 +75,15 @@ test_that("Function to get model specs produces expected outputs", { expect_true(all(names(model_spec) %in% expected_names)) }) -test_that(c( - "Passing arguments that are not expected in cmdstanr::sample ", - "throws an error" -), { - expect_error(wwinference( - ww_data = input_ww_data, - count_data = input_count_data, - forecast_date = forecast_date, - model_spec = get_model_spec, - fit_opts = list(not_an_arg = 4) - )) +test_that("Passing invalid args to fit_opts throws an error ", { + expect_error( + wwinference( + ww_data = input_ww_data, + count_data = input_count_data, + forecast_date = forecast_date, + model_spec = get_model_spec, + fit_opts = list(not_an_arg = 4) + ), + regexp = c("Names must be a subset of ") + ) }) From d94d5806f852050e284bb2431859c708262064bd Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Mon, 23 Sep 2024 21:00:32 -0400 Subject: [PATCH 52/59] add setting mc cores to 4 --- vignettes/wwinference.Rmd | 1 + 1 file changed, 1 insertion(+) diff --git a/vignettes/wwinference.Rmd b/vignettes/wwinference.Rmd index f0616e87..3e8bb364 100644 --- a/vignettes/wwinference.Rmd +++ b/vignettes/wwinference.Rmd @@ -17,6 +17,7 @@ vignette: > ```{r setup, echo=FALSE} knitr::opts_chunk$set(dev = "svg") +options(mc.cores = 4) # This tells cmdstan to run the 4 chains in parallel ``` # Quick start From b0ffc239a040cec1ecfadb944cb79fab9648ace8 Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Mon, 23 Sep 2024 21:59:29 -0400 Subject: [PATCH 53/59] add the chains back so that we use them in inits --- R/wwinference.R | 4 ++++ man/get_mcmc_options.Rd | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/R/wwinference.R b/R/wwinference.R index 033c26e0..7932b91e 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -382,6 +382,8 @@ fit_model <- function(compiled_model, #' default is `500`. #' @param seed set of integers indicating the random seed of the Stan sampler, #' default is `NULL`. +#' @param chains integer indicating the number of MCMC chains to run, default +#' is `4`. #' @param adapt_delta float between 0 and 1 indicating the average acceptance #' probability, default is `0.95`. #' @param max_treedepth integer indicating the maximum tree depth of the @@ -395,12 +397,14 @@ get_mcmc_options <- function( iter_warmup = 750, iter_sampling = 500, seed = NULL, + chains = 4, adapt_delta = 0.95, max_treedepth = 12) { mcmc_settings <- list( iter_warmup = iter_warmup, iter_sampling = iter_sampling, seed = seed, + chains = chains, adapt_delta = adapt_delta, max_treedepth = max_treedepth ) diff --git a/man/get_mcmc_options.Rd b/man/get_mcmc_options.Rd index 22f7a32c..01ce9875 100644 --- a/man/get_mcmc_options.Rd +++ b/man/get_mcmc_options.Rd @@ -8,6 +8,7 @@ get_mcmc_options( iter_warmup = 750, iter_sampling = 500, seed = NULL, + chains = 4, adapt_delta = 0.95, max_treedepth = 12 ) @@ -22,6 +23,9 @@ default is \code{500}.} \item{seed}{set of integers indicating the random seed of the Stan sampler, default is \code{NULL}.} +\item{chains}{integer indicating the number of MCMC chains to run, default +is \code{4}.} + \item{adapt_delta}{float between 0 and 1 indicating the average acceptance probability, default is \code{0.95}.} From d70c609fa428be299beb49049e73652750062663 Mon Sep 17 00:00:00 2001 From: kaitejohnson Date: Mon, 23 Sep 2024 22:07:00 -0400 Subject: [PATCH 54/59] update test data --- R/sysdata.rda | Bin 37982 -> 38220 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/R/sysdata.rda b/R/sysdata.rda index 4cdca32912e89dd6de0428f000374e08ef91e669..89117762da0f87f484a480369c01d04d7ad7177c 100644 GIT binary patch literal 38220 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 Date: Tue, 24 Sep 2024 13:27:56 -0400 Subject: [PATCH 55/59] remove methods formal args from package --- NAMESPACE | 1 - R/wwinference-package.R | 1 - 2 files changed, 2 deletions(-) diff --git a/NAMESPACE b/NAMESPACE index 39f9a5ed..6adf538f 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -85,7 +85,6 @@ importFrom(ggplot2,theme_bw) importFrom(ggplot2,xlab) importFrom(ggplot2,ylab) importFrom(lubridate,ymd) -importFrom(methods,formalArgs) importFrom(posterior,as_draws_list) importFrom(posterior,subset_draws) importFrom(rlang,.data) diff --git a/R/wwinference-package.R b/R/wwinference-package.R index a638f5b9..bdac6131 100644 --- a/R/wwinference-package.R +++ b/R/wwinference-package.R @@ -17,5 +17,4 @@ #' @importFrom stats dnbinom dweibull ecdf plogis qlogis rlnorm rnbinom rnorm #' rt sd time #' @importFrom tibble tibble -#' @importFrom methods formalArgs NULL From ee27de0d50227633aaccdc0ea8b17bcee1484fe2 Mon Sep 17 00:00:00 2001 From: kaitejohnson Date: Wed, 25 Sep 2024 04:40:53 -0400 Subject: [PATCH 56/59] try updating testing data --- R/sysdata.rda | Bin 38220 -> 38166 bytes data-raw/test_data.R | 2 +- tests/testthat/test_ww_model.R | 7 ++++++- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/R/sysdata.rda b/R/sysdata.rda index 89117762da0f87f484a480369c01d04d7ad7177c..60e01c46ff0c8dfd177db08b7b26b789bde9186c 100644 GIT binary patch literal 38166 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 Date: Thu, 26 Sep 2024 12:55:09 -0400 Subject: [PATCH 57/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/wwinference.R b/R/wwinference.R index 7932b91e..ad2468b8 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -368,7 +368,7 @@ fit_model <- function(compiled_model, #' #' @description #' This function returns a list of MCMC settings to pass to the -#' `cmdstanr::sample()` function to fit the model. The default settings are +#' [`$sample()`][cmdstanr::model-method-sample] function to fit the model. The default settings are #' specified for production-level runs, consider adjusting to optimize #' for speed while iterating. All input arguments to `cmdstanr::sample()` #' are configurable by the user. See `cmdstanr::sample()` documentation From 1489d7cbd960d69e58ef0ed326a284fd378d5f9b Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson <94390107+kaitejohnson@users.noreply.github.com> Date: Thu, 26 Sep 2024 12:55:36 -0400 Subject: [PATCH 58/59] Update R/wwinference.R Co-authored-by: Dylan H. Morris --- R/wwinference.R | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/R/wwinference.R b/R/wwinference.R index ad2468b8..b696c8b7 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -370,10 +370,10 @@ fit_model <- function(compiled_model, #' This function returns a list of MCMC settings to pass to the #' [`$sample()`][cmdstanr::model-method-sample] function to fit the model. The default settings are #' specified for production-level runs, consider adjusting to optimize -#' for speed while iterating. All input arguments to `cmdstanr::sample()` -#' are configurable by the user. See `cmdstanr::sample()` documentation -#' https://mc-stan.org/cmdstanr/reference/model-method-sample.html for a full -#' description of each argument. +```suggestion +#' All input arguments to [`$sample()`][cmdstanr::model-method-sample] +#' are configurable by the user. See [`$sample()`][cmdstanr::model-method-sample] documentation +#' for details of the available arguments. #' #' #' @param iter_warmup integer indicating the number of warm-up iterations, From cfe8b0a03215e7731855f3282568426b9074ca4e Mon Sep 17 00:00:00 2001 From: Kaitlyn Johnson Date: Thu, 26 Sep 2024 13:00:14 -0400 Subject: [PATCH 59/59] fix documentation --- R/wwinference.R | 14 ++++++++------ man/get_mcmc_options.Rd | 18 ++++++++++-------- 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/R/wwinference.R b/R/wwinference.R index b696c8b7..385d5e39 100644 --- a/R/wwinference.R +++ b/R/wwinference.R @@ -368,11 +368,11 @@ fit_model <- function(compiled_model, #' #' @description #' This function returns a list of MCMC settings to pass to the -#' [`$sample()`][cmdstanr::model-method-sample] function to fit the model. The default settings are -#' specified for production-level runs, consider adjusting to optimize -```suggestion +#' [`$sample()`][cmdstanr::model-method-sample] function to fit the model. +#' The default settings are specified for production-level runs. #' All input arguments to [`$sample()`][cmdstanr::model-method-sample] -#' are configurable by the user. See [`$sample()`][cmdstanr::model-method-sample] documentation +#' are configurable by the user. See +#' [`$sample()`][cmdstanr::model-method-sample] documentation #' for details of the available arguments. #' #' @@ -380,8 +380,10 @@ fit_model <- function(compiled_model, #' default is `750`. #' @param iter_sampling integer indicating the number of sampling iterations, #' default is `500`. -#' @param seed set of integers indicating the random seed of the Stan sampler, -#' default is `NULL`. +#' @param seed integer, A seed for the (P)RNG to pass to CmdStan. In the case +#' of multi-chain sampling the single seed will automatically be augmented by +#' the the run (chain) ID so that each chain uses a different seed. +#' Default is `NULL`. #' @param chains integer indicating the number of MCMC chains to run, default #' is `4`. #' @param adapt_delta float between 0 and 1 indicating the average acceptance diff --git a/man/get_mcmc_options.Rd b/man/get_mcmc_options.Rd index 01ce9875..193bb6f1 100644 --- a/man/get_mcmc_options.Rd +++ b/man/get_mcmc_options.Rd @@ -20,8 +20,10 @@ default is \code{750}.} \item{iter_sampling}{integer indicating the number of sampling iterations, default is \code{500}.} -\item{seed}{set of integers indicating the random seed of the Stan sampler, -default is \code{NULL}.} +\item{seed}{integer, A seed for the (P)RNG to pass to CmdStan. In the case +of multi-chain sampling the single seed will automatically be augmented by +the the run (chain) ID so that each chain uses a different seed. +Default is \code{NULL}.} \item{chains}{integer indicating the number of MCMC chains to run, default is \code{4}.} @@ -38,10 +40,10 @@ arguments } \description{ This function returns a list of MCMC settings to pass to the -\code{cmdstanr::sample()} function to fit the model. The default settings are -specified for production-level runs, consider adjusting to optimize -for speed while iterating. All input arguments to \code{cmdstanr::sample()} -are configurable by the user. See \code{cmdstanr::sample()} documentation -https://mc-stan.org/cmdstanr/reference/model-method-sample.html for a full -description of each argument. +\code{\link[cmdstanr:model-method-sample]{$sample()}} function to fit the model. +The default settings are specified for production-level runs. +All input arguments to \code{\link[cmdstanr:model-method-sample]{$sample()}} +are configurable by the user. See +\code{\link[cmdstanr:model-method-sample]{$sample()}} documentation +for details of the available arguments. }