matlab操作界面及基本命令简介.ppt_第1页
matlab操作界面及基本命令简介.ppt_第2页
matlab操作界面及基本命令简介.ppt_第3页
matlab操作界面及基本命令简介.ppt_第4页
matlab操作界面及基本命令简介.ppt_第5页
已阅读5页,还剩64页未读 继续免费阅读

下载本文档

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

文档简介

安装及目录简介 目录 操作界面简介 菜单工具栏窗口 基本命令 Matlab编辑命令 工作空间管理命令 who whos 显示当前工作变量情况clear 删除当前工作变量clc 命令窗口清屏workspace 打开工作空间浏览器 路径编辑命令 path 显示所有matlab命令路径addpath eg addpathc windowsrmpath 清除子目录 联机帮助系统 help命令或函数名help菜单选项lookfor关键词ver工具箱 工具箱版本信息 Matlab语言程序设计基础 MATLAB作为线性系统的一种分析和仿真工具 是理工科大学生应该掌握的技术工具 它作为一种编程语言和可视化工具 可解决工程 科学计算和数学学科中许多问题 MATLAB建立在向量 数组和矩阵的基础上 使用方便 人机界面直观 输出结果可视化 矩阵是MATLAB的核心 一 变量与函数 二 数组 三 矩阵 四 MATLAB编程 1 变量命名规则 1 变量名必须以字母打头 后可以跟任意字母 数字或下划线 2 变量名区分大小写 3 变量名必须是不含空格的单个词 一 变量与函数 特殊变量表 2 数学运算符号及标点符号 1 MATLAB的每条命令后 若为逗号或无标点符号 则显示命令的结果 若命令后为分号 则禁止显示结果 2 后面所有文字为注释 3 表示续行 3 数学函数 MATLAB的内部函数是有限的 有时为了研究某一个函数的各种性态 需要为MATLAB定义新函数 为此必须编写函数文件 函数文件是文件名后缀为M的文件 这类文件的第一行必须是一特殊字符function开始 格式为 function因变量名 函数名 自变量名 函数值的获得必须通过具体的运算实现 并赋给因变量 4 M文件 M文件建立方法 1 在Matlab中 点 File New M file2 在编辑窗口中输入程序内容3 点 File Save 存盘 M文件名必须与函数名一致 Matlab的应用程序也以M文件保存 例 定义函数f x1 x2 100 x2 x12 2 1 x1 2 functionf fun x f 100 x 2 x 1 2 2 1 x 1 2 1 建立M文件 fun m MATLAB fun 2 可以直接使用函数fun m 例如 计算f 1 2 只需在Matlab命令窗口键入命令 x 12 fun x x logspace first last n 创建从first开始 到last结束 有n个元素的对数分隔的行向量 1 创建简单的数组 二 数组 MATLAB shuzu1 x abcdef 创建包含指定元素的行向量 x first last创建从first开始 加1计数 到last结束的行向量 x first increment last创建从first开始 加increment计数 last结束的行向量 x linspace first last n 创建从first开始 到last结束 有n个元素的行向量 2 数组元素的访问 MATLAB shuzu2 3 直接使用元素编址序号 x abcd 表示提取数组x的第a b c d个元素构成一个新的数组 x a x b x c x d 2 访问一块元素 x a b c 表示访问数组x的从第a个元素开始 以步长为b到第c个元素 但不超过c b可以为负数 b缺损时为1 1 访问一个元素 x i 表示访问数组x的第i个元素 3 数组的方向前面例子中的数组都是一行数列 是行方向分布的 称之为行向量 数组也可以是列向量 它的数组操作和运算与行向量是一样的 唯一的区别是结果以列形式显示 产生列向量有两种方法 直接产生例c 1 2 3 4 转置产生例b 1234 c b 说明 以空格或逗号分隔的元素指定的是不同列的元素 而以分号分隔的元素指定了不同行的元素 4 数组的运算 1 标量 数组运算数组对标量的加 减 乘 除 乘方是数组的每个元素对该标量施加相应的加 减 乘 除 乘方运算 设 a a1 a2 an c 标量 则 a c a1 c a2 c an c a c a1 c a2 c an c a c a1 c a2 c an c 右除 a c c a1 c a2 c an 左除 a c a1 c a2 c an c c a c a1 c a2 c an MATLAB shuzu3 2 数组 数组运算当两个数组有相同维数时 加 减 乘 除 幂运算可按元素对元素方式进行的 不同大小或维数的数组是不能进行运算的 设 a a1 a2 an b b1 b2 bn 则 a b a1 b1 a2 b2 an bn a b a1 b1 a2 b2 an bn a b a1 b1 a2 b2 an bn a b b1 a1 b2 a2 bn an a b a1 b1 a2 b2 an bn MATLAB shuzu4 返回 三 矩阵 逗号或空格用于分隔某一行的元素 分号用于区分不同的行 除了分号 在输入矩阵时 按Enter键也表示开始一新行 输入矩阵时 严格要求所有行有相同的列 例m 1234 5678 9101112 p 111122223333 1 矩阵的建立 特殊矩阵 MATLAB matrix1 d eye m n 产生一个m行 n列的单位矩阵 c ones m n 产生一个m行 n列的元素全为1的矩阵 b zeros m n 产生一个m行 n列的零矩阵 a 产生一个空矩阵 当对一项操作无结果时 返回空矩阵 空矩阵的大小为零 2 矩阵中元素的操作 MATLAB matrix2 1 矩阵A的第r行 A r 2 矩阵A的第r列 A r 4 取矩阵A的第i1 i2行 第j1 j2列构成新矩阵 A i1 i2 j1 j2 5 以逆序提取矩阵A的第i1 i2行 构成新矩阵 A i2 1 i1 6 以逆序提取矩阵A的第j1 j2列 构成新矩阵 A j2 1 j1 7 删除A的第i1 i2行 构成新矩阵 A i1 i2 8 删除A的第j1 j2列 构成新矩阵 A j1 j2 9 将矩阵A和B拼接成新矩阵 AB A B 3 依次提取矩阵A的每一列 将A拉伸为一个列向量 A 2 矩阵 矩阵运算 1 元素对元素的运算 同数组 数组运算 3 矩阵的运算 1 标量 矩阵运算同标量 数组运算 MATLAB matrix3 2 矩阵运算 矩阵加法 A B矩阵乘法 A B A B A B方阵的行列式 det A 方阵的逆 inv A 方阵的特征值与特征向量 V D eig A 返回 关系与逻辑运算 操作符 说明 在关系比较中 若比较的双方为同维数组 则比较的结果也是同维数组 它的元素值由0和1组成 当比较双方对应位置上的元素值满足比较关系时 它的对应值为1 否则为0 E g lt000 当比较的双方中一方为常数 另一方为一数组 则比较的结果与数组同维 在算术运算 比较运算和逻辑与 或 非运算中 它们的优先级关系先后为 比较运算 算术运算 逻辑与或非运算 1 for循环 允许一组命令以固定的和预定的次数重复for循环变量 s1 s3 s2循环体句组end注 fori s1 s3 s2 其与C语言中的for i s1 i0时 for i s1 i s2 i s3 一致 在s3 0时 控制流 MATLAB提供三种决策或控制流结构 for循环 while循环 if else end结构 这些结构经常包含大量的MATLAB命令 故经常出现在MATLAB程序中 而不是直接加在MATLAB提示符下 例对n 1 2 10 求xn 的值 MATLAB for1 while逻辑变量循环体句组end只要逻辑变量为真 则执行循环体中的内容 2 While循环与for循环以固定次数求一组命令相反 while循环以不定的次数求一组语句的值 MATLAB while1 例设银行年利率为11 25 将10000元钱存入银行 问多长时间会连本带利翻一番 3 If Else End结构 1 有一个选择的一般形式是 if逻辑变量条件块句组end如果逻辑变量为真 则执行if和end语句之间的条件块句组 MATLAB fun1 先建立M文件fun1 m定义函数f x 再在Matlab命令窗口输入fun1 2 fun1 1 即可 2 有三个或更多的选择的一般形式是 if expression1 commands1 elseif expression2 commands2 elseif expression3 commands3 elseif else commands endendend end 先建立M文件fun2 m定义函数f x 再在Matlab命令窗口输入fun2 2 fun2 0 5 fun2 1 即可 MATLAB fun2 返回 谢谢 后勤工程学院数学教研室 数学教研室 MATLAB作图 Matlab科学绘图 二维图形 三维图形 图形处理 实例 特殊二 三维图形 二维图形 1 曲线图 Matlab作图是通过描点 连线来实现的 故在画一个曲线图形之前 必须先取得该图形上的一系列的点的坐标 即横坐标和纵坐标 然后将该点集的坐标传给Matlab函数画图 命令为 PLOT X Y S PLOT X Y 画实线PLOT X Y1 S1 X Y2 S2 X Yn Sn 将多条线画在一起 X Y是向量 分别表示点集的横坐标和纵坐标 线型 y黄色 点 连线m洋红o圈 短虚线c蓝绿色xx 符号 长短线r红色 加号 长虚线 例在 0 2 pi 用红线画sin x 用绿圈画cos x x linspace 0 2 pi 30 y sin x z cos x plot x y r x z g0 解 Matlabliti1 2 符号函数 显函数 隐函数和参数方程 画图 1 ezplot ezplot x t y t tmin tmax 表示在区间tmin t tmax绘制参数方程x x t y y t 的函数图 ezplot f x a b 表示在a x b绘制显函数f f x 的函数图 ezplot f x y xmin xmax ymin ymax 表示在区间xmin x xmax和ymin y ymax绘制隐函数f x y 0的函数图 例在 0 pi 上画y cos x 的图形 解输入命令ezplot cos x 0 pi Matlabliti25 解输入命令ezplot cos t 3 sin t 3 0 2 pi Matlabliti41 解输入命令ezplot exp x sin x y 2 0 5 0 2 Matlabliti40 2 fplot 注意 1 fun必须是M文件的函数名或是独立变量为x的字符串 2 fplot函数不能画参数方程和隐函数图形 但在一个图上可以画多个图形 fplot fun lims 表示绘制字符串fun指定的函数在lims xmin xmax 的图形 解先建M文件myfun1 m functionY myfun1 x Y exp 2 x sin 3 x 2 再输入命令 fplot myfun1 1 2 Matlabliti43 Matlabliti28 解输入命令 fplot tanh x sin x cos x 2 pi 11 11 例在 2 2 范围内绘制函数tanh的图形解fplot tanh 2 2 Matlabliti42 3 对数坐标图 在很多工程问题中 通过对数据进行对数转换可以更清晰地看出数据的某些特征 在对数坐标系中描绘数据点的曲线 可以直接地表现对数转换 对数转换有双对数坐标转换和单轴对数坐标转换两种 用loglog函数可以实现双对数坐标转换 用semilogx和semilogy函数可以实现单轴对数坐标转换 loglog Y 表示x y坐标都是对数坐标系semilogx Y 表示x坐标轴是对数坐标系semilogy 表示y坐标轴是对数坐标系plotyy有两个y坐标轴 一个在左边 一个在右边 例用方形标记创建一个简单的loglog 解输入命令 x logspace 1 2 loglog x exp x s gridon 标注格栅 Matlabliti37 例创建一个简单的半对数坐标图解输入命令 x 0 1 10 semilogy x 10 x Matlabliti38 例绘制y x3的函数图 对数坐标图 半对数坐标图 Matlabliti22 返回 1 空间曲线 2 空间曲面 返回 三维图形 PLOT3 x y z s 1 一条曲线 例在区间 0 10 pi 画出参数曲线x sin t y cos t z t Matlabliti8 解t 0 pi 50 10 pi plot3 sin t cos t t rotate3d 旋转 1 空间曲线 PLOT3 x y z 2 多条曲线 例画多条曲线观察函数Z X Y 2 这里meshgrid x y 的作用是产生一个以向量x为行 向量y为列的矩阵 Matlabliti9 其中x y z都是m n矩阵 其对应的每一列表示一条曲线 解x 3 0 1 3 y 1 0 1 5 X Y meshgrid x y Z X Y 2 plot3 X Y Z 返回 空间曲面 例画函数Z X Y 2的图形 解x 3 0 1 3 y 1 0 1 5 X Y meshgrid x y Z X Y 2 surf X Y Z shadingflat 将当前图形变得平滑 Matlabliti11 1 surf x y z 画出数据点 x y z 表示的曲面 2 Mesh x y z 解x 3 0 1 3 y 1 0 1 5 X Y meshgrid x y Z X Y 2 mesh X Y Z Matlabliti24 例画出曲面Z X Y 2在不同视角的网格图 画网格曲面 3 meshz X Y Z 在网格周围画一个curtain图 如 参考平面 解输入命令 X Y meshgrid 3 125 3 Z peaks X Y Meshz X Y Z 例绘peaks的网格图 Matlabliti36 返回 在图形上加格栅 图例和标注 定制坐标 图形保持 分割窗口 缩放图形 改变视角 图形处理 返回 动画 1 在图形上加格栅 图例和标注 1 GRIDON 加格栅在当前图上GRIDOFF 删除格栅 处理图形 2 hh xlabel string 在当前图形的x轴上加图例string hh ylabel string 在当前图形的y轴上加图例string hh title string 在当前图形的顶端上加图例string hh zlabel string 在当前图形的z轴上加图例string 例在区间 0 2 pi 画sin x 的图形 并加注图例 自变量X 函数Y 示意图 并加格栅 解x linspace 0 2 pi 30 y sin x plot x y xlabel 自变量X ylabel 函数Y title 示意图 gridon Matlabliti2 3 hh gtext string 命令gtext string 用鼠标放置标注在现有的图上 运行命令gtext string 时 屏幕上出现当前图形 在图形上出现一个交叉的十字 该十字随鼠标的移动移动 当按下鼠标左键时 该标注string放在当前十交叉的位置 例在区间 0 2 pi 画sin x 并分别标注 sin x cos x 解x linspace 0 2 pi 30 y sin x z cos x plot x y x z gtext sin x gtext cos x Matlabliti3 返回 2 定制坐标 Axis xminxmaxyminymaxzminzmax 例在区间 0 005 0 01 显示sin 1 x 的图形 解x linspace 0 0001 0 01 1000 y sin 1 x plot x y axis 0 0050 01 11 Matlabliti4 返回 定制图形坐标 将坐标轴返回到自动缺省值 Axisauto 3 图形保持 1 holdonholdoff 例将y sin x y cos x 分别用点和线画出在同一屏幕上 解x linspace 0 2 pi 30 y sin x z cos x plot x z holdonPlot x y Matlabliti5 保持当前图形 以便继续画图到当前图上 释放当前图形窗口 2 figure h 例区间 0 2 pi 新建两个窗口分别画出y sin x z cos x 解x linspace 0 2 pi 100 y sin x z cos x plot x y title sin x pausefigure 2 plot x z title cos x Matlabliti6 返回 新建h窗口 激活图形使其可见 并把它置于其它图形之上 4 分割窗口 h subplot mrows ncols thisplot 划分整个作图区域为mrows ncols块 逐行对块访问 并激活第thisplot块 其后的作图语句将图形画在该块上 激活已划分为mrows ncols块的屏幕中的第thisplot块 其后的作图语句将图形画在该块上 命令Subplot 1 1 1 返回非分割状态 subplot mrows ncols thisplot subplot 1 1 1 解x linspace 0 2 pi 100 y sin x z cos x a sin x cos x b sin x cos x eps subplot 2 2 1 plot x y title sin x subplot 2 2 2 plot x z title cos x subplot 2 2 3 plot x a title sin x cos x subplot 2 2 4 plot x b title sin x cos x 例将屏幕分割为四块 并分别画出y sin x z cos x a sin x cos x b sin x cos x Matlabliti7 返回 5 缩放图形 zoomon 单击鼠标左键 则在当前图形窗口中 以鼠标点中的点为中心的图形放大2倍 单击鼠标右键 则缩小2倍 解x linspace 0 2 pi 30 y sin x Plot x y zoomon Matlabliti13 例缩放y sin x 的图形 zoomoff 为当前图形打开缩放模式 关闭缩放模式 返回 6 改变视角view 1 view a b 命令view a b 改变视角到 a b a是方位角 b为仰角 缺省视角为 37 5 30 解x 3 0 1 3 y 1 0 1 5 X Y meshgrid x y Z X Y 2 subplot 2 2 1 mesh X Y Z subplot 2 2 2 mesh X Y Z view 50 34 subplot 2 2 3 mesh X Y Z view 60 70 subplot 2 2 4 mesh X Y Z view 0 1 1 Matlabliti10 例画出曲面Z X Y 2在不同视角的网格图 view用空间矢量表示的 三个量只关心它们的比例 与数值的大小无关 x轴view 1 0 0 y轴view 0 1 0 z轴view 0 0 1 2 view x y z 返回 7 动画 Moviein getframe movie 函数Moviein 产生一个帧矩阵来存放动画中的帧 函数getframe对当前的图象进行快照 函数movie 按顺序回放各帧 Matlabliti14 返回 例将曲面peaks做成动画 解 x y z peaks 30 surf x y z axis 33 33 1010 m moviein 15 fori 1 15view 37 5 24 i 1 30 m i getframe endmovie m 特殊二 三维图形 1 特殊的二维图形函数 2 特殊的三维图形函数 返回 特殊的二维图形函数 1 极坐标图 polar theta rho s 用角度theta 弧度表示 和极半径rho作极坐标图 用s指定线型 例 解 theta linspace 0 2 pi rho sin 2 theta cos 2 theta polar theta rho g title Polarplotofsin 2 theta cos 2 theta Matlabliti15 2 散点图 scatter X Y S C 在向量X和Y的指定位置显示彩色圈 X和Y必须大小相同 解输入命令 loadseamountscatter x y 5 z Matlabliti29 3 平面等值线图 contour x y z n 绘制n个等值线的二维等值线图 解输入命令 X Y meshgeid 2 2 2 2 2 3 Z X exp X 2 Y 2 C h contour X Y Z clabel C h colormapcool Matlabliti34 例绘制seamount散点图 返回 特殊的三维图形函数 1 空间等值线图 contour3 x

温馨提示

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

评论

0/150

提交评论