R/avail_for.R

Defines functions avail_for_lag avail_for_conv avail_for_expr avail_for_pow avail_for_factr avail_for_sum avail_for_rate

Documented in avail_for_conv avail_for_expr avail_for_factr avail_for_lag avail_for_pow avail_for_rate avail_for_sum

#' What Variables are Available?
#'
#' Find out what variables are available for particular functions that
#' add variables to a model, based on existing variables.
#'
#' \describe{
#'   \item{\code{avail_for_rate}}{\code{\link{add_rate}},\code{\link{rep_rate}},\code{\link{vec_rate}}}
#'   \item{\code{avail_for_sum}}{\code{\link{add_state_param_sum}}}
#'   \item{\code{avail_for_factr}}{\code{\link{add_factr}},\code{\link{vec_factr}}}
#'   \item{\code{avail_for_expr}}{\code{\link{add_sim_report_expr}}}
#'   \item{\code{avail_for_lag}}{\code{\link{add_lag_diff}}}
#'   \item{\code{avail_for_conv}}{\code{\link{add_conv}}}
#' }
#'
#' @param model a \code{\link{flexmodel}} object
#'
#' @return A character vector of names of variables that are available
#' as input into the specified type of model component.
#'
#' @examples
#' avail_for_conv(make_hello_world_model())
#'
#' @rdname avail_for
#' @export
avail_for_rate = function(model) {
  c(names(model$state),
    names(model$params),
    names(model$sums),
    names(model$factrs))
}

#' @rdname avail_for
#' @export
avail_for_sum = function(model) {
  c(names(model$state),
    names(model$params))
}

#' @rdname avail_for
#' @export
avail_for_factr = function(model) {
  c(names(model$state),
    names(model$params),
    names(model$sums),
    names(model$factrs))
}

#' @rdname avail_for
#' @export
avail_for_pow = function(model) {
  c(names(model$state),
    names(model$params),
    names(model$sums),
    names(model$factrs),
    names(model$pows))
}

#' @rdname avail_for
#' @export
avail_for_expr = function(model) {
  initial_sim_report_names(model)
}

#' @rdname avail_for
#' @export
avail_for_conv = function(model) {
  intermediate_sim_report_names(model)
}

#' @rdname avail_for
#' @export
avail_for_lag = function(model) {
  intermediate_sim_report_names(model)
}
bbolker/McMasterPandemic documentation built on Aug. 25, 2024, 6:35 p.m.