calc_M1 {LeMaRns} | R Documentation |
Calculate background mortality
Description
Calculates the background mortality of each species in each length class per time step.
Usage
calc_M1(
nsc,
sc_Linf,
phi_min,
natmort_opt = rep("std_RNM", length(sc_Linf)),
Nmort = rep(0.8, length(sc_Linf)),
prop = rep(0.75, length(sc_Linf))
)
get_M1(nsc, sc_Linf, natmort_opt, Nmort, prop)
calc_M1_stdRNM(nsc, sc_Linf, Nmort = 0.8, prop = 0.75)
calc_M1_lin(nsc, sc_Linf, Nmort = 0.8)
calc_M1_constRNM(nsc, sc_Linf, Nmort = 0.8)
Arguments
nsc |
A numeric value representing the number of length classes in the model. |
sc_Linf |
A numeric vector of length |
phi_min |
A numeric value representing the time step of the model. |
natmort_opt |
A character vector of length |
Nmort |
A numeric vector of length |
prop |
A numeric vector of length |
Details
The background mortality is defined as the number of individuals that die per year, but not from predation or fishing
N*exp(-M1)
where N
is the total number of individuals. This function allows three different models for background mortality: (1) "constant"
, which gives M1=Nmort
for all length classes up to and including the sc_Linf
-th class; (2) "std_RNM"
, which gives M1=Nmort
for all length classes between floor(sc_Linf*prop)
and the sc_Linf
-th class and M1=0
for the rest; and (3) "linear"
, which gives M1=0
for the first length class, followed by a linear increase in M1
up to and including the sc_Linf
-th length class M1=Nmort
and M1=0
for the rest.
Value
calc_M1
returns a matrix of dimensions nsc
and nfish
representing the background mortality of each species for each length class.
get_M1
returns a numeric vector of length nsc
representing the background mortality for each length class.
calc_M1_stdRNM
returns a numeric vector of length nsc
representing the background mortality for each length class. M1=Nmort
for all length classes between floor(sc_Linf*prop)
and the sc_Linf
-th class and M1=0
for the rest.
calc_M1_lin
returns a numeric vector of length nsc
representing the background mortality for each length class. M1=0
for the first length class. M1
then increases linearly up to and including the sc_Linf
-th length class. For all length classes above sc_Linf
, M1=0
.
calc_M1_constRNM
returns a numeric vector of length nsc
representing the background mortality for each length class. M1=Nmort
for all length classes up to and including the sc_Linf
-th class. For all length classes above sc_Linf
, M1=0
.
References
Thorpe, R.B., Jennings, S., Dolder, P.J. (2017). Risks and benefits of catching pretty good yield in multispecies mixed fisheries. ICES Journal of Marine Science, 74(8):2097-2106.
Examples
# Set up the inputs to the function - species-independent parameters
nfish <- nrow(NS_par)
nsc <- 32
maxsize <- max(NS_par$Linf)*1.01 # the biggest size is 1% bigger than the largest Linf
l_bound <- seq(0, maxsize, maxsize/nsc); l_bound <- l_bound[-length(l_bound)]
u_bound <- seq(maxsize/nsc, maxsize, maxsize/nsc)
mid <- l_bound+(u_bound-l_bound)/2
# Set up the inputs to the function - species-specific parameters
Linf <- NS_par$Linf # the von-Bertalanffy asymptotic length of each species (cm).
W_a <- NS_par$W_a # length-weight conversion parameter.
W_b <- NS_par$W_b # length-weight conversion parameter.
k <- NS_par$k # the von-Bertalnaffy growth parameter.
Lmat <- NS_par$Lmat # the length at which 50\% of individuals are mature (cm).
# Get phi_min
tmp <- calc_phi(k, Linf, nsc, nfish, u_bound, l_bound, calc_phi_min=FALSE,
phi_min=0.1) # fixed phi_min
phi_min <- tmp$phi_min
# Calculate growth increments
tmp <- calc_ration_growthfac(k, Linf, nsc, nfish, l_bound, u_bound, mid, W_a, W_b, phi_min)
sc_Linf <- tmp$sc_Linf
# Calculate background mortality with natmort_opt="std_RNM", Nmort=0.8 and prop=0.75 for all species
M1 <- calc_M1(nsc, sc_Linf, phi_min)
# Get background mortality with natmort_opt="std_RNM", Nmort=0.8 and prop=0.75 for all species
natmort_opt <- "std_RNM"
Nmort <- 0.8
prop <- 0.75
get_M1(nsc, sc_Linf, natmort_opt, Nmort, prop)
# Calculate standard residual background mortality
M1_stdRNM <- calc_M1_stdRNM(nsc, sc_Linf)
# Calculate linear background mortality
M1_lin <- calc_M1_lin(nsc, sc_Linf,Nmort=0.3)
# Calculate constant residual background mortality
M1_constRNM <- calc_M1_constRNM(nsc, sc_Linf)