Learn R Programming

adehabitatLT (version 0.1)

simm.mba: Simulation of an Arithmetic Brownian Motion

Description

This function simulates an Arithmetic Brownian Motion.

Usage

simm.mba(date = 1:100, x0 = c(0, 0), mu = c(0, 0),
         sigma = diag(2), id = "A1", burst = id)

Arguments

date
a vector indicating the date (in seconds) at which relocations should be simulated. This vector can be of class POSIXct
x0
a vector of length 2 containing the coordinates of the startpoint of the trajectory
mu
a vector of length 2 describing the drift of the movement
sigma
a 2*2 positive definite matrix
id
a character string indicating the identity of the simulated animal (see help(ltraj))
burst
a character string indicating the identity of the simulated burst (see help(ltraj))

Value

  • An object of class ltraj

Details

The arithmetic Brownian motion (Brillinger et al. 2002) can be described by the stochastic differential equation: $$d \mathbf{z}(t) = \mathbf{\mu} dt + \mathbf{\Sigma} d \mathbf{B}2(t)$$ Coordinates of the animal at time t are contained in the vector z(t). dz = c(dx, dy) is the increment of the movement during dt. dB2(t) is a bivariate brownian Motion (see ?simm.brown). The vector mu measures the drift of the motion. The matrix Sigma controls for perturbations due to the random noise modeled by the Brownian motion. It can also be used to take into account a potential correlation between the components dx and dy of the animal moves during dt (see Examples).

References

Brillinger, D.R., Preisler, H.K., Ager, A.A. Kie, J.G. & Stewart, B.S. (2002) Employing stochastic differential equations to model wildlife motion. Bulletin of the Brazilian Mathematical Society 33: 385--408.

See Also

simm.brown, ltraj, simm.crw, simm.mou

Examples

Run this code
set.seed(253)
u <- simm.mba(1:1000, sigma = diag(c(4,4)), 
              burst = "Brownian motion")
v <- simm.mba(1:1000, sigma = matrix(c(2,-0.8,-0.8,2), ncol = 2),
              burst = "cov(x,y) > 0")
w <- simm.mba(1:1000, mu = c(0.1,0), burst = "drift > 0")
x <- simm.mba(1:1000, mu = c(0.1,0),
              sigma = matrix(c(2, -0.8, -0.8, 2), ncol=2),
              burst = "Drift and cov(x,y) > 0")
z <- c(u, v, w, x)
plot(z, addpoints = FALSE, perani = FALSE)

Run the code above in your browser using DataLab