MATLAB教程第3讲矩阵的运算.ppt

上传人:wuy****n92 文档编号:70797641 上传时间:2023-01-28 格式:PPT 页数:39 大小:334.49KB
返回 下载 相关 举报
MATLAB教程第3讲矩阵的运算.ppt_第1页
第1页 / 共39页
MATLAB教程第3讲矩阵的运算.ppt_第2页
第2页 / 共39页
点击查看更多>>
资源描述

《MATLAB教程第3讲矩阵的运算.ppt》由会员分享,可在线阅读,更多相关《MATLAB教程第3讲矩阵的运算.ppt(39页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

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为标量。为标量。X为正整数为正整数2.点运算点运算 在在MATLAB中,有一种特殊的运算,因中,有一种特殊的运算,因为其运算符是在有关算术运算符前面加点,为其运算符是在有关算术运算符前面加点,所以叫点运算。所以叫点运算。点运算符有点运算符有.*、./、.和和.。两矩阵进。两矩阵进行点运算是指它们的行点运算是指它们的对应元素进行相关运算对应元素进行相关运

5、算,要求两矩阵的维参数相同。要求两矩阵的维参数相同。例例3-1 矩阵乘与矩阵点乘的区别:矩阵乘与矩阵点乘的区别:(1)矩阵乘:矩阵乘:A=1 2 3;0 3 4;2 0 1,B=1 0 2;0 1 1;2 1 0,A*B (2)矩阵点乘:矩阵点乘:A=1 2 3;0 3 4;2 0 1,B=1 0 2;0 1 1;2 1 0,A.*B3.1.2 关系运算关系运算 MATLAB提供了提供了6种关系运算符:种关系运算符:(小小于于)、(大于大于)、=(大于大于或等于或等于)、=(等于等于)、=(不等于不等于)。它们的含义不难理解,但要注意其书写它们的含义不难理解,但要注意其书写方法与数学中的不等式

6、符号不尽相同。方法与数学中的不等式符号不尽相同。关系运算符的运算法则为:关系运算符的运算法则为:(1)当两个比较量是标量时,直接比较两当两个比较量是标量时,直接比较两数的大小。若关系成立,关系表达式结果为数的大小。若关系成立,关系表达式结果为1,否则为,否则为0。(2)当参与比较的量是两个维数相同的矩当参与比较的量是两个维数相同的矩阵时,比较是对两矩阵相同位置的元素按标阵时,比较是对两矩阵相同位置的元素按标量关系运算规则逐个进行,并给出元素比较量关系运算规则逐个进行,并给出元素比较结果。最终的关系运算的结果是一个维数与结果。最终的关系运算的结果是一个维数与原矩阵相同的矩阵,它的元素由原矩阵相同

7、的矩阵,它的元素由0或或1组成。组成。(3)当参与比较的一个是标量,当参与比较的一个是标量,而另一而另一个是矩阵时,则把标量与矩阵的每一个元素个是矩阵时,则把标量与矩阵的每一个元素按标量关系运算规则逐个比较,并给出元素按标量关系运算规则逐个比较,并给出元素比较结果。最终的关系运算的结果是一个维比较结果。最终的关系运算的结果是一个维数与原矩阵相同的矩阵,它的元素由数与原矩阵相同的矩阵,它的元素由0或或1组组成。成。例例3-2 产生产生5阶随机方阵阶随机方阵 A,其元素为,其元素为 10,90区间的随机整数,然后判断区间的随机整数,然后判断A的元素的元素是否能被是否能被3整除。整除。(1)生成生成

8、5阶随机方阵阶随机方阵A:A=fix(90-10+1)*rand(5)+10)(2)判断判断A的元素是否可以被的元素是否可以被3整除:整除:P=rem(A,3)=0 其中,其中,rem(A,3)是矩阵是矩阵A的每个元素除以的每个元素除以3的余数矩阵。此时,的余数矩阵。此时,0被扩展为与被扩展为与A同维数的同维数的零矩阵,零矩阵,P是进行等于是进行等于(=)比较的结果矩阵。比较的结果矩阵。3.1.3 逻辑运算逻辑运算 MATLAB提供了提供了3种逻辑运算符:种逻辑运算符:&(与与)、|(或或)和和(非非)。逻辑运算的运算法则为:逻辑运算的运算法则为:(1)在逻辑运算中,确认非零元素为真,在逻辑运

9、算中,确认非零元素为真,用用1表示,零元素为假,用表示,零元素为假,用0表示。表示。逻辑运算的运算法则为:逻辑运算的运算法则为:(1)在逻辑运算中,确认非零元素为真,在逻辑运算中,确认非零元素为真,用用1表示,零元素为假,用表示,零元素为假,用0表示。表示。(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)

11、逻辑非是单目运算符,也服从矩阵运逻辑非是单目运算符,也服从矩阵运算规则。算规则。(6)在算术、关系、逻辑运算中,算术运在算术、关系、逻辑运算中,算术运算优先级最高,逻辑运算优先级最低。算优先级最高,逻辑运算优先级最低。例例3-3 建立矩阵建立矩阵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 元素的矩阵称为元素的

