查看: 697|回复: 5|关注: 0

[已解决] 警告: 复数 X 和/或 Y 参数的虚部已忽略

[复制链接]

新手

7 麦片

财富积分


050


1

主题

3

帖子

0

最佳答案
本帖最后由 十里东风化 于 2019-12-24 21:27 编辑

syms t;
p=pi/3*t;
h=90*sin(pi/3*t);
x2=(470^2*h)^(1/2);
x1=90*cos(pi/3*t);
s=x1+x2;
s2=diff(s,t,1);
s3=diff(s2,t,1);
t=0:0.01:6;
s1=eval(s);
s2=eval(s2);
s3=eval(s3);
figure(1);
plot(t,s1);
xlabel('时间t')
ylabel('位移x')
title('位移-时间曲线')  
figure(2);
plot(t,s2);
xlabel('时间t ')
ylabel('速度v')
title('速度-时间曲线')  
figure(3);
plot(t,s3);
xlabel('时间t ')
ylabel('加速度a')
title('加速度-时间曲线')
请问为什么会报错,报错内容为(红色字体处):
警告: 复数 X 和/或 Y 参数的虚部已忽略
> In qubinghuakuai (line 14)
警告: 复数 X 和/或 Y 参数的虚部已忽略
> In qubinghuakuai (line 19)
警告: 复数 X 和/或 Y 参数的虚部已忽略
> In qubinghuakuai (line 24)

论坛优秀回答者

0

主题

674

帖子

123

最佳答案
  • 关注者: 26
发表于 2019-12-25 09:16:02 | 显示全部楼层 |此回复为最佳答案
将s1=eval(s);
s2=eval(s2);
s3=eval(s3);
改为
s1=real(eval(s));
s2=real(eval(s2));
s3=real(eval(s3));
试试

新手

7 麦片

财富积分


050


1

主题

3

帖子

0

最佳答案
 楼主| 发表于 2019-12-25 09:19:02 | 显示全部楼层
20141303 发表于 2019-12-25 09:16
将s1=eval(s);
s2=eval(s2);
s3=eval(s3);

虽然已经不再报错了,但是画出来的图像仍然与之前报错的图像一致.....

论坛优秀回答者

0

主题

674

帖子

123

最佳答案
  • 关注者: 26
发表于 2019-12-25 09:26:41 | 显示全部楼层
图像由你定义的函数决定,如果图像不对,只能是你定义的函数与实际要画的函数不一致,自己仔细检查检查

新手

7 麦片

财富积分


050


1

主题

3

帖子

0

最佳答案
 楼主| 发表于 2019-12-25 09:27:55 | 显示全部楼层
20141303 发表于 2019-12-25 09:26
图像由你定义的函数决定,如果图像不对,只能是你定义的函数与实际要画的函数不一致,自己仔细检查检查 ...

好的,感谢:loveliness:

论坛优秀回答者

0

主题

2054

帖子

305

最佳答案
  • 关注者: 55
发表于 2019-12-25 09:43:49 | 显示全部楼层
你计算出来的数值虚部太小,所以被忽略,一般都是取有具体物理意义的解
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

快速回复 返回顶部 返回列表