版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第3讲讲 矩阵的运算矩阵的运算3.1 MATLAB运算运算3.2 矩阵分析矩阵分析3.3 字符串字符串 3.1 MATLAB运算运算3.1.1算术运算算术运算1. 基本算术运算基本算术运算 MATLAB的基本算术运算有:的基本算术运算有:(加加)、(减减)、*(乘乘)、/(右除右除)、(左除左除)、(乘方乘方)。 注意,运算是在矩阵意义下进行的,单注意,运算是在矩阵意义下进行的,单个数据的算术运算只是一种特例。个数据的算术运算只是一种特例。 (1) 矩阵加减运算矩阵加减运算 假定有两个矩阵假定有两个矩阵A和和B,则可以由,则可以由A+B和和A-B实现矩阵的加减运算。实现矩阵的加减运算。 运算
2、规则是:若运算规则是:若A和和B矩阵的维数相同,矩阵的维数相同,则可以执行矩阵的加减运算,则可以执行矩阵的加减运算,A和和B矩阵的相矩阵的相应元素相加减。如果应元素相加减。如果A与与B的维数不相同,则的维数不相同,则MATLAB将给出错误信息,提示用户两个矩将给出错误信息,提示用户两个矩阵的维数不匹配。阵的维数不匹配。 (2) 矩阵乘法矩阵乘法 假定有两个矩阵假定有两个矩阵A和和B,若,若A为为mn矩阵,矩阵,B为为np矩阵,则矩阵,则C=A*B为为mp矩阵。矩阵。(3) 矩阵除法矩阵除法 在在MATLAB中,有两种矩阵除法运算:中,有两种矩阵除法运算:和和/,分别表示左除和右除。,分别表示左
3、除和右除。 如果如果A矩阵是非奇异方阵,则矩阵是非奇异方阵,则AB和和B/A运算可以实现。运算可以实现。 AB等效于等效于A的逆左乘的逆左乘B矩阵,也就是矩阵,也就是inv(A)*B,而,而B/A等效于等效于A矩阵的逆右乘矩阵的逆右乘B矩矩阵,也就是阵,也就是B*inv(A)。 对于含有标量的运算,两种除法运算的对于含有标量的运算,两种除法运算的结果相同,如结果相同,如 3/4和和 43有相同的值,都等于有相同的值,都等于0.75。又如,设。又如,设a=10.5 ,25,则,则a/5=5a=2.1000 5.0000。 对于矩阵来说,左除和右除表示两种不对于矩阵来说,左除和右除表示两种不同的除
4、数矩阵和被除数矩阵的关系。对于矩同的除数矩阵和被除数矩阵的关系。对于矩阵运算,一般阵运算,一般ABB/A。 (4) 矩阵的乘方矩阵的乘方 一个矩阵的乘方运算可以表示成一个矩阵的乘方运算可以表示成Ax,要求要求A为方阵,为方阵,x为标量。为标量。2. 点运算点运算 在在MATLAB中,有一种特殊的运算,因中,有一种特殊的运算,因为其运算符是在有关算术运算符前面加点,为其运算符是在有关算术运算符前面加点,所以叫点运算。所以叫点运算。 点运算符有点运算符有 .*、./、.和和 .。两矩阵进行。两矩阵进行点运算是指它们的对应元素进行相关运算,点运算是指它们的对应元素进行相关运算,要求两矩阵的维参数相同
5、。要求两矩阵的维参数相同。3.1.2 关系运算关系运算 MATLAB提供了提供了6种关系运算符:种关系运算符:(小小于于)、(大于大于)、=(大于或大于或等于等于)、=(等于等于)、=(不等于不等于)。 它们的含义不难理解,但要注意其书写它们的含义不难理解,但要注意其书写方法与数学中的不等式符号不尽相同。方法与数学中的不等式符号不尽相同。 关系运算符的运算法则为:关系运算符的运算法则为: (1) 当两个比较量是标量时,直接比较两当两个比较量是标量时,直接比较两数的大小。若关系成立,关系表达式结果为数的大小。若关系成立,关系表达式结果为1,否则为否则为0。 (2) 当参与比较的量是两个维数相同的
6、矩当参与比较的量是两个维数相同的矩阵时,比较是对两矩阵相同位置的元素按标阵时,比较是对两矩阵相同位置的元素按标量关系运算规则逐个进行,并给出元素比较量关系运算规则逐个进行,并给出元素比较结果。最终的关系运算的结果是一个维数与结果。最终的关系运算的结果是一个维数与原矩阵相同的矩阵,它的元素由原矩阵相同的矩阵,它的元素由0或或1组成。组成。 (3) 当参与比较的一个是标量,当参与比较的一个是标量, 而另一而另一个是矩阵时,则把标量与矩阵的每一个元素个是矩阵时,则把标量与矩阵的每一个元素按标量关系运算规则逐个比较,并给出元素按标量关系运算规则逐个比较,并给出元素比较结果。最终的关系运算的结果是一个维
7、比较结果。最终的关系运算的结果是一个维数与原矩阵相同的矩阵,它的元素由数与原矩阵相同的矩阵,它的元素由0或或1组组成。成。例例3-1 产生产生5阶随机方阵阶随机方阵 A,其元素为,其元素为 10,90区间的随机整数,然后判断区间的随机整数,然后判断A的元素是否能的元素是否能被被3整除。整除。 (1) 生成生成5阶随机方阵阶随机方阵A: A=fix(90-10+1)*rand(5)+10) (2) 判断判断A的元素是否可以被的元素是否可以被3整除:整除: P=rem(A,3)=0 其中,其中,rem(A,3)是矩阵是矩阵A的每个元素除以的每个元素除以3的余数矩阵。此时,的余数矩阵。此时,0被扩展
8、为与被扩展为与A同维数同维数的零矩阵,的零矩阵,P是进行等于是进行等于(=)比较的结果矩阵。比较的结果矩阵。3.1.3 逻辑运算逻辑运算 MATLAB提供了提供了3种逻辑运算符:种逻辑运算符:&(与与)、|(或或)和和(非非)。 逻辑运算的运算法则为:逻辑运算的运算法则为: (1) 在逻辑运算中,确认非零元素为真,在逻辑运算中,确认非零元素为真,用用1表示,零元素为假,用表示,零元素为假,用0表示。表示。 逻辑运算的运算法则为:逻辑运算的运算法则为: (1) 在逻辑运算中,确认非零元素为真,在逻辑运算中,确认非零元素为真,用用1表示,零元素为假,用表示,零元素为假,用0表示。表示。 (
9、2) 设参与逻辑运算的是两个标量设参与逻辑运算的是两个标量a和和b,那么:那么: a&b a,b全为非零时,运算结果为全为非零时,运算结果为1,否,否则为则为0。 a|b a,b中只要有一个非零,运算结果为中只要有一个非零,运算结果为1。 a 当当a是零时,运算结果为是零时,运算结果为1;当;当a非零非零时,运算结果为时,运算结果为0。 (3) 若参与逻辑运算的是两个同维矩阵,若参与逻辑运算的是两个同维矩阵,那么运算将对矩阵相同位置上的元素按标量那么运算将对矩阵相同位置上的元素按标量规则逐个进行。最终运算结果是一个与原矩规则逐个进行。最终运算结果是一个与原矩阵同维的矩阵,其元素由阵同维
10、的矩阵,其元素由 1或或 0组成。组成。 (4) 若参与逻辑运算的一个是标量,一若参与逻辑运算的一个是标量,一个是矩阵,那么运算将在标量与矩阵中的每个是矩阵,那么运算将在标量与矩阵中的每个元素之间按标量规则逐个进行。最终运算个元素之间按标量规则逐个进行。最终运算结果是一个与矩阵同维的矩阵,其元素由结果是一个与矩阵同维的矩阵,其元素由 1或或 0组成。组成。 (5) 逻辑非是单目运算符,也服从矩阵运逻辑非是单目运算符,也服从矩阵运算规则。算规则。 (6) 在算术、关系、逻辑运算中,算术运在算术、关系、逻辑运算中,算术运算优先级最高,逻辑运算优先级最低。算优先级最高,逻辑运算优先级最低。例例3-2
11、 建立矩阵建立矩阵A,然后找出大于,然后找出大于4的元素的的元素的位置。位置。 (1) 建立矩阵建立矩阵A: A=4,-65,-54,0,6;56,0,67,-45,0 (2) 找出大于找出大于4的元素的位置:的元素的位置: find(A4)3.2 矩阵分析矩阵分析3.2.1 对角阵与三角阵对角阵与三角阵1. 对角阵对角阵 只有对角线上有非只有对角线上有非 0 元素的矩阵称为对元素的矩阵称为对角矩阵,对角线上的元素相等的对角矩阵称角矩阵,对角线上的元素相等的对角矩阵称为数量矩阵,对角线上的元素都为为数量矩阵,对角线上的元素都为 1 的对角的对角矩阵称为单位矩阵。矩阵称为单位矩阵。 (1) 提取
12、矩阵的对角线元素提取矩阵的对角线元素 设设A为为mn矩阵,矩阵,diag(A)函数用于提取函数用于提取矩阵矩阵A主对角线元素,产生一个具有主对角线元素,产生一个具有min(m,n)个元素的列向量。个元素的列向量。 diag(A)函数还有一种形式函数还有一种形式diag(A,k),其,其功能是提取第功能是提取第k条对角线的元素。条对角线的元素。 (2) 构造对角矩阵构造对角矩阵 设设V为具有为具有 m 个元素的向量,个元素的向量,diag(V) 将将产生一个产生一个mm对角矩阵,其主对角线元素即对角矩阵,其主对角线元素即为向量为向量V的元素。的元素。 diag(V) 函数也有另一种形式函数也有另
13、一种形式 diag(V,k),其功能是产生一个其功能是产生一个nn(n=m+)对角阵,其第对角阵,其第k条对角线的元素即为向量条对角线的元素即为向量V的元素。的元素。例例3-3 先建立先建立 55矩阵矩阵A,然后将,然后将A的第一的第一行元素乘以行元素乘以1,第二行乘以,第二行乘以2,第五行乘,第五行乘以以5。 A=17,0,1,0,15;23,5,7,14,16;4,0,13,0,22;10,12,19,21,3;11,18,25,2,19; D=diag(1:5); D*A %用用D左乘左乘A,对,对A的每行的每行乘以一个指定常数乘以一个指定常数2. 三角阵三角阵 三角阵又进一步分为上三角
14、阵和下三角三角阵又进一步分为上三角阵和下三角阵,所谓上三角阵,即矩阵的对角线以下的阵,所谓上三角阵,即矩阵的对角线以下的元素全为元素全为 0 的一种矩阵,而下三角阵则是对的一种矩阵,而下三角阵则是对角线以上的元素全为角线以上的元素全为0的一种矩阵。的一种矩阵。 (1) 上三角矩阵上三角矩阵 求矩阵求矩阵A的上三角阵的的上三角阵的MATLAB函数是函数是triu(A)。 triu(A) 函数也有另一种形式函数也有另一种形式 triu(A,k),其功能是求矩阵其功能是求矩阵A的第的第k条对角线以上的元素。条对角线以上的元素。例如,提取矩阵例如,提取矩阵A的第的第2条对角线以上的元素,条对角线以上的
15、元素,形成新的矩阵形成新的矩阵B。 (2) 下三角矩阵下三角矩阵 在在MATLAB中,提取矩阵中,提取矩阵A的下三角矩的下三角矩阵的函数是阵的函数是tril(A)和和tril(A,k),其用法与提取,其用法与提取上三角矩阵的函数上三角矩阵的函数 triu(A)和和 triu(A,k)完全相完全相同。同。3.2.2 矩阵的转置与旋转矩阵的转置与旋转1. 矩阵的转置矩阵的转置 转置运算符是单撇号转置运算符是单撇号()。2. 矩阵的旋转矩阵的旋转 利用函数利用函数rot90(A,k)将矩阵将矩阵A旋转旋转90的的k倍,当倍,当k为为1时可省略。时可省略。3. 矩阵的左右翻转矩阵的左右翻转 对矩阵实施
16、左右翻转是将原矩阵的第一对矩阵实施左右翻转是将原矩阵的第一列和最后一列调换,第二列和倒数第二列调列和最后一列调换,第二列和倒数第二列调换,换,依次类推。,依次类推。 MATLAB对矩阵对矩阵A实施左右翻转的函数实施左右翻转的函数是是fliplr(A)。4. 矩阵的上下翻转矩阵的上下翻转 MATLAB对矩阵对矩阵A实施上下翻转的函数实施上下翻转的函数是是flipud(A)。3.2.3 矩阵的逆与伪逆矩阵的逆与伪逆1. 矩阵的逆矩阵的逆 对于一个方阵对于一个方阵A,如果存在一个与其同,如果存在一个与其同阶的方阵阶的方阵B,使得:,使得: AB=BA=I (I为单位矩阵为单位矩阵) 则称则称B为为A
17、的逆矩阵,当然,的逆矩阵,当然,A也是也是B的的逆矩阵。逆矩阵。 求一个矩阵的逆是一件非常烦琐的工作,求一个矩阵的逆是一件非常烦琐的工作,容易出错,但在容易出错,但在MATLAB中,求一个矩阵的中,求一个矩阵的逆非常容易。逆非常容易。 求方阵求方阵A的逆矩阵可调用函数的逆矩阵可调用函数inv(A)。例例3-4 用求逆矩阵的方法解线性方程组。用求逆矩阵的方法解线性方程组。 Ax=b 其解为:其解为: x=A-1b 命令为:命令为: a=2,-3,1;8,3,2;45,1,-9; b=4;2;17; x=inv(a)*b2. 矩阵的伪逆矩阵的伪逆 如果矩阵如果矩阵A不是一个方阵,或者不是一个方阵,
18、或者 A是一个是一个非满秩的方阵时,矩阵非满秩的方阵时,矩阵A没有逆矩阵,但可没有逆矩阵,但可以找到一个与以找到一个与A的转置矩阵的转置矩阵 A同型的矩阵同型的矩阵B,使得:使得: ABA=A BAB=B 此时称矩阵此时称矩阵B为矩阵为矩阵A的伪逆,也称为广的伪逆,也称为广义逆矩阵。义逆矩阵。 在在MATLAB中,求一个矩阵伪逆的函数中,求一个矩阵伪逆的函数是是pinv(A)。3.2.4 方阵的行列式方阵的行列式 把一个方阵看作一个行列式,并对其按把一个方阵看作一个行列式,并对其按行列式的规则求值,这个值就称为矩阵所对行列式的规则求值,这个值就称为矩阵所对应的行列式的值。应的行列式的值。 在在
19、MATLAB中,求方阵中,求方阵A所对应的行列所对应的行列式的值的函数是式的值的函数是det(A)。3.2.5 矩阵的秩与迹矩阵的秩与迹1. 矩阵的秩矩阵的秩 矩阵线性无关的行数与列数称为矩阵的秩。矩阵线性无关的行数与列数称为矩阵的秩。在在MATLAB中,求矩阵秩的函数是中,求矩阵秩的函数是rank(A)。2. 矩阵的迹矩阵的迹 矩阵的迹等于矩阵的对角线元素之和,也矩阵的迹等于矩阵的对角线元素之和,也等于矩阵的特征值之和。在等于矩阵的特征值之和。在 MATLAB 中,求中,求矩阵的迹的函数是矩阵的迹的函数是trace(A)。3.2.6 向量和矩阵的范数向量和矩阵的范数 矩阵或向量的范数用来度量
20、矩阵或向量矩阵或向量的范数用来度量矩阵或向量在某种意义下的长度。范数有多种方法定义,在某种意义下的长度。范数有多种方法定义,其定义不同,范数值也就不同。其定义不同,范数值也就不同。1. 向量的向量的3种常用范数及其计算函数种常用范数及其计算函数 在在MATLAB中,求向量范数的函数为:中,求向量范数的函数为: (1) norm(V)或或norm(V,2):计算向量:计算向量V的的2范数。范数。 (2) norm(V,1):计算向量:计算向量V的的1范数。范数。 (3) norm(V,inf):计算向量:计算向量V的的范数。范数。2. 矩阵的范数及其计算函数矩阵的范数及其计算函数 MATLAB提
21、供了求提供了求3种矩阵范数的函数,种矩阵范数的函数,其函数调用格式与求向量的范数的函数完全其函数调用格式与求向量的范数的函数完全相同。相同。3.2.7 矩阵的条件数矩阵的条件数 在在MATLAB中,计算矩阵中,计算矩阵A的的3种条件数种条件数的函数是:的函数是: (1) cond(A,1) 计算计算A的的1范数下的条件范数下的条件数。数。 (2) cond(A)或或 cond(A,2) 计算计算A的的 2范范数数下的条件数。数数下的条件数。 (3) cond(A,inf) 计算计算 A的的 范数下的范数下的条件数。条件数。3.2.8 矩阵的特征值与特征向量矩阵的特征值与特征向量 在在MATLA
22、B中,计算矩阵中,计算矩阵 A 的特征值和的特征值和特征向量的函数是特征向量的函数是eig(A),常用的调用格式有,常用的调用格式有3种:种: (1) E=eig(A):求矩阵:求矩阵 A 的全部特征值,的全部特征值,构成向量构成向量E。 (2) V,D=eig(A):求矩阵:求矩阵A的全部特征值,的全部特征值,构成对角阵构成对角阵 D,并求,并求 A的特征向量构成的特征向量构成V的列的列向量。向量。 (3) V,D=eig(A,nobalance):与第:与第2种格种格式类似,但第式类似,但第 2种格式中先对种格式中先对A作相似变换后作相似变换后求矩阵求矩阵A的特征值和特征向量,而格式的特征值和特征向量,而格式 3直接直接求矩阵求矩阵A的特征值和特征向量。的特征值和特征向量。例例3-5 用求特征值的方法解方程:用求特征值的方法解方程: 3x5-7x4+5x2+2x-18=0 p=3,-7,0,5,2,-18; A=compan(p); %A的伴随矩阵的伴随矩阵 x1=eig(A) %求求A的特征值的特征值 x2=roots(p) %直接求多项式直接求多项式p的零点的零点 3.3 字符串字符串 在在MATLAB中,字符串是用单撇号括起中,字符串是用单撇号括起来的字符序列。来的字符序列。 MATLAB 将字符串当作一个行向量,将字符串当作
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026接待专家面试题库及答案
- 2026年豆包优化服务商全景测评:生态协同视角下的服务商分类图谱与选型指南
- 江西省南昌市进贤一中2025-2026学年七年级上学期期末英语试卷(无答案)
- 河南省周口市项城市新桥镇第二初级中学、南顿镇第二初级中学两校2025-2026学年八年级下学期期末学情调研数学试卷(含答案)
- 人工智能在金融合规中的应用-第38篇
- 2026南昌健康职业技术学院教学督导员招聘笔试备考试题及答案详解
- 2026年贵州省安顺市住房和城乡建设局人员招聘考试备考试题及答案详解
- 2026重庆黔江区中医院编外人员招聘17人考试参考题库及答案详解
- 个性化信贷服务
- 2026年南京市雨花台区住房和城乡建设局人员招聘笔试参考试题及答案详解
- 绿色矿山知识培训课件
- 供货进度计划一览表
- T/CCMA 0123-2021沥青混凝土摊铺机熨平装置
- 2025年保安证考试理论学习试题及答案
- CQE工作总结与计划
- 人教版初中全部英语单词表(含音标)
- (高级)电气值班员技能鉴定考试题库(重点高频500题)
- DL∕T 707-2014 HS系列环锤式破碎机
- 2024房建劳务分包的合同范本正规范本
- 心电图读图题附有答案
- 建筑摄影的表现手法(有大量例图)课件
评论
0/150
提交评论