Drexel dragonThe Math ForumDonate to the Math Forum



Search All of the Math Forum:

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


Math Forum » Discussions » Software » comp.soft-sys.matlab

Topic: changing a 2D array into a 3D array
Replies: 6   Last Post: May 10, 2013 7:29 PM

Advanced Search

Back to Topic List Back to Topic List Jump to Tree View Jump to Tree View   Messages: [ Previous | Next ]
Jos

Posts: 627
Registered: 7/28/07
Re: changing a 2D array into a 3D array
Posted: Mar 18, 2008 4:52 AM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply

"Jen " <phyjeh@leeds.ac.uk> wrote in message
<frnuti$rp1$1@fred.mathworks.com>...
> Hello,
>
> I have a 2 dimensional array with n elements along each
> direction.... and I want to "copy" this array n times to
> create a 3 dimensional array, so that the 3rd dimension is
> made up of n copies of the original array.
>
> The 2 dimensional array is made using two for loops to
> calculate an integral, so I don't want to just add an extra
> loop to make the 3D array as it already takes a long time to
> calculate!
>
> Is there another way to extend the matrix into the 3rd
> dimension?
>
> Thanks to anyone that replies!



Use REPMAT to create N planes of the 2D matrix A:

A = rand(2,4) ;
N = 3 ;
B = repmat(A,1,1,N)

B is now a 2-by-4-by-3 matrix

hth
Jos



Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© Drexel University 1994-2014. All Rights Reserved.
The Math Forum is a research and educational enterprise of the Drexel University School of Education.