試驗(yàn)09數(shù)值微積分與方程數(shù)值解_第1頁(yè)
試驗(yàn)09數(shù)值微積分與方程數(shù)值解_第2頁(yè)
試驗(yàn)09數(shù)值微積分與方程數(shù)值解_第3頁(yè)
試驗(yàn)09數(shù)值微積分與方程數(shù)值解_第4頁(yè)
試驗(yàn)09數(shù)值微積分與方程數(shù)值解_第5頁(yè)
已閱讀5頁(yè),還剩31頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、海南大學(xué)信息科學(xué)技術(shù)學(xué)院實(shí)驗(yàn)報(bào)告指導(dǎo)教師實(shí)驗(yàn)課程:數(shù)學(xué)軟件課內(nèi)實(shí)驗(yàn)學(xué)號(hào):姓名;班級(jí);同組成員:完成日期:二Q一年一月日實(shí)驗(yàn)09數(shù)值微積分與方程數(shù)值求解(第6章 MATLAB數(shù)值計(jì)算)、實(shí)驗(yàn)?zāi)康?,掌握求數(shù)值導(dǎo)數(shù)和數(shù)值積分的方法。2.掌握代數(shù)方程數(shù)值求解的方法。3,掌握常微分方程數(shù)值求解的方法。、實(shí)驗(yàn)內(nèi)容1,求函數(shù)在指定點(diǎn)的數(shù)值導(dǎo)數(shù) TOC o 1-5 h z _ 2_f(x)12x3x, x1,2,3026x程序及運(yùn)行結(jié)果:2,用數(shù)值方法求定積分(1) I10 Jcost2_4sin(21)21dt 的近似值。程序及運(yùn)行結(jié)果:6x 5y 2z 5u 49x y 4z u 133x 4y 2z

2、2u 13x 9y 2u 114,求非齊次線(xiàn)性方程組的通解2x17x2 3x3 x4 63x15x2 2x3 2x4 49為4x2 x3 7x4 2程序及運(yùn)行結(jié)果(提示:要用教材中的函數(shù)程序line_solution ):5,求代數(shù)方程的數(shù)值解(1) 3x+sin x-ex=0 在 xo=1.5 附近的根。程序及運(yùn)行結(jié)果(提示:要用教材中的函數(shù)程序line solution):(2)在給定白初值xo=1 , yo=1 , zo=1下,求方程組的數(shù)值解。 .2sin x y ln z 7 03x 2yz3 1 0 x y z 5 06,求函數(shù)在指定區(qū)間的極值3 ,一x cosx xlog xf(

3、x) xg在(0,1)內(nèi)的最小值。e程序及運(yùn)行結(jié)果:3.32 .(2) f(x1,x2) 2x1 4xx2 10 xix2 x2在0,0附近的最小值點(diǎn)和最小值。程序及運(yùn)行結(jié)果:7.求微分方程的數(shù)值解,并繪制解的曲線(xiàn)嗎5ay 0 dx dxy(0) 0 y(0) 0程序及運(yùn)行結(jié)果(注意:參數(shù)中不能取 0,用足夠小的正數(shù)代替) 令y2=y,yi=y ,將二階方程轉(zhuǎn)化為一階方程組: TOC o 1-5 h z ,51yi必 V2xxV2 %y(0) 0, y2(0) 08.求微分方程組的數(shù)值解,并繪制解的曲線(xiàn)y; y2y3y2yy3y30.51y1y2%(0) 0,y2(0) 1,y3(0) 1程序

