【问题标题】:ode45 Matlab NaN appears after a certain elapsed timeode45 Matlab NaN 在经过一定时间后出现
【发布时间】:2014-12-14 00:41:38
【问题描述】:

您好,我在 matlab 上使用 ode45 来求解位置与时间的关系,并且在经过一定时间后,NaN 显示为我的位置值。但是,当我通过将最后一个非 NaN 值复制粘贴到函数中来尝试时,我确实得到了结果,而不是 NaN。为了找出它可能来自哪里,我将 ode45 分成两个 ode45,第一个从 t0 到问题开始的时间,第二个在剩余时间。第一个 ode45 工作正常,第二个只输出前两次的值,所以比我只使用一个 ode45 的情况多一个位置,尽管我实际上没有改变任何东西。

【问题讨论】:

  • 如果没有看到您的代码,我们将无能为力。 NaN 通常是由于 0/0Inf/InfInf-Inf 而出现的。您的系统可能不稳定,您可能有错误,或者可能可能重新排列操作顺序以避免这些情况。

标签: matlab


【解决方案1】:

我无法告诉你为什么会这样。但是如果你手动运行应该可以弄清楚

dbstop in FILENAME if naninf

当出现 NaN 时,它将进入调试器。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-15
    • 1970-01-01
    • 1970-01-01
    • 2012-02-21
    • 1970-01-01
    相关资源
    最近更新 更多