Calculates the energy rate \(E_{r.i}(w)\) (grams/year) available for reproduction and growth after metabolism and movement have been accounted for.

getEReproAndGrowth(
  params,
  n = params@initial_n,
  n_pp = params@initial_n_pp,
  n_other = params@initial_n_other,
  encounter = getEncounter(params, n = n, n_pp = n_pp, n_other = n_other),
  feeding_level = getFeedingLevel(params, n = n, n_pp = n_pp, n_other = n_other,
    encounter = encounter)
)

Arguments

params

A MizerParams object

n

A matrix of species abundances (species x size).

n_pp

A vector of the plankton abundance by size

n_other

A list of abundances for other dynamical components of the ecosystem

encounter

The encounter rate matrix (optional) of dimension no. species x no. size bins. If not passed in, it is calculated internally using the getEncounter function.

feeding_level

The current feeding level (optional). A matrix of size no. species x no. size bins. If not supplied, is calculated internally using the getFeedingLevel function.

Value

A two dimensional array (species x size) holding $$E_{r.i}(w) = \max(0, \alpha_i\, (1 - {\tt feeding\_level}_i(w))\, {\tt encounter}_i(w) - {\tt metab}_i(w)).$$ Due to the form of the feeding level, calculated by getFeedingLevel, this can also be expressed as $$E_{r.i}(w) = \max(0, \alpha_i\, {\tt feeding\_level}_i(w)\, h_i(w) - {\tt metab}_i(w))$$ where \(h_i\) is the maximum intake rate, set with setIntakeMax. The assimilation rate \(\alpha_i\) is taken from the species parameter data frame in params. The metabolic rate metab is taken from params and set with setMetab.

The return value can be negative, which means that the energy intake does not cover the cost of metabolism and movement.

See also

The parts of this energy rate that is invested into growth is calculated with getERepro and the part that is invested into reproduction is calculated with getEGrowth.

Other rate functions: getEGrowth(), getERepro(), getEncounter(), getFMortGear(), getFMort(), getFeedingLevel(), getMort(), getPlanktonMort(), getPredMort(), getPredRate(), getRDD(), getRDI(), getRates(), getStarvMort()

Examples

if (FALSE) { data(NS_species_params_gears) data(inter) params <- newMultispeciesParams(NS_species_params_gears, inter) # Project with constant fishing effort for all gears for 20 time steps sim <- project(params, t_max = 20, effort = 0.5) # Get the energy at a particular time step getEReproAndGrowth(params,sim@n[21,,],sim@n_pp[21,]) }