MatMPpinv {mixAK} | R Documentation |
For a matrix A its Moore-Penrose pseudoinverse is such a matrix A[+] which satisfies
(i) A*A[+]*A = A, |
(ii) A[+]*A*A[+] = A[+], |
(iii) (A*A[+])' = A*A[+], |
(iv) (A[+]*A)' = A[+]*A. |
MatMPpinv(A)
A |
either a numeric vector in which case inverse of each element of A is returned or a squared matrix. |
Either a numeric vector or a matrix.
Arnošt Komárek arnost.komarek[AT]mff.cuni.cz
Golub, G. H. and Van Loan, C. F. (1996, Sec. 5.5). Matrix Computations. Third Edition. Baltimore: The Johns Hopkins University Press.
set.seed(770328) A <- rWishart(1, 5, diag(4)) Ainv <- MatMPpinv(A) ### Check the conditions prec <- 13 round(A - A %*% Ainv %*% A, prec) round(Ainv - Ainv %*% A %*% Ainv, prec) round(A %*% Ainv - t(A %*% Ainv), prec) round(Ainv %*% A - t(Ainv %*% A), prec)