MATLAB: Possibility of multidimensional arrays multiplication

matrixmultidimensional arraymultiplication

Hello,
is there a way to perform a matrix multiplication with multidimensional arrays without using a loop? Specifically, I have a 3-dimensional array A_ijk that I want to multiply with a vector b_k in such a way, that the result is a 2D matrix B_ij=A_ijk*b_k, where I sum over k.
I know how to do this using a loop, but I would like to do it in a different way, analogous to matrix multiplication because of effectivness and time consumed (the matrixes are quite big). Thanks in advance, Juraj

Best Answer

sum(bsxfun(@times,A,b),3)