J'ai lu à quelques endroits (dans le doc et dans ce blog: http://blogs.mathworks.com/loren/2007/05/16/purpose-of-inv/) que l'utilisation de inv dans Matlab n'est pas recommandée car elle est lente et inexacte. J'essaie de trouver la raison de cette inexactitude. A partir de maintenant, Google n'a pas donné de résultat intéressant, donc j'ai pensé que quelqu'un ici pouvait me guider.Pourquoi l'invocation de Matlab est-elle lente et inexacte?
Merci!
De plus, l'opérateur backslash donne des résultats plus précis que inv (A) * b: il choisit un algorithme approprié pour résoudre A * x = b. – Martijn
Pour être explicite pour les étudiants là-bas, vous voulez écrire 'x = A \ b' au lieu de' x = inv (A) * b' afin de résoudre le système linéaire Ax = b. Le calcul de l'inverse de A n'est pas nécessaire, pas robuste, et pas rapide. Dans une grande partie des formules mathématiques où vous voyez un A^-1, l'algorithme peut être implémenté SANS jamais calculer l'inverse de A. Cela signifie que, pour les petites matrices de rang complet, calculer inv (A) sera presque toujours être parfaitement bien. Pour les grandes matrices ou les matrices mal conditionnées, cela peut devenir problématique. –