Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Notice: We are no longer accepting new posts, but the forums will continue to be readable.

Topic: Multi-dimensional array product
Replies: 5   Last Post: Nov 15, 2012 8:23 AM

 Messages: [ Previous | Next ]
 Doug Schwarz Posts: 1,412 Registered: 12/7/04
Re: Multi-dimensional array product
Posted: Aug 16, 2009 9:38 PM

In article <h6a80g\$i1d\$1@news.eternal-september.org>,
Ed Stein7997 <EdStein7997@hushmail.com> wrote:

> I have a question about how to efficiently form multi-dimensional arrays.
>
> Lets say I have two 2-d arrays (i.e. matrices) a and b; a(i,j) sized
> i=1..M,j=1..N; and b(i,j) sized i=1..K,j=1..L.
>
> How can I form the 4-d array w(m,n,k,l)=a(m,n)*b(k,l) which has a unique
> entry for every m,n,k,l; i.e. there are M*N*K*L unique entries?
>
> I want to form w in a 'vectorized' way without use of loops. A
> conventional matrix product like a*b doesn't work of course since the
> inner dimensions of a and b aren't the same. This isn't the same as a
> Kronecker product since that remains two-dimensional.
>
> Thanks for any assistance.
>
> Ed Stein
> edstein7997@hushmail.com

w = bsxfun(@times,a,shiftdim(b,-2));

--
Doug Schwarz
dmschwarz&ieee,org
Make obvious changes to get real email address.

Date Subject Author
8/16/09 Ed Stein7997
8/16/09 Doug Schwarz
8/16/09 arun
8/16/09 arun
8/17/09 Matt
11/15/12 Gustaf