《數(shù)值分析》實(shí)驗(yàn)報(bào)告書_第1頁
《數(shù)值分析》實(shí)驗(yàn)報(bào)告書_第2頁
《數(shù)值分析》實(shí)驗(yàn)報(bào)告書_第3頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、數(shù)值分析實(shí)驗(yàn)報(bào)告1實(shí)驗(yàn)一、誤差分析誤差問題是數(shù)值分析的基礎(chǔ),又是數(shù)值分析中一個(gè)困難的課題。在實(shí)際計(jì)算中,如果選用了不同的算法,由于舍入誤差的影響,將會(huì)得到截然不同的結(jié)果。因此,選取算法時(shí)注重分析舍入誤差的影響,在實(shí)際計(jì)算中是十分重要的。同時(shí),由于在數(shù)值求解過程中用有限的過程代替無限的過程會(huì)產(chǎn)生截?cái)嗾`差,因此算法的好壞會(huì)影響到數(shù)值結(jié)果的精度。一、實(shí)驗(yàn)?zāi)康?、通過上機(jī)編程,復(fù)習(xí)鞏固以前所學(xué)程序設(shè)計(jì)語言及上機(jī)操作指令;2、通過上機(jī)計(jì)算,了解誤差、絕對(duì)誤差、誤差界、相對(duì)誤差界的有關(guān)概念;3、 通過上機(jī)計(jì)算,了解舍入誤差所引起的數(shù)值不穩(wěn)定性。二、實(shí)驗(yàn)任務(wù)對(duì) n0,1,2,20 ,計(jì)算定積分1x ndx

2、.yn0 x5算法 1: 利用遞推公式y(tǒng)n15 yn 1,n1,2,20 ,n11取y00 xdxln 6ln 50.182322 .5算法 2:利用遞推公式y(tǒng)n 111 ynn20,19,1.5n5注意到11 1201 x201 120dx11266 0xdxdx5 0x,0x 51052取y201(11 ) 0.008730 .20105126思考:從計(jì)算結(jié)果看,哪個(gè)算法是不穩(wěn)定的,哪個(gè)算法是穩(wěn)定的。算法 1:t=log(6.0)-log(5.0);n=0;y=zeros(1,21);y(1)=t;for k=2:21y(k)=1/k-5*y(k-1);n=n+1;endy(1:6)y(7

3、:21)運(yùn)行結(jié)果:ans = 0.1823-0.41162.3914 -11.706958.7343 -293.5049算法 2:y=zeros(21,1);n=1;y1=(1/105+1/126)/20;for k=21:-1:2y(k-1)=1/(5*k)-y(k)/5;n=n+1;end運(yùn)行結(jié)果:y =0.08840.05800.04310.03430.02850.02430.02120.01880.01690.01540.01410.01300.01200.01120.01050.00990.00930.00890.00810.00950由數(shù)據(jù)對(duì)比可知,算法2 較為穩(wěn)定。3實(shí)驗(yàn)二、插值

4、法插值法是函數(shù)逼近的一種重要方法,它是數(shù)值積分、微分方程數(shù)值解等數(shù)值計(jì)算的基礎(chǔ)與工具,其中多項(xiàng)式插值是最常用和最基本的方法。拉格朗日插值多項(xiàng)式的優(yōu)點(diǎn)是表達(dá)式簡單明確,形式對(duì)稱,便于記憶,它的缺點(diǎn)是如果想要增加插值節(jié)點(diǎn),公式必須整個(gè)改變,這就增加了計(jì)算工作量。而牛頓插值多項(xiàng)式對(duì)此做了改進(jìn),當(dāng)增加一個(gè)節(jié)點(diǎn)時(shí)只需在原牛頓插值多項(xiàng)式基礎(chǔ)上增加一項(xiàng),此時(shí)原有的項(xiàng)無需改變,從而達(dá)到節(jié)省計(jì)算次數(shù)、節(jié)約存儲(chǔ)單元、應(yīng)用較少節(jié)點(diǎn)達(dá)到應(yīng)有精度的目的。一、實(shí)驗(yàn)?zāi)康?、理解插值的基本概念,掌握各種插值方法,包括拉格朗日插值和牛頓插值等,注意其不同特點(diǎn);2、通過實(shí)驗(yàn)進(jìn)一步理解并掌握各種插值的基本算法。二、實(shí)驗(yàn)任務(wù)1、已知

5、函數(shù)表xi0.561600.562800.564010.56521yi0.827410.826590.825770.82495用二次拉格朗日插值多項(xiàng)式求x0.5635時(shí)的函數(shù)近似值。2、已知函數(shù)表xi 0.40.550.650.80.9yi 0.41075 0.578150.696750.88811 1.02652用牛頓插值多項(xiàng)式求 N 3 (0.596)和 N 4 (0.895) 。1.function y,R=lagranzi(X,Y,x,M)x=0.5635;M=2;X=0.56160,0.56280,0.56401,0.56521;Y=0.82741,0.82659,0.82577,0

6、.82495;4n=length(X);m=length(x);for i=1:mz=x(i);s=0.0;for k=1:np=1.0;q1=1.0;c1=1.0;for j=1:nif j=kp=p*(z-X(j)/(X(k)-X(j);endq1=abs(q1*(z-X(j);c1=c1*j;ends=p*Y(k)+s;endy(i)=s;endR=M.*q1./c1;運(yùn)行結(jié)果:ans = 0.82612.N3(0.596)function y,R= newcz(X,Y,x,M)x=0.596;M=3;X=0.4,0.65,0.9;Y=0.41075,0.69675,1.02652;n=

7、length(X); m=length(x);5for t=1:mz=x(t); A=zeros(n,n);A(:,1)=Y's=0.0; p=1.0; q1=1.0; c1=1.0;for j=2:nfor i=j:nA(i,j)=(A(i,j-1)-A(i-1,j-1)/(X(i)-X(i-j+1);endq1=abs(q1*(z-X(j-1);c1=c1*j;endC=A(n,n);q1=abs(q1*(z-X(n);for k=(n-1):-1:1C=conv(C,poly(X(k);d=length(C); C(d)=C(d)+A(k,k); endy(k)= polyval

8、(C, z);endR=M*q1/c1;運(yùn)行結(jié)果:ans = 0.6313N4(0.895 )function y,R= newcz(X,Y,x,M)x=0.895;M=4;X=0.4,0.55,0.65,0.8,0.9;Y=0.41075,0.57815,0.69675,0.88811,1.02652;n=length(X); m=length(x);for t=1:mz=x(t); A=zeros(n,n);A(:,1)=Y's=0.0; p=1.0; q1=1.0; c1=1.0;6for j=2:nfor i=j:nA(i,j)=(A(i,j-1)-A(i-1,j-1)/(X(

9、i)-X(i-j+1);endq1=abs(q1*(z-X(j-1);c1=c1*j;endC=A(n,n);q1=abs(q1*(z-X(n);for k=(n-1):-1:1C=conv(C,poly(X(k);d=length(C); C(d)=C(d)+A(k,k);endy(k)= polyval(C, z);endR=M*q1/c1;運(yùn)行結(jié)果:ans = 1.01947實(shí)驗(yàn)三、解線性方程組的直接法解線性方程組的直接法是指經(jīng)過有限步運(yùn)算后能求得方程組精確解的方法。但由于實(shí)際計(jì)算中舍入誤差是客觀存在的,因而使用這類方法也只能得到近似解。目前較實(shí)用的直接法是古老的高斯消去法的變形,即主元

10、素消去法及矩陣的三角分解法。引進(jìn)選主元的技巧是為了控制計(jì)算過程中舍入誤差的增長,減少舍入誤差的影響。一般說來,列主元消去法及列主元三角分解法是數(shù)值穩(wěn)定的算法,它具有精確度較高、計(jì)算量不大和算法組織容易等優(yōu)點(diǎn),是目前計(jì)算機(jī)上解中、小型稠密矩陣方程組可靠而有效的常用方法。一、實(shí)驗(yàn)?zāi)康?、了解求線性方程組的直接法的有關(guān)理論和方法;2、會(huì)編制列主元消去法、LU分解法的程序;3、 通過實(shí)際計(jì)算,進(jìn)一步了解各種方法的優(yōu)缺點(diǎn),選擇合適的數(shù)值方法。二、實(shí)驗(yàn)任務(wù)、用列主元高斯消去法求解方程組0.101x12.304x23.555x31.1831.347x13.712x24.623x32.137.2.835x11

11、.072x25.643x33.0352、用矩陣直接三角分解法求解方程組Axb ,其中12128275472,b4A795.31161283491.主程序:function RA,RB,n,X=liezhu(A,b)B=A b; n=length(b); RA=rank(A); ('求矩陣的秩 ')RB=rank(B);zhica=RB-RA;if zhica>0,disp('請(qǐng)注意:因?yàn)?RA=RB,所以此方程組無解 .')8returnendif RA=RBif RA=ndisp('請(qǐng)注意:因?yàn)?RA=RB=n,所以此方程組有唯一解.')

12、X=zeros(n,1); C=zeros(1,n+1);for p= 1:n-1Y,j=max(abs(B(p:n,p); C=B(p,:);B(p,:)= B(j+p-1,:); B(j+p-1,:)=C;for k=p+1:nm= B(k,p)/ B(p,p);B(k,p:n+1)= B(k,p:n+1)-m* B(p,p:n+1);endendb=B(1:n,n+1);A=B(1:n,1:n); X(n)=b(n)/A(n,n);for q=n-1:-1:1 X(q)=(b(q)-sum(A(q,q+1:n)*X(q+1:n)/A(q,q); endelsedisp('請(qǐng)注意:

13、因?yàn)?RA=RB<n,所以此方程組有無窮多解.')endend計(jì)算程序:A=0.101 2.304 3.555;-1.347 3.712 4.623;-2.835 1.072 5.643; b=1.183;2.137;3.035; RA,RB,n,X=liezhu(A,b)運(yùn)行結(jié)果:ans = 求矩陣的秩請(qǐng)注意:因?yàn)?RA=RB=n,所以此方程組有唯一解.RA=3RB=3n = 39X = -0.39820.01380.33512.程序:function X=LUjfcz(A,b)n,n =size(A);X=zeros(n,1);Y=zeros(n,1);C=zeros(1,n

14、);r=1:n;for p=1:n-1max1,j=max(abs(A(p:n,p);C=A(p,:);A(p,:)= A(j+p-1,:);A(j+p-1,:)=C;g=r(p);r(p)= r(j+p-1);r(j+p-1)=g;if A(p,p)=0disp('A是奇異陣 , 方程組無唯一解 ');break;endfor k=p+1:nH= A(k,p)/A(p,p);A(k,p) = H;A(k,p+1:n)=A(k,p+1:n)- H* A(p,p+1:n);10endendY(1)=b(r(1);for k=2:nY(k)= b(r(k)- A(k,1:k-1)*

15、 Y(1:k-1);endX(n)= Y(n)/ A(n,n);for i=n-1:-1:1X(i)= (Y(i)- A(i, i+1:n) * X (i+1:n)/ A(i,i);endEnd計(jì)算程序:A=1,2,-12,8;5,4,7,-2;-3,7,9,5;6,-12,-8,3; b=27;4;11;49;X=LUjfcz(A,b)運(yùn)行結(jié)果:X = 3.0000-2.00001.00005.000011實(shí)驗(yàn)四、解線性方程組的迭代法解線性方程組的迭代法是用某種極限過程去逐步逼近線性方程組精確解的方法,即是從一個(gè)初始向量x(0) 出發(fā),按照一定的迭代格式產(chǎn)生一個(gè)向量序列 x( k) ,使其收

16、斂到方程組 Axb 的解。迭代法的優(yōu)點(diǎn)是所需計(jì)算機(jī)存儲(chǔ)單元少,程序設(shè)計(jì)簡單,原始系數(shù)矩陣在計(jì)算過程中始終不變等。但迭代法存在收斂性及收斂速度問題。迭代法是解大型稀疏矩陣方程組的重要方法。一、實(shí)驗(yàn)?zāi)康?、熟悉迭代法的有關(guān)理論和方法;2、會(huì)編制雅可比迭代法、高斯- 塞德爾迭代法的程序;3、注意所用方法的收斂性及其收斂速度問題。二、實(shí)驗(yàn)任務(wù)1、用雅可比迭代法解方程組x12x22x37x1x2x32 .2x12x2x35注意:若用高斯 - 塞德爾迭代法則發(fā)散。2、用高斯 - 塞德爾迭代法解方程組x10.9x20.9x31.90.9x1x20.9x32.0.0.9x10.9x2x31.7注意:若用雅可比

17、迭代法則發(fā)散。1.主程序:function X=jacdd(A,b,X0,P,wucha,max1)n m=size(A);for k=1:max1k12for j=1:mX(j)=(b(j)-A(j,1:j-1,j+1:m)*X0(1:j-1,j+1:m)/A(j,j);endXdjwcX=norm(X'-X0,P); xdwcX=djwcX/(norm(X',P)+eps); X0=X'if (djwcX<wucha)&(xdwcX<wucha)disp('請(qǐng)注意:雅可比迭代收斂, 此方程組的精確解jX 和近似解 X 如下: ')

18、returnendendif (djwcX>wucha)&(xdwcX>wucha)disp('請(qǐng)注意:雅可比迭代次數(shù)已經(jīng)超過最大迭代次數(shù)max1 ')End計(jì)算程序:A=1 2 -2;1 1 1;2 2 1;b=7;2;5; X0=0 0 0'X=jacdd(A,b,X0,inf,0.01,100)運(yùn)行結(jié)果:k = 1X = 725k = 2X=13-10-13k = 3X = 12-1k = 4X = 12-12.主程序:function X=gsdddy(A,b,X0,P,wucha,max1)13D=diag(diag(A);U=-triu(

19、A,1);L=-tril(A,-1); dD=det(D); if dD=0disp('請(qǐng)注意:因?yàn)閷?duì)角矩陣D 奇異,所以此方程組無解.')elsedisp('請(qǐng)注意:因?yàn)閷?duì)角矩陣D 非奇異,所以此方程組有解.')iD=inv(D-L); B2=iD*U;f2=iD*b;jX=Ab; X=X0;n m=size(A);for k=1:max1X1= B2*X+f2; djwcX=norm(X1-X,P);xdwcX=djwcX/(norm(X,P)+eps);if (djwcX<wucha)|(xdwcX<wucha)returnelsek,X1&#

20、39;,k=k+1;X=X1;endendif (djwcX<wucha)|(xdwcX<wucha)disp('請(qǐng)注意:高斯 - 塞德爾迭代收斂 , 此 A 的分解矩陣 D,U,L 和方程組的精確解 jX 和近似解 X 如下: ')elsedisp('請(qǐng)注意:高斯 - 塞德爾迭代的結(jié)果沒有達(dá)到給定的精度,并且迭代次數(shù)已經(jīng)超過最大迭代次數(shù) max1,方程組的精確解jX 和迭代向量 X 如下: ')X=X'jX=jX'endendX=X'D,U,L,jX=jX'計(jì)算程序:A=1 0.9 0.9;0.9 1 0.9;0.9

21、 0.9 1;b=1.9;2.0;1.7;X0=0 0 0'X=gsdddy(A,b,X0,inf, 0.001,100)運(yùn)行結(jié)果:14k =1ans =1.90000.2900-0.2710k =2ans =1.88290.5493-0.4890k = 3ans =1.84570.7789-0.6622k =4ans =1.79490.9805-0.7979k =5ans =1.73561.1560-0.9025k =6ans =1.67181.3076-0.9815k = 7ans =1.60651.4375-1.0396k = 8ans =1.54191.5479-1.0808k =9ans =1.47961.6411-1.1086

溫馨提示

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

評(píng)論

0/150

提交評(píng)論