Info

Cette question est clôturée. Rouvrir pour modifier ou répondre.

Error when I try to use Code Analyzer suggestions

1 vue (au cours des 30 derniers jours)
Andrew Farsech
Andrew Farsech le 12 Déc 2015
Clôturé : MATLAB Answer Bot le 20 Août 2021
I get the following warning: INV is slow and inaccurate. Use A\b for INV(A)*b , and b/A for b*INV(A)
the warning happens at at these 3 lines
a = a1 + p1*Z'*inv(f1)*(vt);
p = p1 - p1*Z'*inv(f)*Z*p1;
s(t,:) = v'*inv(f)*v;
I have tried to follow the suggestion without success. Probably I haven't understand the right equivalent syntax.
How I should write these code lines?
  2 commentaires
jgg
jgg le 12 Déc 2015
It's just a warning; you don't have to fix it. The inv function, as it suggests, is slow and inaccurate. I think if I understand your code properly, the corrected version would be:
a = a1 + ((p1*Z')/f1)*(vt);
p = p1 - ((p1*Z')/f)*Z*p1;
s(t,:) = (v'/f)*v;
If you're getting an error, check the dimensions of the matrices to make sure they align.
Andrew Farsech
Andrew Farsech le 13 Déc 2015
thanks, I know that it's only a warning not an error, the error happened in calculation because I have made a mistake in the attempt to follow the hint.

Réponses (0)

Cette question est clôturée.

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by