Has the inv() function changed?

2 vues (au cours des 30 derniers jours)
Won-Ho Song
Won-Ho Song le 19 Sep 2017
Modifié(e) : Won-Ho Song le 19 Sep 2017
I am wondering whether the inverse matrix function, inv(), has changed. I have two versions of MATLAB, 2011b (win64, 7.13.0.564) and 2016a (win64, 9.0.0.341360). I found out that, for some matrix, the results of inverse matrix are different in the two versions of MATLAB. Consider the attached matrix I generated.
Download the A2011.mat file and load in the MATLAB. Calculate B=inv(A'*A). Then, the results of inverse matrix are different! Thus, I am wondering whether the inverse matrix function has changed between 2011b and 2016a. Thank you.
  2 commentaires
Stephen23
Stephen23 le 19 Sep 2017
@Won-Ho Song: please edit your question and upload the .mat file here by clicking the paperclip button. It is not appreciated having links to random third-party websites.
Rik
Rik le 19 Sep 2017
The release notes are not always comprehensive, but it is the first place to look: your search term.
Sidenote: I seem to recall a function like inv is very tricky to implement in a way that is both fast and numerically stable. For some functions it is indeed the case that a re-worked implementation sacrifices some numerical stability for a large increase in speed (or supported dimensions). I don't know if this is the case for inv. At any rate, your results should always be reversible within machine precision.

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!