我有一个(5x1)
向量V = (V1, V2, V3, V4, V5)
,并希望将这五个值分配给(x,y)坐标系中的每个网格点。因此,例如(x,y) = (1,1)
可能包含V = (1, 0.432, -5, 2, 67)
和(x,y) = (2,3)
的值,可能会为其分配值V = (-43, 3.53, 0.423, -4, -0.432)
。有没有一个好的数据结构可以在MATLAB中完成这个?
答案 0 :(得分:2)
如果要为每个网格点分配相同数量的值,最好创建一个5xXxY矩阵,例如
xy_vals = rand([5 nx ny]);
您可以通过
访问点(xx,yy)的值test_vals = xy_vals(:,xx,yy);
如果你想对每个网格点的值数量保持灵活性,我建议使用数组的数组。例如:
xy_cell = cell([nx ny]);
for ix = 1:nx
for iy = 1:ny
xy_cell{ix,iy} = randi([1 randi(10)]);
end
end
现在,通过
访问点(xx,yy)的vauestest_vals = xy_cell{xx,yy};