- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
5.1M文件介绍
5.2程序流程控制
5.3数据输入/输出5.4程序调试与优化
5.1M文件介绍
5.1.1脚本和函数
1.脚本文件
脚本文件中没有输入或输出参量,因而它是最简单的M文件类型。当运行一个脚本文件时,MATLAB将逐行执行文件内的每条指令。它对工作区间的数据进行操作,或者创建新的数据并保存到工作区间,而且在运行结束后数据仍然存在。需要注意的是,脚本的运行有可能覆盖工作区间原本需要保留的数据。下面给出一个脚本文件创建和运行的例子。
创建一个M文件,输入如下代码并保存为plotstems.m:
%AnM-filescript%Commentlines
n=0:20;%Computations
stems1(1,:)=sin(2*pi/21*n);
stems1(2,:)=cos(2*pi/21*n);
stems1(3,:)=exp(-0.2*n);
fork=1:3
stem(n,stems1(k,:),full)%Graphicsoutput
pause
end
在命令窗输入:
plotstems
运行结果如图5-1所示。
0.8
0.6
0.4
0.2
0
-0.2
-0.4
-0.6
-0.8
-1
02468101214161820
图5-1使用脚本文件绘图结果
2.函数文件
函数文件是含有输入和输出参量的M文件,它在自己的工作区间(函数工作区间)内对变量进行操作。函数工作区间与MATLAB工作空间不同,它只在函数内部传递变量而且不会互相覆盖。
MATLAB的函数文件通常由以下部分组成:
●函数定义行;
●H1行:帮助文本的第一行,以“%”开始;
●帮助文本;●注释;
●函数体。
例如,对于一个名为fact.m的计算n阶乘的函数文件,其
各组成部分描述如下:
functionf=fact(n)函数定义行
%Computeafactorialvalue.H1行
%FACT(N)returnsthefactorialofN,帮助文本
%usuallydenotedbyN!
%Putsimply,FACT(N)isPROD(1:N).注释
f=prod(1:n);函数体
如果要计算4!,在命令窗输入:
fact(4)
运行结果:
ans=
24
5.1.2P代码文件
对于一个函数或者脚本M文件,可以对其进行预解析,
即由M文件创建对应的P代码文件。例如,使用命令pcode
fact对M文件fact.m进行解析,生成伪代码并保存为fact.p文件。如果同时存在fact.m和fact.p两个文件,MATLAB则优先运行fact.p文件。由于P代码文件是M文件经过解析的结果,因此它的运行速度要比M文件快。在运行运算量巨大的程序时这种差距尤为显著,例如大型的图形用户界面(GUI)应用。另
外,P代码文件还能够隐藏程序的算法,这是M文件所不能实现的。
5.1.3变量类型
编写M文件时,所要用到的变量不需要预先定义。变量名必须以字母开头,其后可以是字母、数字或下划线。变量名的大小写是有区别的,并且不能与函数名或者MATLAB中的关键字重名。
MATLAB中有三种变量类型:局部变量、全局变量和持续变量。
1.局部变量
局部变量存在于MATLAB函数之中,只在它所在的函数内有效(嵌套函数除外),并且与MATLAB工作区间相互独立。除了全局变量或持续变量,一个函数内定义的变量在调用另一个函数时不会在内存中保留,它也不会覆盖MATLAB工作区间内的变量。
2.全局变量
全局变量是由global关键字定义在MATLAB函数之中,并可以与其他函数或命令共享的变量。例如,在一个名为add3.m的M文件函数内,存在两个全局变量a、b:
functiony=add3(x)
globalab
您可能关注的文档
最近下载
- 统编版高中语文选择性必修下册2024第一单元 测试卷(含答案).docx VIP
- 电子商务法(第二版)课件全套 朱晓娟 第1--9章-电子商务法概述---电子商务的争议解决.pptx
- 2025年湖南铁路科技职业技术学院单招职业适应性测试题库(考点梳理).docx VIP
- 电商领域智能客服及售后服务体系构建计划.doc VIP
- 形式发票模板.docx
- 儿科合理用药培训【13页】.pptx VIP
- 山洪沟防洪治理典型工程措施研究——以会昌县古坊河为例.pdf VIP
- 八下语文新增名著《经典常谈》章节习题+答案.pdf VIP
- 1.2我能变得更好 (课件)部编版道德与法治三年级下册.pptx
- 2024年湖南生物机电职业技术学院单招职业技能测试题库(b卷).docx
文档评论(0)