Clear Filters
Clear Filters

Matrix product along one of the dimensions of 3D array

7 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.

Categories

Find more on Multidimensional Arrays in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!