《Matlab软件介绍》PPT课件.ppt

上传人:sh****n 文档编号:8633204 上传时间:2020-03-30 格式:PPT 页数:40 大小:497.81KB
返回 下载 相关 举报
《Matlab软件介绍》PPT课件.ppt_第1页
第1页 / 共40页
《Matlab软件介绍》PPT课件.ppt_第2页
第2页 / 共40页
《Matlab软件介绍》PPT课件.ppt_第3页
第3页 / 共40页
点击查看更多>>
资源描述
1 第三讲Matlab软件介绍 2 3 1基本介绍 3 Matlab软件介绍 Matlab软件的创立 时间 1980年 首创者 CleveMoler博士 背景 在NewMexico大学讲授线性代数课程时 看到了用高级语言编程解决工程计算问题的诸多不便 因而构思开发了Matlab软件 MatrixLaboratory 矩阵实验室 4 工具 利用了他此前开发的LINPACK 线性代数软件包 和EISPACK 基于特征值计算的软件包 中可靠的子程序 用Fortran语言编写而成 集命令翻译 工程计算功能于一身 发展 80年代初 CleveMoler和JohnLittle采样C语言改写了Matlab的内核 不久 他们成立了Mathworks软件开发公司 并将Matlab正式推向市场 Matlab软件介绍 5 现在的Matlab新版本早已不只停留在工程计算功能上 它以矩阵运算为基础 把计算 可视化 程序设计融合到了一个简单易用的交互式工作环境中 在Matlab中 可以实现工程计算 算法研究 符号运算 建模和仿真 原型开发 数据分析及可视化 科学和工程绘图 应用程序设计 包括图形用户界面设计 等功能 Matlab软件介绍 6 正是凭借Matlab的这些突出优势 它现在已成为世界上应用最广泛的工程计算软件 在美国等发达国家的大学里 Matlab是一种必须掌握的基本工具 而在国外的研究设计单位和工业部门 更是研究和解决工程计算问题的一种标准软件 在国内也有越来越多的科学技术工作者参加到学习和使用这门语言的行列中来 在开发者和使用者的共同努力下 Matlab正在成为计算机应用软件中的一个新热点 Matlab软件介绍 7 Matlab软件系统的构成 Matlab软件 主包 Simulink 工具箱 Matlab软件介绍 8 一种基于矩阵 数组的高级语言 具有流程控制语句 函数 数据结构 输入输出 以及面向对象的程序设计特性 包括一些高级指令 用以实现二维和三维数据可视化 图像处理 还有一些低级指令 用来定制图形的显示以及建立应用程序的用户界面 提供了管理工作空间的变量和输入 输出数据的功能 并给用户提供了不同的工具用以开发 管理 调试M文件和应用程序 包含了如求和 正弦 余弦 复数运算之类的简单函数 也包含了矩阵转置 特征值 贝塞尔函数 快速傅立叶变换等复杂函数 向C和Fortran等其他高级语言进行交互的库 包括读写Matlab数据文件 主包 语言 工作环境 句柄图形 数学函数库 应用程序接口 API Matlab软件介绍 9 Simulink Simulink是用于动态系统仿真的交互式系统 Simulink允许用户在屏幕上绘制框图来模拟一个系统 并能够动态地控制该系统 Simulink采用鼠标驱动方式 能够处理线性 非线性 连续 离散 多变量以及多级系统 Matlab软件介绍 10 Matlab工具箱 工具箱是Matlab用来解决各个领域特定问题的函数库 它是开放式的 可以应用 也可以根据自己的需要进行扩展 工具箱为用户提供了丰富而实用的资源 内容涵盖了科学研究的许多门类 目前已有涉及数学 控制 通信 信号处理 图像处理 经济 地理等20多种工具箱投入应用 这些工具箱的作者都是相关领域中的顶级专家 从而确定了Matlab软件的权威性 Mathworks公司也一直致力于追踪各学科的最新进展 并及时推出相应功能的工具箱 Matlab软件介绍 11 MATLAB入门 一 变量与函数 二 数组 三 矩阵 四 MATLAB编程 五 实验作业 12 1 变量MATLAB中变量的命名规则是 1 变量名必须是不含空格的单个词 2 变量名区分大小写 3 变量名最多不超过19个字符 4 变量名必须以字母打头 之后可以是任意字母 数字或下划线 变量名中不允许使用标点符号 一 变量与函数 13 特殊变量表 14 2 数学运算符号及标点符号 1 MATLAB的每条命令后 若为逗号或无标点符号 则显示命令的结果 若命令后为分号 则禁止显示结果 2 后面所有文字为注释 3 表示续行 15 3 数学函数 16 MATLAB的内部函数是有限的 有时为了研究某一个函数的各种性态 需要为MATLAB定义新函数 为此必须编写函数文件 函数文件是文件名后缀为M的文件 这类文件的第一行必须是一特殊字符function开始 格式为 function因变量名 函数名 自变量名 函数值的获得必须通过具体的运算实现 并赋给因变量 4 M文件 M文件建立方法 1 在Matlab中 点 File New M file2 在编辑窗口中输入程序内容3 点 File Save 存盘 M文件名必须与函数名一致 Matlab的应用程序也以M文件保存 17 例 定义函数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 返回 18 x logspace first last n 创建从开始 到结束 有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个元素的行向量 19 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个元素 20 3 数组的方向前面例子中的数组都是一行数列 是行方向分布的 称之为行向量 数组也可以是列向量 它的数组操作和运算与行向量是一样的 唯一的区别是结果以列形式显示 产生列向量有两种方法 直接产生例c 1 2 3 4 转置产生例b 1234 c b 说明 以空格或逗号分隔的元素指定的是不同列的元素 而以分号分隔的元素指定了不同行的元素 21 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 22 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 返回 23 三 矩阵 逗号或空格用于分隔某一行的元素 分号用于区分不同的行 除了分号 在输入矩阵时 按Enter键也表示开始一新行 输入矩阵时 严格要求所有行有相同的列 例m 1234 5678 9101112 p 111122223333 1 矩阵的建立 24 特殊矩阵的建立 MATLAB matrix1 d eye m n 产生一个m行 n列的单位矩阵 c ones m n 产生一个m行 n列的元素全为1的矩阵 b zeros m n 产生一个m行 n列的零矩阵 a 产生一个空矩阵 当对一项操作无结果时 返回空矩阵 空矩阵的大小为零 25 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 26 2 矩阵 矩阵运算 1 元素对元素的运算 同数组 数组运算 3 矩阵的运算 1 标量 矩阵运算同标量 数组运算 MATLAB matrix3 2 矩阵运算 矩阵加法 A B矩阵乘法 A B方阵的行列式 det A 方阵的逆 inv A 方阵的特征值与特征向量 V D eig A 返回 27 关系与逻辑运算 1 关系操作符 28 2 逻辑运算符 29 1 for循环 允许一组命令以固定的和预定的次数重复forx array commands end在for和end语句之间的命令串 commands 按数组 array 中的每一列执行一次 在每一次迭代中 x被指定为数组的下一列 即在第n次循环中 x array n 控制流 MATLAB提供三种决策或控制流结构 for循环 while循环 if else end结构 这些结构经常包含大量的MATLAB命令 故经常出现在MATLAB程序中 而不是直接加在MATLAB提示符下 例对n 1 2 10 求xn 的值 MATLAB for1 30 whileexpression commands end只要在表达式 expression 里的所有元素为真 就执行while和end语句之间的命令串 commands 2 While循环与for循环以固定次数求一组命令相反 while循环以不定的次数求一组语句的值 MATLAB while1 例设银行年利率为11 25 将10000元钱存入银行 问多长时间会连本带利翻一番 31 3 If Else End结构 1 有一个选择的一般形式是 ifexpression commands end如果在表达式 expression 里的所有元素为真 就执行if和end语句之间的命令串 commands MATLAB fun1 先建立M文件fun1 m定义函数f x 再在Matlab命令窗口输入fun1 2 fun1 1 即可 32 2 有三个或更多的选择的一般形式是 if expression1 commands1 elseif expression2 commands2 elseif expression3 commands3 elseif else commands endendend end 33 先建立M文件fun2 m定义函数f x 再在Matlab命令窗口输入fun2 2 fun2 0 5 fun2 1 即可 MATLAB fun2 34 Matlab软件介绍 Matlab界面介绍 命令窗口 当前路径 内存变量空间 35 Matlab的指令输入有两种方式 一种是在命令窗口 Commandwindow 中输入指令 即单步执行方式 另一种是在文件编辑器中创建Matlab文件 即形成 M文件 Matlab软件介绍 36 但是在命令窗口中输入指令 存在着许多缺点 文本编辑功能差 不易进行复制 粘贴以及文件注释等功能 指令不能以文件的形式保存 关闭Matlab后所有指令就丢失了 在Matlab的文本编辑器中输入 并以一个自己取定的文件名保存 当当前路径设置为文件所保存的路径时 在命令窗口中输入此文件名 就可以执行该文件的所有语句 Matlab软件介绍 37 Matlab软件介绍 Matlab对矩阵的操作非常简单 就像是在草稿纸上运算一样 并且可以快速求出该矩阵的转置 对称 逆等等 38 Matlab软件介绍 Matlab是一种基于向量 数组 而不是标量的高级程序语言 因而从本质上就提供了对图像的支持 数字图像实际上就是一组有序的离散数据 使用Matlab可以对这些离散数据形成的矩阵进行一次性处理 39 Matlab软件介绍 图像处理工具箱是Matlab众多toolbox中的一种 内部集成许多命令语句 可以实现对图像的低级和高级的处理操作 如图像读入 显示 变换 运算 分析和特定区域处理等等 演示 40 对以下问题 编写M文件 1 用起泡法对10个数由小到大排序 即将相邻两个数比较 将小的调到前头 2 有一个矩阵 编程求出其最大值及其所处的位置 3 编程求 4 一球从100米高度自由落下 每次落地后反跳回原高度的一半 再落下 求它在第10次落地时 共经过多少米 第10次反弹有多高 5 有一函数 写一程序 输入自变量的值 输出函数值 实验作业
展开阅读全文
相关资源
相关搜索

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


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

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


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