我正在考虑将双 for 循环重铸成我可以在并行计算中使用的东西。具体来说,我有
for i = 1 : N
x = x0+i*dx;
for j = 1 : N
y = y0+j*dy;
end
end
并且主程序调用需要x
和y
作为输入参数的函数。在我的问题中,变量x
和y
是独立的,因此两个 for 循环应该能够重铸成更简单的东西,可以利用 matlab 的矩阵计算更有效地运行。
我正在考虑创建一个嵌套的二维数组,例如(象征性地):
A = [{x0,y0},{x0,y1},{x0,y2},...,{x0,yN};
{x1,y0},{x1,y1},{x1,y2},...,{x1,yN};
...
{xN,y0},{xN,y1},{xN,y2},...,{xN,yN}]
即,2D 数组中的每个元素都是{xi,yi}
由向量 x 和 y 的元素组成的 2 元组。我可以在 matlab 中创建这样的对象吗?如果是这样,我如何调用每个元组中的每个单独元素?我需要有一种方法来调用这个数组中的每个元素,例如x2
in 。{x2,y1}
我正在考虑这样做,以便{xi,yi}
使用 GPU 上的并行处理工具箱,让程序与每组元组同时给出的输入参数并行运行。
非常感谢您的帮助。詹姆士