Simulation of an Arithmetic Brownian Motion

Share:

Description

This function simulates an Arithmetic Brownian Motion.

Usage

1
2
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))

Details

The arithmetic Brownian motion (Brillinger et al. 2002) can be described by the stochastic differential equation:

dz = mu * dt + Sigma dB2(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).

Value

An object of class ltraj

Author(s)

Clement Calenge clement.calenge@oncfs.gouv.fr
Stephane Dray dray@biomserv.univ-lyon1.fr
Manuela Royer royer@biomserv.univ-lyon1.fr
Daniel Chessel chessel@biomserv.univ-lyon1.fr

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

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
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)

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.