Main Content

Page-wise matrix multiplication

computes the matrix product of corresponding pages of the N-D arrays `Z`

= pagemtimes(`X`

,`Y`

)`X`

and `Y`

. Each page of the output array `Z`

is given by the
product: `Z(:,:,i) = X(:,:,i)*Y(:,:,i)`

.

If one of

`X`

or`Y`

is a matrix, then`pagemtimes`

multiplies it with each page of the other input. For example, if`X`

is a matrix, then`Z(:,:,i) = X*Y(:,:,i)`

.If

`X`

and`Y`

have more than three dimensions, then all dimensions beyond the first two must have Compatible Sizes.`pagemtimes`

implicitly expands the extra dimensions to multiply all combinations of the paged matrices:`Z(:,:,i,j,k) = Xx(:,:,i,j,k)*Yy(:,:,i,j,k)`

. (The extra dimensions have been expanded in`Xx`

and`Yy`

.)

For real N-D arrays,

`pagemtimes(X,'transpose',X,'none')`

returns a matrix with symmetric pages. Similarly, for complex N-D arrays, you can get symmetric pages with`pagemtimes(X,'ctranspose',X,'none')`

.