beverton3: Two-parameter Beverton-Holt function

View source: R/RcppExports.R

beverton3R Documentation

Two-parameter Beverton-Holt function

Description

Function beverton3() creates a vector of values produced by the two- parameter Beverton-Holt function as applied with a user-specified time lag. The two-parameter Beverton-Holt function is given as \phi_{t+1} = \phi_t \alpha / (1 + \beta n_t). Here, if no separate_N vector is provided, then n_t = \phi_t.

Usage

beverton3(
  start_value,
  alpha,
  beta,
  time_steps = 100L,
  time_lag = 1L,
  pre0_subs = FALSE,
  pre0_value = 0,
  substoch = 0L,
  separate_N = NULL
)

Arguments

start_value

A positive number to start the return vector in time 0.

alpha

The alpha parameter in the two-parameter Beverton-Holt function. Must be non-negative.

beta

The beta parameter in the two-parameter Beverton-Holt function. Must be non-negative.

time_steps

The number of time steps to run the projection. Must be a positive integer.

time_lag

A positive integer denoting the number of time steps back for the value of phi in the two-parameter Beverton-Holt function.

pre0_subs

A logical value indicating whether to use a number other than that given in start_value for values of phi lagged from times prior to time 0.

pre0_value

A positive number to use for phi lagged from times prior to time 0. Only used if pre0_subs = TRUE.

substoch

An integer value indicating the kind of substochasticity to use. Values include: 0, no substochasticity enforced (the default); 1, all numbers must be non-negative; and 2, all numbers should be forced to the interval [0, 1].

separate_N

An optional numeric vector with values of N in each time, if phi is to be treated as different from N in the two-parameter model.

Value

A numeric vector of values showing values projected under the two- parameter Beverton-Holt function.

Examples

trial_run1 <- beverton3(1, alpha = 0.5, beta = 0.009)
plot(trial_run1)

trial_run2 <- beverton3(1, alpha = 0.5, beta = 0.9)
plot(trial_run2)

trial_run3 <- beverton3(1, alpha = 1, beta = 0.009)
plot(trial_run3)

trial_run4 <- beverton3(1, alpha = 1, beta = 0.9)
plot(trial_run4)

trial_run5 <- beverton3(1, alpha = 5, beta = 0.009)
plot(trial_run5)

trial_run6 <- beverton3(1, alpha = 5, beta = 0.9)
plot(trial_run6)

used_Ns <- c(10, 15, 12, 14, 14, 150, 15, 1, 5, 7, 9, 14, 13, 16, 17, 19,
  25, 26)
trial_run7 <- beverton3(1, alpha = 1, beta = 0.009, separate_N = used_Ns)
plot(trial_run7)


lefko3 documentation built on May 29, 2024, 6:39 a.m.