Simulate increments of a CSI process.

csi_sim(drift, acf, Sigma, X0, nsim = 1, fft = TRUE, nkeep, tol = 1e-06)

Arguments

drift

Matrix of (nobs-1) x ndim increment drift terms (see 'Details').

acf

Increment autocorrelation vector of length nobs-1 (see 'Details').

Sigma

Variance matrix of size ndim x ndim.

X0

Initial position vector of length ndim.

nsim

Number of trajectories to simulate.

fft, nkeep, tol

Optional arguments to SuperGauss::rnormtz().

Value

The simulated trajectories. An array of size nobs x ndim x nsim or a matrix of size nobs x ndim when nsim = 1.

Details

Given an (nobs-1) x ndim matrix of iid standard normals Z, an nobs x ndim trajectory matrix is generated by

dX = toeplitz(acf)^{1/2} %*% Z %*% Sigma^{1/2} + drift
X = apply(rbind(X0, dX), 2, cumsum)