ZKX's LAB

Python解随机微分方程 如何使用python的sympy模块解高阶微分方程

2020-07-21知识10

如何使用python的sympy模块解高阶微分方程,ytho是一个很有趣的语言,可以在命令行窗口运行。ytho中有很多功能强大的模块,这篇经验告诉你,如何使用ytho的ymy模块求解高阶。python 的scipy 里的 odeint 这个求微分方程的函数怎么用啊 scipy中提供了用于解常微分方程的函数odeint(),完整的调用形式如下:scipy.integrate.odeint(func,y0,t,args=(),Dfun=None,col_deriv=0,full_output=0,ml=None,mu=None,rtol=None,atol=None,tcrit=None,h0=0.0,hmax=0.0,hmin=0.0,ixpr=0,mxstep=0,mxhnil=0,mxordn=12,mxords=5,printmessg=0)实际使用中,还是主要使用前三个参数,即微分方程的描写函数、初值和需要求解函数值对应的的时间点。接收数组形式。这个函数,要求微分方程必须化为标准形式,即dy/dt=f(y,t,)。from scipy import odeinty=odeint(dy/dt=r*y*(1-y/k),y(0)=0.1,t)对于微分方程全还给老师了,http://hyry.dip.jp:8000/pydoc/index.html这个地址有很多关于python做科学计算的文档,你可以去查查有没有专门画微分方程相图或方向场的软件,或者用Python如何实现? 有一个三变量(满足$x+y+z=1$)的微分方程组,有没有专门画相图或方向场的软件呢?另,我用python画了图…python中如何求微分方程的特解?谢谢 #y\"+a*y'+b*y=0from scipy.integrate import odeintfrom pylab import*def deriv(y,t):#返回值是y和y的导数组成的数组a=-2.0b=-0.1return array([y[1],a*y[0]+b*y[1]])time=linspace(0.0,50.0,1000)yinit=array([0.0005,0.2])#初值y=odeint(deriv,yinit,time)figure()plot(time,y[:,0],label='y')#y[:,0]即返回值的第一列,是y的值。label是为了显示legend用的。plot(time,y[:,1],label=\"y'\")#y[:,1]即返回值的第二列,是y’的值xlabel('t')ylabel('y')legend()show()

#python函数#微分方程#python

随机阅读

qrcode
访问手机版