为什么有效的查找语句在MATLAB中出错?

时间:2010-05-04 18:54:44

标签: matlab plot

来自question

为什么这两个解决方案不起作用,虽然它对我来说非常有用:

>> t = -pi:0.1:pi;
>> r = ((sin(t)*sqrt(cos(t)))*(sin(t) + (7/5))^(-1)) - 2*sin(t) + 2 ;
??? Error using ==> mtimes
Inner matrix dimensions must agree.

>> t = -pi:0.1:pi;
>> r = ((sin(t).*sqrt(cos(t))).*(sin(t) + (7/5)).^(-1)) - 2*sin(t) + 2 ;
>> plot(r,t)
??? Error using ==> plot
Vectors must be the same lengths.

以上是什么问题?

1 个答案:

答案 0 :(得分:4)

*运算符是矩阵乘法运算符,它要求其操作数具有匹配的内部矩阵维度。 .*运算符是逐元素乘法运算符,它要求其操作数具有相同的大小(或者一个是标量),因此它可以对每个匹配的元素对执行乘法运算。有关详细信息,请参阅this link

另外,我没有得到你在运行第二个解决方案时所做的绘图错误。我刚收到这个警告:

Warning: Imaginary parts of complex X and/or Y arguments ignored