Inverse without the determinant normalization?

4 Ansichten (letzte 30 Tage)
Ellen
Ellen am 31 Jan. 2014
Kommentiert: Roger Stafford am 31 Jan. 2014
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!

Antworten (2)

Roger Stafford
Roger Stafford am 31 Jan. 2014
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

Jan
Jan am 31 Jan. 2014
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 Kommentar
Roger Stafford
Roger Stafford am 31 Jan. 2014
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.

Melden Sie sich an, um zu kommentieren.

Kategorien

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

Community Treasure Hunt

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

Start Hunting!

Translated by