在matlab中,.*与*的区别

参考连接:https://www.php.cn/faq/467094.html
无区别的情况
(1)在进行数之间的运算时“.”和“”是没有区别的,都是表示普通的乘法运算。例:m = 2,n = 3,m.n = 6, mn = 6。

意义不同的情况
(1)在进行矩阵运算时,“.”和“”的意义截然不同。
假设a为3×3阶矩阵

image.png

b也为3×3阶矩阵
image.png

那么a.*b代表的含义是将两个矩阵中的相同位置的元素依次相乘,得到新的结果。


image.png

而ab会得到一个3×3的新矩阵c:
(1)c的第1行、第1列的元素,是用a第1行与b第1列的元素依次相乘得到。
即:11=1
0.5+21.5+32.5

image.png

(2)c的第2行、第1列的元素,是用a第2行与b第1列的元素依次相乘得到。
即:13.25=1.50.5+2.51.5+3.5*2.5

image.png

(3)c的第3行、第1列的元素,是用a第3行与b第1列的元素依次相乘得到。
即:18.75=0.50.5+41.5+5*2.5

image.png

注意:使用ab时,需要满足a是m×n阶矩阵, b是n×p阶矩阵,ab的结果是一个m×p阶矩阵。

你可能感兴趣的:(在matlab中,.*与*的区别)