mi <- function(fit, varname) { grad <- fit@output$gradient hess <- fit@output$calculatedHessian select <- names(grad) == varname gl <- grad[select] k <- hess[select, select] d <- hess[!select, select] e <- hess[!select, !select] mi <- 0.5 * gl ^ 2 / (k - t(d) %*% solve(e) %*% d) res <- list(mi = mi, grad = grad, hess = hess, select = select) res }