4、及運(yùn)行結(jié)果:三、實(shí)驗(yàn)提示四、教程:第6章MATLAB數(shù)值計(jì)算(2/2 )6.2數(shù)值微積分p1556.2.1數(shù)值微分.數(shù)值差分與差商對(duì)任意函數(shù)f(x),假設(shè)h0。 TOC o 1-5 h z ?向前差分:f (x)f (xh) f(x)?向后差分:f(x)f(x)f(xh)?中心差分:f(x)f (xh/2)f (xh/2)f(x) h f(x)h f(x)h當(dāng)步長(zhǎng)h充分小時(shí),有?向前差商:f (x)?向后差商:f(x)?中心差商:f (x).數(shù)值微分的實(shí)現(xiàn)MATLAB沒(méi)有提供求數(shù)值導(dǎo)數(shù)的函數(shù),只有計(jì)算向前差分的函數(shù)diff 。? DX=diff(X):計(jì)算向量 X 的向前差分,DX(i)=X(

5、i+1)-X(i) , i=1,2,? DX=diff(X,n):計(jì)算X的n階向前差分。例如,diff(X,2)=diff(diff(X) 。dim=2 ,? DX=diff(A,n,dim):計(jì)算矩陣 A的n階差分,dim=1時(shí)(缺省狀態(tài)),按歹U; 按行。例6.18 (向前差分)求13階差分p156設(shè)x由0,2兀間均勻分布的10個(gè)點(diǎn)組成,求sin x的13階差分。X=linspace(0,2*pi,10);Y=sin(X);DY=diff(Y)D2Y=diff(Y,2)D3Y=diff(Y,3)DY =0.64280.3420-0.1188-0.5240-0.6840-0.5240-0.1

6、1880.3420D2Y =-0.30080.3008D3Y =-0.16000.6428-0.46080.0556-0.4052-0.16000.24520.32010.16000.40520.46080.24520.0556-0.1600例6.19 (數(shù)值導(dǎo)數(shù))3種方法求導(dǎo)p157f(x)x32x2 x 12 6 5x 2用不同的方法求f(x)的數(shù)值導(dǎo)數(shù),并在同一個(gè)坐標(biāo)系中做出f(x)的圖像。f=inline( sqrt(x.A3+2*x.A2-x+12)+(x+5).A(1/6)+5*x+2);g=inline( (3*x.A2+4*x-1)./sqrt(x.A3+2*x.A2-x+12

7、)/2+1/6./(x+5).A(5/6)+5);%導(dǎo)函數(shù)x=-3:0.01:3; p=polyfit(x,f(x),5); %用 5 次多項(xiàng)式 p 擬合 f(x) dp=polyder(p);%對(duì)擬合多項(xiàng)式p求導(dǎo)數(shù)dpdpx=polyval(dp,x); %求dp在假設(shè)點(diǎn)的函數(shù)值 dx=diff(f(x,3.01)/0.01;%直接對(duì) f(x)求數(shù)值導(dǎo)數(shù)gx=g(x); %求函數(shù)f的導(dǎo)函數(shù)g在假設(shè)點(diǎn)的導(dǎo)數(shù) plot(x,dpx,x,dx, .,x,gx, -);FTglTTft IEBBgil白 IJti t VI iv InsAri.工中中Lu IccklL上:力J* Nftlp-口目 1

8、通| 0|W?通 疆 -| 0 |D 明 | 口6.2.2數(shù)值積分p1571,數(shù)值積分基本原理求解定積分的數(shù)值方法:?梯形法?辛普生(Simpson)?法?牛頓柯特斯(Newton-Cotes) 法基本思想:將整個(gè)積分區(qū)間a,b分成n個(gè)子區(qū)間xi, Xi+1, i=1,2,n,其中 x1=a, xn+i=b這樣求定積分問(wèn)題就分解為求和問(wèn)題。2,數(shù)值積分的實(shí)現(xiàn)(1)被積函數(shù)是一個(gè)解析式調(diào)用格式:quad(fname,a,b,tol,trace)quadl(fname,a,b,tol,trace)? fname是被積函數(shù)名。? a和b分別是定積分的下限和上限。6? tol用來(lái)控制積分精度,默認(rèn)to

9、l=10 6。? trace控制是否展現(xiàn)積分過(guò)程,若取非 0則展現(xiàn)積分過(guò)程,取 0則不展現(xiàn),默認(rèn)trace=0 。例6.20 (解析式函數(shù)數(shù)值積分)兩種方法 p1581.用兩種不同方法求 e x2dx0format long I=quad( ex ,0,1) I=quadl( ex ,0,1)g=inline( exp(-x.A2) );% 內(nèi)聯(lián)函數(shù)J=quad( g,0,1) %無(wú)J=quadl( g,0,1) format shortI =0.746824180726425I =0.746824133988447J =0.746824180726425J =0.74682413398844

10、7function ex=ex(x) ex=exp(-x.A2);(2)被積函數(shù)由一個(gè)表格定義調(diào)用格式:trapz(X,Y)? Y=f(X)? X=x 1,X2,,x n, XiA=1,-1,1; 5,-4,3; 2,7,10;Q,R=qr(A)%(1)Q ;-0.1826-0.0956-0.9785-0.9129-0.35320.2048-0.36510.9307-0.0228R ;-5.47721.2780-6.572708.02298.151700-0.5917 QR=Q*RQR =1.0000-1.00001.00005.0000-4.00003.00002.00007.000010.

11、0000Q,R,E=qr(A)%(2)Q ;-0.0953-0.2514-0.9632-0.2860-0.91990.2684-0.95350.30110.0158R ;-10.4881-5.4347-3.432506.0385-4.2485000.4105E =001010100 Q*R/Eans =1.0000-1.00001.00005.0000-4.00002.00007.00003.000010.0000例6.26 (QR分解)求解線(xiàn)性方程組p1672x1 x2 5x3 x4 13x1 5x2 7x492x2 x3 x4 6x1 6x2 x3 4x4 0CounndtlfX.ElLi

12、D.kg Lp Me-Ici* 1H A=2.1.-5,1; 1,A=2f I. 1; 1.2-1 ; 1.T,3; R=cho( (A) %(1) R -L 41420. 7071 0T 70710 L 2247-L2247001.0000 RTR ans =2.00001 00001. 00001. 00002. 0000-1.00001. 0000-1. GOOD 3. 0000 R,p=chol (A) % (2) R - 1,41420, 70710, 707101. 2247-1.2247001.0000p = 0A例6.27 (Cholesky分解)求解線(xiàn)性方程組p168 (非對(duì)

13、稱(chēng)正定)2x1 x2Xi5x22x2 X3x1 6x25% x4 137x49x4 6x3 4x4 0Cpw&and Windny XFile E cholMatrix must be positive de f i ni te. R, p =cho I (A) R =1. 4142 P =ovi6.4.2迭代解法p168迭代解法適合求解大型系數(shù)矩陣的方程組。在數(shù)值分析中,迭代解法主要包括: ? Jacobi迭代法 ? Gauss-Serdel 迭代法 ?超松弛迭代法 ?兩步迭代法Jacobi迭代法線(xiàn)性方程組Ax=b ,若A為非奇異方陣,即 aj產(chǎn)0(i=1,2,n)則可將A分解為 A=D-L

14、-U? D為對(duì)角陣,其元素為A的對(duì)角元素。? L與U為A的下三角陣和上三角陣。 于是Ax=b化為:x=D-1(L+U)x+D -1b 與之對(duì)應(yīng)的Jacobi迭代公式為: x(k+1)=D-1(L+U)x (k)+D-1b若序列x(k+1)收斂于x,則x必是Ax=b的解。Jacobi迭代法的函數(shù)文件 Jacobi.m p170 function y,n=jacobi(A,b,x0,eps) if nargin=3 eps=1.0e-6; elseif nargin=eps x0=y; y=B*x0+f; n=n+1; end例6.28 (Jacobi迭代法)求解線(xiàn)性方程組p170設(shè)迭代初值為0,

15、迭代精度為10-6。 TOC o 1-5 h z 10 x1x29x110 x2 2x372x2 10 x36 A=10,-1,0;-1,10,-2;0,-2,10; b=9,7,6; x,n=jacobi(A,b,0,0,0,1.0e-6)x =0.99580.95790.7916n =11Gauss-Serdel 迭代法迭代公式:x(k+1)=(D-L) -1 Ux(k)+(D-L) -1b和Jacobi迭代相比,Gauss-Serdel迭代用新分量代替舊分量,精度高。Gauss-Serdel 迭代法的函數(shù)文件 gauseidel.m p171function y,n=gauseidel(

16、A,b,x0,eps) if nargin=3eps=1.0e-6;elseif nargin=epsx0=y;y=G*x0+f;n=n+1; end例6.29 (Gauss-Serdel迭代法)求解線(xiàn)性方程組p171設(shè)迭代初值為0,迭代精度為10-6。10 x1x29x110 x2 2x372x2 10 x3 6 A=10,-1,0;-1,10,-2;0,-2,10; b=9,7,6; x,n= gauseidel (A,b,0,0,0,1.0e-6)x =0.99580.95790.7916n =7 TOC o 1-5 h z 例6.30 (兩種迭代法)求解線(xiàn)性方程組p171設(shè)迭代初值為0

17、。是否收斂?2K911x2721x36 a=1,2,-2;1,1,1;2,2,1; b=9;7;6; x,n=jacobi(a,b,0;0;0)x =-27268n =4 x,n=gauseidel(a,b,0;0;0)x =NaNNaNNaNn = 10126.4.3求線(xiàn)性方程組的通解 p172Ax=b , n為未知變量個(gè)數(shù)。 rank(A)=n ,有唯一解:x=Abb=0 ,為齊次方程組,x=0為平凡解。rank(A)n時(shí),有無(wú)窮個(gè)非平凡解,其通解包含n-rank(A)個(gè)線(xiàn)性無(wú)關(guān)的解向量。求齊次方程組的基礎(chǔ)解系:null(A,r)b4? rank(A)=rank(A,b)=n,有唯一解x=

18、Ab 或 x=pinv(A)*b? rank(A)=rank(A,b)n,有無(wú)窮個(gè)解通解=特解+齊次方程組的基礎(chǔ)解系用Ab求特解。? rank(A)0 %非齊次方程組if rank(A)=rank(A,b)if rank(A)=ndisp(有唯一解 x);x=Ab;elsedisp(有無(wú)窮個(gè)解,特解x,基礎(chǔ)解系y);x=Ab;y=null(A, r);endelsedisp(無(wú)解);x=;endelse %齊次方程組disp(有零解 x);x=zeros(n,1);if rank(A) A=1,-2,3,-1; 3,-1,5,-3; 2,1,2,-2; b=1;2;3; x,y=line_so

19、lution(A,b)無(wú)解x =y =例6.32 (求線(xiàn)性方程組的通解)p174x1 x2 3x3 x4 13x1 x2 3x3 4x4 4x1 5x2 9x3 8x40 format rat A=1,1,-3,-1; 3,-1,-3,4; 1,5,-9,-8; b=1;4;0; x,y=line_solution(A,b)有無(wú)窮個(gè)解,特解 x,基礎(chǔ)解系yWarning: Rank deficient, rank = 2, tol=8.8373e-015. Inline_solution at 11x =00-8/153/5y =3/2-3/43/27/41001表 線(xiàn)性方程組求解函數(shù)和命令

20、p163174函數(shù)/命令說(shuō)明x=Abx=inv(A)*b左除求解線(xiàn)性方程組lu對(duì)方陣LU分解qr對(duì)方陣QR分解chol對(duì)稱(chēng)正定矩陣的 Cholesky分解Jacobi 迭代公式x(k+1)=D-1(L+U)x (k)+D-1bGauss-Serdel 迭代公式x(k+1)=(D-L) -1 Ux(k)+(D-L) -1bnull求齊次方程組的基礎(chǔ)解系6.5非線(xiàn)性方程與最優(yōu)化問(wèn)題求解p174非線(xiàn)性方程數(shù)值求解.單變量非線(xiàn)性方程求解調(diào)用格式:z=fzero(filename,x0,tol,trace)? filename是待求根的函數(shù)文件名。? x0為搜索的起點(diǎn)。函數(shù)可能有多個(gè)根,但fzero只給

21、出離x0最近的那個(gè)根。? tol控制結(jié)果的相對(duì)精度,缺省 tol=eps 。? trace?迭代信息是否在運(yùn)算中顯示,為 1時(shí)顯示,為0時(shí)不顯示,缺省trace=0 。例6.33 (單變量非線(xiàn)性方程求解)p175,1f(x) x 5 x在x0=-5和x0=1作為迭代初值時(shí)的零點(diǎn)。 fzero( fz ,-5)ans =-5.1926 fzero( fz ,1)ans =0.1926 function y=fz(x) y=x-1/x+5;.非線(xiàn)性方程組F(X)=0的求解 調(diào)用格式:x=fsolve(filename,x0,option)? x為返回的解。? filename是用于定義需求解的非線(xiàn)

22、性方程組的函數(shù)文件名。? x0是求根過(guò)程的初值。? option為最優(yōu)化工具箱的選項(xiàng)設(shè)定。最優(yōu)化工具箱提供了20多個(gè)選項(xiàng),用戶(hù)可使用optimset命令將它們顯示出來(lái)。常用選項(xiàng):Display :決定函數(shù)調(diào)用時(shí)中間結(jié)果的顯示方式,off1不顯示,iter每步都顯示,final只顯示最終結(jié)果。LargeScale :是否用大規(guī)模問(wèn)題算法,取值off或on。 TOC o 1-5 h z Maxlter :最大允許迭代次數(shù),選擇空矩陣取默認(rèn)值400。TolFun :目標(biāo)函數(shù)誤差容限,選擇空矩陣取默認(rèn)值10-6。TolX :自變量誤差容限,選擇空矩陣取默認(rèn)值10-6??捎胦ption=optimset

23、命令調(diào)入一組默認(rèn)選項(xiàng)值。若想改變其中某個(gè)選項(xiàng),則可調(diào)用optimset()函數(shù)完成:optimset(Display, off);或用結(jié)構(gòu)體屬性的方式設(shè)置新參數(shù):option=optimset;option.LargeScale=off;例6.34(非線(xiàn)性方程組求解)p176求非線(xiàn)性方程組在(1,1,1)附近的解并對(duì)結(jié)果進(jìn)行驗(yàn)證。2 xsin xy z e0 x y z 0 xyz 0function F=myfun(X)x=X(1);y=X(2);z=X(3);F(1)=sin(x)+y+zA2*exp(x);F(2)=x+y+z;F(3)=x*y*z; X=fsolve( myfun ,1

24、,1,1,optimset( Display ,off ) X =0.0224-0.0224-0.0000 q=myfun(X)q =1.0e-006 *-0.5931 -0.0000 0.0006 TOC o 1-5 h z 例6.35(非線(xiàn)性方程組求解)p176求圓和直線(xiàn)的兩個(gè)交點(diǎn)。圓:x2 y2 z2 93x 5y 6z 0直線(xiàn):,x 3y 6z 1 0該問(wèn)題即為求解方程組:222x y z 9 0 3x 5y 6z 0 x 3y 6z 1 0分析:使用fsoke函數(shù)求解方程組時(shí),必須先估計(jì)出方程組的根的大致范圍。所給直線(xiàn)的方向數(shù)是(-12,24,-14),故其與球心在坐標(biāo)原點(diǎn)的球面的交

25、點(diǎn)大致是(-1,1,-1)和(1,-1,1)。以這兩點(diǎn)作為迭代初值。function F=fxyz(X)x=X(1);y=x(2);z=X(3);F(1)=xA2+yA2+zA2-9;F(2)=3*x+5*y+6*z;F(3)=x-3*y-6*z-1; X1=fsolve( fxyz ,-1,1,-1,optimset( Display ,off ) X1 =-0.95082.4016-1.5259 X2=fsolve( fxyz ,1,-1,1,optimset( Display ,off ) X2 =1.4180-2.33611.23776.5.2無(wú)約束最優(yōu)化問(wèn)題求解p177無(wú)約束最優(yōu)化問(wèn)

26、題的一般描述為:min f (x)其中x=x1, x2, ., xn,該數(shù)學(xué)表示的含義亦即求取一組x,使得目標(biāo)函數(shù)f(x)為最小。故這樣的問(wèn)題又稱(chēng)為最小化問(wèn)題。調(diào)用格式:x,fval=fminbnd(fname,x1,x2,options)求一元函數(shù)在(xl,x2)區(qū)間中的極小值點(diǎn)x和最小值fval。x,fval=fminsearch(fname,x0,options)基于單純形算法求多元函數(shù)的極小值點(diǎn)x和最小值fval ox,fval=fminunc(fname,x0,options)基于擬牛頓法求多元函數(shù)的極小值點(diǎn)x和最小值fval o例6.36(無(wú)約束最優(yōu)化問(wèn)題求解)一元函數(shù)p1771求

27、函數(shù):f(x) x - 5x在區(qū)間(-10,1)和(1,10)上的最小值點(diǎn)。function f=fx(x)f=x-1/x+5; x1,fmin1=fminbnd( fx ,-10,-1) x1 =-9.9999fmin1 =-4.8999 f=inline( x-1/x+5); x2,fmin2=fminbnd(f,-10,-1)x2 =-9.9999fmin2 = -4.8999 fminbnd(f,1,10) ans =1.0001例6.37(無(wú)約束最優(yōu)化問(wèn)題求解)多元函數(shù) p178y2z22設(shè) f(x,y,z) x上 4xyz求的f在(0.5,0.5,0.5)附近的最小值。 funct

28、ion f=fxyz(u) x=u(1); y=u(2); z=u(3);f=x+y.A2./x/4+z.A2./y+2./z; U,fmin=fminsearch( fxyz ,0.5,0.5,0.5) U = 0.50001.00001.0000fmin = 4.00006.5.3有約束最優(yōu)化問(wèn)題求解p178min f(x)x s.t .G (x) 0其中x=x,x2, ., xn,求一組x,使目標(biāo)函數(shù)f(x)最小,且滿(mǎn)足約束條件 G(x)W0。約束條件: 線(xiàn)性不等式約束: Ax巾線(xiàn)性等式約束:Aeqx = beq 非線(xiàn)性不等式約束:Cx磷非線(xiàn)性等式約束:Ceqx=0 x的下界和上界:Lb

29、ndx In fmincon at 412In Untitled2 at 8 x =0.34000.3300f =0.2456表 非線(xiàn)性方程與最優(yōu)化問(wèn)題求解函數(shù)p174179函數(shù)說(shuō)明fzero單變量非線(xiàn)性方程求解fsolve非線(xiàn)性方程組的求解optimset選項(xiàng)設(shè)置/顯示命令fminbnd求一兀的數(shù)在區(qū)間中的極小值fminsearch單純形算法求多兀函數(shù)的極小值fminunc擬牛頓法求多兀函數(shù)的極小值fmincon后約束卜求極小值6.6常微分方程的數(shù)值求解p179常微分方程的初值問(wèn)題:y=f(t,y), t 044y(t0)=y0數(shù)值解法:求y(t)在節(jié)點(diǎn)toti. yi 1 2 k1)hk3

30、f (ti 1 2, 丫,1 2 k2)k4f(ti 1 h, yi 1 hk3)龍格庫(kù)塔法的實(shí)現(xiàn)調(diào)用格式:t,y=ode23(fname,tspan,y0)t,y=ode45(fname,tspan,y0)? fname是定義f(t,y)的函數(shù)文件名,函數(shù)須返回一個(gè)列向量。? tspan形式為t0,tf,表示求解區(qū)間。? y0是初始狀態(tài)列向量。? t和y分別給出時(shí)間向量和相應(yīng)的狀態(tài)向量。第一種格式采用二階、三階龍格一庫(kù)塔法。第二種格式采用四階、五階龍格一庫(kù)塔法。例6.39 (常微分方程的數(shù)值求解)一階 p181設(shè)有初值問(wèn)題:yy2 t 24(t 1)y(0) 2試求其數(shù)值解,并與精確解相比較

31、(精確解為y(t)JfF 1)。function y=funt(t,y)y=(yA2-t-2)/4/(t+1);t0=0;tf=10;y0=2;t,y=ode23( funt ,t0,tf,y0); %求數(shù)值解y1=sqrt(t+1)+1;%求精確解plot(t,y, b.,t,y1,r-)例6.40 (常微分方程的數(shù)值求解)二階 p181已知一個(gè)二階線(xiàn)性系統(tǒng)的微分方程為:d-x ax 0, a 0 dtx(0) 0, x(0) 1其中a=2 ,繪制系統(tǒng)的時(shí)間響應(yīng)曲線(xiàn)和相平面圖。令X2=X,X 1=x ,二階方程轉(zhuǎn)化為一階方程: X2XX1aX2X2(0) 0,X1(0) 1function

32、Xdot=sys(t,X)xdot=-2*x(2);x(1);t0=0;tf=20;t,x=ode45( sys ,t0,tf,1,0);t,xsubplot(1,2,1);plot(t,x(:,2);%解曲線(xiàn),即 t-xsubplot(1,2,2);plot(x(:,2),x(:,1);%相平面曲線(xiàn),即 x-xaxis equal ans =01.000000.00011.00000.00010.00011.00000.00010.0002一1.00000.000219.7511-0.94220.235219.8340-0.97470.155619.9170-0.99370.073820.0

33、000-0.9991-0.0090表 常微分方程的數(shù)值求解函數(shù) p179183函數(shù)說(shuō)明ode23二階、三階龍格一庫(kù)塔法ode45四階、五階龍格一庫(kù)塔法6.7稀疏矩陣p183矩陣存儲(chǔ)方式MATLAB的矩陣有兩種存儲(chǔ)方式:.完全存儲(chǔ)方式將矩陣的全部元素按列存儲(chǔ)。.稀疏存儲(chǔ)方式僅存儲(chǔ)矩陣所有的非零元素的值及其位置,即行號(hào)和列號(hào)。 稀疏存儲(chǔ)方式也是按列存儲(chǔ)的。例(矩陣存儲(chǔ)方式)p183 TOC o 1-5 h z 1000A0 5002 007完全存儲(chǔ)方式(按列):1 , 0 , 2, 0, 5, 0 , 0 , 0, 0, 0, 0 , 7稀疏存儲(chǔ)方式(按列):(1,1),1 , (3,1),2 ,

34、 (2,2),5 , (3,4),76.7.2稀疏存儲(chǔ)方式的產(chǎn)生.完全存儲(chǔ)方式轉(zhuǎn)化為稀疏存儲(chǔ)方式A=sparse(S) TOC o 1-5 h z 將矩陣S轉(zhuǎn)化為稀疏存儲(chǔ)方式的矩陣Ao當(dāng)矩陣S是稀疏存儲(chǔ)方式時(shí),則函數(shù)調(diào)用相當(dāng)于A=S o例6.41 (將完全存儲(chǔ)方式轉(zhuǎn)化為稀疏存儲(chǔ)方式)p183設(shè)2000000000A 000500 10 0100005將X轉(zhuǎn)化為稀疏存儲(chǔ)方式。X=2,0,0,0,0;A =0,0,0,0,0;(1,1)20,0,0,5,0;(4,2)10,1,0,0,-1;(3,4)50,0,0,0,-5;(4,5)-1A=sparse(X)(5,5)-5其他調(diào)用格式:spars

35、e(m,n):生成一個(gè)mx n的所有元素都是0的稀疏矩陣。sparse(u,v,S) : u,v,S是3個(gè)等長(zhǎng)的向量? S是要建立的稀疏矩陣的非0元素。? u(i)、v(i)分別是S(i)的行和列下標(biāo)。?該函數(shù)建立一個(gè) max(u)行、max(v)列并以S為稀疏元素的稀疏矩陣。和稀疏矩陣操作有關(guān)的函數(shù):u,v,S=find(A):返回矩陣 A中非0元素的下標(biāo)和元素。這里產(chǎn)生的 u,v,S可作為 sparse(u,v,S)的參數(shù)。full(A):返回和稀疏存儲(chǔ)矩陣A對(duì)應(yīng)的完全存儲(chǔ)方式矩陣。.產(chǎn)生稀疏存儲(chǔ)矩陣B=spconvert(A)其中A為一個(gè)mx 3或mx 4的矩陣,其每行表示一個(gè)非0元素,

36、m是非0元素的個(gè)數(shù),A每個(gè)元素的意義是:個(gè)非0元素所在的行。個(gè)非0元素所在的歹U。個(gè)非0元素值的實(shí)部。個(gè)非0元素值的虛部,若為實(shí)矩陣,則無(wú)第四列。例6.42 (產(chǎn)生稀疏存儲(chǔ)矩陣)p185根據(jù)表示稀疏矩陣的矩陣A,產(chǎn)生一個(gè)稀疏存儲(chǔ)方式矩陣B (按列)。 TOC o 1-5 h z 221311A4335 386 6 12A=2,2,1;B =3,1,-1;(3,1)-14,3,3;(2,2)15,3,8;(4,3)36,6,12;(5,3)8B=spconvert(A)(6,6)12.帶狀稀疏存儲(chǔ)矩陣A=spdiags(B,d,m,n)? m,n為原帶狀矩陣的行數(shù)與列數(shù)。? B為r p階矩陣。r

37、=min(m,n)。p為原帶狀矩陣所有非零對(duì)角線(xiàn)的條數(shù)。B的第i列為原帶狀矩陣的第i條非零對(duì)角線(xiàn)。? d為具有p個(gè)元素的列向量,它的第i個(gè)元素為該帶狀矩陣的第i條對(duì)角線(xiàn)的位置k。非零對(duì)角線(xiàn)的取值方法:?若對(duì)角線(xiàn)上元素個(gè)數(shù)等于 r,則取全部元素;?若非零對(duì)角線(xiàn)上元素個(gè)數(shù)小于r,則應(yīng)該用零補(bǔ)足到 r個(gè)元素。補(bǔ)零的原則:mn ,應(yīng)從該對(duì)角線(xiàn)的第 1行開(kāi)始補(bǔ)零或向后補(bǔ)零至末行;m卻,應(yīng)從該對(duì)角線(xiàn)的第 1列開(kāi)始補(bǔ)零或向后補(bǔ)零至末列。對(duì)角線(xiàn)白位置k的取法:?若是主對(duì)角線(xiàn),取 k=0 ;?若位于主對(duì)角線(xiàn)的下方第 s條對(duì)角線(xiàn),取k=-s ;?若位于主對(duì)角線(xiàn)的上方第 s條對(duì)角線(xiàn),取k=s 。3X3階矩陣(m M )3X4階矩陣(mn )4X3階矩陣與3X3階矩陣類(lèi)似。其他調(diào)用格式:? B,d=spdiags(A):從原帶狀矩陣A中提取全部非零對(duì)角線(xiàn)元素賦給矩陣B及其這些非零對(duì)角線(xiàn)的位置向量do? B=spdiags(A,d):從原帶狀矩陣A中提取由

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論