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

조회 수: 2 (최근 30일)
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?

답변 (1개)

Walter Roberson
Walter Roberson 2019년 11월 14일
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.

카테고리

Help CenterFile Exchange에서 Matrices and Arrays에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by