目前,我确实使用assimulos 求解器套件 https://jmodelica.org/assimulo/tutorial_imp.html求解 0 = F(t, y(t), y'(t)) 形式的隐式微分方程。我想使用本机 scipy 安装附带的求解器,并查看了文档scipy.integrate.solve_ivp https://jmodelica.org/assimulo/tutorial_imp.html。文档说求解器求解以下形式的系统:
解决 ODE 系统的初值问题。
该函数对给定初始值的常微分方程组进行数值积分dy / dt = f(t, y)
y(t0) = y0
我确实怀念解决以下形式的系统的能力dy / dt = f(t, y, y')
。这可能吗?scipy.integrate.solve_ivp
?
这样的方程称为微分代数方程 https://en.wikipedia.org/wiki/Differential-algebraic_system_of_equations(DAE)。据我所知,SciPy 没有内置的 DAE 求解器。
这个答案 https://stackoverflow.com/a/23580269/857390 to 这个类似的问题 https://stackoverflow.com/q/23578596/857390提供了一个使用示例fsolve
结合解决问题的代数部分odeint
。这可能适用于您的问题。
您可能还对常微分方程包 https://github.com/bmcage/odes,它提供了额外的求解器作为 SciPy 的扩展,包括 DAE 求解器。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)