第2章MATLAB符號計(jì)算尹_第1頁
第2章MATLAB符號計(jì)算尹_第2頁
第2章MATLAB符號計(jì)算尹_第3頁
第2章MATLAB符號計(jì)算尹_第4頁
第2章MATLAB符號計(jì)算尹_第5頁
已閱讀5頁,還剩77頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、第第2章章 MATLAB符號計(jì)算符號計(jì)算2.1 符號對象符號對象2.2 符號微積分符號微積分2.3 級級 數(shù)數(shù)2.4 符號方程求解符號方程求解2.5 符號函數(shù)的繪圖函數(shù)符號函數(shù)的繪圖函數(shù)2.6 圖示化函數(shù)計(jì)算器圖示化函數(shù)計(jì)算器由于在數(shù)學(xué),力學(xué),物理等各科研,工程應(yīng)用中由于在數(shù)學(xué),力學(xué),物理等各科研,工程應(yīng)用中不僅僅存在數(shù)值運(yùn)算的問題,還有符號運(yùn)算的問題,不僅僅存在數(shù)值運(yùn)算的問題,還有符號運(yùn)算的問題,為此為此MathWorks公司于公司于1993年從加拿大滑鐵盧大學(xué)年從加拿大滑鐵盧大學(xué)購得了購得了Maple使用權(quán),使用權(quán),開發(fā)了開發(fā)了Symbolic Math Toolbox工具箱工具箱。 ma

