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?
0 个评论
回答(1 个)
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.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrices and Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!