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

第6章MATLAB程序设计重点.ppt

  1. 1、本文档共95页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
6.设银行年利率为2.25%。将10000元钱存入银行,问多长时间会连本带利翻一番? * * * * * * * * * * * * 结合前面的学习,可以看出Switch语句与if语句的使用风格特点有所不同,switch语句能更形象的描述一个问题,进行列表式的判断,而if语句对于 描述一个区间范围时的选择将会是非常的清晰,程序的可读性比较强。 * * * * * * * * %允许后续的pause命令暂时中止程序的运行 %禁止后续的pause命令暂时中止程序的运行 6. keyboard语句 用于停止文件的执行并将控制权交给键盘。通过在提示符前显示K来表示一种特殊状态。使用该函数,对程序的调试及程序运行中修改变量都很方便。 7. pause语句 用于暂时中止程序的运行,等待用户按任意键继续运行。该函数在程序的调试过程和用户需要查询中间结果时使用,其语法为: pause pause(n) pause on pause off 6.3 MATLAB程序优化 MATLAB提供了两种方法进行程序的优化,一种通过Profiler工具,另一种通过tic和toc函数进行。本节将介绍这两种程序运行分析的方法,并介绍程序优化的常用方法。 6.3.1 通过Profiler进行程序运行分析 Profiler工具为MATLAB中的图形用户接口,用于分析程序运行时各个部分所消耗的时间,辅助用户进行程序优化。Profiler可以从以下几个方面提供程序运行信息。 1. 避免由于疏忽造成的非必要操作。 2. 替换运行较慢的算法,选择快速算法。 3. 通过存储变量的方式避免重复计算。 通过Profiler工具进行程序运行分析通常按以下步骤进行: 1. 查看Profiler生成的通体报告,查找运行时间最多的函数或调用最频繁的函数。 2. 查看这些函数的详细报告,查找其中运行时间最多的语句或调用最频繁的语句。 3. 确定在运行时间最多的函数或代码是否存在改进的可能。 4. 单击界面链接,打开相应文件进行修改。 5.重复进行上述的分析、修改,直到得到满意结果。 下面介绍Profiler工具的具体使用。 1. 打开Profiler MATLAB中可以通过以下方式打开Profiler: 1) 单击MATLAB工具栏中的Profiler图标,激活Prolifer工具。 2) 对于在编辑器中打开的M文件,选择Tools-Open Profiler。 3) 在命令行窗口中输入:profiler viewer。 2. 运行Profiler Profiler工具界面如图6.1所示。在Run this code中输入需要分析的命令或表达式,单击start profiling按钮,开始分析。 3. 查看分析结果 分析完成后,Profiler会生成分析报告,包括总体报告和针对每个函数的详细报告。总体报告中包括函数名、被调用次数、总运行时间、函数单独运行时间(即不包含其子函数的运行时间)及函数运行时间的图形显示,如图6.2所示。用户可以单击每列的标题改变结果的排序方式,也可以单击函数标题查看该函数的详细报告。 函数详细报告中包括该函数中每行代码的被调用次数和运行时间,并且可以显示其中的子函数、函数列表等,如图6.3所示。另外用户可以单击“Copy to new window for comparing multiple runs”将该结果保存至新的窗口中,用于修改代码后进行再次分析、比较。 6.3.2 通过tic和toc函数进行程序运行分析 如果只需要了解程序的运行时间,或者比较一段程序在不同应用条件下的运行速度,可以通过计时器来进行。计时器包含两个函数:tic和toc函数。tic函数用于开始计时器,toc用于关闭计时器,并计算程序运行的总时间。计时器函数的语法为: tic any statements %所需计时的程序代码 toc t = toc %保存计时时间 6.3.3 程序优化的常用方法 同样的功能可以采用不同的编程方法实现,不同的编程方法运行速度不同。本节将介绍一些提高M文件执行速度、优化内存管理的常用方法,包括循环向量化和数组内存的预分配等。 1. 循环向量化 MATLAB的一个缺点是当对矩阵的单个元素作循环时运算速度很慢。编程时,把循环向量化,不但能缩短程序的长度,更能提高程序的执行效率。由于MATLAB的基本数据类型为矩阵和向量,所以编程时,应尽量对向量和矩阵编程,而不是对矩阵元素进行编程。 【例6-20】 向量化for循环 % loop.m tic x=1; for k=1:1001 y(k)=log10(x); x=x+0.01; end toc loop

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档