fix for m==1
[valse.git] / pkg / R / computeGridLambda.R
index 4b68bcd..cf762ec 100644 (file)
 #'
 #' @export
 computeGridLambda <- function(phiInit, rhoInit, piInit, gamInit, X, Y, gamma, mini, 
-  maxi, tau, fast = TRUE)
-  {
+  maxi, tau, fast)
+{
   n <- nrow(X)
-  p <- dim(phiInit)[1]
-  m <- dim(phiInit)[2]
-  k <- dim(phiInit)[3]
-  
+  p <- ncol(X)
+  m <- ncol(Y)
+  k <- length(piInit)
+
   list_EMG <- EMGLLF(phiInit, rhoInit, piInit, gamInit, mini, maxi, gamma, lambda = 0, 
     X, Y, tau, fast)
   grid <- array(0, dim = c(p, m, k))
   for (i in 1:p)
   {
-    for (j in 1:m) grid[i, j, ] <- abs(list_EMG$S[i, j, ])/(n * list_EMG$pi^gamma)
+    for (j in 1:m)
+      grid[i, j, ] <- abs(list_EMG$S[i, j, ])/(n * list_EMG$pi^gamma)
   }
   sort(unique(grid))
 }