matlab 计算两个矩阵相乘
* 表示矩阵与矩阵相乘,满足线性代数上学的矩阵与矩阵的乘法,*表示矩阵中元素与元素相乘,这两个矩阵的维数必需相同。
例如:A.*B,那么A是m行n列的话,B必须也是m行n列。其他的如: “/ 与 ./ ” ,“.^ 与 ^ ”的含义都是一样的。
扩展资料
乘积
Kronecker积是两个任意大小的矩阵间的运算,表示为 。克罗内克积也成为直积或张量积 [4] .以德国数学家利奥波德·克罗内克命名。计算过程如下例所示:
注意事项
当矩阵A的列数等于矩阵B的行数时,A与B可以相乘。
矩阵C的行数等于矩阵A的行数,C的列数等于B的列数。
乘积C的第m行第n列的元素等于矩阵A的第m行的元素与矩阵B的第n列对应元素乘积之和。
乘积-哈达马积( hadamard product)
其元素定义为两个矩阵对应元素的乘积
例如
参考资料:百度百科 矩阵乘法
.* 表示矩阵与矩阵相乘,满足线性代数上学的矩阵与矩阵的乘法,*表示矩阵中元素与元素相乘,这两个矩阵的维数必需相同。
例如: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(乘号前面加个点.)。
.*表示矩阵中元素与元素相乘,这两个矩阵的维数必需相同。
例如:A.*B,那么A是m行n列的话,B必须也是m行n列。
其他的如: “/ 与 ./ ” ,“.^ 与 ^ ”的含义都是一样的
谢谢,这个问题解决了
那请问,
w =
0.2069
0.0690
0.4138
0.2069
0.1034
想求w逆,怎么求?inv做不出来,