12、矩阵称为对对角矩阵角矩阵,对角线上的元素相等的对角矩阵称,对角线上的元素相等的对角矩阵称为为数量矩阵数量矩阵,对角线上的元素都为,对角线上的元素都为 1 的对角的对角矩阵称为矩阵称为单位矩阵单位矩阵。(1)提取矩阵的对角线元素提取矩阵的对角线元素 设设A为为mn矩阵,矩阵,diag(A)函数用于提取函数用于提取矩阵矩阵A主对角线元素,产生一个具有主对角线元素,产生一个具有min(m,n)个元素的列向量。个元素的列向量。diag(A)函数还有一种形式函数还有一种形式diag(A,k),其,其功能是提取第功能是提取第k条对角线的元素。条对角线的元素。(2)构造对角矩阵构造对角矩阵 设设V为具有为具

13、有 m 个元素的向量,个元素的向量,diag(V)将将产生一个产生一个mm对角矩阵,其主对角线元素即对角矩阵,其主对角线元素即为向量为向量V的元素。的元素。diag(V)函数也有另一种形式函数也有另一种形式 diag(V,k),其功能是产生一个,其功能是产生一个nn(n=m+k)对角阵,其对角阵,其第第k条对角线的元素即为向量条对角线的元素即为向量V的元素。的元素。例例3-4 先建立先建立 55矩阵矩阵A,然后将,然后将A的第一行的第一行元素乘以元素乘以1,第二行乘以,第二行乘以2,第五行乘以,第五行乘以5。A=17,0,1,0,15;23,5,7,14,16;4,0,13,0,22;10,1

14、2,19,21,3;11,18,25,2,19;D=diag(1:5);D*A%用用D左乘左乘A,对,对A的每行的每行乘以一个指定常数乘以一个指定常数2.三角阵三角阵 三角阵又进一步分为上三角阵和下三角三角阵又进一步分为上三角阵和下三角阵,所谓上三角阵,即矩阵的对角线以下的阵,所谓上三角阵,即矩阵的对角线以下的元素全为元素全为 0 的一种矩阵,而下三角阵则是对的一种矩阵,而下三角阵则是对角线以上的元素全为角线以上的元素全为0的一种矩阵。的一种矩阵。(1)上三角矩阵上三角矩阵 求矩阵求矩阵A的上三角阵的的上三角阵的MATLAB函数是函数是triu(A)。triu(A)函数也有另一种形式函数也有另

15、一种形式 triu(A,k),其功能是求矩阵其功能是求矩阵A的第的第k条对角线以上的元素。条对角线以上的元素。例如,提取矩阵例如,提取矩阵A的第的第2条对角线以上的元素,条对角线以上的元素,形成新的矩阵形成新的矩阵B。(2)下三角矩阵下三角矩阵 在在MATLAB中,提取矩阵中,提取矩阵A的下三角矩的下三角矩阵的函数是阵的函数是tril(A)和和tril(A,k),其用法与提取,其用法与提取上三角矩阵的函数上三角矩阵的函数 triu(A)和和 triu(A,k)完全相完全相同。同。3.2.2 矩阵的转置与旋转矩阵的转置与旋转1.矩阵的转置矩阵的转置 转置运算符是单撇号转置运算符是单撇号()。2.

16、矩阵的旋转矩阵的旋转 利用函数利用函数rot90(A,k)将矩阵将矩阵A旋转旋转90的的k倍,当倍,当k为为1时可省略。逆时针时可省略。逆时针3.矩阵的左右翻转矩阵的左右翻转 对矩阵实施左右翻转是将原矩阵的第一对矩阵实施左右翻转是将原矩阵的第一列和最后一列调换,第二列和倒数第二列调列和最后一列调换,第二列和倒数第二列调换,换,依次类推。,依次类推。MATLAB对矩阵对矩阵A实施左右翻转的函数实施左右翻转的函数是是fliplr(A)。4.矩阵的上下翻转矩阵的上下翻转 MATLAB对矩阵对矩阵A实施上下翻转的函数实施上下翻转的函数是是flipud(A)。3.2.3 矩阵的逆与伪逆矩阵的逆与伪逆1.

17、矩阵的逆矩阵的逆 对于一个方阵对于一个方阵A,如果存在一个与其同阶,如果存在一个与其同阶的方阵的方阵B,使得:,使得:AB=BA=I(I为单位矩阵为单位矩阵)则称则称B为为A的逆矩阵,当然,的逆矩阵,当然,A也是也是B的逆的逆矩阵。矩阵。求一个矩阵的逆是一件非常烦琐的工作,求一个矩阵的逆是一件非常烦琐的工作,容易出错,但在容易出错,但在MATLAB中,求一个矩阵的中,求一个矩阵的逆非常容易。逆非常容易。求方阵求方阵A的逆矩阵可调用函数的逆矩阵可调用函数inv(A)。例例3-5 用求逆矩阵的方法解线性方程组。用求逆矩阵的方法解线性方程组。Ax=b 其解为:其解为:x=A-1b 命令为:命令为:a

