MATLAB Answers

Rida
0

How can I sum only few values in a diagonal matrix?

Asked by Rida
on 14 Apr 2014
Latest activity Answered by Walter Roberson
on 26 Mar 2018
if I have a diagonal matrix, and I use sum(diag(A)) , it gives me the sum of entire diagonal, but I only want the sum of lets say 1st three values in the diagonal? How can I add them?
Thank you!!

  0 Comments

Sign in to comment.

Tags

3 Answers

Answer by Mischa Kim
on 14 Apr 2014
 Accepted Answer

Rida, use
sum(diag(A(1:3,1:3)))

  1 Comment

a tired it with my data, it's work perfectly, thanks Mischa.

Sign in to comment.


Answer by Alberto
on 14 Apr 2014

Sum=0;
for k=1:3 % will sum 3 first diagonal elements Sum=Sum+A(k,k);
end
You can change the range k=1:3 with an array with the index of elements u want to sum.

  1 Comment

Sign in to comment.


Answer by Walter Roberson
on 26 Mar 2018

Without a loop:
r = size(A, 1);
sum(A([1, r+1, 2*(r+1)]))

  0 Comments

Sign in to comment.