数组运算
数组运算可针对向量、矩阵和多维数组的对应元素执行逐元素运算。如果操作数的大小相同,则第一个操作数中的每个元素都会与第二个操作数中同一位置的元素匹配。如果操作数的大小兼容,则每个输入都会根据需要进行隐式扩展以匹配另一个输入的大小。有关详细信息,请参阅基本运算的兼容数组大小。
举一个简单的示例,您可以添加两个大小相同的向量。
A = [1 1 1]
A =
1 1 1
B = [1 2 3]
B =
1 2 3
A+B
ans =
2 3 4
如果一个操作数是标量,而另一个操作数不是标量,则 MATLAB 会将该标量隐式扩展为与另一个操作数具有相同的大小。例如,您可以计算一个标量和一个矩阵的按元素乘积。
A = [1 2 3; 1 2 3]
A =
1 2 3
1 2 3
3.*A
ans =
3 6 9
3 6 9
如果从一个 3×3 矩阵中减去一个 1×3 向量,隐式扩展仍然会起作用,因为它们的大小是兼容的。当您执行减法运算时,该向量将隐式扩展为一个 3×3 矩阵。
A = [1 1 1; 2 2 2; 3 3 3]
A =
1 1 1
2 2 2
3 3 3
m = [2 4 6]
m =
2 4 6
A - m
ans =
-1 -3 -5
0 -2 -