Compute Component \(\textbf{G}^{1/2}\textbf{A}(\textbf{A}^{T}\textbf{G}\textbf{A})^{-1}\textbf{A}^{T}\textbf{G}\textbf{X}^{T}\textbf{y}\)
compute_GhalfXy_temp_wrapper(
G,
Ghalf,
A,
AGAInv,
Xy,
nc,
K,
parallel,
cl,
chunk_size,
num_chunks,
rem_chunks
)
List containing:
Result vector
AGAInvAGXy intermediate product \((\textbf{A}^{T}\textbf{G}\textbf{A})^{-1}\textbf{A}^{T}\textbf{G}\textbf{X}^{T}\textbf{y}\)
List of \(\textbf{G}\) matrices
List of \(\textbf{G}^{1/2}\) matrices
Constraint matrix \(\textbf{A}\)
Inverse of \(\textbf{A}^{T}\textbf{G}\textbf{A}\)
List of \(\textbf{X}^{T}\textbf{y}\) products
Number of columns
Number of partitions minus 1 (\(K\))
Use parallel processing
Cluster object
Size of parallel chunks
Number of chunks
Remaining chunks
Computes \(\textbf{G}^{1/2}\textbf{A}(\textbf{A}^{T}\textbf{G}\textbf{A})^{-1}\textbf{A}^{T}\textbf{G}\textbf{X}^{T}\textbf{y}\) efficiently in parallel chunks. Note: The description seems slightly off from the C++ helper functions called (e.g., `compute_AGXy`, `compute_result_blocks`). This computes a component needed for least-squares transformation involving \(\textbf{G}^{1/2}\). Returns both the result and intermediate \(\textbf{A}^{T}\textbf{G}\textbf{A})^{-1}\textbf{A}^{T}\textbf{G}\textbf{X}^{T}\textbf{y}\) product for reuse.