




已阅读5页,还剩49页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第2章MATLAB基本操作命令 MATLAB MATLAB基本操作命令 2 1变量及其赋值 2 2矩阵和数组的基本运算 2 3矩阵和数组的关系 逻辑运算 MATLAB 标识符是标量名 常量名 函数名和文件名的字符串的总称 在MTALAB中 变量与常量的标识符最长允许19个字符 函数和文件名则通常不超过8个字符 受文件管理器的限制 但MTALAB7 0以后版本的许多函数和文件名就超过了8个字符 因此 要求安装在能管理长文件名的操作的系统中 这些字符包括全部的英汉字母 大小写共52个 阿拉伯数字和下划线等符号 标识符中第1个字符必须是英文字母 MTALAB对大小写敏感 CaseSensitive 即它把A和a看作两个不同的字符 这是默认状态 如果要不区分大小写 应键入命令casesenoff 若再键入casesenon 则恢复默认状态 2 1变量及其赋值 2 1 1标识符号 MATLAB 2 1 2矩阵及其元素赋值 赋值就是把数赋予代表常量或变量的标识符 MATLAB中的变量或常量都代表矩阵 标量应看作1 1阶的矩阵 赋值语句的一般形式为 变量 表达式 或数 2 1变量及其赋值 MATLAB 例如输入语句a 123 456 789 则显示结果为a 123456789元素也可以用表达式代替 如输入x 1 3sqrt 3 1 2 3 5 4 结果为x 1 30001 73214 8000可以看出 矩阵的值放在方括号 中 同一行中个元素之间以逗号或空格分开 不同的行则以分号隔开 语句的结尾可用回车符或逗号 此时会立即显示运算结果 如果不希望显示结果 就以分号结尾 此时运算仍然执行 只是不显示 变量及其赋值 MATLAB 变量的元素用圆括号 中的数字 也称为下标 来注明 一维矩阵 也称数组或向量 中的元素用一个下标表示 二维矩阵可有两个下标数 以逗号分开 三维和更高维的矩阵 可有三个或更多下标 用户可以单独给元素赋值 如 x 2 1 7321 a 2 3 6等 如果赋值元素的下标超出了原来矩阵的大小 矩阵的行列会自动扩展 如 变量及其赋值 MATLAB x 5 abs x 1 得x 1 30001 73214 800001 3000又如键入a 4 3 6 5得a 1 00002 00003 00004 00005 00006 00007 00008 00009 0000006 5000可见 跳空的元素x 4 a 4 1 a 4 2 被自动赋值0 这种自动扩展维数的功能只是用于赋值语句 在其它语句中若出现超维调用的情况 系统将给出出错提示 变量及其赋值 MATLAB 给全行赋值 可用冒号 例如 给a的第5行赋值 键入a 5 1 2 3 得a 1 00002 00003 00004 00005 00006 00007 00008 00009 0000006 50001 00002 00003 0000 变量及其赋值 MATLAB 把a的第2 4行及第1 3列交点上的元素取出 构成一个新矩阵b 可键入b a 2 4 1 3 得b 4 00006 000006 5000要抽去a中的第2 4 5行 可利用空距阵 的概念 键入a 2 4 5 得a 123789注意 空距阵 是指没有元素的矩阵 对任何一个矩阵赋值 就是使它的元素都消失掉 这完全不同于 零矩阵 后则是元素存在 只是其数值为零而已 可以看出 空距阵是使矩阵减缩时不可缺少的概念 变量及其赋值 MATLAB 在一般的数学运算软件中 复数属于一般的变量 在MATLAB中 将复数作为一个整体处理 而不是像其他程序语言那样把实部和虚部分开处理 MATLAB的每一个元素都可以是复数 实数是复数的特例 复数的虚数部分用i或j表示 这是在MATLAB启动时就在内部设定的 2 1 3复数 MATLAB 例如 键入c 3 2 5i得c 3 0000 2 5000iMATLAB中所有的运算符和函数都对复数有效 例如 键入f sqrt 1 2i 得f 1 2720 0 7862i 复数的输入方式 显示如何在MATLAB中输入复数 z1 8 10i 直接按照直角坐标的方式输入z2 12 6 i 运算符构成的直角坐标的方式输入z3 25 exp i pi 3 运算符构成的极坐标方式输入A z1 z2z3 MATLAB 复数z1的输入方式是直接按照书面习惯完成的 在这种书写格式中10i是一个完整的虚数部分 因此在10和i之间不允许有任何空格 这种书写格式符合大家的习惯 但仅限于使用在复数标量中 不能使用在复数矩阵中 Z2将虚数部分用 号相连 这种方式适用于复数矩阵 如果可以使用第一种书写格式 尽量使用第一种 因为这种格式比复数z2的输入方式运算速度要快 MATLAB 复数矩阵及运算 计算复数矩阵c的实部 虚部 模和相角 Real real c Imag imag c Mag abs c Phase angle c 180 pi MATLAB 复数的表达式同样也能作为赋值语句 再来看复数矩阵z的转置 共轭运算 运算符 表示把矩阵做共轭转置 即把它的行列互换 同时 把个元素的虚部符号取反 把个元素的虚部取反的函数命令为conj 即只取共轭 所以 若求转置而不要共轭 就把conj和 结合起来完成 键入w z 共轭转置 u conj z 共轭 v conj z 转置 得w 1 0000 2 0000i5 0000 6 0000i3 0000 4 0000i7 0000 8 0000iu 1 0000 2 0000i3 0000 4 0000i5 0000 6 0000i7 0000 8 0000iv 1 0000 2 0000i5 0000 6 0000i3 0000 4 0000i7 0000 8 0000i MATLAB 为了方便给大量元素赋值 MATLAB提供了一些基本矩阵 魔方矩阵magic n 的特点是 其元素由1到n2的自然数组成 每行 每列及两对角线上的元素之和均等于 单位矩阵eyes n 是n n阶的方阵 其对角线上的元素为1 其余的元素均等于0 2 1 4基本赋值矩阵 MATLAB 键入f1 ones 3 2 f2 zeros 2 3 f3 magic 3 f4 eye 2 得全1的矩阵f1 111111 MATLAB 全0的矩阵f2 000000魔方矩阵f3 816357492单位矩阵f4 1001 MATLAB 线性分割函数linspace a b n 在a与b之间均匀地产生n个点值 形成n维向量 如 键入f5 linspace 0 1 5 得f5 00 25000 50000 75001 0000 MATLAB 表2 1基本矩阵和矩阵运算 MATLAB 2 1变量及其赋值 MATLAB 2 2矩阵和数组的基本运算 2 2 1矩阵和数组的四则运算1 矩阵算术运算矩阵算术运算的书写格式与普通的算术相同 包括加 减 乘 除 也可用括号来规定运算的优先次序 但它的乘法定义与普通数 标量 不同 相应地 作为乘法逆运算的除法也不同 由左除 和右除 两种符号 MATLAB 两矩阵的相加 减 就是其对应元素的相加 减 因此 要求相加的两矩阵的阶数必须相同 检查矩阵阶数的MATLAB语句是size 例如 键入 n m size fb2 得n 6m 5 6行5列 MATLAB 如果阶数检验不合格 则显示出错 当两个相加矩阵中有一个是标量时 MATLAB承认算式有效 它自动把该标量扩展成同阶等元素矩阵 与另一矩阵相加 例如 键入X 101 Y X 1得Y 2 10 矩阵和数组的基本运算 MATLAB 现在来看矩阵的乘法 X Y 这个式子可读成X左乘Y 现在让X右乘Y 于是有Y X X左乘和右乘Y 所得的结果是完全不同的 只有单位矩阵例外 单位矩阵乘以任何矩阵A 其阶数为nA mA 时 不管是左乘还是右乘 积仍等于该矩阵 即eye nA A AA eye mA A 矩阵的乘法 2020 3 15 27 可编辑 MATLAB 矩阵左右除 在Matlab中有两种矩阵除法符号 即左除和 即右除 如果A矩阵是非奇异方阵 则A B是A的逆矩阵乘B 即inv A B 而B A是B乘A的逆矩阵 即B inv A 具体计算时可不用逆矩阵而直接计算 MATLAB 通常 x A B就是A x B的解 x B A就是x A B的解 MATLAB 下面来看矩阵左右除的一些示例 设A 1 2 3 4 5 6 B 2 4 0 1 3 5 D 1 4 7 8 5 2 3 6 0 其乘除的结果列于表2 2中 MATLAB 表2 2矩阵乘除法示例 MATLAB 矩阵除法可以用来方便地解线性方程组 例如要求下列方程组的解 此式可写成矩阵形式Ax B 求解的MATLAB程序为A 6 3 4 2 5 7 8 4 3 B 3 4 7 x A B得x 0 60007 0000 5 4000 矩阵和数组的基本运算 MATLAB 在matlab中矩阵的左除 是一种自适应算法 对于有唯一解的线性方程组求出精确解对于超定方程线性方程组求出最小二乘解对于欠定线性方程组求其基本解 MATLAB 2 数组运算数组和矩阵的加减运算没有区别 但要注意相加减的两个矩阵必须有相同的阶数 除非其中一个是标量 即常数 数组的乘法运算用符号 表示 A B两数组必须具有相同的阶数 则A B表示A和B中对应元素之间相乘 数组的除法运算用符号 或 表示 两者的结果相同 A与B必须具有相同的阶数 A B表示B中的元素分别除以A中的对应元素 这与矩阵的左除 右除是不一样 只是两数组对应元素间的运算 MATLAB 2 2 2矩阵和数组的乘方和幂次函数 MATLAB的运算符 和 指数函数expm 对数函数logm和开方函数sqrtm是对矩阵进行的 即把矩阵作为一个整体来运算 除此之外 其他MATLAB函数都是对矩阵中的元素分别进行的 英文直译为数组运算 ArrayOperations 较准确的意义应为 元素群的运算 表2 3给出了一些语句及其结果 注意sqrtm与sqrt expm与exp logm与log的不同 也即矩阵整体运算和数组运算的不同 数组幂运算是对其元素逐一进行幂运算 注 表中 MATLAB 矩阵和数组的基本运算 表2 3矩阵整体运算的例子及其结果 MATLAB 矩阵和数组的基本运算 MATLAB 2 2 3矩阵变换与提取 在做矩阵运算时 往往需要提取其中的某些特殊结构的元素 来组成新的矩阵 有时则要改变矩阵的排列 除了前面讲过的提取行 列和将行列转置的语句之外 MATLAB还提供了一些改变矩阵结构的函数 这些函数列于表2 4中 注 表中 2 2矩阵和数组的基本运算 MATLAB 表2 4矩阵结构形式提取和变换语句 矩阵和数组的基本运算 MATLAB 矩阵和数组的基本运算 MATLAB 2 2 4矩阵和数组函数 MATLAB函数大部分都适于做数组运算 只有专门说明的几个除外 如 运算符和指数函数expm 对数函数logm 开方函数sqrtm 表2 5基本函数库中的常用函数都可用于数组运算 即其自变量都可以是任意阶的矩阵 表2 5基本函数库 elfun 未标注输入变元的为单输入输出函数 2 2矩阵和数组的基本运算 MATLAB 矩阵和数组的基本运算 MATLAB 矩阵和数组的基本运算 MATLAB 举例说明数组运算的优越性 例如 要求列出一个三角函数表 在MATALB中只要两个语句 键入x 0 0 1 pi 4 x sin x cos x tan x 第一条语句吧数组x赋值 经转置后成为一个列向量 因为sin cos tan函数都对元素群有效 得出的都是同阶的列向量 第二条语句把4个列向量组成一个矩阵 并进行显示 得ans 001 000000 10000 09980 99500 10030 20000 19870 98010 20270 30000 29550 95530 30930 40000 38940 92110 42280 50000 47940 87760 54630 60000 56460 82530 68410 70000 64420 76480 8423第一列是x 以下各列依次是sin x cos x tan x 矩阵和数组的基本运算 MATLAB 2 3矩阵和数组的关系 逻辑运算 2 3 1关系运算所谓的关系运算是指两个元素之间的数值比较 MATLAB提供了6种关系运算 其结果返回 1 或 0 表示运算关系是否成立 0表示关系 假 即它不成立 1表示该关系为 真 即该关系式是正确 关系运算符见表2 6 表2 6关系运算符 MATLAB MATLAB中的关系运算都是用于矩阵 他对矩阵的各个元素进行元素群运算 因此两个相比较的矩阵必须有相同的阶数 输出结果也是同阶矩阵 例如矩阵a和b均为1 3阶矩阵 使用关系运算符对对应元素进行比较 在命令窗口输入两矩阵 然后比较两矩阵间对应元素的关系 a 0 1 2 b 3 1 2 a a b 2 3矩阵和数组的关系 逻辑运算 MATLAB ans 011 a bans 100 a bans 101 a bans 001 a bans 110关系运算符通常用于程序的流程控制中 常与if while for swith等控制命令联合使用 2 3矩阵和数组的关系 逻辑运算 MATLAB 2 3 2逻辑运算在MATLAB中 有3种逻辑运算符用于逻辑运算 它们是 与 运算符 或AND 或 运算符 或OR 非 运算符 或NOT 其中 和 是对同阶矩阵中的对应元素进行
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国网店装修项目创业计划书
- 中国红薯种植项目创业计划书
- 中国家庭理疗设备项目创业计划书
- 中国可信计算机项目创业计划书
- 湖南饲料项目创业计划书
- 安全教育测试题及答案
- 乐高面试题及答案
- 2025版权转让合同(稿酬版)
- 2025【合同范本】贷款担保合同范本与订立条件
- 2025企业租赁车辆合同模板
- 【MOOC】《算法设计与分析》(东北大学) 中国大学慕课答案
- 18《威尼斯的小艇》说课稿-2023-2024学年统编版语文五年级下册
- 2025年山东省济南新旧动能转换先行区管委会招聘50人历年高频重点提升(共500题)附带答案详解
- 社交技巧讲座模板
- 大学《微观经济学》课件《微观经济学》
- MRP生产管理技术(企业培训课件)
- 2024年西藏初中学业水平考试生物卷试题真题(含答案解析)
- 妇科综合治疗仪
- 上海市2019年中考化学真题(含答案)
- 2024年福建高考真题化学试题(解析版)
- 消防宣传月全民消防生命至上消防安全教育课件
评论
0/150
提交评论