义如下:
表 2.5 两标量间的数学运算符
运算符 代数形式 MATLAB 形式
加号 A+B A+B
减号 AB AB
乘号 A×B A*B
除号
B
A
A/B
指数 BA A^B
∑
=
=
n
k
jkbkiajic
1
),(),(),(
例如 ⎥
⎦
⎤
⎢
⎣
⎡
=
43
21
a , ⎥
⎦
⎤
⎢
⎣
⎡
−
−
=
12
31
a ,那么 ⎥
⎦
⎤
⎢
⎣
⎡
−
−−
=×
1010
67
ba 。注意,在矩阵相乘中,a 阵
的列数必须等于 b 阵的行数。
MATLAB 用一个特殊的符号来区分矩阵运算和数组运算。在需要区分两者不同的时侯,
把点置于符号前来指示这是一个数组运算(例如,.*)。表 2。6 给出的是一些常见的数组和
矩阵运算。
表 2.6 常见的数组和矩阵运算
运算 MATLAB 形式 注释
数组加法 A+B 数组加法和矩阵加法相同
数组减法 AB 数组减法和矩阵减法相同
数组乘法 A.*B
A 和 B 的元素逐个对应相乘.两数组之间必须有相同
的形,或其中一个是标量.
矩阵乘法 A*B A 和 B 的矩阵乘法.A 的列数必须和 B 的行数相同.
数组右除法 A./B
A 和 B 的元素逐个对应相除:
A(i,j)/B(i,j)两数组之间必须有相同的形,或其中一个
是标量.
数组左除法 A.\B
A 和 B 的元素逐个对应相除:
B(i,j)/A(i,j)两数组之间必须有相同的形,或其中一个
是标量.
矩阵右除法 A/B 矩阵除法,等价于 A*inv(B), inv(B)是 B 的逆阵
矩阵左除法 A\B 矩阵除法,等价于 inv(B)*A, inv(A)是 A 的逆阵
数组指数运算 A.^B
AB 中的元素逐个进行如下运算 A(i,j)^B(i,j),
A(i,j)/B(i,j)两数组之间必须有相同的形,或其中一个
是标量.
初学者往往混淆数组运算和矩阵运算.在一些情况下,两者相互替换会导致非法操作,
MATLAB 将会报告产生了错误。在另一些情况下,两种运算都是合法的,那么这时 MATLAB
进行错误的运算,并产生错误的结果。当我们进行方阵运算时,极易产生这样的错误。两个
方阵具有相同的大小,两者之间的数组运算和矩阵运算都是合法的,但产生的结果完全不同。
在这种情况下,你要万分的小心。
编程隐患
在你的 MATLAB 代码中,仔细区分数组运算和矩阵运算。数组乘法和矩阵乘法极易混
淆。
2021-11-09 15:32:40
7.02MB
MATLAB
1