Pseudo-inverse

Factorize a matrix for pseudo-inverse calculation purpose
4,2K Downloads
Aktualisiert 19. Okt 2009

Lizenz anzeigen

Factorize a matrix for pseudo-inverse to solve the normal equation:

A*x = b

There are two advantages of pseudo-inverse compared to MATLAB pinv:
- PINV requires costly SVD
- PINV does not operated with sparse matrix.

The solution x minimize the 2-norm of the residual |Ax - b|.

In case of underdetermined system, i.e., rank(A) < length(x), the solution returned by pseudoinverse(A)*b is the least 2-norm among all solutions. Note that this property does *not* meet if backslash operator is used: x = A\b.

Method: Use QR factorization on both source and destination space. The factorized result is stored in object that can be used later to multiply with any target space vectors (RHS).

Inspired from FACTORIZE http://www.mathworks.com/matlabcentral/fileexchange/24119

Zitieren als

Bruno Luong (2024). Pseudo-inverse (https://www.mathworks.com/matlabcentral/fileexchange/25453-pseudo-inverse), MATLAB Central File Exchange. Abgerufen.

Kompatibilität der MATLAB-Version
Erstellt mit R2009b
Kompatibel mit allen Versionen
Plattform-Kompatibilität
Windows macOS Linux
Kategorien
Mehr zu Mathematics and Optimization finden Sie in Help Center und MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

PseudoInverseFolder/@pseudoinverse/

Version Veröffentlicht Versionshinweise
1.5.0.0

Detect SuiteSparseQR package to carry out QR factorization on sparse matrix, not available for Matlab prior 2009B (?)

1.4.0.0

New methods supported: left/right multiplication, conjugate, transpose, and complex-transpose

1.2.0.0

Change the code structure (private function instead of static methods) for better compatible with older Matlab versions

1.1.0.0

New description + Iterative method with Tkhonov regularization

1.0.0.0