Python 中的Sympy詳細(xì)使用_第1頁
Python 中的Sympy詳細(xì)使用_第2頁
Python 中的Sympy詳細(xì)使用_第3頁
Python 中的Sympy詳細(xì)使用_第4頁
Python 中的Sympy詳細(xì)使用_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第Python中的Sympy詳細(xì)使用3、求和

importsympy

#定義變量

n=sympy.Symbol('n')

f=2*n

#前面參數(shù)放函數(shù),后面放變量的變化范圍

s=sympy.summation(f,(n,1,100))

print(s)

解帶有求和式的方程:

#解釋一下,i可以看做是循環(huán)變量,就是x自己加五次

#先定義變量,再寫出方程

x=sympy.Symbol('x')

i=sympy.Symbol('i')

f=sympy.summation(x,(i,1,5))+10*x-15

result=sympy.solve(f,x)

print(result)

4、求極限(注意,math包中sin和很多數(shù)學(xué)函數(shù)會報錯,要用sympy中的,無窮大用sympy.oo表示)

#求極限使用limit方法

#定義變量與函數(shù)

x=sympy.Symbol('x')

f1=sympy.sin(x)/x

f2=(1+x)**(1/x)

f3=(1+1/x)**x

#三個參數(shù)是函數(shù),變量,趨向值

lim1=sympy.limit(f1,x,0)

lim2=sympy.limit(f2,x,0)

lim3=sympy.limit(f3,x,sympy.oo)

print(lim1,lim2,lim3)

5、求導(dǎo)

#求導(dǎo)使用diff方法

x=sympy.Symbol('x')

f1=2*x**4+3*x+6

#參數(shù)是函數(shù)與變量

f1_=sympy.diff(f,x)

print(f1_)

f2=sympy.sin(x)

f2_=sympy.diff(f2,x)

print(f2_)

y=sympy.Symbol('y')

f3=2*x**2+3*y**4+2*y

#對x,y分別求導(dǎo),即偏導(dǎo)

f3_x=sympy.diff(f3,x)

f3_y=sympy.diff(f3,y)

print(f3_x)

print(f3_y)

6、求定積分

#求定積分用integrate方法

x=sympy.Symbol('x')

f=2*x

#參數(shù)傳入函數(shù),積分變量和范圍

result=egrate(f,(x,0,1))

print(result)

上面的求法有點爛,難的就罷工不干了,我丟,還是喜歡scipy,如下:/scipy18/scipy還能解決很多數(shù)值計算,包括多重積分。

fromscipyimportintegrate

deff(x):

returnx+1

v,err=integrate.quad(f,1,2)#err為誤差

print(v)

以下計算多重積分:

#求多重積分,先求里面的積分,再求外面的

x,t=sympy.symbols('xt')

f1=2*t

f2=egrate(f1,(t,0,x))

result=egrate(f2,(x,0,3))

print(result)

7、求不定積分

#求不定積分其實和定積分區(qū)別不大

x=sympy.Symbol('x')

f=(sympy.E**x+2*x)

f_=egrate(f,x)

print(f_)

8、數(shù)學(xué)符合補(bǔ)充:

#數(shù)學(xué)符合

#虛數(shù)單位i

sympy.I

#自然對數(shù)低e

sympy.E

sympy.oo

sympy.pi

#求n次方根

sympy.root(8,3)

sympy.log(1024,2)

sympy.factorial(4)

#三角函數(shù)

sympy.sin(sympy.pi)

sympy.tan(sympy.pi/4)

sympy.cos(sympy.pi/2)

9、公式展開與折疊

x=sympy.Symbol('x')

#公式展開用expand方法

f=(1+2*x)*x**2

ff=sympy.expand(f)

print(ff)

#公式折疊用factor方法

f=x**2+1+2*x

ff=sympy.factor(f)

print(ff)

10、公式分離與合并(分?jǐn)?shù)的分離與合并)

x=sympy.Symbol('x')

y=sympy.Symbol('y')

#公式展開用apart方法,和expand區(qū)別不是很大,常用于分?jǐn)?shù)進(jìn)行分離

f=(x+2)/(x+1)

ff=sympy.apart(f)

print(ff)

#公式折疊用tegother方法

f=(1/x+1/y)

ff=sympy.together(f)

print(ff)

11、表達(dá)式簡化

#simplify()普通的化簡

simplify((x**3+x*

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論