matlab中除法的使用,错误使用 / 矩阵维度必须一致
错误使用 /
矩阵维度必须一致。
当出现这个错误,说明除数符号写错了,需要从/变成./就可以了
matlab中的乘除法:
1.数字之间相乘/相除
>> a=3;
>> b=4;
(1)相乘(*与.*没区别):
>> a*b
ans =
12
>> a.*b
ans =
12
(2)相除(/与./没区别):
>> a=3;
>> b=4;
>> a/b
ans =
0.7500
>> a./b(a除以b)
ans =
0.7500
>> a.\b(b除以a)
ans =
1.3333
2.数字与矩阵之间相乘/相除
>> a=3;
>> A=[1,3,5;3,4,5;2,4,8];
A =
1 3 5
3 4 5
2 4 8
(1)相乘(*与.*没区别):
>> a*A
ans =
3 9 15
9 12 15
6 12 24
>> a.*A
ans =
3 9 15
9 12 15
6 12 24
(2)相除(/与./没区别):
>> A/a(矩阵A中元素都除以a,输出矩阵)
ans =
0.3333 1.0000 1.6667
1.0000 1.3333 1.6667
0.6667 1.3333 2.6667
>> A./a
ans =
0.3333 1.0000 1.6667
1.0000 1.3333 1.6667
0.6667 1.3333 2.6667
>> A.\a(a除以矩阵A中各元素,输出矩阵)
ans =
3.0000 1.0000 0.6000
1.0000 0.7500 0.6000
1.5000 0.7500 0.3750
3.矩阵之间相乘/相除
>> A=[1,3,5;3,4,5;2,4,8]
A =
1 3 5
3 4 5
2 4 8
>> B=[2,5,8;3,7,2;5,3,2]
B =
2 5 8
3 7 2
5 3 2
(1)相乘:
>> A*B(矩阵乘法:要求左矩阵的行数与右矩阵的列数相等,即MxN维矩阵乘以NxM维矩阵。按照矩阵相乘规则计算结果)
ans =
36 41 24
43 58 42
56 62 40
>> A.*B(矩阵点乘:要求两矩阵维数相等,即MxN维矩阵乘以MxN维矩阵。矩阵对应位置元素相乘输出)
ans =
2 15 40
9 28 10
10 12 16
(2)相除:
>> A/B(相当于A乘以B的逆,如下所示)
ans =
0.6395 -0.0058 -0.0523
0.5233 0.0407 0.3663
1.0233 -0.2093 0.1163
>> A*inv(B)
ans =
0.6395 -0.0058 -0.0523
0.5233 0.0407 0.3663
1.0233 -0.2093 0.1163
>> A./B(矩阵点右除:要求两矩阵维数相等,即MxN维矩阵除以MxN维矩阵。矩阵对应位置元素相除输出,A矩阵对应元素除以B矩阵对应元素)
ans =
0.5000 0.6000 0.6250
1.0000 0.5714 2.5000
0.4000 1.3333 4.0000
>> A\B(相当于A的逆乘以B,如下所示)
ans =
1.3000 -1.7000 -7.8000
-1.6000 5.4000 9.6000
1.1000 -1.9000 -2.6000
>> inv(A)*B
ans =
1.3000 -1.7000 -7.8000
-1.6000 5.4000 9.6000
1.1000 -1.9000 -2.6000
>> A.\B(矩阵点左除:要求两矩阵维数相等,即MxN维矩阵除以MxN维矩阵。矩阵对应位置元素相除输出,B矩阵对应元素除以A矩阵对应元素)
ans =
2.0000 1.6667 1.6000
1.0000 1.7500 0.4000
2.5000 0.7500 0.2500
---------------------
作者:叶晚zd
来源:CSDN
原文:https://blog.csdn.net/u013925378/article/details/53695147/
版权声明:本文为博主原创文章,转载请附上博文链接!
更多推荐
所有评论(0)