Calculates the detritus biomass at the next timestep from the current detritus biomass.

detritus_dynamics(
  params,
  n,
  n_pp,
  n_other,
  rates,
  t,
  dt,
  detritus_external = params@other_params$UR$detritus_external,
  detritus_proportion = params@other_params$UR$detritus_proportion,
  ...
)

Arguments

detritus_external

Rate of change from external sources

detritus_proportion

Proportion of consumption by fish that flows into the detritus component.

...

Arguments passed on to UR_dynamics

params

A MizerParams object

n

A matrix of current species abundances (species x size)

n_pp

A vector of current plankton abundance by size

n_other

List of abundances of other dynamic components

rates

A list of rates as returned by getRates()

t

Current time

dt

Time step size

Value

A single number giving the biomass of detritus at next time step

Details

The equation for the time evolution of the detritus biomass \(B\) is assumed to be of the form $$dB/dt = \tt{inflow} - \tt{consumption} * B + \tt{external}$$ where

  • inflow comes from feces, calculated as a proportion detritus_proportion of the biomass consumed by all consumers.

  • consumption is by detritivorous species, where the encounter rate is specified by rho[, "detritus", ].

  • external is an influx from external sources. It can be negative in which case it represents a loss to external sources.

This equation is solved analytically to $$B(t+dt) = B(t)\exp(-\tt{consumption} \cdot dt) +\frac{\tt{inflow} + \tt{external}}{\tt{consumption}} (1-\exp(-\tt{consumption} \cdot dt)).$$ This avoids the stability problems that would arise if we used the Euler method to solve the equation numerically.

See also

Other resource dynamics functions: carrion_dynamics()