| lv3 | R Documentation |
simecol example: predator prey-model with three equations: predator, prey and resource (e.g. nutriens, grassland).
data(lv3)
A valid S4 object according to the odeModel
specification. The object contains the following slots:
mainLotka-Volterra equations for predator prey and resource
.
parmsVector with named parameters of the model:
cgrowth rate of the prey population,
dencounter rate of predator and prey,
eyield factor (allows conversion with respect to d),
fdeath rate of the predator population,
grecycling parameter.
inputsTime series specifying external delivery of resource.
timesSimulation time and integration interval.
initVector with start values for s, p and k.
sResource (e.g. grassland or phosphorus).
pProducer (prey).
kConsumer (predator).
solverCharacter string specifying the integration method.
simecol-package,
sim,
parms,
init,
times.
##============================================
## Basic Usage:
## explore the example
##============================================
data(lv3)
plot(sim(lv3))
times(lv3)["by"] <- 5 # set maximum external time step to a large value
plot(sim(lv3)) # wrong! automatic time step overlooks internal inputs
plot(sim(lv3, hmax = 1)) # integration with correct maximum internal time step
##============================================
## Implementation:
## The code of the model
##============================================
lv3 <- new("odeModel",
main = function(time, init, parms, inputs) {
s.in <- approxTime1(inputs, time, rule = 2)["s.in"]
with(as.list(c(init, parms)),{
ds <- s.in - b*s*p + g*k
dp <- c*s*p - d*k*p
dk <- e*p*k - f*k
list(c(ds, dp, dk), s.in = s.in)
})
},
parms = c(b = 0.1, c = 0.1, d = 0.1, e = 0.1, f = 0.1, g = 0),
times = c(from = 0, to = 200, by = 1),
inputs = as.matrix(
data.frame(
time = c(0, 99, 100, 101, 200),
s.in = c(0.1, 0.1, 0.5, 0.1, 0.1)
)
),
init = c(s = 1, p = 1, k = 1), # substrate, producer, consumer
solver = "lsoda"
)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.