fts.rar: Simulate functional autoregressive processes

View source: R/fts.rar.R

fts.rarR Documentation

Simulate functional autoregressive processes

Description

Generates functional autoregressive process.

Usage

fts.rar(
  n = 100,
  d = 11,
  Psi = NULL,
  op.norms = NULL,
  burnin = 20,
  noise = "mnorm",
  sigma = diag(d:1)/d,
  df = 4
)

Arguments

n

number of observations to generate.

d

dimension of the underlying multivariate VAR model.

Psi

an array of p≥q 1 coefficient matrices (need to be square matrices). Psi[,,k] is the k-th coefficient matrix. If Psi is provided then d=dim(Psi)[1]. If no value is set then we generate a functional autoregressive process of order 1. Then, Psi[,,1] is proportional to \exp(-|i-j|\colon 1≤q i, j≤q d) and such that Hilbert-Schmidt norm of the corresponding lag-1 AR operator is 1/2.

op.norms

a vector with non-negative scalar entries to which the Psi are supposed to be scaled. The length of the vector must equal to the order of the model.

burnin

an integer ≥q 0. It specifies a number of initial observations to be trashed to achieve stationarity.

noise

"mnorm" for normal noise or "t" for student t noise. If not specified "mvnorm" is chosen.

sigma

covariance or scale matrix of the coefficients corresponding to functional innovations. The default value is diag(d:1)/d.

df

degrees of freqdom if noise = "mt".

Details

The purpose is to simulate a functional autoregressive process of the form

X_t(u)=∑_{k=1}^p \int_0^1Ψ_k(u,v) X_{t-k}(v)dv+\varepsilon_t(u),\quad 1≤q t≤q n.

Here we assume that the observations lie in a finite dimensional subspace of the function space spanned by Fourier basis functions \boldsymbol{b}^\prime(u)=(b_1(u),…, b_d(u)). That is X_t(u)=\boldsymbol{b}^\prime(u)\boldsymbol{X}_t, \varepsilon_t(u)=\boldsymbol{b}^\prime(u)\boldsymbol{\varepsilon}_t and Ψ_k(u,v)=\boldsymbol{b}^\prime(u)\boldsymbol{Ψ}_k \boldsymbol{b}(v). Then it follows that

\boldsymbol{X}_t=\boldsymbol{Ψ}_1\boldsymbol{X}_{t-1}+\cdots+ \boldsymbol{Ψ}_p\boldsymbol{X}_{t-p}+\boldsymbol{\varepsilon}_t.

Hence the dynamic of the functional time series is described by a VAR(p) process.

In this mathematical model the law of \boldsymbol{\varepsilon}_t is determined by noise. The matrices Psi[,,k] correspond to \boldsymbol{Ψ}_k. If op.norms is provided, then the coefficient matrices will be rescaled, such that the Hilbert-Schmidt norms of \boldsymbol{Ψ}_k correspond to the vector.

Value

An object of class fd.

See Also

The multivariate equivalent in the freqdom package: rar

Examples

# Generate a FAR process without burnin (starting from 0)
fts = fts.rar(n = 5, d = 5, burnin = 0)
plot(fts)

# Generate a FAR process with burnin 50 (starting from observations
# already resambling the final distribution)
fts = fts.rar(n = 5, d = 5, burnin = 50)
plot(fts)

# Generate observations with very strong dependance
fts = fts.rar(n = 100, d = 5, burnin = 50, op.norms = 0.999)
plot(fts)

kidzik/freqdom.fda documentation built on April 19, 2022, 2:40 a.m.