基于MATLAB的數(shù)值分析(4)_第1頁
基于MATLAB的數(shù)值分析(4)_第2頁
基于MATLAB的數(shù)值分析(4)_第3頁
基于MATLAB的數(shù)值分析(4)_第4頁
基于MATLAB的數(shù)值分析(4)_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、 4.1 4.1 符號對象和符號表達式符號對象和符號表達式 符號常數(shù)、符號變量、符號函數(shù)、符號操作等是用來形符號常數(shù)、符號變量、符號函數(shù)、符號操作等是用來形成符號表達式,嚴格按照代數(shù)、微積分等課程中的規(guī)則、公成符號表達式,嚴格按照代數(shù)、微積分等課程中的規(guī)則、公式進行運算,并盡可能給出解析表達式。式進行運算,并盡可能給出解析表達式。一、符號對象的生成和使用一、符號對象的生成和使用 syms argv1 argv2 argvksyms(argv1,argv2,argvk)f=sym(arg,flagn): flagn可取可取 d, rf=sym(arg) :缺省為rargv=sym(argv,fl

2、agv): flagv可取可取positive, real, unreal【例】符號常數(shù)形成中的差異【例】符號常數(shù)形成中的差異a1=1/3,pi/7,sqrt(5),pi+sqrt(5)a2=sym(1/3,pi/7,sqrt(5),pi+sqrt(5)a3=sym(1/3,pi/7,sqrt(5),pi+sqrt(5)a23=a2-a3 a1 = 0.3333 0.4488 2.2361 5.3777a2 =1/3, pi/7,sqrt(5), 6054707603575008*2(-50)a3 =1/3, pi/7, sqrt(5), pi+sqrt(5)a23 =0,0,0,189209

3、612611719/35184372088832-pi-5(1/2) 注:注: a3是絕對準確的,是絕對準確的, a2是近似的是近似的,最接近的有理表示最接近的有理表示【例】【例】把字符表達式轉(zhuǎn)換為符號變量把字符表達式轉(zhuǎn)換為符號變量y=sym(2*sin(x)*cos(x)y=simple(y) y =2*sin(x)*cos(x)y =sin(2*x) 【例】用符號計算驗證三角等式【例】用符號計算驗證三角等式syms fai1 fai2y = s i m p l e ( s i n ( f a i 1 ) * c o s ( f a i 2 ) -cos(fai1)*sin(fai2) y

4、=sin(fai1-fai2) sincoscossinsin()121212【例】求矩陣【例】求矩陣 的行列式值、逆和特征根的行列式值、逆和特征根syms a11 a12 a21 a22A=a11,a12;a21,a22DA=det(A),IA=inv(A),EA=eig(A) A = a11, a12 a21, a22DA = a11*a22-a12*a21IA = a22/(a11*a22-a12*a21), -a12/(a11*a22-a12*a21) -a21/(a11*a22-a12*a21), a11/(a11*a22-a12*a21)EA = 1 / 2 * a 1 1 + 1

5、 / 2 * a 2 2 + 1 / 2 * ( a 1 1 2 -2*a11*a22+a222+4*a12*a21)(1/2) 1 / 2 * a 1 1 + 1 / 2 * a 2 2 - 1 / 2 * ( a 1 1 2 -2*a11*a22+a222+4*a12*a21)(1/2) Aaaaa11122122【例】驗證積分【例】驗證積分syms A t tao wy f = i n t ( A * e x p ( - i * w * t ) , t , -tao/2,tao/2);Yf=simple(yf) Yf =2*A*sin(1/2*tao*w)/w 22sin2/2/AdtA

6、eti二、符號計算中的算符和基本函數(shù)二、符號計算中的算符和基本函數(shù)略三、識別對象類別的指令三、識別對象類別的指令 常用指令:常用指令:class, isa, whos【例】數(shù)據(jù)對象及其識別指令的使用?!纠繑?shù)據(jù)對象及其識別指令的使用。(1)(1)生成三種不同類型的矩陣,給出不同的顯示形式生成三種不同類型的矩陣,給出不同的顯示形式clear,a=1;b=2;c=3;d=4;Mn=a,b;c,dMc=a,b;c,dMs=sym(Mc) Mn = 1 2 3 4Mc = a,b;c,dMs = a, b c, d (2)三種矩陣的大小不同)三種矩陣的大小不同SizeMn=size(Mn),SizeM

7、c=size(Mc),SizeMs=size(Ms) SizeMn = 2 2SizeMc = 1 9SizeMs = 2 2 (3)用)用class獲得每種矩陣的類別獲得每種矩陣的類別CMn=class(Mn),CMc=class(Mc),CMs=class(Ms) CMn = doubleCMc = charCMs = sym (4)用)用 isa判斷每種矩陣的類別(若返回判斷每種矩陣的類別(若返回1,表示判斷正確),表示判斷正確)isa(Mn,double),isa(Mc,char),isa(Ms,sym) ans = 1ans = 1ans = 1 (5)利用)利用 whos觀察內(nèi)存變

