- 编辑:飞飞系统
- 时间:2023-10-11
matlab中.*和*有什么区别?数字和数字的运算没有区别,但矩阵和数组运算有所不同。*为矩阵点乘,即数组运算,*为矩阵乘法。朋友们想知道matlab中.*和*有什么区别。下面小编就来介绍一下matlab中.*和*的区别。
matlab中.*和*的区别介绍
“.*”和“*”在数字之间进行运算时没有区别,都代表普通的乘法运算。示例:m=2、n=3、m.*n=6、m*n=6。
矩阵之间进行运算时,“.*”和“*”的含义不同。假设a和b代表两个矩阵,a*b代表矩阵a和矩阵b的矩阵乘法,a.*b代表矩阵a中的元素和矩阵b中的元素依次相乘,结果将作为新矩阵中相同位置的元素。
* 是矩阵乘法,如果A是m*n维矩阵,B是n*p维矩阵,则A*B是m*p维矩阵
.*是点乘运算,指的是两个矩阵中对应元素的乘法运算。要求两个矩阵的维数相同
MATLAB 使用特殊符号来区分矩阵运算和数组运算。当需要区分两者时,请在符号前加一个点以表明这是一个数组操作(例如,*)。线和面展示了一些常见的数组和矩阵运算。
数组加法:A+B,数组加法与矩阵加法相同。
数组减法:A-B,数组减法与矩阵减法相同。
数组乘法:A.*B,A和B的元素一一相乘,两个数组必须形状相同,或者其中一个必须是标量。
矩阵乘法:A*B,A和B的矩阵乘法,A的列数必须与B的行数相同。
数组右除:A./B,A和B的元素对应一一划分:A(i,j)/B(i,j)两个数组之间必须形状相同,或者其中之一为一个标量。
数组左除:A.\B,A和B的元素对应一一除:B(i,j)/A(i,j) 两个数组必须形状相同,或者其中一个是a标量。
矩阵右除:A/B矩阵除法,相当于A*inv(B),其中inv(B)是B的逆。
矩阵左除:A\B矩阵除法,相当于inv(B)*A,inv(A)是A的逆。
数组下标操作:A.^B,AB中的元素一一操作如下:A(i,j)^B(i,j),A(i,j)/B(i,j)之间两个数组必须具有相同的形状,或者其中之一是标量。