matlab画图x = 0:0.01:10; y =sin(2*x)*cos(100*x)/(2*x); plot(x, y)这个程序为什么matlab总是报错?哪里错了?求大神赐教

来源:学生作业学帮网 编辑:学帮网 时间:2024/04/29 01:44:36

matlab画图
x = 0:0.01:10;
y =sin(2*x)*cos(100*x)/(2*x);
plot(x, y)
这个程序为什么matlab总是报错?哪里错了?
求大神赐教

matlab默认的运算都是矩阵运算,显然两个矩阵相乘必须前一个的列数和后一个的行数相同才可计算,但你这里sin(2*x)和cos(100*x)是两个1行1001列的矩阵,当然无法相乘,你希望做的是元素与元素之间的运算,这就是点运算.*/^都有相应的点运算.* 、./和.^以区别于矩阵运算.
因为矩阵的加减法本来就是对应元素之间相加减,因此不必写成点运算的形式,直接加减即可.因此点运算只有.* 、./和.^三种.
当然,数与一个矩阵之间的加减和乘运算,或者一个矩阵除以一个数的定义就是这个数分别与矩阵中元素进行计算,因此也不必额外定义点运算. 这就是2*x不必写成2.*x的原因.