Lotka-Volterra model

class pints.toy.LotkaVolterraModel(y0=None)[source]

Lotka-Volterra model of Predatory-Prey relationships [1].

This model describes cyclical fluctuations in the populations of two interacting species.

\[\begin{split}\frac{dx}{dt} = ax - bxy \\ \frac{dy}{dt} = -cy + dxy\end{split}\]

where x is the number of prey, and y is the number of predators.

Real data is included via suggested_values(), which was taken from [2], and includes hare and lynx pelt count data collected by the Hudson’s Bay Company, in Canada in the early twentieth century.

Extends pints.ForwardModelS1, pints.toy.ToyODEModel.

Parameters:y0 – The initial population, given as a vector [a, b] such that a >= 0 and b >= 0.

References

[1]https://en.wikipedia.org/wiki/Lotka-Volterra_equations
[2](1, 2) Howard, P. (2009). Modeling basics. Lecture Notes for Math 442, Texas A&M University
initial_conditions()[source]

Returns the current initial conditions.

jacobian(z, t, p)[source]

See pints.ToyModel.jacobian().

n_outputs()[source]

See pints.ForwardModel.n_outputs().

n_parameters()[source]

See pints.ForwardModel.n_parameters().

n_states()

Returns number of states in underlying ODE. Note: will not be same as n_outputs() for models where only a subset of states are observed.

set_initial_conditions(y0)[source]

Changes the initial conditions for this model.

simulate(parameters, times)

See pints.ForwardModel.simulate().

simulateS1(parameters, times)

See pints.ForwardModelS1.simulateS1().

suggested_parameters()[source]

See pints.toy.ToyModel.suggested_parameters().

suggested_times()[source]

See pints.toy.ToyModel.suggested_times().

suggested_values()[source]

Returns hare-lynx pelt count data collected by the Hudson’s Bay Company in Canada in the early twentieth century, which is taken from [2]. The data given here corresponds to annual observations taken from 1900-1920 (inclusive).