`DLResiduals` <- function(r,z,useC=TRUE, StandardizedQ=TRUE) { n <- length(z) if (n!=length(r)) stop("arguments have unequal length") EPS <- .Machine$double.eps # 1+EPS==1, machine epsilon if (StandardizedQ) stanQ <- 1 else stanQ <- 0 if (useC){ out<-.C("DLResid", as.double(z), res=as.double(numeric(length(z))), as.integer(length(z)), as.double(r), LogL=as.double(1), EPS, as.integer(stanQ), fault = as.integer(1), PACKAGE="ltsa" ) fault<-out$fault if (fault == 1) stop("error: sequence not p.d.") res<-out$res } else { error <- numeric(n) sigmasq <- numeric(n) error[1] <- z[1] sigmasq[1] <- r[1] phi <- r[2]/r[1] error[2] <- z[2] - phi * z[1] sigmasqkm1 <- r[1] * (1 - phi^2) sigmasq[2] <- sigmasqkm1 for(k in 2:(n - 1)) { if (sigmasqkm1