网站大量收购闲置独家精品文档,联系QQ:2885784924

提高MATLAB程序运行效率若干手段.PDF

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2005年第11期 福建电脑 143 提高MATLAB程序运行效率的若干手段 郭永宁黄丽华 (福建师大福清分校数学与计算机科学系福建福清3s0300) 【摘要】M^Tu心是解释型语言,运行速度比较慢。本文探讨提高M^Tu啦程序运行效率的若干手段。 【关键词】MAⅡ。^B程序;运行效率;向量化;预定义; ’MAlrIAB是功能强大的科学及工程计算软件。它不但具有 以矩阵计算为基础的强大数学计算和分析功能,而且还具有丰 富的可视化图形表现功能和方便的程序设计能力。MA’IlAB的 dim∞rt,squeeze,sub2ind,sum等。 应用领域极为广泛,除数学计算和分析外,还被广泛地应用于自 三、数据的预定义 动控制、系统仿真、数字信号处理、图形图像分析、数理统计、人 虽然在MAⅡ^B中没有规定变量使用时必须预先定义。但 工智能、虚拟现实技术、通信工程、金融系统等领域,因此,MAT-是对于未定义的变量,如果操作过程中出现越界赋值等问题,系 LAB是面向21世纪计算机设计及科学计算语言。然而与vi.统将不得不对变量进行扩充,这样的操作大大降低了程序运行 8ual 的效率。所以对于可能出现变量维数不断扩大的问题时,应当预 B船ic一样,MATLAB是解释型语言,计算速度慢是MAB LAB的弱点。本文探讨提高MAⅡ.AB程序运行效率的若干手先估计变量可能出现的最大维数。进行预定义。这一类的函数有 段: 舱r∞、∞∞、ceⅡ、8tnlct、陀pmat等。例如: 一、分析程序的运行状况 进行1∞∞个元素的循环运算。比较预定义矩阵尺寸和未 预定义时所用的时问: l、通过p越ler工具或p斌le函数,可以获取每行代码的运 行情况。包括运行时间和调用次数等,因而知道哪些语句行花费 pt目0.(10∞0’I); 的时间最多。可以集中精力进行改进。 y篁∞∞(10∞|0.1); tic; 2、查看运行时间的函数:如果需要知道程序运行所花费的 ‘i-l:l∞∞ 时间,或者比较不同程序的运行速度,可以使用查看运行时间的 蛔=o.1.pi’t 函数如和toc。调用血函数时启动计时器,后面的第1个toc函蜊n国; 数终止它并报告所花费的时间。如: end 眦 tic e18p6edtime= 一运行要计算时问的程序段 o.28∞ toc 通过以上分析是否预定义矩阵时的运算速度,可以看到相 二、循环向量化 差较大。可见预定义矩阵时可以使程序得到显著的优化。 1、向量化方法 四、内存的管理 循环运算是MATLAB语言的一个弱点,在程序设计时,应 对内存的合理操作及管理也能提高程序运行的效率。 当尽可能避免循环运算。由于矩阵运算是MA7m蛆的核心,因 此,在MA’Ⅱ‘AB编程过程中应当强调对矩阵的整体运算,减少

文档评论(0)

aa15090828118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档