Skip to contents

Calculates the density-independent rate of total egg production \(R_{di}\) (units 1/year) before density dependence, by species. You would not usually call this function directly but instead use getRDI(), which then calls this function unless an alternative function has been registered, see below.

Usage

mizerRDI(params, n, n_pp, n_other, t, e_growth, mort, e_repro, ...)

Arguments

params

A MizerParams object

n

A matrix of species abundances (species x size).

n_pp

A vector of the resource abundance by size

n_other

A list of abundances for other dynamical components of the ecosystem

t

The time for which to do the calculation (Not used by standard mizer rate functions but useful for extensions with time-dependent parameters.)

e_growth

An array (species x size) with the energy available for growth as calculated by getEGrowth(). Unused.

mort

An array (species x size) with the mortality rate as calculated by getMort(). Unused.

e_repro

An array (species x size) with the energy available for reproduction as calculated by getERepro().

...

Unused

Value

A numeric vector with the rate of egg production for each species.

Details

This rate is obtained by taking the per capita rate \(E_r(w)\psi(w)\) at which energy is invested in reproduction, as calculated by getERepro(), multiplying it by the number of individuals\(N(w)\) and integrating over all sizes \(w\) and then multiplying by the reproductive efficiency \(\epsilon\) and dividing by the egg size w_min, and by a factor of two to account for the two sexes: $$R_{di} = \frac{\epsilon}{2 w_{min}} \int N(w) E_r(w) \psi(w) \, dw$$

Used by getRDD() to calculate the actual, density dependent rate. See setReproduction() for more details.

Your own reproduction function

By default getRDI() calls mizerRDI(). However you can replace this with your own alternative reproduction function. If your function is called "myRDI" then you register it in a MizerParams object params with

params <- setRateFunction(params, "RDI", "myRDI")

Your function will then be called instead of mizerRDI(), with the same arguments. For an example of an alternative reproduction function see constantEggRDI().