資源描述:
《第四講 符號(hào)計(jì)算》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。
1、MATLAB符號(hào)計(jì)算——matlab不僅具有數(shù)值運(yùn)算功能,還開(kāi)發(fā)了在matlab環(huán)境下實(shí)現(xiàn)符號(hào)計(jì)算的工具包SymbolicMathToolbox1MATLAB符號(hào)計(jì)算符號(hào)計(jì)算基礎(chǔ)符號(hào)微積分符號(hào)方程和符號(hào)微分方程符號(hào)級(jí)數(shù)運(yùn)算符號(hào)函數(shù)作圖符號(hào)計(jì)算局限性和Maple調(diào)用21.什么是符號(hào)運(yùn)算?與數(shù)值運(yùn)算的區(qū)別※數(shù)值運(yùn)算中必須先對(duì)變量賦值,然后才能參與運(yùn)算?!?hào)運(yùn)算無(wú)須事先對(duì)獨(dú)立變量賦值,運(yùn)算結(jié)果以標(biāo)準(zhǔn)的符號(hào)形式表達(dá)。一符號(hào)計(jì)算基礎(chǔ)符號(hào)運(yùn)算重點(diǎn)用于解決自然科學(xué)理論中,各種公式、表達(dá)式以及相應(yīng)的推導(dǎo)問(wèn)題3特點(diǎn):?運(yùn)算對(duì)象
2、可以是沒(méi)賦值的符號(hào)變量?可以獲得任意精度的解SymbolicMathToolbox——符號(hào)運(yùn)算工具包通過(guò)調(diào)用Maple軟件實(shí)現(xiàn)符號(hào)計(jì)算的。maple軟件——主要功能是符號(hào)運(yùn)算,它占據(jù)符號(hào)軟件的主導(dǎo)地位。42.符號(hào)變量與符號(hào)表達(dá)式f='sin(x)+5x'f——符號(hào)變量名sin(x)+5x——符號(hào)表達(dá)式''——符號(hào)標(biāo)識(shí)5''的內(nèi)容可以是符號(hào)表達(dá)式,也可以是符號(hào)方程。例:f1='a?x^2+b?x+c'——二次三項(xiàng)式f2='a?x^2+b?x+c=0'——方程f3='Dy+y^2=1'——微分方程※符號(hào)表達(dá)式或符號(hào)
3、方程可以賦給符號(hào)變量,以后調(diào)用方便;也可以不賦給符號(hào)變量直接參與運(yùn)算63.1.建立符號(hào)變量和符號(hào)常數(shù)(1)sym函數(shù)sym函數(shù)用來(lái)建立單個(gè)符號(hào)量,例如,a=sym('a')建立符號(hào)變量a,此后,用戶可以在表達(dá)式中使用變量a進(jìn)行各種運(yùn)算。3.符號(hào)對(duì)象7例考察符號(hào)變量和數(shù)值變量的差別。在MATLAB命令窗口,輸入命令:a=sym('a');b=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)矩陣A
4、B=[w,x;y,z]%建立數(shù)值矩陣BA_d=det(A)%計(jì)算符號(hào)矩陣A的行列式B_d=det(B)%計(jì)算數(shù)值矩陣B的行列式8運(yùn)行結(jié)果:A=[a,b][c,d]B=105-811A_d=a*d-b*cB_d=1509例比較符號(hào)常數(shù)與數(shù)值在代數(shù)運(yùn)算時(shí)的差別。在MATLAB命令窗口,輸入命令:pi2=pi;%定義數(shù)值變量pi1=sym('pi');%定義符號(hào)變量sin(pi1/3)%計(jì)算符號(hào)表達(dá)式值ans=1/2*3^(1/2)sin(pi2/3)%計(jì)算數(shù)值表達(dá)式值ans=0.866010k1=sym('8');
5、k2=sym('2');k3=sym('3');%定義符號(hào)變量r1=8;r2=2;r3=3;%定義數(shù)值變量sqrt(k3+sqrt(k2))ans=(3+2^(1/2))^(1/2)sqrt(k1)ans=2*2^(1/2)sqrt(r3+sqrt(r2))ans=2.1010sqrt(r1)ans=2.828411符號(hào)對(duì)象建立時(shí)可以附加屬性:real、positive和unreal>>k=sym('k','positive')>>x=sym('x','real')>>x=sym('x','unreal')表明
6、x是實(shí)的表明k是正的去掉x的附加屬性12例:利用syms創(chuàng)建符號(hào)對(duì)象例:利用符號(hào)變量驗(yàn)證通常表達(dá)式var=sym('var','positive');%定義正的積分變量upper=sym('upper','real');%定義積分上限lower=sym('lower','real');%定義積分下限integral=int(1/(var),lower,upper)integral=log(upper)-log(lower)var=sym('x','positive');%定義正的積分變量upper=sym(‘b
7、','real');%定義積分上限lower=sym(‘a(chǎn)','real');%定義積分下限integral=int(1/(var),lower,upper)integral=log(a)-log(b)13(2)syms函數(shù)syms函數(shù)的一般調(diào)用格式為:symsvar1var2…varn函數(shù)定義符號(hào)變量var1,var2,…,varn等,用這種格式定義符號(hào)變量時(shí)不要在變量名上加字符分界符('),變量間用空格而不要用逗號(hào)分隔。143.2.建立符號(hào)表達(dá)式例用兩種方法建立符號(hào)表達(dá)式。利用sym函數(shù):U=sym('3*
8、x^2+5*y+2*x*y+6')%定義符號(hào)表達(dá)式U利用syms函數(shù)symsxy;%建立符號(hào)變量x、yV=3*x^2+5*y+2*x*y+6%定義符號(hào)表達(dá)式VU-V%求符號(hào)表達(dá)式的值ans=02*U-V+63*x^2+5*y+2*x*y+1215例計(jì)算3階范得蒙矩陣行列式的值。設(shè)A是一個(gè)由符號(hào)變量a,b,c確定的范得蒙矩陣。命令如下:symsabc;U=[a,b,c];A=[[1,1,