Ode23尚未完成执行

冲动

我是Matlab的新手,正在尝试求解常数n的微分方程y'=-y / n。我在这样的脚本中定义函数:

function dv = lc(v1)
dv = -v1/(0.0000047*0.000001);

然后尝试解决此问题:

[t,v] = ode23('lc',[0 5],1)

但是该操作永远不会完成执行。它只是吞噬了我的RAM,在角落里说“忙”,直到我按ctrl + c终止它为止。我在这里做错了什么?

埃利·萨多夫(Eli Sadoff)

您是下溢的受害者。发生的情况是没有无限数量的浮点数(请参阅浮点数学是否已损坏?),因此结果并不完全精确。当数字足够小时,计算机就有可能将其视为数字0matlab用于的ode23过程基于有限差分,其中涉及除法。考虑到下溢错误,可能是按0问题进行除法,或者可能是溢流,且除数非常小,结果趋于无穷大,无法满足求解条件。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章