当前位置:首页 > 练习4 矩阵和数组的加减运算与乘法
如果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
(3) 数组的简单计算
数组运算无论哪种运算操作都是对元素逐个进行的。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中矩阵和数组的加减法和乘法。因为这三种运算与矩阵和数组的其他几种运算比起来相对简单,故本节称为矩阵和数组的简单运算。矩阵和数组的运算最大的不同在于:矩阵的运算有整体性,通常以行或列的顺序进行;而向量的运算操作都是对元素逐个进行的,希望读者仔细体会这两种运算的不同之处。 [思考题]
共分享92篇相关文档