Skip to contents

Calculates the potential rate (in units 1/year) at which a prey individual of a given size \(w\) is killed by predators from species \(j\). In formulas $${\tt pred\_rate}_j(w_p) = \int \phi_j(w,w_p) (1-f_j(w)) \gamma_j(w) N_j(w) \, dw.$$ This potential rate is used in getPredMort() to calculate the realised predation mortality rate on the prey individual.

Usage

getPredRate(
  params,
  n = initialN(params),
  n_pp = initialNResource(params),
  n_other = initialNOther(params),
  t = 0,
  ...
)

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.)

...

Unused

Value

A two dimensional array (predator species x prey size), where the prey size runs over fish community plus resource spectrum.

Your own predation rate function

By default getPredRate() calls mizerPredRate(). However you can replace this with your own alternative predation rate function. If your function is called "myPredRate" then you register it in a MizerParams object params with

params <- setRateFunction(params, "PredRate", "myPredRate")

Your function will then be called instead of mizerPredRate(), with the same arguments.

Examples

# \donttest{
params <- NS_params
# Predation rate in initial state
pred_rate <- getPredRate(params)
str(pred_rate)
#>  num [1:12, 1:226] 8.35e-17 6.05e-10 9.75e-16 1.19e-05 1.04e-17 ...
#>  - attr(*, "dimnames")=List of 2
#>   ..$ sp    : chr [1:12] "Sprat" "Sandeel" "N.pout" "Herring" ...
#>   ..$ w_prey: chr [1:226] "2.12e-13" "2.53e-13" "3.02e-13" "3.61e-13" ...
# With constant fishing effort for all gears for 20 time steps
sim <- project(params, t_max = 20, effort = 0.5)
# Get the feeding level at one time step
pred_rate <- getPredRate(params, n = N(sim)[15, , ], 
                         n_pp = NResource(sim)[15, ], t = 15)
# }