在Matlab中有超过3个向量的Meshgrid?

时间:2015-06-24 17:54:01

标签: matlab

我在Matlab中有以下m=7个向量

beta1grid=(1:1:3);
beta2grid=(0:0.5:1); 
deltagrid=(-4:1:-2);  
gamma1grid=(-2:1:0);
gamma2grid=(-2:0.5:-1);
alpha1grid=(1:1:3);
alpha2grid=(-2:1:0); 

每个向量都有n=3个元素。 我想构建维A的矩阵(n^m)x(m),即2187x7,在每一行中列出上述向量中元素的可能组合。

1 个答案:

答案 0 :(得分:0)

这是使用ndgrid的一种方式:

[b1, b2, d, g1, g2, a1, a2] = ndgrid(beta1grid, beta2grid, deltagrid, gamma1grid, gamma2grid, alpha1grid, alpha2grid);
A = horzcat(b1(:), b2(:), d(:), g1(:), g2(:), a1(:), a2(:));