




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、實驗二高斯-賽德爾迭代法、實驗目的1) 了解迭代法的基本思想及原理2)判斷Jaconbi迭代、Guass-Seidei迭代對任意向量的收斂性及其應用價值3)實現Guass-Seidei迭代算法的程序設計。二、實驗設備和實驗環境操作系統:Windows XP Professional軟彳牛:MATLAB7.0 或 Visual C+ 6.0三、實驗內容及要求:對于線性方程組Ax班1出2anb1Xi為1為2202nb2乂2,B,X為1為2OCnnbnXnB,記方程組的系數矩陣為:用Guass-Seidei迭代法求解。并且用Jaconbi迭代法和列主元消去法進行算法比較,同時得出Guass-Seid
2、ei迭代法的優劣性,從而得出一些結論。四、算法描述:1.選取迭彳t初值x (0)(x(0),x20),xn°)。2.將方程組 Ax b (設aii0,i1,2, ,n)化為等價方程組:將老值Xi(k 1)3.XibiaiiajXj(i 1,2, ,n)xi(k)加工成新值-1haii若迭代偏差ek(kxii 1(kaijXjj 1(k 1)max x1)1),得到:naijx(k) (ij 1 11,2, ,n)。xi(k)小于指定精度,則輸出結果,終止計算;否者執行下一步。4.若迭代次數k小于事先設定的最大迭代次數N,則轉入第2步繼續迭代;否則輸出迭代失敗的標志,并終止計算。五、實
3、驗步驟與結果分析(一 ) 實驗源程序function x,k,xx=GuassSeider(A,b,x0,emg,N)% A 是線性方程組的系數矩陣% b 右端向量% x0 迭代的初始值向量% emg 控制精度% N 迭代的上限,如果迭代的次數大于N時候,則迭代失敗% x 表示用迭代法求的的線性方程的近似解% k 表示迭代的次數% xx 表示迭代過程中的變量變換If nargin<5N=400;endif nargin<4emg=1e-4;endn=length(b);x1=zeros(n,1);x2=zeros(n,1);x1=x0;xx=x0;r=max(abs(b-A*x1)
4、;k=0;while (r>emg)&(k<N)for i=1:nsum=0;for j=1:nif j>isum=sum+A(i,j)*x1(j);end if j<i迭代法僅將x2(j) 改為 x1(j)sum=sum+A(i,j)*x2(j); % Jacobimendendx2(i)=(b(i)-sum)/A(i,i);end xx=xx'x2''r=max(abs(x2-x1);x1=x2;k=k+1;if k>Nwarning(' 迭代次數達到上限');return ;endendx=x1;xx=xx
5、39;(二)實驗數據0.101x1 2.304x2 3.555x3 1.1831.347x1 3.712x2 4.623x32.1372.835x1 1.072x2 5.643x3 3.03511x1 3x2 2x33x1 5x2 3x362x1 12x2 19x37x1 +2x2-2x3 =1x1 x2 + x3 =12x1 + 2x2 +x3 = 1MATLAB 程序如下:» 1,5尸3lM T2, 19:b=3J6,-7J ;工上05 0, 0J ; 白睡=10"-g;*L,kLwKl】=Gu3335eid叱rfR? b,xQj. emg;)x2j 12 HK?lMj
6、auobuiCAnh ejngJ程序(2)» A=鞏 IQLZ 3。射 3, 555;-L 347,3, 712, 4.623;-2. 835, 1, 072,5, 643: b=【lSM 2. 137,3.。而廠: a(MQ,QM a in 產 ICT - 4: x 1 ?k 11 =GuassSeid?r1 A,b,kQ, ew.8 1 以2, k?l=J&±cLini4A, b, x03 ejng1程序(3)»24 lj 124i;b=l, U 1:xo= 0j o, or:x, k l=Guass;Seid«r i% b, xO) x2,
7、 kJl=Jacobun.f.A, b, xO)(三)實驗結果分析結果:程序(1)運行結果:kl =2Sil -9. 9599959257019130011, 9S999999O0OlllU+OOa9.9S999S932817744e-001k2 -54xZ 二9999883199945001L959999381504100*+0009.9599&9819095685e-O01程序(2)運行結果:友1 =NatlNaNNaNkl =225程序(3)耳£二5. 03661L2114287E8ed-2827.808664403001C49?+282-6t557857429056S
8、34e+282k2 -400運行結果:Jcl 士400xL =-1.540312052379841 e+123h5416031772178S4e+123-2.582249S790S6909e+120x2 =-3分析:從程序(1)可以得出Guss-Seidel迭代法的收斂速度明顯比Jacobim迭代法快得多,因為 Guss-Seidel 迭代法迭代法利用了迭代過程中的新信息,從而加快收斂速度。從程序(2)可以看到Guss-Seidel迭代法不起作用了,沒有列主元消元法好。在迭代過程中, Guss-Seidel 迭代法必須保證迭代過程是收斂的, 一個發散的迭代過程, 即使迭代千萬次,其計算結果也毫無價值。從
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論