2、ple(maplestatement) maple(denom(x2+4/3)%denominator Symbolic Math Toolbox符號運(yùn)算工具包通過符號運(yùn)算工具包通過調(diào)用調(diào)用Maple軟件實(shí)現(xiàn)符號計(jì)算的。軟件實(shí)現(xiàn)符號計(jì)算的。maple軟件軟件主要功能是符號運(yùn)算,它占據(jù)符主要功能是符號運(yùn)算,它占據(jù)符號軟件的主導(dǎo)地位。號軟件的主導(dǎo)地位。什么是符號運(yùn)算什么是符號運(yùn)算所謂符號計(jì)算是指在運(yùn)算時(shí)所謂符號計(jì)算是指在運(yùn)算時(shí),無須事先對變量無須事先對變量賦值賦值,而將所得到結(jié)果以標(biāo)準(zhǔn)的符號形式來表而將所得到結(jié)果以標(biāo)準(zhǔn)的符號形式來表示。示。特點(diǎn):特點(diǎn): 運(yùn)算對象可以是沒賦值的符號變量運(yùn)算對象可以是

3、沒賦值的符號變量 可以獲得任意精度的解可以獲得任意精度的解與數(shù)值運(yùn)算的區(qū)別與數(shù)值運(yùn)算的區(qū)別 數(shù)值運(yùn)算中必須先對變量賦值數(shù)值運(yùn)算中必須先對變量賦值,然后才能,然后才能參與運(yùn)算。參與運(yùn)算。 2.1 符號對象符號對象2.1.1 建立符號對象建立符號對象1建立符號變量和符號常量建立符號變量和符號常量 參與符號運(yùn)算的對象可以是符號變量、符號表達(dá)參與符號運(yùn)算的對象可以是符號變量、符號表達(dá)式或符號矩陣。式或符號矩陣。 f = sin(x)+5x f 符號變量名符號變量名 sin(x)+5x 符號表達(dá)式符號表達(dá)式 符號標(biāo)識符號標(biāo)識v符號表達(dá)式一定要用符號表達(dá)式一定要用 單引號括起來單引號括起來matlab才才

4、能識別。能識別。 的內(nèi)容可以是符號表達(dá)式,也可以是符號的內(nèi)容可以是符號表達(dá)式,也可以是符號方程。方程。例:例: f1=a x2+b x+c 二次三項(xiàng)式二次三項(xiàng)式 f2= a x2+b x+c=0 方程方程 f3=Dy+y2=1 微分方程微分方程符號表達(dá)式或符號方程可以賦給符號變量,以符號表達(dá)式或符號方程可以賦給符號變量,以后調(diào)用方便;也可以不賦給符號變量直接參與運(yùn)后調(diào)用方便;也可以不賦給符號變量直接參與運(yùn)算算MATLAB提供了兩個(gè)建立符號對象的函數(shù):提供了兩個(gè)建立符號對象的函數(shù):sym和和syms,兩個(gè)函數(shù)的用法不同。,兩個(gè)函數(shù)的用法不同。(1) sym函數(shù)函數(shù) sym函數(shù)的主要功能是創(chuàng)建單個(gè)

5、符號變量,以便進(jìn)函數(shù)的主要功能是創(chuàng)建單個(gè)符號變量,以便進(jìn)行符號運(yùn)算,也可以用于創(chuàng)建符號表達(dá)式或符號行符號運(yùn)算,也可以用于創(chuàng)建符號表達(dá)式或符號矩陣。用矩陣。用sym函數(shù)創(chuàng)建符號變量的一般格式為:函數(shù)創(chuàng)建符號變量的一般格式為:符號變量名符號變量名=sym(符號字符串符號字符串)符號字符串可以是常量、變量、函數(shù)或表達(dá)式。符號字符串可以是常量、變量、函數(shù)或表達(dá)式。symbol 【例】作符號計(jì)算:【例】作符號計(jì)算: a,b,x,ya,b,x,y均為符號運(yùn)算量。在符號運(yùn)算前,應(yīng)均為符號運(yùn)算量。在符號運(yùn)算前,應(yīng)先將先將a,b,x,ya,b,x,y定義為符號運(yùn)算量定義為符號運(yùn)算量. .15byaxbyaxa=

6、sym(a); %定義定義a為符號運(yùn)算量,輸出變量為符號運(yùn)算量,輸出變量名為名為ab=sym(b);x=sym(x);y=sym(y); x,y=solve(a*x-b*y-1,a*x+b*y-5,x,y) %以以a,b為符號常數(shù),為符號常數(shù),x,y為符號變量即可得到方為符號變量即可得到方程組解:程組解:x =3/ay =2/bhelp solve SOLVE Symbolic solution of algebraic equations. SOLVE(eqn1,eqn2,.,eqnN) SOLVE(eqn1,eqn2,.,eqnN,var1,var2,.,varN) SOLVE(eqn1,

7、eqn2,.,eqnN,var1,var2,.varN) The eqns are symbolic expressions or strings specifying equations. The vars are symbolic variables or strings specifying the unknown variables. SOLVE seeks zeros of the expressions or solutions of the equations.【例】已知一復(fù)數(shù)表達(dá)式【例】已知一復(fù)數(shù)表達(dá)式 z=x+i*y, 試求其共軛試求其共軛復(fù)數(shù)復(fù)數(shù),并求該表達(dá)式與其共軛復(fù)數(shù)乘

8、積的多項(xiàng)式。并求該表達(dá)式與其共軛復(fù)數(shù)乘積的多項(xiàng)式。為了使乘積表達(dá)式為了使乘積表達(dá)式x2+y2非負(fù),這里,把變量非負(fù),這里,把變量x和和y定定義為實(shí)數(shù)。義為實(shí)數(shù)。x=sym(x, real);y=sym(y, real);z=x+i*y; %定義復(fù)數(shù)表達(dá)式定義復(fù)數(shù)表達(dá)式C=conj(z) %求共軛復(fù)數(shù)求共軛復(fù)數(shù)E=expand(z*conj(z) %求表達(dá)式與其共軛復(fù)數(shù)乘積的求表達(dá)式與其共軛復(fù)數(shù)乘積的多項(xiàng)式多項(xiàng)式ans =x2+y2conj conjugateconjugate complex number (2) syms函數(shù)函數(shù) 函數(shù)函數(shù)sym一次只能定義一個(gè)符號變量,使用不方便。一次只能定

9、義一個(gè)符號變量,使用不方便。MATLAB提供了另一個(gè)函數(shù)提供了另一個(gè)函數(shù)syms,一次可以定義,一次可以定義多個(gè)符號變量。多個(gè)符號變量。syms函數(shù)的一般調(diào)用格式為:函數(shù)的一般調(diào)用格式為:syms 符號變量名符號變量名1 符號變量名符號變量名2 符號變量名符號變量名n 用這種格式定義符號變量時(shí)不要在變量名上加字用這種格式定義符號變量時(shí)不要在變量名上加字符串分界符符串分界符(),變量間用空格而不要用逗號分隔。,變量間用空格而不要用逗號分隔。(3)默認(rèn)符號變量)默認(rèn)符號變量在數(shù)學(xué)表達(dá)式中,一般習(xí)慣于使用排在字母表在數(shù)學(xué)表達(dá)式中,一般習(xí)慣于使用排在字母表中前面的字母作為變量的系數(shù),而用排在后面的中前

10、面的字母作為變量的系數(shù),而用排在后面的字母表示變量。例如:字母表示變量。例如: f=ax2+bx+c表達(dá)式中的表達(dá)式中的a,b,c通常被認(rèn)為是常數(shù),用作變量通常被認(rèn)為是常數(shù),用作變量的系數(shù);而將的系數(shù);而將x看作自變量??醋髯宰兞俊@?,數(shù)學(xué)表達(dá)式例如,數(shù)學(xué)表達(dá)式 f=xn g=sin(at+b)根據(jù)數(shù)學(xué)式中表示自變量的習(xí)慣,默認(rèn)根據(jù)數(shù)學(xué)式中表示自變量的習(xí)慣,默認(rèn)a,b,n為符號常數(shù),為符號常數(shù),x,t為符號變量。為符號變量。若在若在MATLAB中表示上述表達(dá)式,首先用中表示上述表達(dá)式,首先用syms 函數(shù)定義函數(shù)定義a,b,n,t,x為符號對象。在進(jìn)為符號對象。在進(jìn)行導(dǎo)數(shù)運(yùn)算時(shí),由于沒有指定

11、符號變量,則系統(tǒng)行導(dǎo)數(shù)運(yùn)算時(shí),由于沒有指定符號變量,則系統(tǒng)采用數(shù)學(xué)習(xí)慣來確定表達(dá)式中的自變量,默認(rèn)采用數(shù)學(xué)習(xí)慣來確定表達(dá)式中的自變量,默認(rèn)a,b,n為符號常數(shù),為符號常數(shù),x,t為符號變量。為符號變量。即即 : 對函數(shù)對函數(shù)f求導(dǎo)為:求導(dǎo)為:df/dx 對函數(shù)對函數(shù)g求導(dǎo)為:求導(dǎo)為:dg/dt為了了解函數(shù)引用過程中使用的符號變量個(gè)數(shù)為了了解函數(shù)引用過程中使用的符號變量個(gè)數(shù)及變量名,可以用及變量名,可以用findsym函數(shù)查詢默認(rèn)的變量。函數(shù)查詢默認(rèn)的變量。該函數(shù)的引用格式為:該函數(shù)的引用格式為: findsym(f,n)說明:說明:f為用戶定義的符號函數(shù),為用戶定義的符號函數(shù),n為正整數(shù),表示

12、查詢變量的個(gè)數(shù)。為正整數(shù),表示查詢變量的個(gè)數(shù)。n=i,表示查詢表示查詢i個(gè)系統(tǒng)默認(rèn)變量。個(gè)系統(tǒng)默認(rèn)變量。n值省略時(shí)表值省略時(shí)表示查詢符號函數(shù)中全部系統(tǒng)默認(rèn)變量。示查詢符號函數(shù)中全部系統(tǒng)默認(rèn)變量。例:查詢下列符號函數(shù)中的系統(tǒng)默認(rèn)變量。例:查詢下列符號函數(shù)中的系統(tǒng)默認(rèn)變量。 f=xng=sin(at+b)syms a b n t x %定義符號變量定義符號變量f=xn; %給定符號函數(shù)給定符號函數(shù)g=sin(a*t+b);findsym(f,1) %在在f函數(shù)中查詢函數(shù)中查詢1個(gè)系統(tǒng)默認(rèn)變個(gè)系統(tǒng)默認(rèn)變量量ans= x %表示表示f函數(shù)中查詢的函數(shù)中查詢的1個(gè)系統(tǒng)默認(rèn)變個(gè)系統(tǒng)默認(rèn)變量為量為x。fin

13、dsym(g,3)ans = t,b,a2建立符號表達(dá)式建立符號表達(dá)式 符號表達(dá)式由符號變量、函數(shù)、算術(shù)運(yùn)算符等組符號表達(dá)式由符號變量、函數(shù)、算術(shù)運(yùn)算符等組成。符號表達(dá)式的書寫格式與數(shù)值表達(dá)式相同。成。符號表達(dá)式的書寫格式與數(shù)值表達(dá)式相同。例如例如,數(shù)學(xué)表達(dá)式數(shù)學(xué)表達(dá)式 其符號表達(dá)式為:其符號表達(dá)式為: (1+sqrt(5*x)/2 注意,在定義表達(dá)式前應(yīng)先將表達(dá)式中的字符注意,在定義表達(dá)式前應(yīng)先將表達(dá)式中的字符x定義為符號變量。定義為符號變量。251x建立符號表達(dá)式有以下建立符號表達(dá)式有以下3種方法:種方法:(1) 利用單引號來生成符號表達(dá)式。利用單引號來生成符號表達(dá)式。(2) 用用sym函

14、數(shù)建立符號表達(dá)式。函數(shù)建立符號表達(dá)式。(3) 使用已經(jīng)定義的符號變量組成符號表達(dá)式。使用已經(jīng)定義的符號變量組成符號表達(dá)式。 (1) 單引號生成符號表達(dá)式單引號生成符號表達(dá)式f=exp(x) f =exp(x) f=a*x2+b*x+c=0 f =a*x2+b*x+c=0f=D2y-2*Dy-3y=0 f =D2y-2*Dy-3y=0(2) 用用sym(s) 生成符號表達(dá)式生成符號表達(dá)式 f=sym(a b c; d e f )f = a, b, c d, e, f f=sym(ax-b=0)f = ax-b=0(3) 使用已經(jīng)定義的符號變量組成符號表達(dá)式使用已經(jīng)定義的符號變量組成符號表達(dá)式將表

15、達(dá)式中的自變量定義為符號變量后,賦值給將表達(dá)式中的自變量定義為符號變量后,賦值給符號函數(shù)名,即可生成符號函數(shù)。例如有一數(shù)學(xué)表達(dá)符號函數(shù)名,即可生成符號函數(shù)。例如有一數(shù)學(xué)表達(dá)式:式:其用符號表達(dá)式生成符號函數(shù)其用符號表達(dá)式生成符號函數(shù)fxy的過程為:的過程為: syms a b c x y %定義符號運(yùn)算量定義符號運(yùn)算量 fxy=(a*x2+b*y2)/c2 %生成符號函數(shù)生成符號函數(shù)222),(cbyaxyxf2.1.2 符號表達(dá)式運(yùn)算符號表達(dá)式運(yùn)算1符號表達(dá)式的四則運(yùn)算符號表達(dá)式的四則運(yùn)算 符號表達(dá)式的加、減、乘、除運(yùn)算可分別由符號表達(dá)式的加、減、乘、除運(yùn)算可分別由+、-、*、/、來實(shí)現(xiàn)。來

16、實(shí)現(xiàn)。a=sym(1/x,1/(x+1);1/(x+2),1/(x+3);b=sym(x,1;x+2,0);b-aab2. 符號表達(dá)式的復(fù)合函數(shù)運(yùn)算符號表達(dá)式的復(fù)合函數(shù)運(yùn)算composeCompose(f,g): f=f(x), g=g(y) 返回返回f(g(y)Compose(f,g,z): f=f(x), g=g(y) 返回返回f(g(z)Compose(f,g,x,z): f=f(x,t), g=g(y) 返回返回f(g(z),t) 即:即:x作為獨(dú)立變量作為獨(dú)立變量Compose(f,g,x,y,z): f=f(x,y,t) x,y作為獨(dú)立變量作為獨(dú)立變量 例:例:f=f(x,t) g

17、=g(y,u) 返回返回f(g(z),u),t) 例:例: syms x y z t f=1/x3 , g=tan(y) , h=xt compose(f,g) % 1/tan(y)3 compose(f,g,t) % 1/tan(t)3 compose(h,g,x,z) %tan(z)t compose(h,g,x,y,z) % tan(z)t3. 符號表達(dá)式的反函數(shù)運(yùn)算符號表達(dá)式的反函數(shù)運(yùn)算finversesyms x ; f=1/sin(x); finverse(f) % asin(1/x)f=x2+1;finverse(f)Warning: finverse(x2+1) is not

18、unique.ans =(-1+x)(1/2)4符號表達(dá)式的提取分子和分母運(yùn)算符號表達(dá)式的提取分子和分母運(yùn)算 如果符號表達(dá)式是一個(gè)有理分式或可以展開為有理如果符號表達(dá)式是一個(gè)有理分式或可以展開為有理分式,可利用分式,可利用numden函數(shù)來提取符號表達(dá)式中的函數(shù)來提取符號表達(dá)式中的分子或分母。其一般調(diào)用格式為:分子或分母。其一般調(diào)用格式為:n,d=numden(s) 該函數(shù)提取符號表達(dá)式該函數(shù)提取符號表達(dá)式s的分子和分母,分別將它的分子和分母,分別將它們存放在們存放在n與與d中。中。denominator numerator例:例: syms x y;n,d=numden(x/y+y/x)n=

19、x2+y2d=y*x5符號表達(dá)式的因式分解與展開符號表達(dá)式的因式分解與展開MATLAB提供了符號表達(dá)式的因式分解與展開的函提供了符號表達(dá)式的因式分解與展開的函數(shù),函數(shù)的調(diào)用格式為:數(shù),函數(shù)的調(diào)用格式為:factor(s):把多項(xiàng)式符號表達(dá)式:把多項(xiàng)式符號表達(dá)式s 分解為多個(gè)因式,分解為多個(gè)因式,各多項(xiàng)式的系數(shù)均為有理數(shù)。各多項(xiàng)式的系數(shù)均為有理數(shù)。expand(s):對符號表達(dá)式:對符號表達(dá)式s進(jìn)行展開。進(jìn)行展開。collect(s): 對符號表達(dá)式對符號表達(dá)式s合并同類項(xiàng)。合并同類項(xiàng)。collect(s,v):對符號表達(dá)式:對符號表達(dá)式s按變量按變量v合并同類項(xiàng)。合并同類項(xiàng)。 horner(s

20、): 將一般的符號表達(dá)式轉(zhuǎn)換成嵌套形式的將一般的符號表達(dá)式轉(zhuǎn)換成嵌套形式的符號表達(dá)式符號表達(dá)式Factor函數(shù)函數(shù) 因式分解因式分解例例: 將表達(dá)式將表達(dá)式(x9-1)分解為多個(gè)因式。分解為多個(gè)因式。syms xfactor(x9-1) Expand函數(shù)函數(shù) 對符號表達(dá)式進(jìn)行展開對符號表達(dá)式進(jìn)行展開例:例: f=(x-1)12; expand(f) Collect 函數(shù)函數(shù) 合并同類項(xiàng)合并同類項(xiàng) 例:例:syms xf=(x-1)2*(x-3)*(x-5)*(x-7);collect(f)f = -1/4*x*exp(-2*x)+3/16*exp(-2*x)collect(f,exp(-2*x

21、) Horner函數(shù)函數(shù) 將一般的符號表達(dá)式轉(zhuǎn)換成嵌套形將一般的符號表達(dá)式轉(zhuǎn)換成嵌套形式的符號表達(dá)式式的符號表達(dá)式例:例:syms xf=(x-1)2*(x-3)*(x-5)*(x-7);g=collect(f)s=horner(g)6符號表達(dá)式的化簡符號表達(dá)式的化簡MATLAB提供的對符號表達(dá)式化簡的函數(shù)有:提供的對符號表達(dá)式化簡的函數(shù)有:simplify(s):應(yīng)用函數(shù)規(guī)則對:應(yīng)用函數(shù)規(guī)則對s進(jìn)行化簡。進(jìn)行化簡。simple(s):調(diào)用:調(diào)用MATLAB的其他函數(shù)對表達(dá)式進(jìn)行的其他函數(shù)對表達(dá)式進(jìn)行綜合化簡,并顯示化簡過程。綜合化簡,并顯示化簡過程。 Simplify函數(shù)函數(shù) 表達(dá)式進(jìn)行化簡

22、表達(dá)式進(jìn)行化簡例:例: f=(x3-1)/(x-1); simplify(f)ans =x2+x+1 Simple 函數(shù)函數(shù) 對表達(dá)式進(jìn)行多種嘗試,然后選出對表達(dá)式進(jìn)行多種嘗試,然后選出最短形式最短形式例:例: f=(x3-1)/(x-1); simple(f) simplify: x2+x+1 radsimp: x2+x+1 combine(trig): x2+x+1 factor: x2+x+1 expand: 1/(x-1)*x3-1/(x-1) combine: (x3-1)/(x-1) convert(exp): (x3-1)/(x-1) convert(sincos): (x3-1

23、)/(x-1) convert(tan): (x3-1)/(x-1) collect(x): (x3-1)/(x-1) mwcos2sin: (x3-1)/(x-1) ans = x2+x+17符號表達(dá)式與數(shù)值表達(dá)式之間的轉(zhuǎn)換符號表達(dá)式與數(shù)值表達(dá)式之間的轉(zhuǎn)換 將符號表達(dá)式轉(zhuǎn)換成數(shù)值表達(dá)式將符號表達(dá)式轉(zhuǎn)換成數(shù)值表達(dá)式x=sym(5);t=double(x);whos(2) 將數(shù)值表達(dá)式表示成符號表達(dá)式將數(shù)值表達(dá)式表示成符號表達(dá)式 例:例: a=1.0771; y=sym(a) ans = 10771/100002.1.3 符號矩陣符號矩陣 符號矩陣也是一種符號表達(dá)式,所以前面介紹的符號表達(dá)式符號

24、矩陣也是一種符號表達(dá)式,所以前面介紹的符號表達(dá)式運(yùn)算都可以在矩陣意義下進(jìn)行。但應(yīng)注意這些函數(shù)作用于符運(yùn)算都可以在矩陣意義下進(jìn)行。但應(yīng)注意這些函數(shù)作用于符號矩陣時(shí),是分別作用于矩陣的每一個(gè)元素。號矩陣時(shí),是分別作用于矩陣的每一個(gè)元素。(1) 符號矩陣的創(chuàng)建符號矩陣的創(chuàng)建 數(shù)值矩陣數(shù)值矩陣A=1,2;3,4 A=a,b;c,d 不識別不識別用用matlab函數(shù)函數(shù)sym創(chuàng)建矩陣創(chuàng)建矩陣 命令格式:命令格式:A=sym( ) 符號矩陣內(nèi)容同數(shù)值矩陣符號矩陣內(nèi)容同數(shù)值矩陣 需用需用sym指令定義指令定義 需用需用 標(biāo)識標(biāo)識 例如:例如:A = sym(a , 2*b ; 3*a , 0) A = a,

25、 2*b 3*a, 0 這就完成了一個(gè)符號矩陣的創(chuàng)建。這就完成了一個(gè)符號矩陣的創(chuàng)建。注意:注意:符號矩陣的每一行的兩端都有方括號,這符號矩陣的每一行的兩端都有方括號,這是與是與 matlab數(shù)值矩陣的一個(gè)重要區(qū)別。數(shù)值矩陣的一個(gè)重要區(qū)別。用字符串直接創(chuàng)建矩陣用字符串直接創(chuàng)建矩陣v需保證同一列中各元素字符串有相需保證同一列中各元素字符串有相 同的長度。同的長度。例:例:A = a,2*b; 3*a, 0 A = a, 2*b 3*a, 0 由于符號矩陣是一個(gè)矩陣,所以符號矩陣還能進(jìn)由于符號矩陣是一個(gè)矩陣,所以符號矩陣還能進(jìn)行有關(guān)矩陣的運(yùn)算。行有關(guān)矩陣的運(yùn)算。 許多應(yīng)用于數(shù)值矩陣的函數(shù),如許多應(yīng)用

26、于數(shù)值矩陣的函數(shù),如diag(抽?。ǔ槿蔷€)、對角線)、triu(抽取右三角形)、(抽取右三角形)、tril(抽(抽取左三角形)、取左三角形)、inv(求逆)、(求逆)、det(行列(行列式)、式)、rank(求秩)、(求秩)、eig(特征值分解)等,也可(特征值分解)等,也可直接應(yīng)用于符號矩陣。直接應(yīng)用于符號矩陣。diagonalupper triangularlower triangularinversedeterminant eigenvalues 2.2 符號微積分符號微積分2.2.1 符號極限符號極限 函數(shù)函數(shù)limit用于求符號函數(shù)用于求符號函數(shù)f的極限。系統(tǒng)可以根據(jù)的極限。系

27、統(tǒng)可以根據(jù)用戶要求,計(jì)算變量從不同方向趨近于指定值的用戶要求,計(jì)算變量從不同方向趨近于指定值的極限值。該函數(shù)的格式及功能:極限值。該函數(shù)的格式及功能:(1) limit(f,x,a):求符號函數(shù):求符號函數(shù)f(x)的極限值。即計(jì)算當(dāng)?shù)臉O限值。即計(jì)算當(dāng)變量變量x趨近于常數(shù)趨近于常數(shù)a時(shí),時(shí),f(x)函數(shù)的極限值。函數(shù)的極限值。(2) limit(f,a):求符號函數(shù):求符號函數(shù)f(x)的極限值。由于沒有指的極限值。由于沒有指定符號函數(shù)定符號函數(shù)f(x)的自變量,則使用該格式時(shí),符號的自變量,則使用該格式時(shí),符號函數(shù)函數(shù)f(x)的變量為函數(shù)的變量為函數(shù)findsym(f)確定的默認(rèn)自變確定的默認(rèn)自

28、變量,即變量量,即變量x趨近于趨近于a。(3) limit(f):求符號函數(shù):求符號函數(shù)f(x)的極限值。符號函數(shù)的極限值。符號函數(shù)f(x)的變量為函數(shù)的變量為函數(shù)findsym(f)確定的默認(rèn)變量;沒有指確定的默認(rèn)變量;沒有指定變量的目標(biāo)值時(shí),系統(tǒng)默認(rèn)變量趨近于定變量的目標(biāo)值時(shí),系統(tǒng)默認(rèn)變量趨近于0,即,即a=0的情況。的情況。(4) limit(f,x,a,right):求符號函數(shù):求符號函數(shù)f的極限值。的極限值。right表示變量表示變量x從右邊趨近于從右邊趨近于a。(5) limit(f,x,a,left):求符號函數(shù):求符號函數(shù)f的極限值。的極限值。left表示變量表示變量x從左邊趨

29、近于從左邊趨近于a。例例 求下列極限。求下列極限。極限極限1:syms a x;f=(x*(exp(sin(x)+1)-2*(exp(tan(x)-1)/(x+a);limit(f,x,a)ans =1/2*(a-2*exp(tan(a)+a*exp(sin(a)+2)/a極限極限2:syms x t;limit(1+2*t/x)(3*x),x,inf)ans =exp(6*t)極限極限3:syms x;f=x*(sqrt(x2+1)-x);limit(f,x,inf,left)ans =1/2極限極限4:syms x;f=(sqrt(x)-sqrt(2)-sqrt(x-2)/sqrt(x*x

30、-4);limit(f,x,2,right)ans =-1/2【例】求極限【例】求極限xeextgxxx3sin0sin) 1(2) 1(limsyms x; %定義符號變量定義符號變量f=(x*(exp(sin(x)+1)-2*(exp(tan(x)-1)/sin(x)3; %確定符號表達(dá)式確定符號表達(dá)式w=limit(f) %求函數(shù)的極限求函數(shù)的極限w = -1/22.2.2 符號導(dǎo)數(shù)符號導(dǎo)數(shù)(微分)微分)diff函數(shù)用于對符號表達(dá)式求導(dǎo)數(shù)。該函數(shù)的一般調(diào)函數(shù)用于對符號表達(dá)式求導(dǎo)數(shù)。該函數(shù)的一般調(diào)用格式為:用格式為:diff(s):沒有指定變量和導(dǎo)數(shù)階數(shù),則系統(tǒng)按:沒有指定變量和導(dǎo)數(shù)階數(shù),

31、則系統(tǒng)按findsym函數(shù)指示的默認(rèn)變量對符號表達(dá)式函數(shù)指示的默認(rèn)變量對符號表達(dá)式s求一求一階導(dǎo)數(shù)。階導(dǎo)數(shù)。diff(s,v):以:以v為自變量,對符號表達(dá)式為自變量,對符號表達(dá)式s求一階導(dǎo)求一階導(dǎo)數(shù)。數(shù)。diff(s,n):按:按findsym函數(shù)指示的默認(rèn)變量對符號表函數(shù)指示的默認(rèn)變量對符號表達(dá)式達(dá)式s求求n階導(dǎo)數(shù),階導(dǎo)數(shù),n為正整數(shù)。為正整數(shù)。diff(s,v,n):以:以v為自變量,對符號表達(dá)式為自變量,對符號表達(dá)式s求求n階導(dǎo)階導(dǎo)數(shù)。數(shù)。【例】求導(dǎo)數(shù):【例】求導(dǎo)數(shù):x = sym(x); %定義符號變量定義符號變量diff(sin(x2) %求導(dǎo)運(yùn)算求導(dǎo)運(yùn)算ans =2*cos(x2

32、)*xdxxd2sin【例】求導(dǎo)數(shù):【例】求導(dǎo)數(shù):x = sym(x); %定義符號變量定義符號變量diff(cos(x)2) %求導(dǎo)運(yùn)算求導(dǎo)運(yùn)算ans =-2*cos(x)*sin(x)dxxd2cos 例:計(jì)算函數(shù)例:計(jì)算函數(shù)y=exp(x)的導(dǎo)數(shù),然后畫出導(dǎo)函數(shù)的導(dǎo)數(shù),然后畫出導(dǎo)函數(shù)的曲線圖的曲線圖 syms x;y=diff(exp(x);ezplot(y)2.2.3 符號積分符號積分符號積分由函數(shù)符號積分由函數(shù)int來實(shí)現(xiàn)。該函數(shù)的一般調(diào)用格式為:來實(shí)現(xiàn)。該函數(shù)的一般調(diào)用格式為:int(s):沒有指定積分變量和積分階數(shù)時(shí),系統(tǒng)按:沒有指定積分變量和積分階數(shù)時(shí),系統(tǒng)按findsym函數(shù)

33、函數(shù)指示的默認(rèn)變量對被積函數(shù)或符號表達(dá)式指示的默認(rèn)變量對被積函數(shù)或符號表達(dá)式s求不定積分。求不定積分。int(s,v):以:以v為自變量,對被積函數(shù)或符號表達(dá)式為自變量,對被積函數(shù)或符號表達(dá)式s求不定積分求不定積分int(s,v,a,b):求定積分運(yùn)算。:求定積分運(yùn)算。a,b分別表示定積分的下限和上限。分別表示定積分的下限和上限。該函數(shù)求被積函數(shù)在區(qū)間該函數(shù)求被積函數(shù)在區(qū)間a,b上的定積分。上的定積分。a和和b可以是兩個(gè)可以是兩個(gè)具體的數(shù),也可以是一個(gè)符號表達(dá)式,還可以是無窮具體的數(shù),也可以是一個(gè)符號表達(dá)式,還可以是無窮(inf)。當(dāng)函數(shù)當(dāng)函數(shù)f關(guān)于變量關(guān)于變量x在閉區(qū)間在閉區(qū)間a,b上可積時(shí)

34、,函數(shù)返回一個(gè)定上可積時(shí),函數(shù)返回一個(gè)定積分結(jié)果。當(dāng)積分結(jié)果。當(dāng)a,b中有一個(gè)是中有一個(gè)是inf時(shí),函數(shù)返回一個(gè)廣義積分。時(shí),函數(shù)返回一個(gè)廣義積分。當(dāng)當(dāng)a,b中有一個(gè)符號表達(dá)式時(shí),函數(shù)返回一個(gè)符號函數(shù)。中有一個(gè)符號表達(dá)式時(shí),函數(shù)返回一個(gè)符號函數(shù)?!纠壳笙率龇e分?!纠壳笙率龇e分。syms x;int(1/(1+x2) dxx211【例】求下述積分?!纠壳笙率龇e分。syms x a bint(x2,a,b) ans = 1/3*b3-1/3*a3dxxba2 例例 計(jì)算二重不定積分計(jì)算二重不定積分dxdyxexysyms x yF=int(int(x*exp(-x*y),x),y)F= 1/

35、y*exp(-x*y)2.2.4 積分變換積分變換常見的積分變換有傅立葉變換、拉普拉斯變換和常見的積分變換有傅立葉變換、拉普拉斯變換和Z變換。變換。1傅立葉傅立葉(Fourier)變換變換在在MATLAB中,進(jìn)行傅立葉變換的函數(shù)是:中,進(jìn)行傅立葉變換的函數(shù)是:fourier(f,x,t):求函數(shù):求函數(shù)f(x)的傅立葉變換。的傅立葉變換。ifourier(F,t,x):求頻域函數(shù):求頻域函數(shù)F(t)的傅立葉反變換。的傅立葉反變換。 syms t w ut=heaviside(t); UT=fourier(ut) Ut=ifourier(UT,w,t) 2拉普拉斯拉普拉斯(Laplace)變換變

36、換在在MATLAB中,進(jìn)行拉普拉斯變換的函數(shù)是:中,進(jìn)行拉普拉斯變換的函數(shù)是:laplace(fx,x,t):求函數(shù):求函數(shù)f(x)的拉普拉斯變換。的拉普拉斯變換。ilaplace(Fw,t,x):求頻域函數(shù):求頻域函數(shù)Fw的拉普拉斯反變換。的拉普拉斯反變換。例例 計(jì)算計(jì)算y=x3的拉普拉斯變換及其逆變換。的拉普拉斯變換及其逆變換。 syms x t; y=x3; laplace(y,x,t) ans = 6/t4 yy=6/t4; ilaplace(yy,t,x) ans = x33Z變換變換當(dāng)函數(shù)當(dāng)函數(shù)f(x)呈現(xiàn)為一個(gè)離散的數(shù)列呈現(xiàn)為一個(gè)離散的數(shù)列f(n)時(shí),對數(shù)列時(shí),對數(shù)列f(n)進(jìn)行

37、進(jìn)行z變換的變換的MATLAB函數(shù)是:函數(shù)是:ztrans(fn,n,z):求:求fn的的Z變換。變換。iztrans(Fz,z,n):求:求Fz的的Z反變換。反變換。例:例:syms x;f=x*exp(-x*10);F=ztrans(f)F=ztrans(x*exp(-x*10)F =z*exp(-10)/(z-exp(-10)2 2.3 級級 數(shù)數(shù)2.3.1 級數(shù)符號求和級數(shù)符號求和求無窮級數(shù)的和需要符號表達(dá)式求和函數(shù)求無窮級數(shù)的和需要符號表達(dá)式求和函數(shù)symsum,其調(diào)用格式為:其調(diào)用格式為:symsum(s,v,n,m)其中其中s表示一個(gè)級數(shù)的通項(xiàng),是一個(gè)符號表達(dá)式。表示一個(gè)級數(shù)的通

38、項(xiàng),是一個(gè)符號表達(dá)式。v是求和變量,是求和變量,v省略時(shí)使用系統(tǒng)的默認(rèn)變量。省略時(shí)使用系統(tǒng)的默認(rèn)變量。n和和m是求和的開始項(xiàng)和末項(xiàng)。是求和的開始項(xiàng)和末項(xiàng)?!纠壳笙铝屑墧?shù)的和【例】求下列級數(shù)的和:1/12+1/22+1/32+1/42+ syms k symsum(1/k2,1,Inf) %k值為值為1到無窮大到無窮大ans =1/6*pi2其結(jié)果為:其結(jié)果為:1/12+1/22+1/32+1/42+ =2/62.3.2 函數(shù)的泰勒級數(shù)函數(shù)的泰勒級數(shù)MATLAB提供了提供了taylor函數(shù)將函數(shù)展開為冪級數(shù),函數(shù)將函數(shù)展開為冪級數(shù),其調(diào)用格式為:其調(diào)用格式為:taylor(f,v,n,a)該函

39、數(shù)將函數(shù)該函數(shù)將函數(shù)f按變量按變量v展開為泰勒級數(shù),展開到第展開為泰勒級數(shù),展開到第n項(xiàng)項(xiàng)(即變量即變量v的的n-1次冪次冪)為止,為止,n的缺省值為的缺省值為6。參數(shù)。參數(shù)a指定將函數(shù)指定將函數(shù)f在自變量在自變量v=a處展開,處展開,a的缺省值是的缺省值是0。例例 求函數(shù)求函數(shù) 在在8階泰勒級數(shù)展開式。階泰勒級數(shù)展開式。 syms x; f=1/(2+cos(x); r=taylor(f,8) %以以x為自變量求為自變量求f的泰勒展開式的泰勒展開式 r= 1/3+1/18*x2+1/216*x4+1/6480*x6 xycos21例例 給出函數(shù)給出函數(shù) 在在x2處展開的前三個(gè)非零項(xiàng)。處展開的

40、前三個(gè)非零項(xiàng)。 xxeysing=exp(x*sin(x); t=taylor(g,3,2) t= exp(2*sin(2)+exp(2*sin(2)*(2*cos(2)+sin(2)*(x-2)+exp(2*sin(2)*(-sin(2)+cos(2)+2*cos(2)2+ 2*cos(2)*sin(2)+1/2*sin(2)2)*(x-2)2 2.4 符號方程求解符號方程求解 matlab符號運(yùn)算能夠解一般的線性方程、非線性方符號運(yùn)算能夠解一般的線性方程、非線性方程及一般的程及一般的代數(shù)方程、代數(shù)方程組代數(shù)方程、代數(shù)方程組。當(dāng)方程組不存。當(dāng)方程組不存在符號解時(shí),又無其他自由參數(shù),則給出數(shù)值

41、解。在符號解時(shí),又無其他自由參數(shù),則給出數(shù)值解。2.4.1 符號代數(shù)方程求解符號代數(shù)方程求解在在MATLAB中,求解用符號表達(dá)式表示的代數(shù)方程可中,求解用符號表達(dá)式表示的代數(shù)方程可由函數(shù)由函數(shù)solve實(shí)現(xiàn),其調(diào)用格式為:實(shí)現(xiàn),其調(diào)用格式為:solve(s):求解符號表達(dá)式:求解符號表達(dá)式s的代數(shù)方程,求解變量為的代數(shù)方程,求解變量為默認(rèn)變量。默認(rèn)變量。solve(s,v):求解符號表達(dá)式:求解符號表達(dá)式s的代數(shù)方程,求解變量為的代數(shù)方程,求解變量為v。solve(s1,s2,sn,v1,v2,vn):求解符號表達(dá)式:求解符號表達(dá)式s1,s2,sn組成的代數(shù)方程組,求解變量分別組成的代數(shù)方程組

42、,求解變量分別v1,v2,vn。 說明:說明: 若不指明符號表達(dá)式若不指明符號表達(dá)式s1,s2,.,sn的值,系統(tǒng)默認(rèn)為的值,系統(tǒng)默認(rèn)為0。例如。例如給出一個(gè)表達(dá)式給出一個(gè)表達(dá)式x2-3*x-8,則系統(tǒng)將按則系統(tǒng)將按x2-3*x-8=0進(jìn)行運(yùn)算;進(jìn)行運(yùn)算;solve(s1,s2,sn,v1,v2,vn):求解符號表達(dá)式或方程求解符號表達(dá)式或方程s1,s2,sn組成的代數(shù)方程組,組成的代數(shù)方程組,求解變量分別求解變量分別v1,v2,vn。 例例 f = ax2+bx+c 求解求解計(jì)算機(jī)格式aacbb242一般格式f=a*x2+b*x+c;solve(f) % 對缺省變量對缺省變量x求解求解ans

43、 =1/2/a*(-b+(b2-4*a*c)(1/2)1/2/a*(-b-(b2-4*a*c)(1/2)例例:解代數(shù)方程:解代數(shù)方程:a*x2-b*x-6=0的根。的根。syms a b xsolve(a*x2-b*x-6) ans = 1/2/a*(b+(b2+24*a)(1/2) 1/2/a*(b-(b2+24*a)(1/2)例例 解方程組解方程組 x+y+z=1 x-y+z=2 2x-y-z=1f=solve(x+y+z=1,x-y+z=2,2*x-y-z=1)f = x: 1x1 symf.x ans =2/3 y: 1x1 symf.y ans =-1/2 z: 1x1 symf.z

44、 ans =5/6 x,y,z=solve(x+y+z=1,x-y+z=2,2*x-y-z=1) x = 2/3 y =-1/2 z =5/6構(gòu)構(gòu)架架數(shù)數(shù)組組構(gòu)架名構(gòu)架名 域名域名2.4.2 符號常微分方程求解符號常微分方程求解符號常微分方程求解可以通過函數(shù)符號常微分方程求解可以通過函數(shù)dsolve來實(shí)現(xiàn),其調(diào)用格來實(shí)現(xiàn),其調(diào)用格式為:式為:dsolve(e,c,v) 該函數(shù)求解常微分方程該函數(shù)求解常微分方程e在初值條件在初值條件c下的特解。參數(shù)下的特解。參數(shù)v描描述方程中的自變量,省略時(shí)按缺省原則處理,若沒有給出述方程中的自變量,省略時(shí)按缺省原則處理,若沒有給出初值條件初值條件c,則求方程的

45、通解。,則求方程的通解。 dsolve在求常微分方程組時(shí)的調(diào)用格式為:在求常微分方程組時(shí)的調(diào)用格式為:dsolve(e1,e2,en,c1,cn,v1,vn) 該函數(shù)求解常微分方程組該函數(shù)求解常微分方程組e1,en在初值條件在初值條件c1,cn下的下的特解,若不給出初值條件,則求方程組的通解,特解,若不給出初值條件,則求方程組的通解,v1,vn給出求解變量。給出求解變量。 在在MATLAB中,用大寫字母中,用大寫字母D表示導(dǎo)數(shù)。例如,表示導(dǎo)數(shù)。例如,Dy表示表示y,D2y表示表示y,D3y+D2y+Dy-x+5=0表示表示微分方程微分方程y+y+y-x+5=0。例:例:f1=Df-f-g;f2=Dg+f-g;S=dsolve(f1,f2, f(0)=1, g(0)=2);S.f S.g例例y=dsolve(D2y+2*Dy+2*y=0,y(0)=1,Dy(0)=0)ans =exp(-x)*cos(x)+exp(-x)*sin(x)ezplot(y) 方程解

溫馨提示

  • 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論