8、量的類別和其他屬性觀察內(nèi)存變量的類別和其他屬性whos Mn Mc Ms Name Size Bytes Class Mc 1x9 18 char array Mn 2x2 32 double array Ms 2x2 408 sym objectGrand total is 21 elements using 458 bytes 【例】對獨立自由符號變量的自動辨認?!纠繉Κ毩⒆杂煞栕兞康淖詣颖嬲J。(1)生成符號變量)生成符號變量syms a b x X Y;k=sym(3);z=sym(c*sqrt(delta)+y*sin(theta);EXPR=a*z*X+(b*x2+k)*Y; (

9、2)找出)找出EXPR中的全部自由符號變量中的全部自由符號變量findsym(EXPR)ans = X, Y, a, b, c, delta, theta, x, y (3)在)在EXPR中確定一個自由符號變量中確定一個自由符號變量findsym(EXPR,1) ans = x (4)在)在EXPR中確定中確定2個和個和3個自由變量時的執(zhí)行情況個自由變量時的執(zhí)行情況findsym(EXPR,2),findsym(EXPR,3) ans = x,yans = x,y,theta 【例】【例】findsym確定自由變量是對整個矩陣進行的。確定自由變量是對整個矩陣進行的。syms a b t u v

10、 x y;A=a+b*x,sin(t)+u;x*exp(-t),log(y)+vfindsym(A,1) A = a+b*x, sin(t)+u x*exp(-t), log(y)+vans =x simple(EXPR) 把把EXPR轉(zhuǎn)換成最簡短形式轉(zhuǎn)換成最簡短形式 simplify(EXPR) 對對EXPR進行綜合化簡進行綜合化簡pretty(EXPR) 以習慣的書寫方式顯示以習慣的書寫方式顯示EXPR一、一、 符號表達式的操作符號表達式的操作【例】簡化【例】簡化syms xf=(1/x3+6/x2+12/x+8)(1/3);g1=simple(f)g2=simple(g1)3321612

