- 1、本文档共161页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5.1.1 脚本和函数 1.脚本文件 脚本文件中没有输入或输出参量,因而它是最简单的M文件类型。当运行一个脚本文件时,MATLAB将逐行执行文件内的每条指令。它对工作区间的数据进行操作,或者创建新的数据并保存到工作区间,而且在运行结束后数据仍然存在。需要注意的是,脚本的运行有可能覆盖工作区间原本需要保留的数据。下面给出一个脚本文件创建和运行的例子。 创建一个M文件,输入如下代码并保存为plotstems.m: % An M-file script % Comment lines n = 0:20; % Computations stems1(1,:) = sin(2*pi/21*n); stems1(2,:) = cos(2*pi/21*n); stems1(3,:) = exp(-0.2*n); for k = 1:3 stem(n, stems1(k,:), full) % Graphics output pauseend在命令窗输入: plotstems运行结果如图5-1所示。 2.函数文件 函数文件是含有输入和输出参量的M文件,它在自己的工作区间(函数工作区间)内对变量进行操作。函数工作区间与MATLAB工作空间不同,它只在函数内部传递变量而且不会互相覆盖。 MATLAB的函数文件通常由以下部分组成: ● 函数定义行; ● ?H1行:帮助文本的第一行,以“%”开始; ● 帮助文本; ● 注释; ● 函数体。 例如,对于一个名为fact.m的计算n阶乘的函数文件,其各组成部分描述如下:function f = fact(n) 函数定义行% Compute a factorial value. H1行% FACT(N) returns the factorial of N, 帮助文本% usually denoted by N!% Put simply, FACT(N) is PROD(1:N). 注释f = prod(1:n); 函数体 如果要计算4 !,在命令窗输入: fact(4) 运行结果: ans = 24 5.1.2 P代码文件 对于一个函数或者脚本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: function y = add3(x) global a b y = a + b + x; 运行该函数之前,需要对全局变量进行声明,在命令窗 输入: global a b a = 1; b = 2; add3(3) 运行结果: ans = 6 3.持续变量 持续变量只能在M文件函数内声明和使用,由关键字persistent来定义。只有声明了该变量的函数才可以对其进行访问。如果函数存在,即使MATLAB再调用其他函数,该函数内的持续变量仍将保留于内存中。例如,在一个名为findSum.m的M文件函数内,存在一个持续变量SUM_X: function f
您可能关注的文档
- Linux操作系统教程第2章基本操作.ppt
- Linux操作系统教程第3章文件系统.ppt
- Linux操作系统教程第4章高级操作.ppt
- Linux操作系统教程第5章Shell编程.ppt
- Linux操作系统教程第6章网络操作.ppt
- MATLAB7.x基础教程第1章MATLAB概述.ppt
- MATLAB7.x基础教程第2章矩阵与数组.ppt
- MATLAB7.x基础教程第3章数据类型.ppt
- MATLAB7.x基础教程第4章数学运算基础.ppt
- MATLAB7.x基础教程第6章符号计算功能.ppt
- 个性化学习路径推荐在2025年在线教育平台的个性化学习路径调整与创新.docx
- 城市新能源汽车充电桩网络建设与电动汽车充电设施投资分析报告.docx
- 城市空中交通2025年规划:低空经济背景下的区域协同发展研究报告.docx
- 社交媒体舆情监测与危机公关应对策略研究与应用报告.docx
- 城市空中交通规划2025年低空经济下的航空产业政策制定与实施路径研究报告.docx
- 城市空中交通规划2025年低空经济下的航空产业政策实施效果与问题分析报告.docx
- 航空航天复合材料结构健康监测2025年远程监测技术剖析报告.docx
- 城市空中交通规划2025年低空经济下的航空保险市场研究报告.docx
- 别云间板书设计.pptx
- 教育行业教育信息化设备报告:智能教育设备的市场分析与趋势.docx
最近下载
- DB37∕T 242-2021 建筑消防设施检测技术规程.docx
- PE管材验收标准(SDR17.6).docx VIP
- 复旦大学《计算机体系结构》期末考试两套试卷(含答案).pdf VIP
- 中国近现代史纲要知到课后答案智慧树章节测试答案2025年春海南大学.docx VIP
- 形考作业3:基于UML的大学图书馆图书信息管理系统设计实验.docx VIP
- 大学《地震工程学》课程课件.pptx
- 2024年二建继续教育-基于建筑信息模型、虚拟施工及网络的项目管理理论及实践1、2答案.docx VIP
- 2024年二建继续教育-剖析价值工程及如何运用价值工程优选设计方案1、2答案.docx VIP
- 茶颜悦色案例分析.pptx VIP
- yolov9论文中文翻译.docx VIP
文档评论(0)