首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当一阶系统的输入为0-求解器设置时,其输出不会变为0?

当一阶系统的输入为0-求解器设置时,其输出不会变为0?
EN

Stack Overflow用户
提问于 2014-01-22 08:53:25
回答 2查看 65关注 0票数 0

我正在模拟以下一阶系统(ode45 10^-3相对公差-默认设置):

范围(洋红方波,黄色滤光片输出):

脉冲发生器产生方波。有趣的是,当输入为0(当方波返回到0时),一阶系统的输出不会变成0。

我想这是个解决问题的问题。你以前见过这个吗?我的代码中有一些0的比较,所以我应该将它们更改为一些容忍级别。这是个好办法吗?还是我应该更改解算器设置?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-01-23 03:43:14

正如另一个答案所建议的,这里的问题是你让求解者占用了太多的时间步骤。默认的“最大步长”设置为“自动”。这意味着步骤大小为(停止时间-启动时间)/50。您似乎设置了一个很大的停止时间,因此最大步长非常大。

如果您需要长时间运行模拟,那么您需要将步骤大小从默认的更改为更小的步骤。

票数 1
EN

Stack Overflow用户

发布于 2014-01-22 09:57:23

我想这是因为方波的频率太快了,没有足够的时间让系统动力学回到零。试着减少方波的频率。

您还可能希望在除默认设置之外的求解器设置中指定最大步长,以提高绘图的分辨率(例如,1s)。默认的最大步长是模拟停止时间除以20,因此可以相当粗糙。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21278201

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档