我有这些嵌套的 for 循环,我想将它们转换为 parfor:
row = 1;
for i = 5 : 0.2 : 5.4
col = 1;
for j = 2 : 0.5 : 2.5
matrx(row, col) = i * j;
col = col + 1;
end
row = row + 1;
end
有没有人有什么办法可以做到这一点?
我希望您只显示代码的极其简化的版本,但无论如何,可以通过收听 Matlab 的大量消息并阅读文档来找到 parfor 的秘密。首先学习良好的 Matlab 编码实践,并以这样的方式简化您的代码,使您的数据适合 Matlab 想要的内容。parfor
loop.
注意事项:
- Parfor 循环应该是整数。
- 所有矩阵都必须分类(阅读文档)。
- 容器矩阵应在嵌套 for 循环中使用
这是我这样做的一种方法,尽管这取决于您的最终应用程序
iVal = 5 : 0.2 : 5.4;
jVal = 2 : 0.5 : 2.5;
iLen = length(iVal);
jLen = length(jVal);
matrx = zeros(iLen, jLen);
parfor i = 1:iLen
dummy = zeros(1, jLen);
for j = 1:jLen
dummy(j) = iVal(i) * jVal(j);
end
matrx(i,:) = dummy;
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)