資源描述:
《《MATLAB符號(hào)計(jì)算》PPT課件.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第3章MATLAB符號(hào)計(jì)算7/25/2021本章內(nèi)容3.1符號(hào)計(jì)算基礎(chǔ)3.2微分運(yùn)算3.3積分運(yùn)算3.4泰勒級(jí)數(shù)3.5求解方程3.6積分變換3.1符號(hào)計(jì)算基礎(chǔ)3.1.1符號(hào)對(duì)象1.建立符號(hào)變量和符號(hào)常數(shù)(1)sym函數(shù)S=sym(A)sym函數(shù)用來建立單個(gè)符號(hào)變量,例如,a=sym(‘a(chǎn)’)建立符號(hào)變量a,此后,用戶可以在表達(dá)式中使用變量a進(jìn)行各種運(yùn)算。定義符號(hào)常量如pi=sym(pi)a=sym(3/4)例3.1考察符號(hào)變量和數(shù)值變量的差別。在MATLAB命令窗口,輸入命令:a=sym('a');b=
2、sym('b');c=sym('c');d=sym('d');%定義4個(gè)符號(hào)變量w=10;x=5;y=-8;z=11;%定義4個(gè)數(shù)值變量A=[a,b;c,d]%建立符號(hào)矩陣AB=[w,x;y,z]%建立數(shù)值矩陣Bdet(A)%計(jì)算符號(hào)矩陣A的行列式det(B)%計(jì)算數(shù)值矩陣B的行列式例3.2比較符號(hào)常數(shù)與數(shù)值變量在代數(shù)運(yùn)算時(shí)的差別。在MATLAB命令窗口,輸入命令:pi1=sym(‘pi’);k1=sym(‘8’);k2=sym(‘2’);k3=sym(‘3’);%定義符號(hào)常數(shù)pi2=pi;r1=8;r
3、2=2;r3=3;%定義數(shù)值變量sin(pi1/3)%計(jì)算符號(hào)表達(dá)式值sin(pi2/3)%計(jì)算數(shù)值表達(dá)式值sqrt(k1)%計(jì)算符號(hào)表達(dá)式值sqrt(r1)%計(jì)算數(shù)值表達(dá)式值sqrt(k3+sqrt(k2))%計(jì)算符號(hào)表達(dá)式值sqrt(r3+sqrt(r2))%計(jì)算數(shù)值表達(dá)式值(2)syms函數(shù)1.用于定義多個(gè)符號(hào)變量。syms函數(shù)的一般調(diào)用格式為:symsvar1var2…varn函數(shù)定義符號(hào)變量var1,var2,…,varn等。用這種格式定義符號(hào)變量時(shí)不要在變量名上加字符分界符(‘),變量間用空
4、格而不要用逗號(hào)分隔。2.建立符號(hào)表達(dá)式例3.3用2種方法建立符號(hào)表達(dá)式。在MATLAB窗口,輸入命令:U=sym('3*x^2+5*y+2*x*y+6')%定義符號(hào)表達(dá)式Usymsxy;%建立符號(hào)變量x、yV=3*x^2+5*y+2*x*y+6%定義符號(hào)表達(dá)式V2*U-V+6%求符號(hào)表達(dá)式的值例3.4計(jì)算3階范得蒙矩陣行列式的值。設(shè)A是一個(gè)由符號(hào)變量a,b,c確定的范得蒙矩陣。命令如下:symsabc;U=[a,b,c];A=[[1,1,1];U;U.^2]%建立范得蒙符號(hào)矩陣det(A)%計(jì)算A的行列
5、式值例3.5建立x,y的一般二元函數(shù)。在MATLAB命令窗口,輸入命令:symsxy;f=sym('f(x,y)');3.1.2基本的符號(hào)運(yùn)算(1)符號(hào)表達(dá)式的代數(shù)運(yùn)算與矩陣運(yùn)算基本一致,詳見P95-96。(2)符號(hào)與數(shù)值的轉(zhuǎn)換:sym,numeric,eval,sym2poly,poly2symNumeric,eval:將符號(hào)常數(shù)轉(zhuǎn)換為數(shù)字或計(jì)算表達(dá)式的函數(shù);Sym2poly:將符號(hào)多項(xiàng)式變換為等價(jià)系數(shù)向量。Poly2sym:要求用戶指定用于表達(dá)式的變量(x,y等)例3.6f=sym(‘2*x^2+7
6、*x+9’)n=sym2poly(f)f1=poly2sym(n,y)(3)因式分解與展開factor(S)對(duì)S分解因式,S是符號(hào)表達(dá)式或符號(hào)矩陣。expand(S)對(duì)S進(jìn)行展開,S是符號(hào)表達(dá)式或符號(hào)矩陣。collect(S)對(duì)S合并同類項(xiàng),S是符號(hào)表達(dá)式或符號(hào)矩陣。collect(S,v)對(duì)S按變量v合并同類項(xiàng),S是符號(hào)表達(dá)式或符號(hào)矩陣。例3.7對(duì)符號(hào)矩陣A的每個(gè)元素分解因式。命令如下:symsabxy;A=[2*a^2*b^3*x^2-4*a*b^4*x^3+10*a*b^6*x^4,3*x*y-5
7、*x^2;4,a^3-b^3];factor(A)%對(duì)A的每個(gè)元素分解因式例3.8計(jì)算表達(dá)式S的值。命令如下:symsxy;s=sym((-7*x^2-8*y^2)*(-x^2+3*y^2));s1=expand(s)%對(duì)s展開s2=collect(s,x)%對(duì)s按變量x合并同類項(xiàng)(無同類項(xiàng))factor(s2)%對(duì)s2分解因式(4)表達(dá)式化簡MATLAB提供的對(duì)符號(hào)表達(dá)式化簡的函數(shù)有:simplify(S)應(yīng)用函數(shù)規(guī)則對(duì)S進(jìn)行化簡。simple(S)調(diào)用MATLAB的其他函數(shù)對(duì)表達(dá)式進(jìn)行綜合化簡,并顯
8、示化簡過程。例3.9化簡命令如下:symsxy;s=(x^2+y^2)^2+(x^2-y^2)^2;simple(s)%MATLAB自動(dòng)調(diào)用多種函數(shù)對(duì)s進(jìn)行化簡,并顯示每步結(jié)果(5)符號(hào)表達(dá)式中變量的確定MATLAB中的符號(hào)可以表示符號(hào)變量和符號(hào)常數(shù)。findsym可以幫助用戶查找一個(gè)符號(hào)表達(dá)式中的的符號(hào)變量。該函數(shù)的調(diào)用格式為:findsym(S,n)函數(shù)返回符號(hào)表達(dá)式S中的n個(gè)符號(hào)變量,若沒有指定n,則返回S中的全部符號(hào)變量。在求函數(shù)的