From c797f67a789dcfe1fdb6af3d30f8ef7589cf8f76 Mon Sep 17 00:00:00 2001
From: Walmes Zeviani <walmes@ufpr.br>
Date: Thu, 7 Jan 2016 15:42:10 -0200
Subject: [PATCH] Add tags and tidy text and code.

---
 R/mc_build_C.R | 110 ++++++++++++++++++++++++++++++++++---------------
 1 file changed, 76 insertions(+), 34 deletions(-)

diff --git a/R/mc_build_C.R b/R/mc_build_C.R
index 3cf758c..d4e2ab2 100644
--- a/R/mc_build_C.R
+++ b/R/mc_build_C.R
@@ -1,28 +1,39 @@
-#' Build the joint covariance matrix
+#' @title Build the joint covariance matrix
+#' @name mc_build_C
+#' @author Wagner Hugo Bonat
 #'
-#'@description This function builds the joint variance-covariance matrix using the Generalized
-#' Kronecker product and its derivatives with respect to rho, power and tau parameters.
+#'@description This function builds the joint variance-covariance matrix
+#'     using the Generalized Kronecker product and its derivatives with
+#'     respect to rho, power and tau parameters.
 #'
 #'@param list_mu A list with values of the mean.
-#'@param list_Ntrial A list with the number of trials. Usefull only for binomial responses.
+#'@param list_Ntrial A list with the number of trials. Usefull only for
+#'     binomial responses.
 #'@param rho Vector of correlation parameters.
 #'@param list_tau A list with values for the tau parameters.
 #'@param list_power A list with values for the power parameters.
-#'@param list_Z A list of matrix to be used in the matrix linear predictor.
+#'@param list_Z A list of matrix to be used in the matrix linear
+#'     predictor.
 #'@param list_sparse A list with Logical.
-#'@param list_variance A list specifying the variance function to be used for each response variable.
-#'@param list_covariance A list specifying the covariance function to be used for each response variable.
-#'@param list_power_fixed A list of Logical specifying if the power parameters are fixed or not.
+#'@param list_variance A list specifying the variance function to be
+#'     used for each response variable.
+#'@param list_covariance A list specifying the covariance function to be
+#'     used for each response variable.
+#'@param list_power_fixed A list of Logical specifying if the power
+#'     parameters are fixed or not.
 #'@param compute_C Logical. Compute or not the C matrix.
-#'@param compute_derivative_beta Logical. Compute or not the derivative of C with respect to regression parameters.
-#'@param compute_derivative_cov Logical. Compute or not the derivative of C with respect the covariance parameters.
+#'@param compute_derivative_beta Logical. Compute or not the derivative
+#'     of C with respect to regression parameters.
+#'@param compute_derivative_cov Logical. Compute or not the derivative
+#'     of C with respect the covariance parameters.
 #'
