catchmsy {fishmethods} | R Documentation |
Estimating MSY from catch and resilience
Description
This function estimates MSY following Martell and Froese(2012).
Usage
catchmsy(year = NULL, catch = NULL, catchCV = NULL,
catargs = list(dist = "none", low = 0, up = Inf, unit = "MT"),
l0 = list(low = 0, up = 1, step = 0), lt = list(low = 0, up = 1,
refyr = NULL),
sigv = 0, k = list(dist = "unif", low = 0, up = 1, mean = 0, sd = 0),
r = list(dist = "unif", low = 0, up = 1, mean = 0, sd = 0),
M = list(dist = "unif", low = 0.2, up = 0.2, mean = 0, sd = 0),
nsims = 10000, catchout = 0, grout = 1,
graphs = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11),
grargs = list(lwd = 1, pch = 16, cex = 1, nclasses = 20, mains = " ",
cex.main = 1,
cex.axis = 1, cex.lab = 1),
pstats = list(ol = 1, mlty = 1, mlwd = 1.5, llty = 3, llwd = 1, ulty = 3,
ulwd = 1),
grtif = list(zoom = 4, width = 11, height = 13, pointsize = 10))
Arguments
year |
vector containing the time series of numeric year labels. |
catch |
vector containing the time series of catch data (in weight). Missing values are not allowed. |
catchCV |
vector containing the time series of coefficients of variation associated with catch if resampling of catch is desired; otherwise, catchCV = NULL. |
catargs |
list arguments associated with resampling of catch. |
l0 |
list arguments for the relative biomass in year 1. |
lt |
list arguments for the depletion level in the selected reference year ( |
sigv |
standard deviation of the log-normal random process error. |
k |
list arguments for the carrying capacity. |
r |
list arguments for the intrinsic growth rate. |
M |
list arguments for natural mortality. |
nsims |
number of Monte Carlos samples. |
catchout |
If resampling |
grout |
numeric argument specifying whether graphs should be printed to console only (1) or to
both the console and TIF graph files (2).Use |
graphs |
vector specifying which graphs should be produced. 1 = line plot of observed catch versus
year,2 = point plot of plausible |
grargs |
list control arguments for plotting functions. |
pstats |
list control arguments for plotting the mean and 95
and management quantities on respective graphs. |
grtif |
list arguments for the .TIF graph files. See |
Details
The method of Martell and Froese (2012) is used to produce estimates of MSY where only catch and information on resilience is known.
The Schaefer production model is
B[t+1]<-B[t]+r*B[t]*(1-B[t]/k)-catch[t]
where B is biomass in year t, r
is the instrince rate of increase, k
is the carrying
capacity and catch
is the catch in year t. Biomass is the first year is calculated by
B[1]=k
*l0
. For sigv>0, the production equation is multiplied by exp(rnorm(1,0,sigv))
if process error is desired.
The maximum sustainable yield (MSY) is calculated as
MSY=r*k/4
Biomass at MSY is calculated as
Bmsy=k/2
Fishing mortality at MSY is calculated as
Fmsy=r/2
Exploitation rate at MSY is calculated as
Umsy=(Fmsy/(Fmsy+M))*(1-exp(-Fmsy-M))
The overfishing limit in last year+1 is calculated as
OFL=B[last year +1]*Umsy
length(year)+1
biomass estimates are made for each run.
If using the R Gui (not Rstudio), run
graphics.off() windows(width=10, height=12,record=TRUE) .SavedPlots <- NULL
before running the catchmsy function to recall plots.
Value
Initial |
dataframe containing the initial values for each explored parameter. |
Parameters |
dataframe containing the mean, median, 2.5th and 97.5 plausible (likelihood=1) parameters. |
Estimates |
dataframe containing the mean, median, 2.5th and 97.5 of the management quantities (i.e., MSY, Bmsy, etc.) for the plausible parameters (likelihood=1) |
Values |
dataframe containing the values of l0, k, r, Bmsy/k, M and associated management quantities for all (likelihood=0 and likelihood=1) random draws. |
end1yr |
value of the last year of catch data + 1 for use in function |
type |
designates the output object as a |
The biomass estimates from each simulation are not stored in memory but are automatically
saved to a .csv file named "Biotraj-cmsy.csv". Yearly values for each simulation are stored across
columns. The first column holds the likelihood values for each simulation (1= accepted, 0 = rejected).
The number of rows equals the number of simulations (nsims
). This file is loaded to plot
graph 11 and it must be present in the default or setwd()
directory.
When catchout
=1, catch values randomly selected are saved to a .csv file named "Catchtraj-cmsy.csv".
Yearly values for each simulation are stored across columns. The first column holds the likelihood
values (1= accepted, 0 = rejected). The number of rows equals the number of simulations (nsims
).
Use setwd()
before running the function to change the directory where .csv files are stored.
Note
The random distribution function was adapted from Nadarajah, S and S. Kotz. 2006. R programs for computing truncated distributions. Journal of Statistical Software 16, code snippet 2.
Author(s)
Gary A. Nelson, Massachusetts Division of Marine Fisheries gary.nelson@mass.gov
References
Martell, S. and R. Froese. 2012. A simple method for estimating MSY from catch and resilience. Fish and Fisheries 14:504-514.
See Also
Examples
## Not run:
data(lingcod)
outpt<-catchmsy(year=lingcod$year,
catch=lingcod$catch,catchCV=NULL,
catargs=list(dist="none",low=0,up=Inf,unit="MT"),
l0=list(low=0.8,up=0.8,step=0),
lt=list(low=0.01,up=0.25,refyr=2002),sigv=0,
k=list(dist="unif",low=4333,up=433300,mean=0,sd=0),
r=list(dist="unif",low=0.015,up=0.1,mean=0,sd=0),
M=list(dist="unif",low=0.18,up=0.18,mean=0.00,sd=0.00),
nsims=30000)
## End(Not run)