資源描述:
《matlab教程 符號(hào)計(jì)算》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、第2章符號(hào)計(jì)算所謂符號(hào)計(jì)算是指:解算數(shù)學(xué)表達(dá)式、方程不是在離散化的數(shù)值點(diǎn)上進(jìn)行,而是憑借一系列恒等式,數(shù)學(xué)定理,通過(guò)推理和演繹,力求獲得解析結(jié)果。這種計(jì)算建立在數(shù)值完全準(zhǔn)確表達(dá)和推演嚴(yán)格解析的基礎(chǔ)之上,因此所得結(jié)果是完全準(zhǔn)確的。本書之所以把符號(hào)計(jì)算內(nèi)容放在第2章,是出于以下考慮:一,相對(duì)于MATLAB的數(shù)值計(jì)算“引擎”和“函數(shù)庫(kù)”而言,符號(hào)計(jì)算的“引擎”和“函數(shù)庫(kù)”是獨(dú)立的。二,在相當(dāng)一些場(chǎng)合,符號(hào)計(jì)算解算問(wèn)題的指令和過(guò)程,顯得比數(shù)值計(jì)算更自然、更簡(jiǎn)明。三,大多數(shù)理工科的本科學(xué)生在學(xué)過(guò)高等數(shù)學(xué)和其他專業(yè)基礎(chǔ)課以后,比較習(xí)慣符號(hào)計(jì)算的解題理念和模式。在編
2、寫本章時(shí),作者在充分考慮符號(hào)計(jì)算獨(dú)立性的同時(shí),還考慮了章節(jié)的自完整性。為此,本章不但全面地闡述符號(hào)計(jì)算,而且在最后一節(jié)還詳細(xì)敘述了符號(hào)計(jì)算結(jié)果的可視化。這樣的安排,將使讀者在閱讀完本章后,就有可能運(yùn)用MATLAB的符號(hào)計(jì)算能力去解決相當(dāng)一些具體問(wèn)題。2.1符號(hào)對(duì)象和符號(hào)表達(dá)式2.1.1符號(hào)對(duì)象的創(chuàng)建和衍生一生成符號(hào)對(duì)象的基本規(guī)則二符號(hào)數(shù)字【例2.1-1】符號(hào)(類)數(shù)字與數(shù)值(類)數(shù)字之間的差異。a=pi+sqrt(5)sa=sym('pi+sqrt(5)')Ca=class(a)Csa=class(sa)vpa(sa-a)a=5.3777sa=pi+s
3、qrt(5)Ca=doubleCsa=symans=.138223758410852e-16三符號(hào)參數(shù)四符號(hào)變量【例2.1-2】用符號(hào)計(jì)算研究方程的解。(1)symsuvwz37Eq=u*z^2+v*z+w;result_1=solve(Eq)%findsym(Eq,1)result_1=-u*z^2-v*zans=w(2)result_2=solve(Eq,z)result_2=1/2/u*(-v+(v^2-4*u*w)^(1/2))1/2/u*(-v-(v^2-4*u*w)^(1/2))【例2.1-3】對(duì)獨(dú)立自由符號(hào)變量的自動(dòng)辨認(rèn)。(1)symsa
4、bxXYk=sym('3');z=sym('c*sqrt(delta)+y*sin(theta)');EXPR=a*z*X+(b*x^2+k)*Y;(2)findsym(EXPR)ans=X,Y,a,b,c,delta,theta,x,y(3)findsym(EXPR,1)ans=x(4)findsym(EXPR,2),findsym(EXPR,3)ans=x,yans=x,y,theta【例2.1-4】findsym確定自由變量是對(duì)整個(gè)矩陣進(jìn)行的。symsabtuvxyA=[a+b*x,sin(t)+u;x*exp(-t),log(y)+v]find
5、sym(A,1)A=[a+b*x,sin(t)+u][x*exp(-t),log(y)+v]ans=x372.1.1符號(hào)計(jì)算中的算符2.1.2符號(hào)計(jì)算中的函數(shù)指令2.1.3符號(hào)對(duì)象的識(shí)別【例2.1-5】數(shù)據(jù)對(duì)象及其識(shí)別指令的使用。(1)cleara=1;b=2;c=3;d=4;Mn=[a,b;c,d]Mc='[a,b;c,d]'Ms=sym(Mc)Mn=1234Mc=[a,b;c,d]Ms=[a,b][c,d](2)SizeMn=size(Mn)SizeMc=size(Mc)SizeMs=size(Ms)SizeMn=22SizeMc=19SizeMs
6、=22(3)CMn=class(Mn)CMc=class(Mc)CMs=class(Ms)CMn=doubleCMc=charCMs=sym(4)isa(Mn,'double')isa(Mc,'char')isa(Ms,'sym')ans=1ans=1ans=1(5)whosMnMcMsNameSizeBytesClassAttributes37Mc1x918charMn2x232doubleMs2x2312sym2.1符號(hào)數(shù)字及表達(dá)式的操作2.1.1數(shù)值數(shù)字與符號(hào)數(shù)字之間的轉(zhuǎn)換一數(shù)值數(shù)字向符號(hào)數(shù)字的轉(zhuǎn)換二符號(hào)數(shù)字向雙精度數(shù)字轉(zhuǎn)換2.1.2符號(hào)數(shù)字的任
7、意精度計(jì)算【例2.2-1】digits,vpa指令的使用。digitsp0=sym('(1+sqrt(5))/2')pr=sym((1+sqrt(5))/2)%pd=sym((1+sqrt(5))/2,'d')%e32r=vpa(abs(p0-pr))e16=vpa(abs(p0-pd),16)e32d=vpa(abs(p0-pd))Digits=32p0=(1+sqrt(5))/2pr=7286977268806824*2^(-52)pd=1.6180339887498949025257388711907e32r=.543211520368251e-
8、16e16=0.e32d=.543211520368251e-162.1.3符號(hào)表達(dá)式的基本操