Python2.7:我可以在ODE求解器中设置雅可比行进式正向近似的步长吗?

时间:2018-08-14 15:09:04

标签: python-2.7 precision ode differential-equations odeint

我有一个耦合常微分方程的系统。自变量是时间t。

为了评估某些派生函数,我需要使用根查找,求解其他ODE等。 (从计算成本的角度来看)仅以一定的精度评估这些功能是可行的。因此,在每个时间步长中,我都有一些数字上的噪音。

我尝试使用 scipy.integrate.odeint scipy.integrate.solve_ivp (使用“ LSODA”方法解决此ODE系统),因为问题很严重,其他解决僵化问题的求解器将失败)。但是,由于数值噪声,似乎求解器无法计算雅可比行列式(我让求解器按有限差分近似)。使用scipy.optimize.fsolve计算根时,我遇到了类似的问题,并通过将 epsfcn (请参见下文)设置为较高的值来解决此问题。

我想知道我是否可以为python中的ODE求解器做类似的事情。似乎 odeint solve_ivp 没有这样的可选参数,但是也许有办法解决吗?

感谢您的帮助!

(来自fsolve的scipy文档: epsfcn:浮动,可选 Jacobian的正向差异近似的合适步长(对于fprime = None)。如果epsfcn小于机器精度,则假定函数中的相对误差约为机器精度。

0 个答案:

没有答案