matlab中如何将六重for循环进行优化.里面还包含if条件。

matlab中如何将六重for循环进行优化.里面还包含if条件。,第1张

建议利用并行计算,速度至少提高1/3,只需要for循环中各次迭代之间无数据传递关系。做法简单:

只需要将你程序中的for更改为parfor即可,但前面需要加入如下指令:

matlabpool open

记得别忘记了程序最后添加:

matlabpool close

具体更改与不更改之间运算速度对比示例如下:

clc

clear

tic

for i=1:1000

c(:,i) = eig(rand(100))

end

display('Single CPU:')

toc

% use PCT

clear

matlabpool open local 2

tic

parfor i=1:1000

c(:,i) = eig(rand(100))

end

display('Double Core:')

toc

matlabpool close

选中曲线,选择多峰拟合,选好峰就可以拟合了。

具体步骤:

1、导入数据,此处需要注意,如果我们要拟合的数据中本身就包含多个峰值,直接导入即可。如果我们要拟合的数据是多个数据文本,将需要拟合的多个数据拼接起来导入即可。

2、选中要拟合的数据。

3、选择拟合。

4、在这个界面上可以设置拟合的峰函数,此处用的是Lorentz函数拟合多个峰值,点击确定。

5、需要用户用鼠标左键双击峰值所在处,有几个峰,就双击几次,然后点击拟合。


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

原文地址: http://outofmemory.cn/yw/12036522.html

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

发表评论

登录后才能评论

评论列表(0条)

保存