Clear Filters
Clear Filters

Matrix product along one of the dimensions of 3D array

18 views (last 30 days)
Dear all,
I wonder whether there is simple and elegant way (avoiding FOR loops) to compute a matrix product of multidimensional (e.g. 3D) array along one of the dimensions: for instance there is a T(2x2x1000) array, and one would like to compute T(:,:,1)*T(:,:,1)*...*T(:,:,1000).
Thank you!

Answers (3)

Roger Stafford
Roger Stafford on 28 Dec 2017
P = prod(T,3);

James Tursa
James Tursa on 28 Dec 2017

Seth Hillery
Seth Hillery on 13 Feb 2024
If you're using release R2020b or later, take a look at the pagemtimes function introduced in that release.
  1 Comment
Matt J
Matt J on 13 Feb 2024
Edited: Matt J on 13 Feb 2024
It's not applicable, unfortunately. The OP is asking for a cumulative matrix product across the slices

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!