Octave中的矩阵加法
矩阵的加法是最简单的,但是我将从元素和矩阵两个角度来分析这个问题,通过举例来实际说明
>> A=[1,2,3;4,5,6;7,8,9;]
A =
1 2 3
4 5 6
7 8 9
矩阵的元素都加上某一个值:
>> A+2
ans =
3 4 5
6 7 8
9 10 11
>> 2+A
ans =
3 4 5
6 7 8
9 10 11
矩阵相加一定要维度相同,这样每个元素对应相加:
>> B=A
B =
1 2 3
4 5 6
7 8 9
>> A+B
ans =
2 4 6
8 10 12
14 16 18
如果不同呢?结果很有意思:
>> A+B(1,:)
ans =
2 4 6
5 7 9
8 10 12
>> A+B(:,1)
ans =
2 3 4
8 9 10
14 15 16
>> A+B(1,1)
ans =
2 3 4
5 6 7
8 9 10
>> A+B([1,2],[1,2])
error: operator +: nonconformant arguments (op1 is 3x3, op2 is 2x2)
>> A+B([1,2],:)
error: operator +: nonconformant arguments (op1 is 3x3, op2 is 2x3)
OK非常有意思,说明维度还是要对上的,向量可以和矩阵相加,这样其实是矩阵分成若干个向量再去相加。