二、M文件-哈尔滨理工大学数学建模.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
二、M文件-哈尔滨理工大学数学建模

数学建模 二、M文件 参数列表中的varargin和varargout varargin或varargout必须出现在参数列表的最后,即函数调用必须首先指定必要的参数。例如,下面的函数声明行显示了varargin和varargout的正确位置: function [out1,out2] = example1(a,b,varargin) function [i,j,varargout] = example2(x1,y1,x2,y2,flag) 数学建模 二、M文件 返回输出参数 放在函数定义行中等号左侧的任何参数都是调用函数的返回值。如果传递任何函数可以修改的输入参数,需要把相同的参数作为输出参数。这样,调用函数可以获得更新后的值。 [test,offset] = readText(filestart,offset) 数学建模 三、程序调试和错误处理 用try-catch语句检查错误 try…catch语句进行错误捕获,它把有可能引起异常的语句放在try控制块中,这样当try控制块中statement语句引起异常时,catch控制块就可以捕获它,并针对不同的错误类型,进行不同的处理。调用格式: try, statement, …, statement, catch, statement, …, statement, end 数学建模 三、程序调试和错误处理 错误和警告信息 使用MATLAB的error和warning函数可以报告错误和警告信息并延迟程序的运行。 if n1 error(‘n must be 1 or greater’) end 如果n小于1,给出出错信息“n must be 1 or greater”; 同样,warning 函数给出警告信息 warning(‘Input must be a string’) 警告输入内必须是字符串。 数学建模 三、程序调试和错误处理 用“Debug”菜单进行调试 在M文件编辑器中,使用“Debug”菜单可以很方便地进行程序调试,“Debug”菜单如图所示,各种方法主要分为三种,即定点调试、断点调试以及错误和警告调试等。 数学建模 三、程序调试和错误处理 定点调试 定点调试选项包括“Step”、“Step In”、“Step Out”,使用它们可以逐语句、逐函数调试或直接运行到光标处。 断点调试 进行断点调试时,程序运行到断点处就会停下来,这样有利于很快找到出现错误的位置(需要先设置断点)。 错误和警告调试 使用“Stop if Errors/Warnings…”选项,确定错误或警告出现时停止运行。 数学建模 四、编程技巧 矢量化 使程序运行更快的方法之一是将构造程序的算法进行矢量化,在其他程序语言可能使用for循环或do循环的地方,MATLAB可以使用矢量或矩阵操作,对于下面的程序: x=.01; for k = 1:1001 y(k) = log10(x); x = x+.01; end 进行矢量化后如下所示: x=.01:.01:10; y=log10(x); 数学建模 四、编程技巧 预分配内存空间 如果不能矢量化某段代码,可以通过预分配保存输出的任何矢量或数组的内存空间来加速for循环,例如,下面的代码用函数zeros预分配for循环中创建的矢量的内存空间,使得这个for循环的运行速度显著加快。 若没有使用内存预分配,每循环一次,MATLAB解释器就会将r矢量的元素增加一个,而内存预分配后,就取消了这个步骤,从而使运行加速。 r = zeros(32,1); for n = 1:32 r(n) = rank(magic(n)); end 数学建模 五、资料的储存与载入 MATLAB储存变量的基本命令是save,在不加任何选项(Options)时,save会将变量以二进制(Binary)的方式储存至文档名为mat的档案,如: save:将工作空间的所有变数储存到名为matlab.mat的 二进制档案。 save filename:将工作空间的所有变数储存到名为filename.mat的二进制档案。 save filename x y z :将变量x、y、z储存到名为filename.mat的二进制档案。 数学建模 五、资料的储存与载入 简例: who % 列出工作空间的变量 Your variables are: B h j y ans i x z save test B y % 将变量B与y储存至test.mat dir % 列出现在目录中的档案 数学建模 六、结束MATLAB 结束MATLAB的方法 键入exit 键入quit 直接关闭MATLAB的命令视窗(Comm

文档评论(0)

75986597 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档