matlab里面语句y2=exp(-0.5*t2).*sin(5*t2+1) 两个函数相乘,“*”前面为啥有个点

如题所述

如果不加点,变量就必须是一个数;
加了点之后,变量就可以取成一个向量或矩阵,运算法则是每个分量对应都做这个运算,比如你可以给t2取上一组值,就同时可求出y2对应的那一组值。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-01-03
t2如果是向量(数组)的话,则exp(-0.5*t2)与sin(5*t2+1)都是有多个元素的行向量
想实现两个航向量对应元素相乘,必须在第一个元素后面加点.
比如A.*B
这样输出的y2也是同样大小的数组。
第2个回答  2012-01-03
matlab的运算主要以矩阵形式进行,点乘是按数值进行。
如a=[1,2;2,3],b=[1,1;1,2]
若a*b=[1*1+1*1,1*1+2*2;2*1+3*1,2*1+3*2]=[2,5;5,8]
而a.*b=[1*1,2*1;2*1,3*2]=[1,2;2,6].
第3个回答  2012-01-03
三国演
第4个回答  2012-01-03
只用了
大家正在搜