Clear Filters
Clear Filters

expanding matrix

1 view (last 30 days)
rahman
rahman on 16 May 2011
Hi all
I want to expand matrix.for example if x=[x1;x2] then the new matrix will be:
xx = [x1 x1 x1;x1 x1 x2;x1 x2 x1;x1 x2 x2;x2 x1 x1;x2 x1 x2;x2 x2 x1;x2 x2 x2]
How can I do that

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 16 May 2011
[j k i]=meshgrid([x1,x2]);
xx = [i(:) j(:) k(:)];

More Answers (1)

Matt Fig
Matt Fig on 16 May 2011
Here is a general purpose file for doing the same thing. What you are basically doing is finding the permutations of the set [x1 x2] taken three at a time with replacement. For example:
x1 = 7;x2 = 9; % Sample data
xx = npermutek([x1 x2],3);
xx =
7 7 7
7 7 9
7 9 7
7 9 9
9 7 7
9 7 9
9 9 7
9 9 9
NPERMUTEK is found here.

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!