The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Pearl-Verhulst Logistic Growth model

The classical logistic-growth model (Kot 2001) assumes that the growth of a population decreases with increasing population size and is given by the following equation,

\[ \frac{dN}{dt} = rN \times \left(1 - \frac{N}{K}\right) \] where \(N\) is the number (density) of indviduals at time \(t\), \(K\) is the carrying capacity of the population, \(r\) is the intrinsic growth rate of the population.

This model consists of two reactions, birth and death, whose propensity functions are defined as:

where \(b\) is the per capita birth rate and \(d\) is the per capita death rate.

Assuming \(b=2\), \(d=1\), \(K=1000\) and \(X(0)=(500)\), we can define the following parameters:

library(GillespieSSA2)
sim_name <- "Pearl-Verhulst Logistic Growth model"
params <- c(b = 2, d = 1, K = 1000)
final_time <- 10
initial_state <- c(N = 500)

The reactions (each consisting of a propensity function and a state change vector) can be defined as:

reactions <- list(
  reaction("b * N", c(N = +1)),
  reaction("(d + (b - d) * N / K) * N", c(N = -1))
)

Run simulations with the Exact method

set.seed(1)
out <- ssa(
  initial_state = initial_state,
  reactions = reactions,
  params = params,
  final_time = final_time,
  method = ssa_exact(),
  sim_name = sim_name
) 
plot_ssa(out)

Run simulations with the Explict tau-leap method

set.seed(1)
out <- ssa(
  initial_state = initial_state,
  reactions = reactions,
  params = params,
  final_time = final_time,
  method = ssa_etl(tau = .03),
  sim_name = sim_name
) 
plot_ssa(out)

Run simulations with the Binomial tau-leap method

set.seed(1)
out <- ssa(
  initial_state = initial_state,
  reactions = reactions,
  params = params,
  final_time = final_time,
  method = ssa_btl(mean_firings = 5),
  sim_name = sim_name
) 
plot_ssa(out)

References

Kot, Mark. 2001. Elements of Mathematical Ecology. Cambridge University Press. https://doi.org/10.1017/cbo9780511608520.

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.