Examples of delayed density-dependent dynamics
Sable fluctuations
# Parameters
r <- 0.6 # Intrinsic growth rate
K <- 80 # Carrying capacity
tau <- 2.4/r # Time delay in generations
generations <- 200 # Total number of generations to simulate
# Initial population size
N <- numeric(generations)
N[1:tau] <- 1 # Start with a small population size for the first few generations
# Simulating the delayed density dependence
for (t in (tau + 1):generations) {
N[t] <- N[t - 1] * exp(r * (1 - N[t - tau] / K))
}
# Plotting the population over time
plot(1:generations, N, type="o", col="blue", lwd=2,
main="Population Growth with Delayed Density Dependence",
xlab="Generation", ylab="Population Size")
abline(h = 80, col = "red", lty ="dashed")
rt = r * tau
mtext(text = paste0("r = ", r, ", ", "tau =", tau, ", ", "r*tau = ", round(rt, 2)), col = "red", cex = 1.2)

Dampened dynamics
# Parameters
r <- 0.6 # Intrinsic growth rate
K <- 80 # Carrying capacity
tau <- 1.8/r # Time delay in generations
generations <- 200 # Total number of generations to simulate
# Initial population size
N <- numeric(generations)
N[1:tau] <- 1 # Start with a small population size for the first few generations
# Simulating the delayed density dependence
for (t in (tau + 1):generations) {
N[t] <- N[t - 1] * exp(r * (1 - N[t - tau] / K))
}
# Plotting the population over time
plot(1:generations, N, type="o", col="blue", lwd=2,
main="Population Growth with Delayed Density Dependence",
xlab="Generation", ylab="Population Size")
abline(h = 80, col = "red", lty ="dashed")
rt = r * tau
mtext(text = paste0("r = ", r, ", ", "tau =", tau, ", ", "r*tau = ", round(rt, 2)), col = "red", cex = 1.2)

Logistic model with K
# Parameters
r <- 0.6 # Intrinsic growth rate
K <- 80 # Carrying capacity
tau <- 1 # Time delay in generations
generations <- 50 # Total number of generations to simulate
# Initial population size
N <- numeric(generations)
N[1:tau] <- 1 # Start with a small population size for the first few generations
# Simulating the delayed density dependence
for (t in (tau + 1):generations) {
N[t] <- N[t - 1] * exp(r * (1 - N[t - tau] / K))
}
# Plotting the population over time
plot(1:generations, N, type="o", col="blue", lwd=2,
main="Population Growth with Delayed Density Dependence",
xlab="Generation", ylab="Population Size")
abline(h = 80, col = "red", lty ="dashed")
rt = r * tau
mtext(text = paste0("r = ", r, ", ", "tau =", tau, ", ", "r*tau = ", round(rt, 2)), col = "red", cex = 1.2)
