Filter löschen
Filter löschen

when i use inv to find the inverse matrix of A,i found inv(A)*A is not the identity matrix

2 Ansichten (letzte 30 Tage)
Why when i use inv() to find the inverse matrix of matrix H_AB'*H_AB,but their multiplication is not an identity matrix?
H_AB = sqrt(1/2)*[randn(2,7) + j*randn(2,7)];
cc=inv(H_AB'*H_AB)*(H_AB'*H_AB)
The window show me cc is not an identity matrix.So can i still use inv(H_AB'*H_AB) as the identity matrix of H_AB'*H_AB?
Because if the H_AB'*H_AB doesn't have inverser matrix,then how doee matlab calculate?

Antworten (1)

Walter Roberson
Walter Roberson am 14 Nov. 2019
H_AB = sqrt(1/2)*[randn(2,7) + j*randn(2,7)]
You are building a 2 x 7 matrix. When you then do H_AB'*H_AB then the result has rank 2. inv() cannot be used on rank-deficient matrices.
You could substitute
cc = (H_AB'*H_AB)\(H_AB'*H_AB)
but that will not be an identity matrix either.

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by