fts.rar {freqdom.fda} | R 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 |
op.norms |
a vector with non-negative scalar entries to which the |
burnin |
an integer |
noise |
|
sigma |
covariance or scale matrix of the coefficients corresponding to
functional innovations. The default value is |
df |
degrees of freqdom if |
Details
The purpose is to simulate a functional autoregressive process of the form
X_t(u)=\sum_{k=1}^p \int_0^1\Psi_k(u,v) X_{t-k}(v)dv+\varepsilon_t(u),\quad 1\leq t\leq 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),\ldots, 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 \Psi_k(u,v)=\boldsymbol{b}^\prime(u)\boldsymbol{\Psi}_k \boldsymbol{b}(v)
. Then it follows that
\boldsymbol{X}_t=\boldsymbol{\Psi}_1\boldsymbol{X}_{t-1}+\cdots+ \boldsymbol{\Psi}_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{\Psi}_k
. If op.norms
is provided, then the coefficient
matrices will be rescaled, such that the Hilbert-Schmidt norms of \boldsymbol{\Psi}_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)