sigmaDiff: High-frequency estimate of the diffusion matrix

Description Usage Arguments Details Value References Examples

View source: R/mle.R

Description

Estimation of the Σ in the multivariate diffusion

dX_t=b(X_t)dt+Σ dW_t

by the high-frequency estimate

\hatΣ = \frac{1}{NΔ}∑_{i=1}^N(X_i-X_{i-1})(X_i-X_{i-1})^T.

Usage

1
sigmaDiff(data, delta, circular = TRUE, diagonal = FALSE, isotropic = FALSE)

Arguments

data

vector or matrix of size c(N, p) containing the discretized process.

delta

discretization step.

circular

whether the process is circular or not.

diagonal, isotropic

enforce different constraints for the diffusion matrix.

Details

See Section 3.1 in García-Portugués et al. (2019) for details.

Value

The estimated diffusion matrix of size c(p, p).

References

García-Portugués, E., Sørensen, M., Mardia, K. V. and Hamelryck, T. (2019) Langevin diffusions on the torus: estimation and applications. Statistics and Computing, 29(2):1–22. doi: 10.1007/s11222-017-9790-2

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
# 1D
x <- drop(euler1D(x0 = 0, alpha = 1, mu = 0, sigma = 1, N = 1000,
                  delta = 0.01))
sigmaDiff(x, delta = 0.01)

# 2D
x <- t(euler2D(x0 = rbind(c(pi, pi)), A = rbind(c(2, 1), c(1, 2)),
               mu = c(pi, pi), sigma = c(1, 1), N = 1000,
               delta = 0.01)[1, , ])
sigmaDiff(x, delta = 0.01)
sigmaDiff(x, delta = 0.01, circular = FALSE)
sigmaDiff(x, delta = 0.01, diagonal = TRUE)
sigmaDiff(x, delta = 0.01, isotropic = TRUE)

sdetorus documentation built on Aug. 19, 2021, 9:06 a.m.

Related to sigmaDiff in sdetorus...