《机电系统与仿真技术》课件8MatLab程序设计及M文件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《《机电系统与仿真技术》课件8MatLab程序设计及M文件.ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机电系统与仿真技术 机电 系统 仿真技术 课件 MatLab 程序设计 文件
- 资源描述:
-
1、回顾:基础知识2023-5-14l矩阵生成l基本运算l矩阵运算l多项式l解方程l绘图命令表表1-3 3 字符串符号和曲线线型、色彩及坐标点型状对照表字符串符号和曲线线型、色彩及坐标点型状对照表曲线线型曲线线型曲线色彩曲线色彩坐标点型状坐标点型状线型符号线型符号含义含义色彩符号色彩符号含义含义点型状符号点型状符号含义含义-实线实线b b蓝色蓝色.点点-虚线虚线c c青色青色o o圆圆:点线点线g g绿色绿色*星号星号-.-.点划线点划线k k黑色黑色+加号加号x x叉号叉号m m深红色深红色s s方块方块r r红色红色d d菱形菱形y y黄色黄色p p五角星五角星w w白色白色h h六角星六角星
2、2023-5-14 表表1-4 1-4 常用图形标识命令及其含义常用图形标识命令及其含义图形标识命令图形标识命令含义含义titletitle给出全图标注的标题给出全图标注的标题xlabelxlabel对对x轴标注名称轴标注名称ylabelylabel对对y轴标注名称轴标注名称texttext通过程序在图形的指定位置放入文本字符串通过程序在图形的指定位置放入文本字符串gtextgtext单击鼠标指定位置放入文本字符串单击鼠标指定位置放入文本字符串legendlegend在图形中添加注解在图形中添加注解gridgrid打开或关闭栅格打开或关闭栅格axisaxis坐标轴调整坐标轴调整holdhold
3、图形保持图形保持zoomzoom图形缩放图形缩放2023-5-14 其他绘图指令特殊图形绘制命令特殊图形绘制命令函数命令函数命令功能功能函数命令函数命令功能功能areaarea填充区域图填充区域图histhist绘制累计图绘制累计图barbar绘制直方图绘制直方图stairsstairs绘制阶梯图绘制阶梯图compasscompass绘制复数矢量图绘制复数矢量图stemstem绘制针状图绘制针状图cometcomet绘制慧星曲线图绘制慧星曲线图piepie绘制饼图绘制饼图featherfeather绘制羽毛图绘制羽毛图quiverquiver绘制向量场图绘制向量场图fillfill填充颜色填充
4、颜色roserose绘制极坐标累计图绘制极坐标累计图2023-5-14 三维绘图指令常用三维绘图函数命令常用三维绘图函数命令函数命令函数命令功能功能函数命令函数命令功能功能Plot3Plot3绘制三维曲线绘制三维曲线Bar3Bar3绘制三维直方图绘制三维直方图meshmesh绘制三维网线绘制三维网线Pie3Pie3绘制三维饼图绘制三维饼图surfsurf绘制三维曲面绘制三维曲面Stem3Stem3绘制三维离散针状图绘制三维离散针状图Colormap(RGB)Colormap(RGB)绘制三维图形装饰绘制三维图形装饰piepie绘制饼图绘制饼图viewview图形视觉角度图形视觉角度Contou
5、r3Contour3绘制三维等高线图绘制三维等高线图cylindercylinder绘制柱面图绘制柱面图meshcmeshc绘制三维含等高线网线图绘制三维含等高线网线图2023-5-14 第2讲 Matlab程序设计及仿真目标与要求目标与要求:学生了解M文件和函数的基本概念,掌握程序设计的基本原则,能够对Matlab的M文件进行流程控制,能够进行面向对象的编程,并且对M文件能够调试与剖析。教学内容教学内容:1 M文件;2函数;3 Matlab程序设计基本原则;4流程控制;5文件调试与剖析。2023-5-14 1.M文件脚本文件概述 MATLAB语言的程序可以有两种方式来执行,即命令行方式和m文
6、件方式。由于MATLAB语言的文件,以以“.m”作扩展名作扩展名,因此均称为m文件。M文件可分为函数程序和脚本程序两种:函数程序可以接受输入参数,并可以产生输出;脚本程序是MatLab表达式的集合,不可以接受参数。脚本文件是一种简单的M文件,它没有输入参数;可以是一系列在命令行中执行命令的集合,也可以是操作工作空间中的变量和程序中新建的变量。脚本程序在工作空间创建的变量,在程序运行结束后仍然可以使用。M脚本文件既不需要预先定义,也不需要接受输入变量,而是直接输入变量名,脚本程序就会按顺序执行命令。2023-5-14 1.M文件脚本文件编写1546.01197.0185.0,215.175.37
7、5.0216215.175.35.02112122212212122xxexxexxexxfxxxxxxxx脚本文件编写步骤:脚本文件编写步骤:第一步 单击MatLab指令窗口工具条上的New File图标或者【file】菜单下new子菜单中的M-file,如下图所示。打开如图2-2所示的MatLab文件编辑调试器Matlab Editor/Debugger。其窗口名默认为Untitled,用户可在空白窗口中编写程序。2023-5-14 1.M文件脚本文件编写针对所给分段函数,输入如下一段程序:针对所给分段函数,输入如下一段程序:a=2;b=2;clf;%clf 函数用于清除当前图像窗口函数用
8、于清除当前图像窗口x=-a:0.2:a;y=-b:0.2:b;for i=1:length(y)for j=1:length(x)if x(j)+y(j)1 z(i,j)=0.85*exp(-0.5*y(i)2-3.75*x(j)2-1.5*x(i);elseif x(j)+y(j)x=5;Ra=circle(x)(函数调用)2023-5-14 1.M文件与M函数M函数调用的注意点注意以下几点:1)M函数名要与M函数存储的文件名相同;2)当一个M函数内含有多个函数时,函数内第一个function为主函数,其它函数是主函数局部调用函数,文件名以主函数名命名;3)注释语句前需以“%”开始,若需要多
9、行注释语句,每行都以“%”开始;4)M函数内除了注释说明语句行,最上面的第一行语句必须以function开始;5)程序语句包括调用函数、注程控制语句和赋值语句等;6)M函数调用时,调用函数的输入/输出变量可以与定义函数的输入/输出变量不同。2023-5-14 1.M文件与M函数M函数程序函数程序函数程序可以接受输入参数,并可以返回输出参数。同时也可操作函数工作空间的变量。例如:通过M函数文件画圆 function Ra=circle(r,s)%r 指定半径的数值%s 指定线色的字符串%sa 指圆面积%circle(r)利用蓝实线画半径为r的圆周线%circle(r,s)利用s字符串指定的线色画
10、半径为r的圆周线%sa=circle(r)计算圆面积,并画半径为r的蓝色圆面%sa=circle(r,s)计算圆面积,并画半径为r的s色圆面clf;t=0:pi/200:2*pi;x=r*exp(i*t);Ra=pi*r*r;fill(real(x),imag(x),s)axis(square)title(M函数程序画圆示例)2023-5-14 1.M文件与M函数全局变量和局部变量 M函数运行时,所有变量都被加载于函数工作空间,而且对于多个函数运行时,这些函数的工作空间是相互独立的,其变量也不会加载于MatLab的工作空间,当函数运行结束后,所有的变量自动消失,这些变量称为局部变量。不过用户有
11、时需要使用全局变量,便于函数之间的变量共用,此时需要使用Matlab里面的global命令对变量进行全局变量定义。o局部变量:具有函数内部作用范围o全局变量:可在几个函数和基本工作空间之间共享,具有全局作用范围o全局变量的声明:global 变量名1 变量名2 变量名间用空格分离。o全局变量在使用前必须在MATLAB工作空间中申明,而在某个具体的MATLAB函数中如果想用到该全局变量时,也必须在函数中申明。o由于全局变量损害函数的封闭性,因此不提倡使用全局变量。2023-5-14 1.M文件与M函数M函数程序第二步 运行以下命令,结果如下图所示。Ra=circle(3,r)Ra=28.2743
12、。2023-5-14 2.函数函数定义把相关语句组合在一起,并给它把相关语句组合在一起,并给它们注明相应的名称,利用这种方法把们注明相应的名称,利用这种方法把程序分块,这种形式的组合就称为函程序分块,这种形式的组合就称为函数。函数通常也称为例程或过程。数。函数通常也称为例程或过程。函数的使用通常是通过函数调用来实现的。对于用户自定义的函数也可以有子函数。这些子函数只能被与M文件同名的主函数或者在M文件的其他函数所调用。2023-5-14 2.函数子函数一个M文件只能有一个主函数。文件main.m中有一个函数结构及其子函数,示例如下:Function f=main(x)%主函数%程序语句Y1=f
13、unexample1(x)%调用第一个子函数%程序语句f=funexample2(x)%调用第二个子函数%程序语句Function f=funexample1(x)%定义第一个子函数%程序语句Function f=funexample2(x)%定义第二个子函数%程序语句b,d=funexample3(x1,x2)%子函数中另外再调用第三个子函数(函数嵌套)%程序语句Function b,d=funexample3(x1,x2)%定义第三个子函数%程序语句2023-5-14 2.函数私有函数o私有函数是放入一个叫private子目录中的M文件,私有函数只能private直接上层目录中的函数调用。
展开阅读全文