资源描述:
《《矩阵和数组》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、2.1.1算术运算1.基本算术运算MATLAB的基本算术运算有:+(加)、-(减)、*(乘)、/(右除)、(左除)、^(乘方)。注意,运算是在矩阵意义下进行的,单个数据的算术运算只是一种特例。MATLAB的矩阵运算假定有两个矩阵A和B,则可以由A+B和A-B实现矩阵的加减运算。运算规则是:若A和B矩阵的维数相同,则可以执行矩阵的加减运算,A和B矩阵的相应元素相加减。如果A与B的维数不相同,则MATLAB将给出错误信息,提示用户两个矩阵的维数不匹配。(1)矩阵加减运算假定有两个矩阵A和B,若A为m×n矩阵,B为n×p矩阵,则C=A*B为m×p矩阵。(2)矩阵乘法(3)矩阵
2、除法在MATLAB中,有两种矩阵除法运算:和/,分别表示左除和右除。如果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.10005.0000]。对于矩阵来说,左除和右除表示两种不同的除数矩阵和被除数矩阵的关系。对于矩阵运算,一般AB≠B/A。一个矩阵的乘方运算可以表示成A^x,要求A为方阵,x为标量。2.点运算
3、在MATLAB中,有一种特殊的运算,因为其运算符是在有关算术运算符前面加点,所以叫点运算。点运算符有.*、./、.和.^。两矩阵进行点运算是指它们的对应元素进行相关运算,要求两矩阵的维参数相同。(4)矩阵的乘方MATLAB提供了6种关系运算符:<(小于)、<=(小于或等于)、>(大于)、>=(大于或等于)、==(等于)、~=(不等于)。它们的含义不难理解,但要注意其书写方法与数学中的不等式符号不尽相同。2.3.2关系运算(1)当两个比较量是标量时,直接比较两数的大小。若关系成立,关系表达式结果为1,否则为0。(2)当参与比较的量是两个维数相同的矩阵时,比较是对两矩阵相同
4、位置的元素按标量关系运算规则逐个进行,并给出元素比较结果。最终的关系运算的结果是一个维数与原矩阵相同的矩阵,它的元素由0或1组成。关系运算符的运算法则为:(3)当参与比较的一个是标量,而另一个是矩阵时,则把标量与矩阵的每一个元素按标量关系运算规则逐个比较,并给出元素比较结果。最终的关系运算的结果是一个维数与原矩阵相同的矩阵,它的元素由0或1组成。例2-8产生5阶随机方阵A,其元素为[10,90]区间的随机整数,然后判断A的元素是否能被3整除。(1)生成5阶随机方阵A。A=fix((90-10+1)*rand(5)+10)(2)判断A的元素是否可以被3整除。P=rem(A,
5、3)==0其中,rem(A,3)是矩阵A的每个元素除以3的余数矩阵。此时,0被扩展为与A同维数的零矩阵,P是进行等于(==)比较的结果矩阵。MATLAB提供了3种逻辑运算符:&(与)、
6、(或)和~(非)。逻辑运算的运算法则为:(1)在逻辑运算中,确认非零元素为真,用1表示,零元素为假,用0表示。(2)设参与逻辑运算的是两个标量a和b,那么,a&ba,b全为非零时,运算结果为1,否则为0。a
7、ba,b中只要有一个非零,运算结果为1。~a当a是零时,运算结果为1;当a非零时,运算结果为0。2.3.3逻辑运算(3)若参与逻辑运算的是两个同维矩阵,那么运算将对矩阵相同位置上的元
8、素按标量规则逐个进行。最终运算结果是一个与原矩阵同维的矩阵,其元素由1或0组成。(4)若参与逻辑运算的一个是标量,一个是矩阵,那么运算将在标量与矩阵中的每个元素之间按标量规则逐个进行。最终运算结果是一个与矩阵同维的矩阵,其元素由1或0组成。(5)逻辑非是单目运算符,也服从矩阵运算规则。(6)在算术、关系、逻辑运算中,算术运算优先级最高,逻辑运算优先级最低。例2-9建立矩阵A,然后找出大于4的元素的位置。(1)建立矩阵A。A=[4,-65,-54,0,6;56,0,67,-45,0](2)找出大于4的元素的位置。find(A>4)2.4.1对角阵与三角阵1.对角阵只有对角
9、线上有非0元素的矩阵称为对角矩阵,对角线上的元素相等的对角矩阵称为数量矩阵,对角线上的元素都为1的对角矩阵称为单位矩阵。2.4矩阵分析(1)提取矩阵的对角线元素设A为m×n矩阵,diag(A)函数用于提取矩阵A主对角线元素,产生一个具有min(m,n)个元素的列向量。diag(A)函数还有一种形式diag(A,k),其功能是提取第k条对角线的元素。(2)构造对角矩阵设V为具有m个元素的向量,diag(V)将产生一个m×m对角矩阵,其主对角线元素即为向量V的元素。diag(V)函数也有另一种形式diag(V,k)