18、=2,-3,1;8,3,2;45,1,-9;b=4;2;17;x=inv(a)*b2.矩阵的伪逆矩阵的伪逆 如果矩阵如果矩阵A不是一个方阵,或者不是一个方阵,或者 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.矩阵的迹矩阵的迹 矩阵的迹等于矩阵的对角线元素之和,也矩阵的迹等于矩阵的对角线元素之和,也等于矩阵的特征值之和。在等于矩阵的特征值之和。

20、在 MATLAB 中,求中,求矩阵的迹的函数是矩阵的迹的函数是trace(A)。3.2.6 向量和矩阵的范数向量和矩阵的范数 矩阵或向量的范数用来度量矩阵或向量矩阵或向量的范数用来度量矩阵或向量在某种意义下的长度。范数有多种方法定义,在某种意义下的长度。范数有多种方法定义,其定义不同,范数值也就不同。其定义不同,范数值也就不同。1.向量的向量的3种常用范数及其计算函数种常用范数及其计算函数 在在MATLAB中,求向量范数的函数为:中,求向量范数的函数为:(1)norm(V)或或norm(V,2):计算向量:计算向量V的的2范数。范数。(2)norm(V,1):计算向量:计算向量V的的1范数。范

21、数。(3)norm(V,inf):计算向量:计算向量V的的范数。范数。求最大值求最大值2.矩阵的范数及其计算函数矩阵的范数及其计算函数 MATLAB提供了求提供了求3种矩阵范数的函数,种矩阵范数的函数,其函数调用格式与求向量的范数的函数完全其函数调用格式与求向量的范数的函数完全相同。相同。3.2.7 矩阵的条件数矩阵的条件数 在在MATLAB中,计算矩阵中,计算矩阵A的的3种条件数种条件数的函数是:的函数是:(1)cond(A,1)计算计算A的的1范数下的条件范数下的条件数。数。(2)cond(A)或或 cond(A,2)计算计算A的的 2范范数数下的条件数。数数下的条件数。(3)cond(A

22、,inf)计算计算 A的的 范数下的范数下的条件数。条件数。3.2.8 矩阵的特征值与特征向量矩阵的特征值与特征向量 在在MATLAB中,计算矩阵中,计算矩阵 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种格种格式类

23、似,但第式类似,但第 2种格式中先对种格式中先对A作相似变换后作相似变换后求矩阵求矩阵A的特征值和特征向量,而格式的特征值和特征向量,而格式 3直接直接求矩阵求矩阵A的特征值和特征向量。的特征值和特征向量。例例3-6 用求特征值的方法解方程:用求特征值的方法解方程: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中,字符串是用中,字符串是用单撇号单撇号括起括起来的字符序列。来

24、的字符序列。MATLAB 将字符串当作一个行向量,将字符串当作一个行向量,每个元素对应一个字符,其标识方法和数值每个元素对应一个字符,其标识方法和数值向量相同。也可以建立多行字符串矩阵。向量相同。也可以建立多行字符串矩阵。字符串是以字符串是以ASCII码形式存储的。码形式存储的。abs和和double函数都可以用来获取字符串矩阵所对函数都可以用来获取字符串矩阵所对应的应的ASCII码数值矩阵。码数值矩阵。相反,相反,char函数可以把函数可以把ASCII码矩阵转换码矩阵转换为字符串矩阵。为字符串矩阵。例例3-7 建立一个字符串向量,然后对该向量建立一个字符串向量,然后对该向量做如下处理:做如下

25、处理:(1)取第取第15个字符组成的子字符串。个字符组成的子字符串。(2)将字符串倒过来重新排列。将字符串倒过来重新排列。(3)将字符串中的小写字母变成相应的大将字符串中的小写字母变成相应的大写字母,其余字符不变。写字母,其余字符不变。(4)统计字符串中小写字母的个数。统计字符串中小写字母的个数。命令如下:命令如下:ch=ABc123d4e56Fg9;subch=ch(1:5)%取子字符串取子字符串revch=ch(end:-1:1)%将字符串倒排将字符串倒排k=find(ch=a&ch=z);%找小写字母的找小写字母的位置位置ch(k)=ch(k)-(a-A);%将小写字母变成相应将小写字母变成相应的大写字母的大写字母char(ch)length(k)%统计小写字母的个数统计小写字母的个数 与字符串有关的另一个重要函数是与字符串有关的另一个重要函数是eval,其调用格式为:,其调用格式为:eval(t)其中其中t为字符串。它的作用是把字符串为字符串。它的作用是把字符串的内容作为对应的的内容作为对应的MATLAB语句来执行。语句来执行。例例3-8 eval演示:演示:t=A=1 2;3 1 s=inv(A)eval(t)eval(s)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