Calculates the biomass of carrion (dead animals) at the next timestep from the current biomass.
carrion_dynamics( params, n, n_pp, n_other, rates, t, dt, carrion_external = params@other_params$UR$carrion_external, ... )
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 |
t | Current time |
dt | Time step size |
carrion_external | External inflow rate of carrion biomass |
... | Unused |
A single number giving the biomass of carrion at next time step
The equation for the time evolution of the carrion biomass \(B\) is assumed to be of the form $$dB/dt = inflow - consumption * B + external$$ where
inflow
comes from
Discards from fishing.
Animals killed by fishing gear.
Animals that have died by causes other than predation.
consumption
is by scavenger species, where the encounter rate is
specified by rho[, "carrion", ]
.
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.
Other resource dynamics functions:
detritus_dynamics()