练习4矩阵和数组的加减运算与乘法-Read.docVIP

  • 31
  • 0
  • 约3.34千字
  • 约 12页
  • 2019-01-18 发布于四川
  • 举报

练习4矩阵和数组的加减运算与乘法-Read.doc

练习4 矩阵和数组的加减运算与乘法 知识背景 在数学计算或工程数据处理中,关于矩阵和数组的计算司空见惯。如果人工主、去做这部分工作,将既费时又费力并且容易出错。所幸的是MATLAB为我们展示了丰富而出色的矩阵运算功能,大大简化了我们的工作量。为了使读者尽快熟悉这部分内容,我们先来回顾一下矩阵计算的基本定义: (1)若矩阵A与B的行数与列数相同,则称A与B为同型矩阵。同型矩阵可进行加减运算,AB就等于矩阵A与B对应元素的代数和。 (2)所有元素均为0的矩阵,称为零矩阵。 (3)数乘矩阵:设k为常数,A为阶矩阵,则定义数乘矩阵为: (4)矩阵的乘法设A为阶矩阵,B为阶矩阵,则定义C=AB(其中C为阶矩阵)为矩阵A与B的乘积。 主要内容 [本练习考查知识点] 矩阵运算是MATLAB中最基本也最为重要的部分。我们在这个练习中将学习矩阵和数组的加减法和乘法。本练习将练习使用矩阵和数组各自的运算符号进行简单计算,使读者体会它们之间的联系与区别。数组的运算符比相应的矩阵运算符多一个小黑点,这一点要牢记。另外我们还将在简单计算中复习以前学过的矩阵的创建和调用。 练习过程 MATLAB系统提供了如下的矩阵运算符: + 加法 - 减法 * 乘法 ^ 幂 \ 左除 / 右除 ‘ 转置 使用上述矩阵运算符要符合矩阵运算的要求。比如:只有同型矩阵才能相加减;A*B必须满足A的列数等于B的行数;只有方矩阵(行数等于列数)才可以求幂…… 矩阵的加减运算 在命令区中输入: A=rand(3,4) B=rand(3,4) C=A+B 得到的结果如图4-1所示。 可见矩阵相加即将两个矩阵的对应元素相加,得到一个新矩阵。同样的,矩阵减法即是将两个同型矩阵的对应元素相减。读者可以计算一下A-B的值。 如果计算矩阵和标量的和,在命令区中输入: A=rand(3,4) B=A+3 得到的结果如图4-2所示。 图4-1 矩阵相加 图4-2 矩阵与标量相加 由图4-2知,标量与矩阵(矩阵)相加减,等于标量与矩阵中的每个元素相加减。这一点请读者特别注意。 矩阵的乘法 我们在命令区中输入: A=magic(3) B=pascal(3) C=A*B 得到的结果如图4-3所示。 如果A的列数与B的行数不相等,那么这两个矩阵相乘会得 到什么结果呢?我们来试一试。 在命令区中输入: A=magic(3) B=pascal(4) C=A*B 得到图4-4所示的结果。 图4-3 矩阵相乘 图4-4 矩阵相乘出错信息 系统会自动告诉使用者,乘法无法进行,原因是两个矩阵列数和行数不匹配,无法进行矩阵乘法。只有修改合适后,才能继续进行计算。 再看一个例子,求Kronecker张量积。 输入; A=[2,3,4;5,6,7]; B=[1,2;3,4]; C=kron(A,B) 得到下面的结果: C = 2 4 3 6 4 8 6 8 9 12 12 16 5 10 6 12 7 14 15 20 18 24 21 28 数组的简单计算 数组运算无论哪种运算操作都是对元素逐个进行的。MATLAB 设计这种运算的目的在于使大批数据的处理与标量情况相似。这样可以大大简化使用和编程。 下面是MATLAB系统中提供的数组运算符; .+ 加法 .- 减法 .* 乘法 .^ 幂 .\ 左除 ./ 右除 .‘ 转置 读者应该注意到数组运算符比矩阵运算符多了一个小黑点。在数 组计算过程中,小黑点千万不能省略,否则将不按数组运算法则进行计算。参与数组计算的数组必须同维,或则其中的某个数组为标量。数组运算仍是数组,且与原数组同维。 在命令区中输入: A=[1,2,3,4,5]; B=[2,3,4,5,6]; C=A.*B D=A.*2 得到结果如图4-5所示。 数组加减法比较简单,请读者自己练习。 例如:在命令区中输入: A=[1,2,3,4]; B=[4,3,2,1]; C=A+B 将得到: C = 5 5 5 5 5 图4-5 数组相乘 [练习小结] 本练习主要向读者介绍了MATLAB中矩阵和数组的加减法和乘法。因为这三种运算与矩阵和数组的其他几种运算比起来相对简单,故本节称为矩阵和数组的简单运算。矩阵和数组的运算最大的不同在于

文档评论(0)

1亿VIP精品文档

相关文档