scipy.integrate.odeint根据时间步长失败

时间:2016-11-09 20:03:27

标签: python scipy differential-equations odeint

我将python用于科学应用,尤其是用于求解微分方程。我已经在简单方程系统上成功使用了odeint函数。

现在我的目标是解决一个包含300多个方程的相当复杂的系统。此时,只要odeint中的时间步长等于或小于1e-3,t-array函数就会给出合理的结果。但我需要更大的时间步骤,因为系统必须集成几千秒。更大的时间步骤产生“超额工作......”错误。

有没有人有odeint的经验,可以告诉我,为什么会出现这种情况,尽管odeint函数似乎会自动选择其时间步长,然后显示与给定时间步长相匹配的结果由我?

我根本不明白为什么会这样。我想我可以通过多次集成来解决这个问题,但也许有人知道更好的解决方案。我在其他地方已经有解决方案的情况下提前道歉,我还没有看到它。

0 个答案:

没有答案