\[\mathbf{A} = \left[\begin{array} {} a & b\\ c & d\\ \end{array}\right] \] \[\mathbf{A^T} = \left[\begin{array} {} a & c\\ b & d\\ \end{array}\right] \] \[\mathbf{A x A^T} = \left[\begin{array} {} a^2+ b^2 & ac+bd\\ ac+bd & c^2+cd\\ \end{array}\right] \] \[\mathbf{A^T x A} = \left[\begin{array} {} a^2+ b^2 & ab+cd\\ ab+cd & b^2+d^2\\ \end{array}\right] \] \(Therefore,\) \[A \times A^T \neq A^T \times A \]
A <- matrix(runif(2*2), ncol = 2)
identical(A* t(A), t(A) * A)
## [1] TRUE
install.packages(‘matrixcalc’)
library(matrixcalc)
# LU Decomposition needs to be square matrix
LU <- function(A)
{
if (is.square.matrix(A)){
luA <- lu.decomposition(A)
L <- luA$L
U <- luA$U
print(L)
print(U)
print(L %*% U)
} else {
print("THE GIVEN MATRIX HAS TO BE A SQUARE MATRIX")
}
}
# Test 1
A <- matrix(c(1,2,2,1), nrow = 4)
LU(A)
## [1] "THE GIVEN MATRIX HAS TO BE A SQUARE MATRIX"
# Test 2
B <- matrix(c(1,2,2,1), nrow = 2)
LU(B)
## [,1] [,2]
## [1,] 1 0
## [2,] 2 1
## [,1] [,2]
## [1,] 1 2
## [2,] 0 -3
## [,1] [,2]
## [1,] 1 2
## [2,] 2 1