Matlab中点乘和乘的区别

时间:2024-05-19 10:32:29

 

1,乘和点乘 

1.1,在进行数值运算和数值乘矩阵时,

这两种没有区别,例如:a*b=a.*b; a*B=a.*B; B*a=B.*a(其中小写字母表示数值,大写字母表示矩阵

1.2 ,在进行矩阵和矩阵运算时,

*表示普通的矩阵乘法,要求前面矩阵的列数等于后面矩阵的行数;

.*表示两个矩阵对应元素相乘,要求两个矩阵行数列数都相等。

例如A,B分别为两个矩阵,则:

A.*B表示的是两个矩阵的对应元素相乘,其中生成的同阶矩阵C的对应的矩阵元素为:C(i,j)=A(i,j)*B(i,j);

而如果A*B的话,则是正常的矩阵相乘,并非是对应的元素相乘。

例如:

Matlab中点乘和乘的区别

2, 除与点除

2.1,数值运行时,这两种没有区别,例如:a/b=a./b 

Matlab中点乘和乘的区别
2.2,数值与矩阵运行时,要分数值在前还是在后。 
  1)数值在前,只能用./ 

Matlab中点乘和乘的区别
  2)数值在后,这两种一样:A/b=A./b 

Matlab中点乘和乘的区别
2.3, 

A./B表示A矩阵与B矩阵对应元素相除,所以要求A,B行数列数相等。
Matlab中点乘和乘的区别

 

矩阵除矩阵,A/B可粗略地看作A*inv(B);

 在可逆形式下转换成逆矩阵,右除对右边矩阵逆,左除对左边矩阵逆。
        1.     C/B=C*(inv(B))  (C右除B等于C乘以B的逆)
        2.     A\C=inv(A)*C (A左除C=A的逆乘以C) 

Matlab中点乘和乘的区别

Matlab中点乘和乘的区别