Nothing
## ---- echo = FALSE, message = FALSE--------------------------------------
knitr::opts_chunk$set(collapse = TRUE, comment = "#>")
## ---- install-and-load, eval=FALSE---------------------------------------
# # CRAN version
# install.packages("ss3sim")
# # Github version, which depends on "devtools"
# # install.packages("devtools")
# devtools::install_github("ss3sim/ss3sim",
# ref = "development", dependencies = TRUE, build_vignettes = TRUE)
# # Load the package
# library("ss3sim")
## ---- help, eval=FALSE---------------------------------------------------
# ?ss3sim
# help(package = "ss3sim")
# browseVignettes("ss3sim")
## ---- locate-folders-----------------------------------------------------
library(ss3sim)
d <- system.file("extdata", package = "ss3sim")
case_folder <- file.path(d, "eg-cases")
om <- file.path(d, "models", "cod-om")
em <- file.path(d, "models", "cod-em")
## ---- case-file-checks, eval=FALSE---------------------------------------
# run_ss3sim(iterations = 1, scenarios =
# c("D0-E0-F0-M0-cod",
# "D1-E0-F0-M0-cod",
# "D0-E1-F0-M0-cod",
# "D1-E1-F0-M0-cod"),
# case_files = list(F = "F", D = c("index", "lcomp", "agecomp"),
# E = "E", M = "M"),
# case_folder = case_folder, om_dir = om,
# em_dir = em)
## ------------------------------------------------------------------------
recdevs_det <- matrix(0, nrow = 100, ncol = 20)
## ---- deterministic-runs, eval=FALSE-------------------------------------
# run_ss3sim(iterations = 1:20,
# scenarios = c("D100-E100-F0-M0-cod", "D100-E101-F0-M0-cod"),
# case_files = list(F = "F", D = c("index", "lcomp", "agecomp"),
# E = "E", M = "M"),
# case_folder = case_folder, om_dir = om, em_dir = em,
# bias_adjust = TRUE, user_recdevs = recdevs_det)
## ---- deterministic-runs-expand, eval=FALSE------------------------------
# x <- expand_scenarios(list(D = 100, E = 100:101, F = 0, M = 0),
# species = "cod")
# run_ss3sim(iterations = 1:20, scenarios = x,
# case_folder = case_folder, om_dir = om, em_dir = em,
# bias_adjust = TRUE, user_recdevs = recdevs_det,
# case_files = list(F = "F", D = c("index", "lcomp", "agecomp"),
# E = "E", M = "M"))
## ---- stochastic-runs, eval=FALSE----------------------------------------
# run_ss3sim(iterations = 1:100, scenarios =
# c("D0-E0-F0-M0-cod",
# "D1-E0-F0-M0-cod",
# "D0-E1-F0-M0-cod",
# "D1-E1-F0-M0-cod"),
# case_files = list(F = "F", D = c("index", "lcomp", "agecomp"),
# E = "E", M = "M"),
# case_folder = case_folder, om_dir = om,
# em_dir = em, bias_adjust = TRUE)
## ---- get-results, eval=FALSE--------------------------------------------
# get_results_all(user_scenarios =
# c("D100-E100-F0-M0-cod",
# "D100-E101-F0-M0-cod",
# "D0-E0-F0-M0-cod",
# "D1-E0-F0-M0-cod",
# "D0-E1-F0-M0-cod",
# "D1-E1-F0-M0-cod"))
# # Read in the data frames stored in the csv files
# scalar_dat <- read.csv("ss3sim_scalar.csv")
# ts_dat <- read.csv("ss3sim_ts.csv")
## ---- load-output--------------------------------------------------------
data("scalar_dat", package = "ss3sim")
data("ts_dat", package = "ss3sim")
## ---- transform-output---------------------------------------------------
scalar_dat <- calculate_re(scalar_dat, add = TRUE)
ts_dat <- calculate_re(ts_dat, add = TRUE)
ts_dat <- merge(ts_dat, scalar_dat[,c("scenario", "iteration",
"max_grad")])
scalar_dat_det <- scalar_dat[scalar_dat$E %in% c("E100", "E101"), ]
scalar_dat_sto <- scalar_dat[scalar_dat$E %in% c("E0", "E1"), ]
ts_dat_det <- ts_dat[ts_dat$E %in% c("E100", "E101"), ]
ts_dat_sto <- ts_dat[ts_dat$E %in% c("E0", "E1"), ]
scalar_dat_long <- scalar_dat
colnames(scalar_dat_long) <- gsub("(.+)_re", "RE _\\1", colnames(scalar_dat_long))
scalar_dat_long <- reshape(scalar_dat_long, sep = " _",
direction = "long",
varying = grep(" _", colnames(scalar_dat_long)),
idvar = c("scenario", "iteration"),
timevar = "parameter")
## ---- relative-error-boxplots-det, fig.height=7, fig.width=5, fig.cap="Box plots of the relative error (RE) for deterministic runs. *M* is fixed at the true value from the OM (E100) or estimated (E101). The standard deviation on the survey index observation error is 0.001 (D100)."----
p <- plot_scalar_boxplot(scalar_dat_long[
scalar_dat_long$parameter %in% c("depletion", "SR_BH_steep", "SSB_MSY") &
scalar_dat_long$E %in% c("E100", "E101"), ],
x = "D", y = "RE", re = FALSE,
vert = "E", horiz = "parameter", print = FALSE)
print(p)
# see plot_scalar_points() for another plotting function
## ---- plot-sto-ts, fig.height=5, fig.width=7, fig.cap="Time series of relative error in spawning stock biomass."----
p <- plot_ts_lines(ts_dat_sto, y='SpawnBio_re',
vert = "E", horiz="D", print = FALSE, col = "max_grad")
print(p)
## ---- ssb-ts-plots, fig.height=5, fig.width=7, cache=TRUE, fig.cap="Spawning stock biomass time series."----
p <- plot_ts_lines(ts_dat_sto, y='SpawnBio_em',
vert = "E", horiz="D", print = FALSE, col = "max_grad")
print(p)
## ---- relative-error-boxplots-sto, fig.height=7, fig.width=5, cache=TRUE, fig.cap="Box plots of relative error (RE) for stochastic runs. *M* is fixed at the true value from the OM (E0) or estimated (E1). The standard deviation on the survey index observation error is 0.4 (D1) or 0.1 (D0), representing an increase in survey sampling effort."----
p <- plot_scalar_boxplot(scalar_dat_long[
scalar_dat_long$parameter %in% c("depletion", "SR_BH_steep", "SSB_MSY") &
scalar_dat_long$E %in% c("E0", "E1"), ],
x = "D", y = "RE", re = FALSE,
vert = "E", horiz = "parameter", print = FALSE)
print(p)
## ---- ss3sim-base-eg, eval=FALSE-----------------------------------------
# d <- system.file("extdata", package = "ss3sim")
# om <- paste0(d, "/models/cod-om")
# em <- paste0(d, "/models/cod-em")
#
# F0 <- list(years = 1:100, years_alter = 1:100, fvals =
# c(rep(0, 25), rep(0.114, 75)))
#
# index1 <- list(fleets = 2, years = list(seq(60, 100, by = 2)),
# sds_obs = list(0.1))
#
# lcomp1 <- list(fleets = c(1, 2), Nsamp = list(100, 100), years =
# list(25:100, seq(60, 100, by = 2)), lengthbin_vector = NULL,
# cpar = c(1, 1))
#
# agecomp1 <- list(fleets = c(1, 2), Nsamp = list(100, 100), years =
# list(25:100, seq(60, 100, by = 2)), agebin_vector = NULL,
# cpar = c(1, 1))
#
# E0 <- list(natM_type = "1Parm", natM_n_breakpoints = NULL,
# natM_lorenzen = NULL, natM_val = c(NA,-1), par_name =
# "LnQ_base_3_CPUE", par_int = NA, par_phase = -1, forecast_num = 0)
#
# M0 <- list(NatM_p_1_Fem_GP_1 = rep(0, 100))
#
# # todo: add data_params so that this function runs.
# ss3sim_base(iterations = 1:20, scenarios = "D1-E0-F0-M0-cod",
# f_params = F0, index_params = index1, lcomp_params = lcomp1,
# agecomp_params = agecomp1, estim_params = E0, tv_params = M0,
# om_dir = om, em_dir = em)
## ---- alternative-case-lists, eval=FALSE---------------------------------
# case_folder <- system.file("extdata", "eg-cases", package = "ss3sim")
# om <- system.file("extdata", "models/cod-om", package = "ss3sim")
# em <- system.file("extdata", "models/cod-em", package = "ss3sim")
# files <- list.files(case_folder, pattern = "0-cod")
#
# temp_case_folder <- "ss3sim-example-cases"
# dir.create(temp_case_folder)
# file.copy(paste0(case_folder, "/", files), temp_case_folder)
#
# # now make X, Y, and Z case files:
# setwd(temp_case_folder)
# file.copy("index0-cod.txt", "X0-cod.txt")
# file.copy("lcomp0-cod.txt", "Y0-cod.txt")
# file.copy("agecomp0-cod.txt", "Z0-cod.txt")
# setwd("..")
#
# # our custom specification:
# case_files <- list(F = "F", X = "index", Y = "lcomp", Z = "agecomp")
#
# # and use run_ss3sim() with our new case_file list:
# run_ss3sim(iterations = 1,
# scenarios = "X0-Y0-Z0-F0-cod",
# case_folder = temp_case_folder,
# om_dir = om, em_dir = em,
# case_files = case_files)
## ---- custom-case-eg, eval=FALSE-----------------------------------------
# case_files = list(D = c("index", "lcomp", "agecomp"), F = "F", S = "S")
## ---- parallel-one, eval=FALSE-------------------------------------------
# require(doParallel)
#
# registerDoParallel(cores = ifelse(Sys.getenv("NUMBER_OF_PROCESSORS")<6, 2, 4))
## ---- parallel-two, eval=FALSE-------------------------------------------
# require(foreach)
# getDoParWorkers()
#
# #> [1] 4
## ---- parallel-three, eval=FALSE-----------------------------------------
# run_ss3sim(iterations = 1, scenarios =
# c("D1-E0-F0-cod",
# "D1-E1-F0-cod"),
# case_files =
# list(F = "F", D = c("index", "lcomp", "agecomp"), E = "E"),
# case_folder = case_folder, om_dir = om, em_dir = em,
# bias_adjust = TRUE, parallel = TRUE)
## ---- parallel-iterations1, eval=FALSE-----------------------------------
# run_ss3sim(iterations = 1:2, scenarios = "D0-F0-cod",
# case_folder = case_folder, om_dir = om, em_dir = em,
# parallel = TRUE, parallel_iterations = TRUE)
## ---- parallel-iterations2, eval=FALSE-----------------------------------
# run_ss3sim(iterations = 1:2, scenarios = "D0-F0-cod",
# case_folder = case_folder, om_dir = om, em_dir = em,
# parallel = TRUE, parallel_iterations = TRUE, bias_nsim = 2,
# bias_adjust = TRUE)
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.