Creates stochastic multiplicative deviation series for use in shortcut stock assessments, typically representing uncertainty or observation error applied to fishing mortality and spawning stock biomass metrics.
shortcut_devs(
om,
Fcv = 0.212,
Fphi = 0.423,
SSBcv = 0,
SSBphi = 0,
bias.correct = FALSE
)An operating model object used only to define dimensions for the
generated deviation series. The function uses dims(om)$iter for the
number of iterations and dimnames(om)$year for the year dimension.
Numeric. Standard deviation on the log scale for the fishing
mortality deviation process. Defaults to 0.212.
Numeric. Autocorrelation parameter for the fishing mortality
deviation process. Defaults to 0.423.
Numeric. Standard deviation on the log scale for the spawning
stock biomass deviation process. Defaults to 0.
Numeric. Autocorrelation parameter for the spawning stock
biomass deviation process. Currently not used in the implementation, which
fixes the SSB autocorrelation at 0. Defaults to 0.
Logical. If TRUE, applies bias correction when
generating the lognormal AR(1) deviates. Passed to FLCore::rlnormar1().
Defaults to FALSE.
An FLQuants object with two elements:
F: a lognormal AR(1) deviation series for fishing mortality;
SSB: a lognormal deviation series for spawning stock biomass.
The deviations are generated as lognormal autoregressive series and returned
as an FLQuants object with components for F and SSB.
The function generates deviations using FLCore::rlnormar1(), with:
n = dims(om)$iter iterations;
years = dimnames(om)$year;
meanlog = 0, so the process is centered on multiplicative value 1
on the log scale before optional bias correction;
separate variance and autocorrelation settings for F and SSB.
The returned object is suitable for direct use in shortcut.sa(), where the
deviations can be applied to derived stock metrics.
Although SSBphi is provided as an argument, the function currently hardcodes
rho=0 for the SSB process. This means the SSB deviations are independent
through time regardless of the value supplied to SSBphi.
if (FALSE) { # \dontrun{
# Generate default shortcut deviations
devs <- shortcut_devs(om)
# More variable and autocorrelated F deviations
devs <- shortcut_devs(om, Fcv = 0.3, Fphi = 0.6)
# With bias correction
devs <- shortcut_devs(om, bias.correct = TRUE)
} # }