1
我需要全局优化matlab中Fortran程序的参数输入。该函数接受以如下方式输入:MATLAB中FORTRAN函数的并行全局优化
z= fort_fun(X,str)
当X是十进制数和STR的向量是一个字符串。我需要为1020个str中的每一个识别对应于最优X的最小z值。我可以通过将str声明为全局变量,并在父脚本结尾处使用本地定义的函数来执行此过程。然而,为了更及时地执行我的代码(< 1个月),我想为平行PARFOR如下运行这个程序:
parfor i=1:n
%code to setupt global optomization problem....
z(i)=optimal output of --- fort_fun(X,str(i)) ---
end
...存储的z各自最终的优化值。如果我将str声明为全局变量,则parfor命令的每个线程将同时优化相同的str(i)。
有谁知道一种方法,我可以配置parfor命令的每个线程来优化“”fort_fun(X,str(i))“”?我相信OMP模拟将使用应用于str输入的“私有”修饰符。
谢谢!