#' @examples
#' io = generateSampleIO(10000, 1/2, matrix(c(1,0,0,1),ncol=2), c(0,0), "probit")
#' μ = computeMu(io$X, io$Y, list(K=2)) #or just X and Y for estimated K
+#'
#' @export
computeMu = function(X, Y, optargs=list())
{
jd_method = ifelse(!is.null(optargs$jd_method), optargs$jd_method, "uwedge")
V =
if (jd_nvects > 1) {
- #NOTE: increasing itermax does not help to converge, thus we suppress warnings
+ # NOTE: increasing itermax does not help to converge, thus we suppress warnings
suppressWarnings({jd = jointDiag::ajd(M2_t, method=jd_method)})
-# if (jd_method=="uwedge") jd$B else solve(jd$A)
if (jd_method=="uwedge") jd$B else MASS::ginv(jd$A)
}
else
for (i in seq_len(K))
M2_t[,,i] = .T_I_I_w(M[[3]],V[,i])
suppressWarnings({jd = jointDiag::ajd(M2_t, method=jd_method)})
-# U = if (jd_method=="uwedge") solve(jd$B) else jd$A
U = if (jd_method=="uwedge") MASS::ginv(jd$B) else jd$A
μ = normalize(U[,1:K])