MATLAB Answers

Sum of a portion of 3D matrix elements

10 views (last 30 days)
Hello,
I would like to find a sum of 3D matrix elements located in a one tetrahedron. For a matrix A with indices (i, j, k) I need to find a sum of elements with indices (i, j > i, k > j), i.e.
total = 0;
for i = 1:N
for j = i:N
for k = j:N
total = total + A(i,j,k);
Is there a way to do it in a vector/matrix manner without loops?
"Tril/triu" function doesn't work with 3D matricies.
Thanks in advance!

Accepted Answer

Matt J
Matt J on 8 Apr 2021
Edited: Matt J on 8 Apr 2021
[I,J,K]=ndgrid(1:N);
total = sum(A(I<=J & J<=K))
  2 Comments

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!