我用solve_ivp
和BDF
方法来求解一个复杂的常微分方程组.
我在不同的系统参数下进行了测试.通常需要几秒钟才能得到结果.但是,对于其中一种情况,它继续以超小步长运行(小于1e—8).这可能会导致采取无限制的步骤,可能需要数天到数周的时间才能获得结果.(t
在约20分钟内从0.00017增加到0.00020,而t_end=100
)
为了避免在这种情况下无休止地运行,我try 使用超时函数multiprocessing
.它适用于其他示例,但未能终止solve_ivp
.
是否有其他解决方案可以终止ODE集成(在给定的时间或步骤数)?