MATLAB经典基础教程2.ppt_第1页
MATLAB经典基础教程2.ppt_第2页
MATLAB经典基础教程2.ppt_第3页
MATLAB经典基础教程2.ppt_第4页
MATLAB经典基础教程2.ppt_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

第2章MATLAB数值计算 Mathematics 第2章MATLAB数值计算 2 1变量和数据2 2矩阵和数组2 3稀疏矩阵2 4多项式2 5元胞数组和结构数组2 6数据分析 2 1变量和数据2 1 1数据类型 MATLAB7 3定义了15种基本的数据类型 包括整型 浮点型 字符型和逻辑型等 2 1 2数据 1 数值的表达方式数值采用十进制表示 可以用带小数点的形式直接表示 也可以用科学计数法 数值的表示范围是10 309 10309 例如 2 5 67 2 56e 56 表示2 56 10 56 4 68e204 表示4 68 10204 2 矩阵和数组的概念 标量 Scalar 是指1 1的矩阵 即只含一个数的矩阵 向量 Vector 是指1 n或n 1的矩阵 即只有一行或者一列的矩阵 矩阵 Matrix 是一个矩形的数组 即二维数组 其中向量和标量都是矩阵的特例 0 0矩阵为空矩阵 数组 Array 是指n维的数组 为矩阵的延伸 其中矩阵和向量都是数组的特例 3 复数 Complex 复数由实部和虚部组成 MATLAB用特殊变量 i 和 j 表示虚数的单位 z a b i或z a b jz a bi或z a bj 当b为常量时 z r exp i theta 得出一个复数的实部 虚部 幅值和相角 a real z 计算实部b imag z 计算虚部r abs z 计算幅值t angle z 计算相角 2 1 3变量 Variables 1 变量的命名规则变量名区分字母的大小写 变量名不能超过63个字符 第63个字符后的字符被忽略 变量名必须以字母开头 变量名的组成可以是任意字母 数字或者下划线 但不能含有空格和标点符号 如 等 关键字 如if while等 不能作为变量名 2 特殊变量 2 2矩阵和数组2 2 1矩阵输入 1 矩阵元素应用方括号 括住 2 每行内的元素间用逗号或空格隔开 3 行与行之间用分号或回车键隔开 4 元素可以是数值或表达式 矩阵表示应遵循以下基本常规 1 通过显式元素列表输入矩阵例如 c 12 34 53 2 表示构成矩阵 分号分隔行 空格分隔元素2 通过语句生成矩阵 1 使用from step to方式生成向量from step和to分别表示开始值 步长和结束值 当step省略时则默认为step 1 2 使用linspace和logspace函数linspace a b n a b n分别表示开始值 结束值和元素个数 n如果省略则默认值为100 logspace a b n a b n分别表示开始值10a 结束值10b和数据个数 n 如果省略则默认值为50 3 由矩阵生成函数产生特殊矩阵 1 矩阵的下标 Subscript 1 全下标方式一个m n的a矩阵的第i行第j列的元素表示为a i j 2 单下标方式以m n的矩阵a为例 若元素a i j 则对应的 单下标 为s j 1 m i 2 2 2矩阵元素 a 1 2 a 4 a 2 3 a 8 2 子矩阵块的产生 Multipleelements 子矩阵是从对应矩阵中取出一部分元素构成的 子矩阵也可以利用逻辑矩阵 logicalmatrix 来标识 3 矩阵的赋值矩阵的赋值有 全下标方式 单下标方式和全元素方式 4 矩阵元素的删除可以对矩阵的单个元素 子矩阵块和所有元素赋值为空矩阵进行删除操作 就是简单地将其赋值为空矩阵 用 表示 EX a 3 删除一列元素a 1 删除一个元素 矩阵变为向量a 删除所有元素为空矩阵 5 生成大矩阵 ConcatenatingMatrices 可以通过方括号 实现将小矩阵生成一个较大的矩阵 例 a a 与 a a 的区别6 矩阵的翻转可以通过矩阵翻转函数对矩阵进行翻转 2 2 3字符串 CharacterArrays 一个字符串由多个字符组成 用单引号 来界定 字符串是按行向量进行存储的 1 字符串占用的字节每一个字符会占用两个字节 str2 Ilike MATLAB 重复单引号来输入含有单引号的字符串2 字符串函数length 用来计算字符串的长度 double 用来查看字符串的ASCII码储存内容 char 用来将ASCII码转换成字符串形式 class或ischar 用来判断某一个变量是否为字符串 3 使用一个变量来储存多个字符串 1 多个字符串组成一个新的行向量将多个字符串变量直接用 连接 2 使用二维字符数组每个字符串放在一行构成二维字符 3 使用str2mat strvcat和char函数 总是按最长的设置 不足的末尾用空格补齐 例如 str6 str2mat str1 str2 str3 5 执行字符串使用eval命令直接 执行 某一字符串 EX str9 a 2 5 eval str9 执行字符串a 106 显示字符串直接使用disp命令显示字符串 disp 请输入2 2的矩阵a 2 2 4矩阵和数组运算 1 矩阵运算的函数det X 计算方阵行列式rank X 求矩阵的秩 inv X 求矩阵的逆阵 inv X X 1 v d eig X 计算矩阵特征值和特征向量diag X 产生X矩阵的对角阵 2 矩阵和数组的算术运算 1 矩阵和数组的加 addition 减运算 subtraction 矩阵加 减运算表达式分别为 A B A B 2 矩阵和数组的乘法运算 muliplication 矩阵的乘法运算表达式为 A B 矩阵A的列数必须等于矩阵B的行数 除非其中有一个是标量 数组的乘法运算表达式为 A B 表示数组A和B中的对应元素相乘 A和B数组必须大小相同 除非其中有一个是标量 3 矩阵和数组的除法 division 矩阵的除法运算表达式有两种 A B 和 A B 运算符为 和 分别表示左除和右除 X A B是X A B的解 A B A B 1 X A B是方程A X B的解 A B A 1 B 数组的除法运算表达式有两种 A B 和 A B 表示数组相应元素左除和右除 A和B数组必须大小相同 除非其中有一个是标量 例2 12 已知方程组 用矩阵除法来解线性方程组 将该方程变换成AX B的形式 A 2 13 31 5 4 11 B 5 5 9 X A B X A BX 2 10 4 矩阵和数组的乘方 power 矩阵乘方的运算表达式为 A B 其中A可以是矩阵或标量 数组乘方的运算表达式 A B 3 矩阵和数组的转置 transpose 矩阵的转置运算表示为A 如果矩阵A是复数矩阵 则为共轭转置 数组的转置运算表示为A 如果数组A是复数数组 则不是共轭转置 4 矩阵和数组的数学函数MATLAB中exp sqrt sin cos等数学函数可以直接使用在数组上 这些运算是分别对数组的每个元素进行运算 expm sqrtm logm等数学函数用于矩阵运算 比较 round fix floor ceil比较 sqrt sqrtm 5 关系操作和逻辑操作 1 关系运算 relationaloperators 关系操作符有 等于 不等于 关系运算规则 如果两个标量 则结果为真 1 或假 0 如果比较的两个数组变量 则必须大小相同 数组的元素为0或1 如果比较一个数组和一个标量 则把数组的每个元素分别与标量比较 仅对变量的实部进行比较 而 和 则同时对实部和虚部进行比较 2 逻辑运算 LogicalOperators 逻辑操作符有 and or not 和xor 先决与 先决或 例2 16 数组的关系和逻辑运算 实现半波整流 6 运算符优先级 在MATLAB中各种运算符的优先级如下 矩阵转置 矩阵幂 和 数组转置 数组幂 逻辑非 乘 左除 右除 和 点乘 点左除 点右除 加减 冒号 逻辑与 逻辑或 先决与 先决或 2 2 5多维数组 MultidementionalArrays 三维数组用三个下标表示 在二维数组的基础上增加了一维称为页 三维数组可以看成 长方体 三维数组的元素存放遵循 单下标 的编号规则 第一页第一列下接该页的第二列 下面再接第三列 依此类推 第一页的最后列下面接第二页第一列 多维数组的创建 1 通过 全下标 元素赋值方式创建 2 由函数ones zeros rand和randn直接创建 3 利用函数生成数组将一系列数组沿着特定的维连接成一个多维数组 cat 维 p1 p2 按指定行列数放置模块数组生成多维数组repmat p 在总元素的数目不变的前提下重新确定数组的行列数来重组数组 reshape p 2 4多项式 polynomial 多项式按降幂排列为 p x anxn an 1xn 1 a1x a0用行向量表示为 p anan 1 a1a0 即把多项式的各项系数按降幂次序排放成行向量 如果多项式中缺某幂次项 则用零代替该幂次项的系数 例如 x3 21x2 20 x p1 121200 2 4 1多项式的求值 求根和部分分式 1 多项式求值函数polyval p s 可以用来计算多项式在给定变量时的值 2 多项式求根Roots 用来计算多项式的根 Poly 根据多项式的根来计算多项式的系数 3 特征多项式函数poly计算矩阵的特征多项式的系数 特征值用roots函数来计算 4 部分分式展开用residue函数来实现将分式表达式进行多项式的部分分式展开 r p k residue b a b a residue r p k 例如 展开 2 4 2多项式的乘除和微积分运算 1 多项式的乘法和除法多项式的乘法和除法运算分别使用函数conv和deconv来实现 这两个函数也可以对应于卷积和解卷运算 p conv pl p2 q r deconv v u 例如 2 多项式的微分和积分多项式的微分由polyder函数实现 可以用 p length p 1 1 k 的方法来完成积分 k为常数 2 4 3多项式拟合和插值 1 多项式拟合拟合的准则是最小二乘法 找出使最小的f x p polyfit x y n 2 插值运算 1 一维插值一维插值是指对一个自变量的插值 interp1函数是用来进行一维插值的 yi interp1 x y xi method 2 二维插值二维插值是指对两个自变量的插值 zi interp2 x y z xi yi method 2 5元胞数组和结构数组2 5 1元胞数组 CellArray 元胞数组中的基本组成是元胞 每一个元胞可以看成是一个单元 Cell 用来存放各种不同类型的数据 如矩阵 多维数组 字符串 元胞数组以及下一小节要介绍的结构数组 使用 EX A ThisisthefirstCell 12 34 eye 3 Tom Jane 2 5 2结构数组 结构数组的基本组成是结构 Structure 每一个结构都包含多个域 Fields 结构数组只有划分了域以后才能使用 例如多个图形对象构成结构数组 一个图形对象就是一个结构 一个属性 Name Color Position

温馨提示

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

评论

0/150

提交评论