Constructor for farma model object.
Let X_n
denote the true position of an fBM process at time t = n dt
. The farma(p,q) error model describes the measured position Y_n
at time t = n dt
as
with rho_0 = 1 - sum_{i=1}^p phi_i - sum_{j=1}^q rho_j
. The resulting MSD as a function of phi
and rho
is what gets passed to the csi_model base class to construct the farma_model
derived class.
subdiff::csi_model
-> farma_model
phi_names
Kernel parameter names. The character vector (alpha, phi_1, ..., phi_p, rho_1, ..., rho_q)
.
Inherited methods
subdiff::csi_model$drift()
subdiff::csi_model$fisher()
subdiff::csi_model$fit()
subdiff::csi_model$get_omega()
subdiff::csi_model$get_vcov()
subdiff::csi_model$itrans_full()
subdiff::csi_model$loglik()
subdiff::csi_model$msd()
subdiff::csi_model$nlp()
subdiff::csi_model$nu_hat()
subdiff::csi_model$resid()
subdiff::csi_model$sim()
subdiff::csi_model$trans_full()
trans()
Transform kernel parameters from regular to computational basis.
phi
See csi_model.
itrans()
Transform kernel parameters from computational to regular basis.
psi
See csi_model.
get_subdiff()
Transform parameters from computational basis to subdiffusion parameters.
omega
See csi_model.
new()
Class constructor.
farma_model$new(Xt, dt, order = c(0, 0), m = 50, drift = "linear", n_drift)
Xt, dt, drift, n_drift
See csi_model.
order
Vector of two nonnegative integers specifying the number of autoregressive and moving-average terms, respectively.
m
Order of the moving-average approximation (see farma_acf()
).
# simulate data from a farma(1,1) model
alpha <- .8
phi <- .1
rho <- .1
dt <- 1/60
N <- 1800
ndim <- 2
Xt <- csi_sim(drift = matrix(0, N-1, ndim),
acf = farma_acf(alpha, phi = phi, rho = rho, dt, N-1),
Sigma = diag(ndim),
X0 = rep(0, ndim))
# create farma(1,1) model object
model <- farma_model$new(Xt = Xt, dt = dt, order = c(1, 1), drift = "linear")
# evaluate loglikelihood
model$loglik(phi = c(alpha = alpha, phi = phi, rho = rho),
mu = rep(0, ndim),
Sigma = diag(ndim))
#> [1] 1680.692