Learn R Programming

fda.usc (version 2.0.1)

rproc2fdata: Simulate several random processes.

Description

Simulate Functional Data from different processes: Ornstein Uhlenbeck, Brownian, Fractional Brownian, Gaussian or Exponential variogram.

Usage

rproc2fdata(
  n,
  t = NULL,
  mu = rep(0, length(t)),
  sigma = 1,
  par.list = list(scale = 1, theta = 0.2 * diff(rtt), H = 0.5),
  norm = FALSE,
  verbose = FALSE,
  ...
)

Arguments

n

Number of functional curves to be generated.

t

Discretization points.

mu

vector which specifies the trend values at the discretization points, by default mu=\(\mu(t)=0\). If mu is a fdata class object, t\(=\)argvals(mu).

sigma

A positive-definite symmetric matrix, \(\Sigma_{s,t}\), specifying the covariance matrix among grid points. If sigma is a scalar, creates a random Gaussian process with \(\Sigma_{s,t}=\)sigmaI (by default sigma=1). If sigma is a vector, creates a random Gaussian process with \(\Sigma_{s,t}=\)diag(sigma). If sigma is a character: create a random process using the covariance matrix \(\Sigma_{s,t}\) indicated in the argument,

  • "OU" or "OrnsteinUhlenbeck", creates a random Ornstein Uhlenbeck process with \(\Sigma_{s,t}=\frac{\sigma^2}{2\theta}e^{-\theta\left(s+t\right)} \left(e^{2\theta\left(s+t\right)}-1\right)\), by default \(\theta=1/(3range(t))\), \(\sigma^2={1}\).

  • "brownian" or "wiener", creates a random Wiener process with \(\Sigma_{s,t}=\sigma^2 min(s,t)\), by default \(\sigma^2=1\).

  • "fbrownian", creates a random fractional brownian process with \(\Sigma_{s,t}=\sigma^{2H}/2{|s|^{2H}+|t|^{2H}-|s-t|^{2H}}\), by default \(\sigma^2=1\) and \(H=0.5\) (brownian process).

  • "vexponential", creates a random gaussian process with exponential variogram \(\Sigma_{s,t}=\sigma^2 e^{\left(-\frac{\left|s-t\right|}{\theta}\right)}\), by default \(\theta={0.2 range(t)}\), \(\sigma^2={1}\).

par.list

List of parameter to process, by default "scale" \(\sigma^2=1\), "theta" \(\theta=0.2 range(t)\) and "H"=0.5.

norm

If TRUE the norm of random projection is 1. Default is FALSE

verbose

If TRUE, information about procedure is printed. Default is FALSE.

…

Further arguments passed to or from other methods.

Value

Return the functional random processes as a fdata class object.

Examples

Run this code
# NOT RUN {
par(mfrow=c(3,2))
lent<-30
tt<-seq(0,1,len=lent)
mu<-fdata(rep(0,lent),tt)
plot(rproc2fdata(200,t=tt,sigma="OU",par.list=list("scale"=1)))
plot(rproc2fdata(200,mu=mu,sigma="OU",par.list=list("scale"=1)))
plot(rproc2fdata(200,t=tt,sigma="vexponential"))
plot(rproc2fdata(200,t=tt,sigma=1:lent))
plot(rproc2fdata(200,t=tt,sigma="brownian"))
plot(rproc2fdata(200,t=tt,sigma="wiener"))
#plot(rproc2fdata(200,seq(0,1,len=30),sigma="oo")) # this is an error 
# }
# NOT RUN {
# }

Run the code above in your browser using DataLab