MATLAB Answers

inv(A) versus /A. Which of the two is the correct one

13 views (last 30 days)
ektor
ektor on 12 Feb 2015
Commented: Stephen Cobeldick on 13 Feb 2015
Hi all,
Let B be a n by 2 matrix and A is a 2 by 2 positive definite matrix. Which of the following two is correct
for i=1:n
B(i,:)*inv(A)*B(i,:)';
end
or
for i=1:n
(B(i,:)/A)*B(i,:)';
end
Best, Stef

  1 Comment

Stephen Cobeldick
Stephen Cobeldick on 13 Feb 2015
Don't use a loop, learn to vectorize your code. Matt J's answer shows this.

Sign in to comment.

Answers (1)

Matt J
Matt J on 12 Feb 2015
Both are equivalent. For large matrices the 2nd would be more efficient.
Further efficiency would be gained by vectorizing. The whole loop is just,
sum( (B/A).*B, 2)

  0 Comments

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by