#' Update a jagsUI object
#'
#' Updates an object of class \code{jagsUI} for a specified number
#' of iterations.
#'
#' @param object A model object of class \code{jagsUI}.
#' @param ... Further arguments pass to or from other methods.
#' @inherit jagsUI params return details
#'
#' @aliases update
#'
#' @export
update.jagsUI <- function(object, params=NULL, n_adapt=100, n_iter, n_thin=1,
modules=c("glm","dic"), factories=NULL,
quiet=FALSE, ...){
#Process input
check_class(object)
run_dat <- mget(c("params","n_adapt","n_iter","n_thin","quiet",
"modules","factories"))
run_dat$model_object <- object$model
if(class(object$model) == 'list'){
run_dat$n_cores <- length(object$model)
} else { run_dat$n_cores <- 1 }
run_dat$n_chains <- length(object$samples)
run_dat$n_warmup <- 0
if(is.null(run_dat$params)){
run_dat$params <- strip_params(rownames(object$summary), unique=TRUE)
}
#Run MCMC
if(run_dat$n_cores == 1){
out <- run_model(run_dat)
} else{
out <- run_parallel(run_dat)
}
#Calc summary stats
out$summary <- calc_stats(out$samples)
#Assign class
class(out) <- 'jagsUI'
return(out)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.