Sets the proportion of the total energy available for reproduction and growth that is invested into reproduction as a function of the size of the individual and sets the reproductive efficiency.
setReproduction(params, maturity = NULL, repro_prop = NULL, srr = params@srr)
params | A MizerParams object |
---|---|
maturity | Optional. An array (species x size) that holds the proportion of individuals of each species at size that are mature. If not supplied, a default is set as described in the section "Setting reproduction". |
repro_prop | Optional. An array (species x size) that holds the proportion of consumed energy that a mature individual allocates to reproduction for each species at size. If not supplied, a default is set as described in the section "Setting reproduction". |
srr | The name of the stock recruitment function. Defaults to
|
The MizerParams object.
For each species and at each size, the proportion of the available energy
that is invested into reproduction is the product of two factors: the
proportion maturity
of individuals that are mature and the proportion
repro_prop
of the energy available to a mature individual that is
invested into reproduction.
If the maturity
argument is not supplied, then it is set to a sigmoidal
maturity ogive that changes from 0 to 1 at around the maturity size:
$${\tt maturity}(w) = \left[1+\left(\frac{w}{w_{mat}}\right)^{-U}\right]^{-1}.$$
(To avoid clutter, we are not showing the species index in the equations.)
The maturity weights are taken from the w_mat
column of the
species_params data frame. Any missing maturity weights are set to 1/4 of the
asymptotic weight in the w_inf
column.
The exponent \(U\) determines the steepness of the maturity ogive. By
default it is chosen as \(U = 10\), however this can be overridden by
including a column w_mat25
in the species parameter dataframe that
specifies the weight at which 25% of individuals are mature, which sets
\(U = \log(3) / \log(w_{mat} / w_{25}).\)
The sigmoidal function given above would strictly reach 1 only asymptotically.
Mizer instead sets the function equal to 1 already at the species'
maximum size, taken from the compulsory w_inf
column in the
species_params
data frame.
If the repro_prop
argument is not supplied, it is set to the
allometric form
$${\tt repro\_prop}(w) = \left(\frac{w}{w_{inf}}\right)^{m-n}.$$
Here \(n\) is the scaling exponent of the energy income rate. Hence
the exponent \(m\) determines the scaling of the investment into
reproduction for mature individuals. By default it is chosen to be
\(m = 1\) so that the rate at which energy is invested into reproduction
scales linearly with the size. This default can be overridden by including a
column m
in the species parameter dataframe. The asymptotic sizes
are taken from the compulsory w_inf
column in the species_params
data frame.
The reproductive efficiency, i.e., the proportion of energy allocated to
reproduction that results in egg biomass, is set from the erepro
column in the species_params data frame. If that is not provided, the default
is set to 1 (which you will want to override). The offspring biomass divided
by the egg biomass gives the rate of egg production, returned by
getRDI
.
The stock-recruitment relationship is an emergent phenomenon in mizer, with several sources of density dependence. Firstly, the amount of energy invested into reproduction depends on the energy income of the spawners, which is density-dependent due to competition for prey. Secondly, the proportion of larvae that grow up to recruitment size depends on the larval mortality, which depends on the density of predators, and on larval growth rate, which depends on density of prey.
Finally, the proportion of eggs that are viable and hatch to larvae can be density dependent. Somewhat misleadingly, mizer refers to this relationship between the number of eggs and the number of hatched larvae as the stock-recruitment relationship, even though it is only one part of the full stock-recruitment relationship. However it is the only part that can be set independently, while the other parts are already determined by the predation parameters and other model parameters. Thus in practice this part of the density dependence is used to encode all the density dependence that is not already included in the other two sources of density dependence.
To calculate the density-dependent rate of larvae production, mizer puts the
the density-independent rate of egg production through a "stock-recruitment"
function. The result is returned by getRDD
. The name of the
stock-recruitment function is specified by the srr
argument. The
default is the Beverton-Holt function srrBevertonHolt
, which
requires an R_max
column in the species_params data frame giving the
maximum egg production rate. If this column does not exist, it is initialised
to Inf
, leading to no density-dependence. Other functions provided by
mizer are srrRicker
and srrSheperd
and you can
easily use these as models for writing your own functions.
Other functions for setting parameters:
setBMort()
,
setFishing()
,
setInitial()
,
setIntakeMax()
,
setInteraction()
,
setMetab()
,
setParams()
,
setPlankton()
,
setPredKernel()
,
setSearchVolume()
if (FALSE) { params <- NS_params # Change maturity size for species 3 params@species_params$w_mat[3] <- 24 params <- setReproduction(params) }