matlab-m文件与m函数.ppt_第1页
matlab-m文件与m函数.ppt_第2页
matlab-m文件与m函数.ppt_第3页
matlab-m文件与m函数.ppt_第4页
matlab-m文件与m函数.ppt_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章MATLAB语言系统,1.3MATLAB的m文件与m函数,第1章MATLAB语言系统,1.3.1MATLAB命令行操作1.3.2独立m文件,第1章MATLAB语言系统,MTALAB语言的程序可以有两种方式来执行,即命令行方式和m文件方式。由于MATLAB语言的文件以“.m”作扩展名,因此均称为m文件。,第1章MATLAB语言系统,m文件分为两种:独立m文件和函数m文件。独立m文件由命令描述行写成之后存储,即可以在MATLAB平台单独调用执行。,第1章MATLAB语言系统,函数m文件需要相应的输入输出变量参数方可执行.如:sin(x),需要变量x作输入参数。再如:y,x,t=step(num,den),需要变量num、den作输入参数,并返回变量y、x、t到内存或者在MATLAB界面显示,具有函数功能,因此需要m函数的专用格式,这样的m文件又称为m函数。,第1章MATLAB语言系统,1.3.1MATLAB命令行操作MATLAB命令行操作以单行操作或者单行多语句操作均可。,第1章MATLAB语言系统,【例1.1】直接计算。pi/4(在matlab中演示)显示演示结果如图1-12-1所示。,例题说明:数值运算立即执行,相当于计算器功能。ans为当前答案变量。,第1章MATLAB语言系统,352(在matlab中演示)显示演示结果如图1-12-2所示。,例题说明:数值运算立即执行,相当于计算器功能。ans为当前答案变量。,第1章MATLAB语言系统,【例1.2】矩阵参数输入。(在matlab中演示)a=1,2;3,4;a=1,2;3,4显示演示结果如图1-13所示。,例题说明:语句1:结尾有分号,回车后,执行该命令,输入参数送入内存,不显示变量a的内容。语句2:结尾无分号,回车后,执行该命令,输入参数送入内存,同时显示矩阵a的内容。,第1章MATLAB语言系统,【例1.3】数值运算。(在matlab中演示)b=a*a;b显示结果如图1-14所示。,例题说明:语句1:矩阵a相乘,运算结果赋矩阵b。语句2:显示矩阵b的内容。,第1章MATLAB语言系统,【例1.4】函数运算。x=0:2*pi/6:2*pi;y=sin(x);%不显示运算结果。若想显示,则输入x:y,例题说明:语句1:建立向量x。语句2:计算向量x的正弦函数向量y。,【例1.5】MATLAB命令立即调用。a=magic(3)(在matlab中演示),例题说明:magic(N)为MATLAB的魔术矩阵函数,N=3,将3阶魔术矩阵赋值予变量a。,显示演示结果如图1-16所示,第1章MATLAB语言系统,1.3.2独立m文件独立m文件是不需要输入输出参数的带有扩展名.m的m文件,可以分为两种:一种是注释文件,另一种是执行文件。,第1章MATLAB语言系统,注释文件只有注释行,没有命令执行行。注释文件可以响应help命令。注释行的各书写行之前需要冠以“%”符号来标识,如MATLAB工具箱中的所有目录文件contents.m均是这样写成的。,第1章MATLAB语言系统,执行文件的书写方法与命令行执行程序的方式相同,只不过是批量命令方式以m文件的文件名调用来执行,类似于MS-DOS的批处理程序。,第1章MATLAB语言系统,下面分别用例题说明。【例1.6】说明文件的建立与执行。(在matlab中演示),第1章MATLAB语言系统,步骤1:利用编辑工具编辑文件内容,利用m文件编辑器或者其他编辑工具,如edit、word等均可,在文件编辑器上输入以下文件内容。,第1章MATLAB语言系统,注:1.在MATLAB的命令窗口中利用如下方式可以进入MATLAB的程序编辑器:在命令编辑区中输入edit命令,回车即可。,第1章MATLAB语言系统,选择菜单栏的“File”项中的“New”项中的“M-file”项,如图1-17-1所示。,第1章MATLAB语言系统,2.所建立说明文件的演示文件必须存储在如下路径下:c:matlabwork,即选择默认路径直接保存才可以,否则命令无法运行。,第1章MATLAB语言系统,%这是一个建立说明文件的演示文件,%作为例题来进行练习。%Thisisademnosttrationfileoftheindependentmfile,%Asanexampleforyourtraining.,第1章MATLAB语言系统,步骤2:将文件以文件名exam01.m来存储。MATLAB的程序编辑器如图1-17-2所示。,第1章MATLAB语言系统,上述两步进行完毕,该文件名exam01即可在MATLAB平台上执行,如typeexam01(在matlab中演示)显示演示结果如图1-18-1所示。,第1章MATLAB语言系统,第1章MATLAB语言系统,helpexam01(在matlab中演示)显示演示结果如图1-18-2所示。,第1章MATLAB语言系统,【例1.7】执行文件的建立与执行。(在matlab中演示)步骤1:在文件编辑器上输入以下文件内容。,第1章MATLAB语言系统,%建立执行文件的例题。x=0:2*pi/180:2*pi;y1=sin(x);y2=cos(x);y=y1.*y2;plot(x,y,r:,x,y1,g-,x,y2,b-)(为了区别输出图线的不同,对此条命令作了修改),第1章MATLAB语言系统,显示演示结果如图1-19所示。,第1章MATLAB语言系统,步骤2:将文件以文件名exam02.m来存储。上述两步进行完毕,该文件名exam02即可在MATLAB平台上识别或者执行。,第1章MATLAB语言系统,在MATLAB命令平台上输入如下命令exam02(在matlab中演示)输入命令窗口如图1-20-1所示。,第1章MATLAB语言系统,输出图形显示结果如图1-20-2所示。,第1章MATLAB语言系统,例题说明:该文件共有6行,首行由“%”标识为注释行,不执行。,第1章MATLAB语言系统,其他5行均为执行行,与MATLAB平台上命令行操作相同,但是是以执行文件exam02的方式完成的。,第1章MATLAB语言系统,1.3.3m函数不同于独立m文件,m函数形式的m文件书写格式为函数名定义functionA1,A2=myfuction(a1,a2,)%注释行主程序体,例如:functiony,y1,y2=exam03(x),第1章MATLAB语言系统,格式说明:(1)第一行为m函数格式行。function为m函数的保留字,myfunction为m函数名称,(a1,a2,)为外部传递参数组,A1,A2为返回参数组。,第1章MATLAB语言系统,(2)首字符为“%”的各行是注释行。紧接格式行的各注释行可以响应help命令在MATLAB平台上印出,加空行后的注释行不响应help命令,注释行可以在m函数描述行的任意位置均可。,第1章MATLAB语言系统,(3)主程序体各行,是m函数的各执行行。,第1章MATLAB语言系统,【例1.8】m函数exam03.m的建立与执行。(在matlab中演示)步骤1:在文件编辑器上输入以下文件内容。,第1章MATLAB语言系统,functiony,y1,y2=exam03(x)%建立m函数的例题。y1=sin(x);y2=cos(x);y=y1.*y2;,第1章MATLAB语言系统,步骤2:将文件以文件名exam03.m来存储。Exam03.m文件建立的显示结果如图1-21所示。,第1章MATLAB语言系统,m函数exam03.m已建立完毕,可以作为命令在MATLAB平台上执行。,第1章MATLAB语言系统,不同的是,需要相应的参数方可以正确地执行,如本函数,需要输入参数x,并且返回3个参数y,y1,y2。,第1章MATLAB语言系统,在MATLAB平台上执行m函数exam03.m如下:(在matlab中演示)x=0:2*pi/180:2*pi;y=exam03(x);plot(x,y),第1章MATLAB语言系统,输入命令显示结果如图1-22所示。,第1章MATLAB语言系统,输出图线显示结果如图1-23所示。,第1章MATLAB语言系统,可以看到,exam03.m是依赖于变量x来执行的,并且返回变量y到MATLAB平台上或者变量内存,与独立m文件的执行是不同的。注:functiony,y1,y2=exam03(x)如文件名为:ff.m则调用ff(x),所以一

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论