Specify the stock-recruit relationship (SRR) for Rceattle
Source:R/0-build_srr_and_M.R
build_srr.RdStock recruitment relationships currently implemented in Rceattle:
srr_fun = 0or"mean": No stock recruit relationship. Recruitment is a function of R0 and annual deviates (i.e. steepness = 0.99). $$R_y = exp(R0 + R_{dev,y})$$srr_fun = 2or"BevertonHolt": Beverton-holt stock-recruitment relationship $$R_y = \frac{\alpha_{srr} * SB_{y-minage}}{1+\beta_{srr} * SB_{y-minage}}$$srr_fun = 4or"Ricker": Ricker stock-recruitment relationship $$R_y = \alpha_{srr} * SB_{y-minage} * exp(-\beta_{srr} * SB_{y-minage})$$
When srr_pred_fun > 0 and srr_fun = 0 recruitment in the hindcast is estimated as in srr_fun = 0 $$R_y = exp(R0 + R_{dev,y})$$, but an additional stock recruitment relationship defined by srr_pred_fun is estimated between srr_hat_styr and srr_hat_endyr and treated as an additional penalty. The stock recruitment relationship defined by srr_pred_fun is then used in the projection.
Usage
build_srr(
srr_fun = 0,
srr_pred_fun = srr_fun,
proj_mean_rec = TRUE,
srr_mse_switchyr = NULL,
srr_hat_styr = NULL,
srr_hat_endyr = NULL,
srr_est_mode = 1,
srr_prior = 4,
srr_prior_sd = 1,
srr_indices = NA,
Bmsy_lim = NA,
linkages = NULL
)Arguments
- srr_fun
Stock recruit function to be used for hindcast estimation of Rceattle (see @description below). Default = 0
- srr_pred_fun
stock recruit function for projection, reference points, and penalties to be used for Rceattle (see below). When
srr_fun == 0, it treats the stock-recruit curve as an additional penalty onto the annualy estimated recruitment from the hindcast (sensu AMAK and Jim Ianelli's pollock model). Ifsrr_fun > 0thensrr_pred_fun = srr_funand no additional penalty is included.- proj_mean_rec
Project the model using: 0 = mean recruitment (average R of hindcast) or 1 = SRR(omega, srr_devs)
- srr_mse_switchyr
is used for MSEs to deal with AMAK and Jim Ianelli's estimation where a stock recruit function is estimated as an additional penalty (srr_fun = 0 and srr_pred_fun > 0). It tells the model in what year to switch to the stock recruit function.
- srr_hat_styr
Integer. The first year used for estimating the recruitment function as an additional penalty. It will add additional penalties sensu AMAK and Jim Ianelli's pollock model when
srr_pred_fun > 0andsrr_fun = 0, starting atstyr+ 1. Defaults to $styr + 1$ in $data_list$. Useful if environmental data used to condition stock-recruit relationships is not available until end-year, but projections are desired.- srr_hat_endyr
Integer. The last year used for estimating the recruitment function as an additional penalty. It will add an additional penalties sensu AMAK and Jim Ianelli's pollock model when
srr_pred_fun > 0andsrr_fun = 0. Recruitment Defaults to $endyr$ in $data_list$. Useful if environmental data used to condition stock-recruit relationships is not available for the full time-series, but projections are desired.- srr_est_mode
Switch to determine estimation mode. 0 = fix alpha to prior mean, 1 = freely estimate R0, alpha, and/or beta (default), 2 = use lognormally distributed prior for alpha (Ricker) or steepness (Beverton), 3 = use beta distributed prior for steepness (Beverton) given mean and sd.
- srr_prior
mean for normally distributed prior for stock-recruit parameter
- srr_prior_sd
Prior standard deviation for stock-recruit parameter
- srr_indices
Soft-deprecated. Use the
linkagesargument instead. Seevignette("environmental-linkages-and-priors").- Bmsy_lim
Upper limit for Ricker based SSB-MSY (e.g 1/Beta). Will add a likelihood penalty if beta is estimated above this limit. Default
NAis not used.- linkages
Optional named list of
linkage_spec()objects keyed by recruitment parameter name (must be one of"R0","alpha","beta"). Each spec describes how that parameter depends on environmental covariates and on stratifying factors (species, sex). The offset enters additively (on the log scale) inside the recruitment compute. Seevignette("environmental-linkages-and-priors")for details.