11、8fxxx g1 =(2*x+1)/xg2 =2+1/x二、符號函數(shù)的求反和復合二、符號函數(shù)的求反和復合 【例】求【例】求 的反函數(shù)的反函數(shù)syms x;f=x2;g=finverse(f) Warning: finverse(x2) is not unique.g =x(1/2) 2fx fg=simple(compose(g,f) %驗算驗算g(f(x)是否是否等于等于x fg =x 二、符號函數(shù)的求反和復合二、符號函數(shù)的求反和復合 【例】求【例】求 的反函數(shù)的反函數(shù)syms x;f=x2;g=finverse(f) Warning: finverse(x2) is not unique.

12、g =x(1/2) 2fx fg=simple(compose(g,f) %驗算驗算g(f(x)是否是否等于等于x fg =x 【例】求 的復合函數(shù))cos(,12faiyguxf(1)syms x y u fai t; f=x/(1+u2);g=cos(y+fai);fg1=compose(f,g) fg1 =cos(y+fai)/(1+u2) (2)fg2=compose(f,g,u,fai,t) fg2 =x/(cos(y+t)2+1) fg=compose(f,g) : f(*), v=g(*), fg=f(g(*)fg=compose(f,g,v,w,t) : f(v), v=g(w

13、), fg=f(g(w)|w=t三、置換操作三、置換操作 1、 子表達式置換操作子表達式置換操作 RS,ssub=subexpr(S,ssub) 運用符號變量運用符號變量ssub置換子表達式,重寫置換子表達式,重寫S為為RS.【例】把復雜表達式中所含的多個相同子表達式用一個符號代替,【例】把復雜表達式中所含的多個相同子表達式用一個符號代替,使表達簡潔。使表達簡潔。clear allsyms a b c d WV,D=eig(a b;c d);RVD,W=subexpr(V;D,W) RVD = -(1/2*d-1/2*a-1/2*W)/c, -(1/2*d-1/2*a+1/2*W)/c 1,

14、1 1/2*d+1/2*a+1/2*W, 0 0, 1/2*d+1/2*a-1/2*WW = (d2-2*a*d+a2+4*b*c)(1/2) 2、 通用置換指令通用置換指令RES=subs(ES,old,new) :用用 new 置換置換ES中的中的 old后產(chǎn)生后產(chǎn)生 RES。RES=subs(ES,new):用用new 置換置換 ES 中的自由中的自由 變量后產(chǎn)生變量后產(chǎn)生 RES?!纠坑煤唵嗡憷菔尽纠坑煤唵嗡憷菔緎ubs的置換規(guī)則。的置換規(guī)則。syms a x;f=a*sin(x)+5; f1=subs(f,sin(x),sym(y) f1 =a*y+5 f2=subs(f,a

15、,x,2,sym(pi/3) f2 =3(1/2)+5 f3=subs(f,a,x,2,pi/3) f3 = 6.7321 f4=subs(subs(f,a,2),x,0:pi/6:pi) f4 = 5.0000 6.0000 6.7321 7.0000 6.7321 6.0000 5.0000 f5=subs(f,a,x,0:6,0:pi/6:pi) f5 = 5.0000 5.5000 6.7321 8.0000 8.4641 7.5000 5.0000 一、一、 符號序列的求和符號序列的求和s=symsum(f,v,a,b) : a,b缺省時,自變量區(qū)間缺省時,自變量區(qū)間 為為0,v-1

16、。【例】求【例】求 ,syms k t;f1=t k3;f2=1/(2*k-1)2,(-1)k/k;s1=simple(symsum(f1)s2=simple(symsum(f2,1,inf) s1 = 1/2*t*(t-1), k3*ts2 = 1/8*pi2, -log(2) 103ttkt12) 1() 12(1kkkk二、二、 符號微分和符號微分和 矩陣矩陣dfdvn=diff(f,v,n) :求求fjac=jacobian(f,v):求多元向量函數(shù)的求多元向量函數(shù)的jacobian矩陣。矩陣。jacobiannndvvfd)(f【例】求【例】求 的的 矩陣。矩陣。 syms x1 x

17、2;f=x1*exp(x2);x2;cos(x1)*sin(x2);v=x1 x2;fjac=jacobian(f,v) fjac = exp(x2), x1*exp(x2) 0, 1 -sin(x1)*sin(x2), cos(x1)*cos(x2) )sin()cos(21212xxxexfxjacobian【例】求【例】求 、 和和syms a t x;f=a,t3;t*cos(x), log(x);df=diff(f)dfdt2=diff(f,t,2)dfdxdt=diff(diff(f,x),t) df = 0, 0 -t*sin(x), 1/xdfdt2 = 0, 6*t 0, 0

18、dfdxdt = 0, 0 -sin(x), 0 xxttadxdlncos322dtdxxttalncos3dxdtd2xxttalncos3三、三、 符號積分符號積分intf=int(f,v) : 給出給出f對指定變量對指定變量v的不定積分。的不定積分。intf=int(f,v,a,b) : 給出給出f對指定變量對指定變量v的定積分。的定積分?!纠壳蟆纠壳髎yms a b x;f=a*x,b*x2;1/x,sin(x);disp(The integral of f is);pretty(int(f) The integral of f is 2 3 1/2 a x 1/3 b x lo

19、g(x) -cos(x) dxxxbxaxsin12【例】求【例】求(1)求一般積分結(jié)果)求一般積分結(jié)果F1=int(1/log(t),t,0,x) F1 =-Ei(1,-log(x) xdtt0ln1(2)利用)利用mfun指令求指令求 x=0.5, 0.6, 0.7, 0.8, 0.9 時的定積分時的定積分x=0.5:0.1:0.9F115=-mfun(Ei,1,-log(x) x = 0.5000 0.6000 0.7000 0.8000 0.9000F115 = -0.3787 -0.5469 -0.7809 -1.1340 -1.7758 【例】求【例】求syms x y zF2=i

20、nt(int(int(x2+y2+z2,z,sqrt(x*y),x2*y),y,sqrt(x),x2),x,1,2)VF2=vpa(F2) %積分結(jié)果用積分結(jié)果用32位數(shù)字表示位數(shù)字表示 F2 =1610027357/6563700-6072064/348075*2(1/2)+14912/4641*2(1/4)+64/225*2(3/4)VF2 =224.92153573331143159790710032805 2122222)(dzdydxzyxxxyxxy一、一、線性方程組的符號解線性方程組的符號解 【例【例 】求線性方程組】求線性方程組 的解。的解。A=sym(1 1/2 1/2 -1;1 1 -1 1;1 -1/4 -1 1; -8 -1 1 1);b=sym(0;10;0;1);X1=Ab X1 = 1 8 8 9 ,10,81224npndqndqpqdp qpnd二、一般代數(shù)方程組的解二、一般代數(shù)方程組的解S=solve(eq1,eq2,eqn,v1,v2,vn)S=solve(exp1,exp2,expn,v1,v2,vn)【例】求方程組【例】求方程組 , 關(guān)于關(guān)于 的解。的解。S=solve(u*y2+v*z+w=0,y+z+w=0,y,z)disp(S.y),disp(S.y),disp(S.

溫馨提示

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

評論

0/150

提交評論