请教parfor中调用函数出错的问题

请教parfor中调用函数出错的问题,第1张

程序不算长,但问题可不少: 1、solve函数的这种调用方式: solve('lambda-(-2log10(251/Re/sqrt(lambda)+027/l(i)))^(-2) = 0','lambda')是把整个字符串作为参数传递给符号计算内核的,给参数l和Re赋值不起作用,所以在符号计算内核求解时会

[dx dy] = meshgrid(-r:r); %生成网格点的dx,dy的坐标-r<=dx,dy<=r

h = exp(- (dx^2 + dy^2) / (2 sigma_s^2)); %计算出对应于每对dx,dy的h的值

h=e^[- (dx^2+dy^2)/(2σ^2)

xp = padarray(x, [r r], ’symmetric’); % 生成x数组

yp = padarray(y, [r r], ’symmetric’); % 生成x数组

xt = zeros(size(x)); % 生成全零数组,维数与数组x相同

parfor p = 1:numel(x), [i j] = ind2sub(size(x), p); % 该句搞不明白

第一步:首先打开MATLAB命令窗口,输入matlabpool open ,或者把这句加入程序开头。

第二步:主要是两种:parfor模式和spmd模式。两种模式的应用都很简单。

parfor其实就是parallel+for简化而来,就是把原来程序中的for循环中的关键字for改为parfor就行。

spmd 自己help就会了。

附上附件,附件运行图如下:

以上就是关于请教parfor中调用函数出错的问题全部的内容,包括:请教parfor中调用函数出错的问题、MATLAB程序看不懂、如何利用MATLAB并行计算缩短程序运行时间等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10625191.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存