N = 100
P.a = 1
P.b = 2
P = P.a + P.b
mu = rep(0.3, P.b)
phi = rep(0.95, P.b)
W = diag(0.1, P.b)
m0 = rep(0, P)
C0 = diag(1, P)
ab = m0 + t(chol(C0)) %*% rnorm(P, 0, 1)
alpha = ab[1:P.a]
beta0 = ab[(P.a+1):P.b]
beta = matrix(0, nrow=P.b, ncol=N+1)
beta[,1] = beta0
U = t(chol(W))
for (i in 2:(N+1)) {
beta[,i] = mu + phi * (beta[,i-1] - mu) + (U %*% rnorm(P.b, 0, 1));
}
llh = ar1.llh.C(beta, mu, phi, W, m0, C0, alpha=alpha)
llh
Run the code above in your browser using DataLab