-#'@return A list with the inverse of the C matrix and the derivatives of the C matrix with respect to
-#'rho, power and tau parameters.
+#'@return A list with the inverse of the C matrix and the derivatives of
+#'     the C matrix with respect to rho, power and tau parameters.
 
 mc_build_C <- function(list_mu, list_Ntrial, rho, list_tau, list_power,
                        list_Z, list_sparse, list_variance,
-                       list_covariance, list_power_fixed, compute_C = FALSE,
+                       list_covariance, list_power_fixed,
+                       compute_C = FALSE,
                        compute_derivative_beta = FALSE,
                        compute_derivative_cov = TRUE) {
     n_resp <- length(list_mu)
@@ -31,50 +42,81 @@ mc_build_C <- function(list_mu, list_Ntrial, rho, list_tau, list_power,
     if (n_resp != 1) {
         assert_that(n_rho == length(rho))
     }
-    list_Sigma_within = suppressWarnings(Map(mc_build_sigma, mu = list_mu, Ntrial = list_Ntrial, tau = list_tau, power = list_power,
-        Z = list_Z, sparse = list_sparse, variance = list_variance, covariance = list_covariance, power_fixed = list_power_fixed,
-        compute_derivative_beta = compute_derivative_beta))
-    list_Sigma_chol <- lapply(list_Sigma_within, function(x) x$Sigma_chol)
-    list_Sigma_inv_chol <- lapply(list_Sigma_within, function(x) x$Sigma_chol_inv)
+    list_Sigma_within <- suppressWarnings(
+        Map(mc_build_sigma, mu = list_mu, Ntrial = list_Ntrial,
+            tau = list_tau, power = list_power, Z = list_Z,
+            sparse = list_sparse, variance = list_variance,
+            covariance = list_covariance,
+            power_fixed = list_power_fixed,
+            compute_derivative_beta = compute_derivative_beta))
+    list_Sigma_chol <- lapply(list_Sigma_within,
+                              function(x) x$Sigma_chol)
+    list_Sigma_inv_chol <- lapply(list_Sigma_within,
+                                  function(x) x$Sigma_chol_inv)
     Sigma_between <- mc_build_sigma_between(rho = rho, n_resp = n_resp)
     II <- Diagonal(n_obs, 1)
     nucleo <- kronecker(Sigma_between$Sigmab, II)
     Bdiag_chol_Sigma_within <- bdiag(list_Sigma_chol)
     t_Bdiag_chol_Sigma_within <- t(Bdiag_chol_Sigma_within)
     Bdiag_inv_chol_Sigma <- bdiag(list_Sigma_inv_chol)
-    inv_C <- Bdiag_inv_chol_Sigma %*% kronecker(solve(Sigma_between$Sigmab), II) %*% t(Bdiag_inv_chol_Sigma)
+    inv_C <- Bdiag_inv_chol_Sigma %*%
+        kronecker(solve(Sigma_between$Sigmab), II) %*%
+        t(Bdiag_inv_chol_Sigma)
     output <- list(inv_C = inv_C)
     if (compute_derivative_cov == TRUE) {
         list_D_Sigma <- lapply(list_Sigma_within, function(x) x$D_Sigma)
         ## Derivatives of C with respect to power and tau parameters
-        list_D_chol_Sigma <- Map(mc_derivative_cholesky, derivada = list_D_Sigma, inv_chol_Sigma = list_Sigma_inv_chol,
-            chol_Sigma = list_Sigma_chol)
+        list_D_chol_Sigma <-
+            Map(mc_derivative_cholesky, derivada = list_D_Sigma,
+                inv_chol_Sigma = list_Sigma_inv_chol,
+                chol_Sigma = list_Sigma_chol)
         mat_zero <- mc_build_bdiag(n_resp = n_resp, n_obs = n_obs)
-        Bdiag_D_chol_Sigma <- mapply(mc_transform_list_bdiag, list_mat = list_D_chol_Sigma, response_number = 1:n_resp,
-            MoreArgs = list(mat_zero = mat_zero))
+        Bdiag_D_chol_Sigma <-
+            mapply(mc_transform_list_bdiag,
+                   list_mat = list_D_chol_Sigma,
+                   response_number = 1:n_resp,
+                   MoreArgs = list(mat_zero = mat_zero))
         Bdiag_D_chol_Sigma <- do.call(c, Bdiag_D_chol_Sigma)
-        D_C = lapply(Bdiag_D_chol_Sigma, mc_sandwich_cholesky, middle = nucleo, bord2 = t_Bdiag_chol_Sigma_within)
-        ## Finish the derivatives with respect to power and tau parameters
+        D_C <- lapply(Bdiag_D_chol_Sigma, mc_sandwich_cholesky,
+                      middle = nucleo,
+                      bord2 = t_Bdiag_chol_Sigma_within)
+        ## Finish the derivatives with respect to power and tau
+        ## parameters
         if (n_resp > 1) {
-            D_C_rho <- mc_derivative_C_rho(D_Sigmab = Sigma_between$D_Sigmab, Bdiag_chol_Sigma_within = Bdiag_chol_Sigma_within,
-                t_Bdiag_chol_Sigma_within = t_Bdiag_chol_Sigma_within, II = II)
+            D_C_rho <-
+                mc_derivative_C_rho(D_Sigmab = Sigma_between$D_Sigmab,
+                                    Bdiag_chol_Sigma_within =
+                                        Bdiag_chol_Sigma_within,
+                                    t_Bdiag_chol_Sigma_within =
+                                        t_Bdiag_chol_Sigma_within,
+                                    II = II)
             D_C <- c(D_C_rho, D_C)
         }
         output$D_C <- D_C
     }
     if (compute_C == TRUE) {
-        C = t_Bdiag_chol_Sigma_within %*% kronecker(Sigma_between$Sigmab, II) %*% Bdiag_chol_Sigma_within
+        C <- t_Bdiag_chol_Sigma_within %*%
+            kronecker(Sigma_between$Sigmab, II) %*%
+            Bdiag_chol_Sigma_within
         output$C <- C
     }
     if (compute_derivative_beta == TRUE) {
-        list_D_Sigma_beta <- lapply(list_Sigma_within, function(x) x$D_Sigma_beta)
-        list_D_chol_Sigma_beta <- Map(mc_derivative_cholesky, derivada = list_D_Sigma_beta, inv_chol_Sigma = list_Sigma_inv_chol,
-            chol_Sigma = list_Sigma_chol)
+        list_D_Sigma_beta <- lapply(list_Sigma_within,
+                                    function(x) x$D_Sigma_beta)
+        list_D_chol_Sigma_beta <-
+            Map(mc_derivative_cholesky, derivada = list_D_Sigma_beta,
+                inv_chol_Sigma = list_Sigma_inv_chol,
+                chol_Sigma = list_Sigma_chol)
         mat_zero <- mc_build_bdiag(n_resp = n_resp, n_obs = n_obs)
-        Bdiag_D_chol_Sigma_beta <- mapply(mc_transform_list_bdiag, list_mat = list_D_chol_Sigma_beta, response_number = 1:n_resp,
-            MoreArgs = list(mat_zero = mat_zero))
+        Bdiag_D_chol_Sigma_beta <-
+            mapply(mc_transform_list_bdiag,
+                   list_mat = list_D_chol_Sigma_beta,
+                   response_number = 1:n_resp,
+                   MoreArgs = list(mat_zero = mat_zero))
         Bdiag_D_chol_Sigma_beta <- do.call(c, Bdiag_D_chol_Sigma_beta)
-        D_C_beta = lapply(Bdiag_D_chol_Sigma_beta, mc_sandwich_cholesky, middle = nucleo, bord2 = t_Bdiag_chol_Sigma_within)
+        D_C_beta <- lapply(Bdiag_D_chol_Sigma_beta,
+                           mc_sandwich_cholesky, middle = nucleo,
+                           bord2 = t_Bdiag_chol_Sigma_within)
         output$D_C_beta <- D_C_beta
     }
     return(output)
-- 
GitLab