MATLAB快速入门ppt课件.ppt_第1页
MATLAB快速入门ppt课件.ppt_第2页
MATLAB快速入门ppt课件.ppt_第3页
MATLAB快速入门ppt课件.ppt_第4页
MATLAB快速入门ppt课件.ppt_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

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

文档简介

MATLAB快速入门 1 21 Matlab简介 Matlab提供了强大的科学计算 灵活的程序设计流程 高质量的图形可视化与界面设计等功能 被广泛应用于科学计算 控制系统 信息处理等领域的分析 仿真和毕业设计 Matlab功能强大 简单易学 编程效率高 深受广大科技工作者的欢迎 Matlab是一种广泛应用于工程计算及数值分析领域的新型高级语言 现已成为国际公认的最优秀的工程应用开发环境 2 21 Matlab具有很强的数值计算功能 Matlab以矩阵作为数据操作的基本单位 但无需预先指定矩阵维数 动态定维 提供十分丰富的数值计算函数 方便计算 提高效率 简便易学 Matlab命令与数学中的符号 公式非常接近 可读性强 容易掌握 Matlab MatrixLaboratry 3 21 Matlab的绘图功能强大 Matlab提供丰富的绘图命令 很方便实现数据的可视化 Matlab的特点与功能 Matlab符号计算功能强大 Matlab丰富的工具箱 toolbox 根据专门领域中的特殊需要而设计的各种可选工具箱 4 21 Matlab的基本用法 注 在任何时候 只要按ctrl c MATLAB将停止运行的所有工作 5 21 Matlab的工作界面 命令窗口 当前工作目录 当前工作空间 输入命令的历史记录 命令提示符 6 21 Matlab的命令窗口 cos 0 2 10 2 4iA 123 246 369 det A t 0 pi 100 2 pi y sin t plot t y r 7 21 变量命名原则 Matlab变量 8 21 系统预定义变量 Matlab变量 pi圆周率 inf Inf无穷大 nan NaNNot a Number 一个不定值 如0 0 eps浮点运算相对精度 特殊变量ans i j虚部单位 即 应尽量避免给系统预定义变量重新赋值 9 21 数与算术表达式 Matlab数值运算 浮点数表示范围为 10 308 10308 10 21 数学运算符 加法 Matlab数值运算 减法 乘法 和 除法 右除和左除 幂运算 点运算 11 21 常用数学函数 12 21 常用数学函数 13 21 简单实例 练习 求29的自然对数和无理数e的值 14 21 矩阵的基础操作 15 矩阵的直接输入 矩阵用方括号 括起 例 A 123 456 789 矩阵同一行中的元素之间用空格或逗号分隔 矩阵行与行之间用分号分开 直接输入法中 分号可以用回车代替 矩阵 Matlab的操作对象是矩阵 16 21 矩阵下标 17 21 单个元素的引用 例 A 2 3 矩阵元素的引用 18 21 矩阵操作 提取矩阵的部分元素 冒号运算符 A i j A的第i行第j列元素 A k A的第k列A k A的第k行 A k m A的第k到第m列组成的子矩阵A end end A的最后一行最后一列 如何获得由A的第一 三行和第一 二列组成的子矩阵 19 21 矩阵的各种处理 A 2 3 查询第2行第3列所对应的元素A 12 查询第12个元素A 914 1015 思考之A 4 查询第4列元素A 4 查询第4行元素A end 最后一行元素A find A 5 查询大于5的元素A 2 3 5 重新赋值第2行3列元素为5 20 21 向量与矩阵的生成 向量与矩阵的生成 从矩阵中抽取行或列生成线性等分向量 x linspace a b n x linspace 0 1 5 x2 a h h b h 2倍的点x4 a h 2 h b h 2 4倍的点 21 21 大矩阵可以把小矩阵作为其元素 矩阵元素赋值 如何在原矩阵的右边添加一列 已知矩阵A和行向量b 如何得到矩阵 22 21 常见矩阵生成函数 23 21 矩阵操作 查看矩阵的大小 size size A 列出矩阵A的行数和列数 size A 1 返回矩阵A的行数 size A 2 返回矩阵A的列数 length x 返回向量X的长度 length A 等价于max size A 24 21 逆矩阵与行列式计算 矩阵的逆矩阵 inv A 矩阵的行列式 det A 要求A为方阵 矩阵的秩 rank A 例 A 123 456 235 A1 inv A d det A1 rank A1 25 21 矩阵的数组运算 数组运算 对应元素进行运算 点与算术运算符之间不能有空格 数组运算包括 点乘 点除 点幂 相应的数组运算符为 和 26 21 数与数组的点幂 x y 1 4 2 5 3 6 1 32 729 x 2 1 2 2 2 3 2 1 4 9 2 x 例 x 123 y 456 27 21 矩阵的 除法 矩阵的除法 右除和左除 若A可逆方阵 则 A BA的逆左乘Binv A B B AA的逆右乘BB inv A X A BA X BX B AX A B 通常 矩阵除法可以理解为 当A和B行数相等时即可进行左除当A和B列数相等时即可进行右除 28 21 向量特殊运算介绍 例 A magic 3 或A 1 5 运算对向量或矩阵都适用B mean A C sum A 29 21 矩阵操作 矩阵的上 下三角阵 对角阵 triu A k uppertriangularpart上三角tril A k lowertriangularpart下三角 矩阵的旋转 fliplr A 左右旋转 flipud A 上下旋转 rot90 A 逆时针旋转90度 rot90 A k 逆时针旋转k 90度 30 21 变量的存储 存储当前工作空间中的变量 save将所有变量存入文件matlab mat savemydata将所有变量存入指定文件mydata mat 存储指定的变量 savemydata mat将所有变量存入文件mydata mat save文件名变量名列表 例 savemydataAxz 变量名列表中各变量之间用空格分隔 31 21 变量的读取 清除当前工作空间中的变量 clear清除当前工作空间中的所有变量 clearAx清除指定的变量 32 21 输出格式 Matlab的输出 Matlab以双精度执行所有的运算 运算结果可以在屏幕上输出 同时赋给指定变量 若无指定变量 则系统会自动将结果赋给变量 ans File菜单 选择Preferences菜单项 可以设置显示格式Matlab中数的输出格式可以通过format命令指定 format只改变变量的输出格式 但不会影响变量的值 33 21 Matlab帮助系统 例 helpeighelpsqrt 例 doceig 34 21 基础编程 35 编程基础 36 21 用Matlab语言编写的程序称为M文件 M文件是由若干Matlab命令组合在一起构成的 它可以完成某些操作 也可以实现某种算法 事实上 Matlab提供的内部函数以及各种工具箱 都是利用Matlab语言开发的M文件 用户也可以结合自己的工作需要 开发自己的程序或工具箱 M文件 M文件以 m为扩展名 37 21 M文件是一个文本文件 可以用任何文本编辑器来建立和编辑 通常使用Matlab自带的M文件编辑器 M文件的建立与打开 38 21 程序控制结构有三种 顺序结构 选择结构和循环结构 M文件控制流 选择结构是根据给定的条件成立或不成立 分别执行不同的语句 Matlab用于实现选择结构的语句有if语句和switch语句 39 21 关系运算 比较大小 如果结论是真则返回1 否则返回0 注意 与 的区别 关系操作符能用来比较两个同样大小的数组 或用来比较一个数组和一个标量 在后一种情况 标量和数组中的每一个元素相比较 比较结果与数组大小一样 关系运算符 40 21 逻辑运算 逻辑运算符 A B等价于and A B A B等价于or A B A等价于not A 41 21 数据的输入 input 数据输入input 42 21 disp X 输出变量X的值 可以是数值矩阵或字符串 B 123 456 789 disp B 数据输出disp 数据的输出 disp 43 21 单分支结构 ifexpression 条件 statements 语句组 end if条件语句 44 21 数据输出fprintf format中还可以使用一些特殊格式 如 n 换行 t 制表符 b 退格 反斜杆 百分号 45 21 function out1 out2 函数名 in1 in2 注释说明部分 可选 函数体语句 必须 第一行为引导行 表示该M文件是函数文件函数名的命名规则与变量名相同 必须以字母开头 当输出行参多于一个时 用方括号括起来函数必须是一个单独的M文件函数文件名必须与函数名一致以百分号开始的语句为注释语句 函数文件 函数文件由function语句引导 46 21 函数文件举例 myfun m function x1 x2 myfun a b c temp sqrt b 2 4 a c x1 b temp 2 a x2 b temp 2 a 47 21 函数调用的一般格式 输出实参列表 函数名 输入实参列表 函数调用 48 21 子函数 functionavg fun x 主函数n length x avg mean x n functiona mean x n 子函数a sum x n 49 21 M文件的编辑 进入MATLAB的Editor Debugger窗口来编辑程序在编辑环境中 文字的不同颜色显示表明文字的不同属性 绿色 注解 黑色 程序主体 红色 属性值的设定 蓝色 控制流程 50 21 程序设计技术 程序出错主要为两类 1 格式错误 如缺 或 等 在运行时可检测出大多数该类错误 并指出错在哪一行 2 算法错误 逻辑上的错误 不易查找 遇到此类错误时需耐心 51 21 程序控制结构有三种 顺序结构 选择结构和循环结构 任何复杂的程序都由这三种基本结构组成 顺序结构 M文件控制流 52 21 选择结构是根据给定的条件成立或不成立 分别执行不同的语句 Matlab用于实现选择结构的语句有if语句和switch语句 选择结构 53 21 ifexpression1 条件1 statements1 语句组1 elseifexpression2 条件2 statements2 语句组2 elseifexpressionm 条件m statementsm 语句组m elsestatements 语句组 end 多分支结构 if条件语句 54 21 forvariable expressionstatement 循环体 end 循环变量 循环结构 whileexpression 条件 statement 循环体 end 55 21 for循环 练习 一个三位整数各位数字的立方和等于该数本身则称该数为水仙花数 输出全部水仙花数 56 21 循环语句可以嵌套使用 while循环 whileexpression 条件 statement 循环体 end 不能在for循环体内改变循环变量的值 为了提高代码的运行效率 应尽可能提高代码的向量化程度 避免for循环的使用 如果预先就知道循环的次数 则可以采用for循环 否则 如果预先无法确定循环的次数 则可以使用while循环 57 21 break和continue break语句用于终止循环的执行 即跳出最内层循环continue语句用于结束本次循环 进行下一次循环break和continue一般与if语句配合使用 其它流控制语句 58 21 根据表达式的不同取值 分别执行不同的语句 switchexpression 表达式 casevalue1 表达式1 statement1 语句组1 casevalue2 表达式2 statement2 语句组2 casevaluem 表达式m statementm 语句组m otherwisestatement 语句组 end switch语句 59 21 首先由计算机随机产生一个 1 100 之间的一个整数 然后由用户猜测所产生的这个数 根据用户猜测的情况给出不同的提示 如果猜测的数大于产生的数 则显示 High 小于则显示 Low 等于则显示 Youwon 同时退出游戏 用户最多有7次机会 上机作业 猜数游戏 60 21 Matlab绘图 61 Matlab二维作图 plot x y 基本形式 x y都是向量 则以x中元素为横坐标 y中元素为纵坐标作平面曲线 此时x y必须具有相同长度 x y都是矩阵 则将x的列和y中相应的列相组合 绘制多条平面曲线 此时x y必须具有相同的大小 x是向量 y是矩阵 若x的长度与y的行数相等 则将x与y中的各列相对应 绘制多条平面曲线 否则 若x的长度与y的列数相等 则将x与y中的各行相对应 绘制多条平面曲线 此时x的长度必须等于y的行数或列数 62 21 点和线的基本属性 图形的属性 属性可以全部指定 也可以只指定其中某几个排列顺序任意 63 21 同时绘制多个函数图像 plot x1 y1 s1 x2 y2 s2 xn yn sn 属性选项可以省略 等价于 holdonplot x1 y1 s1 plot x2 y2 s2 plot xn yn sn 64 21 图形的基本属性 helpplot查看 65 21 图形的其他

温馨提示

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

评论

0/150

提交评论