我有一个非线性微分系统:
f''(t)=r(f(t))
和g''(t)=s(f(t),g(t))
其中s(f(t),g(t))
可能是s(f(t),g(t))=f(t)*g(t)
或s(f(t),g(t)) = cos(f(t))*sin(g(t))
...,我们知道g和s。我想用Python解决这个系统,但我不知道如何。用scipy.integrate.odeint
可以很容易地解决第一个方程式,但是我不知道如何解决整个系统。
答案 0 :(得分:1)
如果已将r
和s
作为函数,则可以按以下方式构建系统
def derivs(t,u): f,g, df, dg = u; return [ df, dg, r(f), s(f,g) ]
和
u = odeint(derivs, u0, t_array, tfirst=True)
f,g, df, dg = u.T
plt.plot(t_array,f, t_array,g)
或您想对解决方案进行的任何操作。