如何在Matlab中使用parfor循环中的M

您所在的位置:网站首页 matlab怎么保存运行结果 如何在Matlab中使用parfor循环中的M

如何在Matlab中使用parfor循环中的M

2023-05-06 08:58| 来源: 网络整理| 查看: 265

我在parfor循环中的代码越来越长,我想把它分开。将部分代码保存在不同的脚本文件中,似乎是合乎逻辑的,而且非常有吸引力,而且由于它不会改变任何东西,除了保存代码的地方之外,它似乎应该可以工作。但事实并非如此。

我得到了通常的“透明违规错误”。

这个问题似乎很典型,但我在任何地方都没有找到这个问题的答案。

下面是一个小的工作示例。

(是的,这可以作为一种功能。但是,如果有更多的输入和输出变量,这会变得非常丑陋,海事组织也可能会因为传递参数而变慢)。

C = NaN(10,1); %Result vector parfor loop = 1:10 a = 1; b = 2; MFile_Test %Run the m-file which contains only one line: % c = a + b; C(loop)=c; end

MFile_Test是一个脚本,只包含一行c=a+ b。

我开始理解为什么并行计算在这里有一个问题,而不是如何解决它。因为如果我在parfor文件中只包含了c=a+b行,这是没有任何问题的,所以我不能相信没有简单的方法来解决这个问题(例如,在最坏的情况下,比如告诉matlab从另一个文件加载文本并以代码的形式在这里和现在运行)。

如果有其他方法来构造我的代码,而不使用脚本文件(如果可能的话,也不使用函数;),我当然也希望得到这样的评论。

非常感谢,丹尼尔



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3