Inverse without the determinant normalization?
조회 수: 15 (최근 30일)
이전 댓글 표시
When you take the inverse of square matrix M, you usually normalize with the determinant (1/det(M)). I am wondering if there is any to calculate the inverse in MATLAB without such normalization.
I am looking for solutions other than det(M)*inv(M), since in some cases det(M) is 0 in floating point arithmetic. Does anyone know? Thanks so much!
댓글 수: 1
답변 (2개)
Roger Stafford
2014년 1월 31일
As one can see from Cramer's rule, the matrix you seek can be formed from the various cofactors of the determinant of M. I see some contributions in Mathworks' File Exchange which will give you these:
http://www.mathworks.com/matlabcentral/fileexchange/28672-cofactors/content/cofactors.m
http://www.mathworks.com/matlabcentral/fileexchange/2166-introduction-to-linear-algebra/content/strang/xcofactor.m
댓글 수: 0
Jan
2014년 1월 31일
Why do you assume, that the inverse is normalized?
M = rand(3);
P = inv(M);
Q = M * P
Now Q is the unity matrix, which implies, that P is not normalized. So what does "you usually normalize" exactly mean?
댓글 수: 1
Roger Stafford
2014년 1월 31일
Jan, I don't think that is the kind of "normalization" Ellen has in mind. Very likely it is the division by det(M) that occurs in Cramer's rule that is to be omitted. If you multiply each of the elements of inv(M) by det(M) what you get is the matrix of all cofactors of the transpose of M. That is presumably the "unnormalized matrix inverse" that is being sought.
참고 항목
카테고리
Help Center 및 File Exchange에서 Resizing and Reshaping Matrices에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!