首頁  >  文章  >  後端開發  >  python能解微分方程嗎

python能解微分方程嗎

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼原創
2019-06-18 15:11:105369瀏覽

Sympy

Sympy是數學符號庫(sym代表了symbol,符號),包括了積分,微分方程等各種數學運算方法,為python提供了強大的數學運算支援。對於影像來說,雖然都是做離散的計算,操作最多的還是numpy裡的數組,但實際上,這個庫包含了積分微分,三角等最基本的數學運算,可以說是工科最基本的,用起來媲美matlab。

python能解微分方程嗎

sympy安裝

sudo pip install sympy 或sudo pip3 install sympy

如果你用anaconda則conda install sympy

相關推薦:《python影片

odeint()函數

odeint()函式是scipy函式庫中一個數值解微分方程的函數
odeint()函數需要至少三個變量,第一個是微分方程函數,第二個是微分方程初值,第三個是微分的自變量。

範例:

#y"+a*y'+b*y=0 
from scipy.integrate import odeint        #使用odeint之前,首先从scipy.integrate中调用它from pylab import *
def deriv(y,t):        # 返回值是y和y的导数组成的数组
    a = -2.0
    b = -0.1
    return 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能解微分方程嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn