打印

(转)matlab *与.*的区别

[复制链接]
398|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
(1)   " * "   即矩阵乘法,两个矩阵必须满足左边矩阵的列数等于右边矩阵的行数,如:
A(m,k) * B(k,n) = C(m,n)
(2)   " .* "  即对应元素相乘,两个矩阵必须满足规格相同,如:
A(m,n) * B(m,n) = C(m,n) = { a(i,j)*b(i,j) }
在通过遍历一个数组的每个元素求出每个值对应的函数值时,在MATLAB中这样很不明智,而是应将这个数组作为1*n的矩阵,将函数作用在该矩阵上求得一个对应的1*n的函数值矩阵。
但在使用时,应注意若有" x^k " 出现时,需要使用" x.^k ",否则(计算矩阵时)报错。
下面是几个计算的例子
A*A 与 A.*A(即A^2与A.^2):
   
可明显看到不同。
但如果是单个数值乘矩阵时,则两种都可以:

相关帖子

沙发
gaoyang9992006| | 2019-2-17 15:35 | 只看该作者
运算对象是矩阵(数组)的都是用点计算符号。单一元素计算直接使用计算符。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1839

主题

6409

帖子

30

粉丝