MATLAB如何使用-教程-初步入门大全.ppt

上传人:tia****nde 文档编号:7271128 上传时间:2020-03-17 格式:PPT 页数:79 大小:1.42MB
返回 下载 相关 举报
MATLAB如何使用-教程-初步入门大全.ppt_第1页
第1页 / 共79页
MATLAB如何使用-教程-初步入门大全.ppt_第2页
第2页 / 共79页
MATLAB如何使用-教程-初步入门大全.ppt_第3页
第3页 / 共79页
点击查看更多>>
资源描述
MATLAB快速入门 1 目录MATLAB基本操作MATLAB数值计算MATLAB图形处理MATLAB编程技巧 2 一 MATLAB的启动与退出1 MATLAB系统的启动 1 在桌面上双击MATLAB快捷方式图标 2 在开始菜单中单击MATLAB MATLAB6 5项 3 在MATLAB安装目录 MATLAB6p5中双击MATLAB快捷方式 4 在MATLAB安装目录 MATLAB6p5 bin win32中双击MATLAB exe图标 2 MATLAB系统的退出 1 点击操作桌面的关闭按钮 2 执行操作桌面file ExitMATLAB命令 3 在命令窗口中输入命令exit或quit 并回车 4 用快捷键Ctrl Q 1MATLAB的基本操作 3 二 MATLAB窗口 启动MATLAB后 将显示包括四个窗口命令窗口 commandwindows 工作空间窗口 workspace 命令历史窗口 commandhistorywindows 当前路径窗口 currentdirectory 4 1 命令窗口 CommandWindow MATLAB是交互式的语言 输入命令即给出运算结果 而命令窗口则是MATLAB的主要交互窗口 用于输入和编辑命令行等信息 显示结果 图形除外 当命令窗口中出现提示符 时 表示MATLAB已经准备好 可以输入命令 变量或运行函数 提示符总是位于行首 在每个指令行输入后要按回车键 才能使指令被MATLAB执行 5 2 工作空间 Workspace 工作空间用于保存MATLAB变量的信息 在工作空间可以对变量进行观察 编辑 保存和删除 保存在工作空间中的自定义变量 直到使用了 clear 命令清除工作空间或关闭了MATLAB系统才被清除 在命令窗口中键入 whos 命令 可以显示出保存在工作空间中的所有变量的名称 大小 数据类型等信息 如果键入 who 命令 则只显示变量的名称 6 3 命令历史窗口 CommandHistory 命令历史窗口记录用户每一次启动MATLAB的时间以及在命令窗口运行过的所有指令 命令历史窗口中的指令可以被复制到命令窗口重新运行 如果要清除掉这些记录 可以选择 Edit 菜单中的 ClearCommandHistory 项 7 4 当前路径窗口 CurrentDirectory 当前路径窗口也称为当前目录窗口 可以显示或改变当前目录 当前目录指的是MATLAB运行文件时的工作目录 只有在当前目录或搜索路径下的文件及函数可以被运用或调用 如果没有特殊指明 数据文件也将储存在当前目录下 如果要建立自己的工作目录 在运行文件前必须将该文件所在目录设置为当前目录 8 三 MATLAB的帮助系统 帮助命令帮助命令是查询函数语法的最基本的方法 查询信息直接显示在命令窗口 帮助命令有help lookfor help函数名 显示关于某个具体函数的功能 调用格式 及相关函数 help帮助主题 列出指定主题下的函数 例如 helpelfun 列出所有基本函数 lookforimage 查找有关图像的函数和命令 9 四 MATLAB的运行方式 1 命令行运行方式在MATLAB的应用中 最基本 最简单的应用 就是在命令窗口中直接输入命令来实现计算或绘图功能 MATLAB命令行的一般形式为 变量 表达式A 1 2表达式1 2 10 命令行运行方式 续 使用MATLAB最简单的方式是将MATLAB的命令窗口看作计算器 通过输入数学算式直接计算 1 2 3 4 5 ans 15 如果在输入的表达式后面跟上分号 那么运行后就不会马上显示运算的结果 必须键入输出变量后才能显示运算结果 用分号关闭不必要的输出会使程序运行速度成倍甚至成百倍地提高 1 2 3 4 5 则不会马上显示运算结果 要得到运算结果 必须 ans 则显示结果为ans 15 11 命令行运行方式 续 如果在表达式后面跟上逗号 或什么都不跟 运行后会马上显示该表达式的运算结果 如果一个表达式很长 可以用续行号 将其延续到下一行 1 2 3 4 5 注意加号写在本行 6 7 8 9 10 则输出结果ans 55 12 在一行中也可以写几个语句 它们之间用逗号 或分号 隔开 A 1 2 3 3 sin 4 X 1966 310 1 则输出结果A 1 00002 00003 3000 0 7568X 7 3419 命令行运行方式 续 13 2 m文件运行方式 所谓m文件 就是用MATLAB语言编写的 可以在MATLAB中运行的程序 它是以普通文本格式存放的 故可以用任何文本编辑软件进行编辑 MATLAB提供的m文件编辑器就是程序编辑器 在File菜单中选择NEW 再选择M file 或点击新建图标 就可以调出m文件编辑器 用户可以用此编辑器编写m文件 14 1 命令文件 如果要输入较多的命令 或者要经常对某些命令进行重复的输入 则可以将这些命令按执行顺序存放在一个m文件中 以后只要在MATLAB的命令窗口中输入该文件的文件名 系统就会调入该文件并执行其中的全部命令 这种形式就是MATLAB的命令文件 15 命令文件 续 求满足1 2 3 n 100 故应对sum减nn n 1 当循环结束时有sum 100 故应对n减1n sum 显示最大正整数n以及和sum 16 命令文件 续 将上述程序存入文件fl m 然后在命令窗口键入 fl 显示结果为n 13sum 91指出 程序中由符号 开始的文字都是注释文字 用来对程序或程序行行进行注释说明 符号 称为注释符 MATLAB在执行时将忽略 后的内容 17 2 函数文件 函数文件是另一类m文件 可以像库函数一样方便地被调用 MATLAB提供的许多工具箱 是由函数文件组成的 对于某一类特殊问题 用户可以建立系统的函数文件 形成专用工具箱 函数文件的第一行有特殊的要求 它必须遵循如下的形式 function 其他各行都是程序运行语句 没有特别要求 函数文件的文件名必须是 m 18 函数文件 续 实现符号函数运算功能的函数m文件为 functiony sgn x 这是一个定义符号函数y sgn x 的函数文件 ifx 0y1 1 elseifx 0y1 0 elsey1 1 endy y1 19 函数文件 续 将上述程序存为文件sgn m 便可以将其作为普通的MATLAB函数来使用 x 4 3 pi y 3 sgn sin x 显示结果为 y 3 20 五 MATLAB的常用命令 MATLAB可以通过菜单对工作着的窗口进行操作 也可以通过键盘在命令窗口输入命令进行操作 下面给出几个常用的通用命令 quit关闭MATLABexit关闭MATLABclc清除MATLAB命令窗口中的所有显示内容clear清除工作空间中保存的所有变量其他命令可以在学习应用中逐步熟悉 21 六 MATLAB的基本运算 指出 右除相当于通常的除法 22 七 MATLAB的变量与函数 1 变量变量就是在程序的运行过程中 其数值可以变化的量 数据 它可以代表一个或若干个内存单元 变量的地址 中的数据 为了对所有的变量所对应的存储单元进行访问 需要给变量命名 MATLAB变量命名的规则是 以字母开头 后面可以跟字母 数字或下划线 不超过31个字符 字符间不可以留空格 区分大小写 23 MATLAB的变量与函数 续 系统变量 24 2 函数 数学函数 25 函数 续 机器函数pause程序将暂时停在该函数所在位置 击任意键程序继续执行echoon在命令窗口显示正在执行的程序指令cputime给出MATLAB所耗用的总机器时间clock给出日期及当前时间 26 2MATLAB的数值计算 MATLAB运算的基本数据对象是矩阵 标量可以看作是1 1的矩阵 向量可以看作是1 n或n 1的矩阵 因此 可以说MATLAB的数据结构就是矩阵 以矩阵运算为代表的基本运算功能一直是MATLAB引以为自豪的核心与基础 27 一 矩阵的创建 矩阵是线性代数的基本运算单元 通常矩阵是指含有m行n列数值的矩形结构 矩阵中的元素可以是实数也可以是复数 由此可以将矩阵划分为实矩阵和复矩阵 MATLAB支持线性代数所定义的全部矩阵运算 在MATLAB中创建矩阵应遵循以下原则 矩阵的元素必须在方括号 中 矩阵的同行元素之间用空格或逗号 分隔 矩阵的行与行之间用分号 或回车符分隔 矩阵的尺寸不必预先定义 矩阵元素可以是数值 变量 表达式或函数 如果矩阵元素是表达式 系统将自动计算出结果 28 矩阵的创建 续 1 直接输入法 在命令窗口按规则输入方式创建矩阵例1 在命令窗口创建简单的数值矩阵 A 132 310 215 回车后在命令窗口显示如下结果A 132310215例2 在命令窗口创建带运算表达式的矩阵 不显示结果 y sin pi 3 cos pi 6 log 20 exp 2 输入 y 回车 在命令窗口显示出来 y 显示出的结果为y 0 86600 86602 99577 3891 29 矩阵的创建 续 2 通过m文件创建矩阵 将矩阵建立为m文件先将矩阵按创建原则写入一个m文件中 在MATLAB命令窗口或程序中直接运行该m文件 输入该m文件名 即可将矩阵调入工作空间 3 通过函数创建矩阵 30 矩阵的创建 续 4 其他构造矩阵的方法 冒号法 1 冒号法构造向量冒号表达式的一般格式为 向量名 初值 步长 终值 例4 在窗口输入 x 0 0 5 2回车后显示x 00 50001 00001 50002 0000 例5 在命令窗口输入 x 2 0 5 0回车后显示x 2 00001 50001 00000 50000 31 矩阵的创建 续 指出 步长可以省略 省略步长 则步长为1 步长可以为负 此时初值大于终值 向量的元素比较多而又有增减规律时 这种方法非常便利 冒号法表示向量时 向量的全体成员是从初值开始 以步长为增量 直到不超过终值的所有元素构成的序列 冒号法的应用可以避免使用循环 提高程序运行速度 32 矩阵的创建 续 2 冒号法构造矩阵一般格式为 A j 表示矩阵A的第j列 A i 表示矩阵A的第i行 例6 建立矩阵 解 A 1 1 5 设置矩阵的第1行A 12345 33 矩阵的创建 续 A 2 6 10 设置矩阵的第2行A 12345678910 A 3 11 15 设置矩阵的第3行 设置完成A 123456789101112131415 34 二 矩阵的运算 MATLAB对于矩阵与矩阵之间的运算的处理方法与线性代数中的相同 35 矩阵的运算 续 例8 求下面方程组的根 解 解线性方程组 可以使用矩阵的左除 即X A B A 2 1 3 3 2 2 5 3 1 B 5 5 16 列向量 X A BX 1 3 2 36 矩阵的运算 续 指出 线性方程组A X B有两种解法 X A B或X inv A B 但一般用第一种解法 在MATLAB中 第二种解法所用时间是第一种解法的50倍 可以看出 同样解线性方程组 不同的算法的效率是有极大差距的 可见优化和选择算法是非常重要的 求逆运算inv A 是重要的代数运算 37 三 矩阵的操作 1 矩阵的大小测度Size函数用来测试矩阵的大小 对于矩阵A size A 返回一个行向量 它包含了矩阵的行数m和列数n 如果专门显示行数和列数 则可以采用如下格式 例9 已知矩阵 求矩阵的大小 38 矩阵的操作 续 解 A 11111 12345 1361015 设A为已知矩阵A 11111123451361015 d size A 测试矩阵A的大小d 35 d1 size A 1 测试矩阵的行数d1 3 d2 size A 2 测试矩阵的列数d2 5 39 矩阵的操作 续 2 矩阵的元素操作例10 已知矩阵 写出矩阵的元素A 2 3 将A 3 5 改为 1 解 A 11111 12345 1361015 A 11111123451361015 40 矩阵的操作 续 A 2 3 ans 3 A 3 5 1A 111111234513610 1 41 矩阵的操作 续 3 矩阵块的操作利用冒号表达式对矩阵进行拆分 提取子矩阵是矩阵操作的重要方面 提取的规则是 A j 表示取矩阵A的第j列的全部元素 A i 表示取矩阵A的第i行的全部元素 A i j 表示取矩阵A的第i行第j列交叉位置的元素 A i i m 表示取矩阵A的第i i m行的全部元素 A k k n 表示取矩阵A的第k k n列的全部元素 A i i m k k n 表示取矩阵A的第i i m行内并在第k k n列中的全部元素 42 矩阵的操作 续 例12 拆分矩阵的例子 A 11111 12345 1361015 A 11111123451361015 A 2 3 ans 3 A 3 5 1A 111111234513610 1 43 矩阵的操作 续 A 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 A 1234567891011121314151617181920 A 1 ans 12345 44 矩阵的操作 续 A 2 4 ans 234789121314171819 A 2 3 4 5 ans 9101415 A 2 3 1 2 5 ans 6810111315 45 矩阵的操作 续 例13 组合矩阵的例子 A 1 2 3 4 A 1234 B 2 3 4 5 B 2345 A B ans 12233445 46 矩阵的操作 续 A B ans 12342345 A 6 7 ans 123467 47 矩阵的操作 续 冒号表达式是MATLAB中非常重要的 应用非常广泛 也非常灵活的工具 利用冒号表达式比利用循环语句赋值解决同一问题要快得多 所以实际编程时一般应当尽量采用冒号表达式而不是用循环 48 3MATLAB的图形处理 49 MATLAB的图形处理 续 x y z sphere 30 surf x y z box 50 二维图形的绘制 一 二维图形的绘制1 数据绘图命令 plot plot y 当y为向量时 以y的分量为纵坐标 以元素序号为横坐标 用直线依次连接数据点 绘制曲线 若y为实数矩阵 按列绘制每一列所对应的曲线 图中曲线数等于矩阵的列数 plot x y 若y和x为同维向量 以x为横坐标 以y为纵坐标绘制连线图 若x是向量 y是行数或列数与x的长度相等的矩阵 则绘制多条不同色彩的连线图 x被作为这些曲线的共同坐标 若x和y是同型的矩阵 则以x和y的对应列元素为横纵坐标分别绘制曲线 曲线条数等于矩阵的列数 plot x y1 x y2 以公共的x元素为横坐标 以y1 y2 y3 元素为纵坐标值绘制多条曲线 51 二维图形的绘制 续 例1 以向量y 1 2 5 4 5 3 6 1 的各个分量为纵坐标 分量序号为横坐标绘制顺序连接线 解 输入命令 y 1254 5361 plot y 52 二维图形的绘制 续 53 二维图形 续 例2 画出一条正弦曲线和一条余弦曲线 x 0 pi 10 2 pi 构造向量 y1 sin x 构造对应的y1坐标 y2 cos x 构造对应的y2坐标 plot x y1 x y2 画出一个以x为横坐标 y1 y2为纵坐标的图形指出 构造向量采用了所谓的冒号法 格式为向量名 初值 步长 终值 步长为1时可以省略 plot是针对向量或矩阵的列来绘制曲线的 也就是说 使用plot之前必须首先定义好曲线上每一点的x坐标和y坐标 在上述的格式中 x和y都可以是表达式 如果自变量的间隔取得比较大 光滑的曲线就会显示出折线的本来面貌 54 二维图形 续 55 二维图形绘制 续 MATLAB绘制的其它图像的例子 例5 某次考试学生成绩优秀的占8 良好的占20 中等的占36 及格的占24 不及格的占12 分别用饼图和条形图表示 解 x 820362412 subplot 221 pie x 10001 title 饼图 subplot 222 bar x grpup title 垂直条形图 subplot 223 bar x stack title 累加值为纵坐标的垂直条形图 subplot 224 barh x group title 水平条形图 56 fplot 续 57 2 绘图控制命令 1 曲线控制命令在使用plot等命令绘制曲线时可以指定曲线的颜色 线型和数据点图标 基本的调用格式为plot x y colorline stylemarker 颜色控制符表 58 绘图控制 续 线型控制符表 59 绘图控制 续 数据点标记控制符表 60 绘图控制 续 指出 颜色 线型 标记三种属性的符号必须放在同一个字符串内 属性的先后顺序没有关系 可以只指定一两个属性 也可以全部缺省 但同种属性不能同时指定两个 颜色缺省为蓝色 点 线标识符缺省为实线 属性间不用间隔 61 绘图控制 续 例6 用红色 点连线 叉号画出正弦曲线 x 0 0 2 8 y sin x plot x y r x 62 绘图控制 续 63 2 图形的标注命令 图形标注函数 64 图形的标注 续 例7 给例2的图形加入网格和标注 f2 x 0 pi 10 2 pi y1 sin x y2 cos x plot x y1 x y2 gridon 添加网格 xlabel x轴 横坐标名 ylabel y轴 纵坐标名 title 正弦函数和余弦函数曲线 标题 text 1 5 0 3 cos x 指定位置标注 gtext sin x 用鼠标选择位置标注 axis 02 pi 1 21 2 设置坐标轴的最大最小值 65 图形的标注 续 66 3 图形的比较显示命令 默认的情况下 MATLAB每一次使用plot函数进行绘图 都将清除原有的图形 但有时候我们希望后面绘制的图形能和前面所绘制的图形进行比较 此时我们有两种方法 一是采用holdon off 命令 在同一个图形窗口中绘制新的图形叠加在原有的图形上 二是采用subplot n m k 命令 将图形窗口分割成几个小窗口 在每个窗口中画出一个图形 holdon off 保持绘图命令 subplot n m k 将图形窗口分成n行m列个格子 在第k个格子绘图 格子按从上到下依行计数 67 图形的比较显示 续 例8 在同一个窗口中 使用两次plot函数绘制两条曲线 x 0 0 2 12 plot x sin x holdon plot x cos x 68 图形的比较显示 续 69 图形的比较显示 续 例9 把当前窗口分割成四个区域 绘制四条函数曲线 f3 x 0 0 05 8 y1 2 sin x y2 2 cos x y3 sin 2 x y4 cos 2 x subplot 2 2 1 plot x y1 title 2sinx 70 图形的比较显示 续 subplot 2 2 2 plot x y2 title 2cosx subplot 2 2 3 plot x y3 title sin2x subplot 2 2 4 plot x y4 title cos2x 71 图形的比较显示 续 72 二 三维图形的绘制 1 和二维图形相对应 MATLAB提供了一个三维曲线绘制命令plot3 它的应用和plot类似 只是多了z方向的数据 例10 绘制一条三维曲线 clear clc z 0 pi 50 10 pi x sin z y cos z plot3 x y z 73 三维图形 续 74 三维图形 续 2 绘制三维曲面的命令则有mesh x y z 或surf x y z 它们的区别在于 前者绘制出的是一个用网格近似的曲面 后者绘制出的是一个真正表面图 例11 绘制多峰函数图 z peaks 40 mesh z surf z peaks称为多峰函数 常用于三维曲面的演示 75 三维图形 续 76 三维图形 续 77 1 及时清空工作空间在每一个程序的开头加上clear命令 以清空内存中的自定义变量 2 注释为了增强程序的可读性 程序中要注意编写注释 3 优化程序 1 直接使用矩阵与向量 避免使用循环 2 不显示不必要的中间结果 3 对大型矩阵预先定义维数 4 优先使用内部函数 5 充分利用其他高级语言 6 设置断点调试 7 测试程序执行时间tic用于启动秒表 toc用于停止秒表 tic和toc返回的是变量elapsed time 4MATLAB编程技巧 78 MATLAB编程技巧 例1 建立一个100 100的魔方矩阵 并测定运行时间 解 tic 开始计时 A magic 100 运行程序 magic是魔方矩阵函数 toc 结束计时 显示所耗时间 在命令窗口观察运行结果为 elapsed time 109 09404 注意格式5 利用帮助和演示6 特别提示 自定义变量和函数的名称不能和MATLAB命令及内部函数重名 MATLAB不支持汉字 汉字不能出现在变量名和函数名中 MATLAB对大小写敏感 79
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!