matlab 计算两个矩阵相乘

如题所述

.* 表示矩阵与矩阵相乘,满足线性代数上学的矩阵与矩阵的乘法,*表示矩阵中元素与元素相乘,这两个矩阵的维数必需相同。

例如:A.*B,那么A是m行n列的话,B必须也是m行n列。其他的如: “/ 与 ./ ” ,“.^ 与 ^ ”的含义都是一样的。

题目中源代码如下:

>> A=[1 3 0.5 1 2; 1/3 1 1/2 1/2 1/2 ; 2 2 1 4 3;1 2 1/4 1 5; 1/2 2 1/3 1/5 1]

>> w=[0.2069 0.069 0.4138 0.2069 0.1034]

>> C1=A.*w

C1为矩阵A和w相乘的结果。由于两个矩阵维数不同,结果提醒出错。

扩展资料:

两个矩阵相乘一些注意事项:

1、如果矩阵A的列数等于矩阵B的行数,那么矩阵相乘,即C=A*B,就被定义为二维矩阵。

2、如果不是这个情况,MATLAB就返回一个错误信息。只有一个例外就是这两个矩阵之一是1x1,如一个标量,那么MATLAB是可以接受的、在MATLAB中,乘法的运算符是*。

3、因此,命令是C=A*B。在矩阵乘法运算中A*B与B*A是不同的(线性代数知识),若只是矩阵A、B对应元素相乘,则是A.*B(乘号前面加个点.)。

温馨提示:答案为网友推荐,仅供参考
相似回答