高斯-賽德爾迭代法解線性方程組_第1頁
高斯-賽德爾迭代法解線性方程組_第2頁
高斯-賽德爾迭代法解線性方程組_第3頁
高斯-賽德爾迭代法解線性方程組_第4頁
高斯-賽德爾迭代法解線性方程組_第5頁
已閱讀5頁,還剩1頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、數值分析實驗五班級: 10信計二班 學號:59 姓名:王志桃 分數: 一實驗名稱高斯-賽德爾迭代法解線性方程組二實驗目的1. 學會利用高斯賽德爾方法解線性方程組2. 明白迭代法的原理3. 對于大型稀疏矩陣方程組適用于迭代法比較簡單三實驗內容利用Gauss-Seidel迭代法求解下列方程組, 其中取。四、算法描述由Jacobi迭代法中,每一次的迭代只用到前一次的迭代值,若每一次迭代充分利用當前最新的迭代值,即在計算第個分量時,用最新分量,代替舊分量,就得到所謂解方程組的Gauss-Seidel迭代法。其迭代格式為 (初始向量), 或者寫為 五、 編碼#include<stdio.h>

2、#include<stdlib.h>#include<conio.h>#include<math.h>#defineMAX_n 100#define PRECISION0.0000001#define MAX_Number1000void VectorInput(float x,int n) /輸入初始向量int i;for(i=1;i<=n;+i)printf("x%d=",i);scanf("%f",&xi);void MatrixInput(float AMAX_n,int m,int n) /輸入

3、增廣矩陣int i, j;printf("n=Begin input Matrix elements=n");for(i=1;i<=m;+i)printf("Input_Line %d : ",i);for(j=1;j<=n;+j)scanf("%f",&Aij);void VectorOutput(float x,int n) /輸出向量int i;for(i=1;i<=n;+i)printf("nx%d=%f",i,xi);int IsSatisfyPricision(float x1

4、,float x2,int n) /判斷是否在規定精度內int i;for(i=1;i<=n;+i)if(fabs(x1i-x2i)>PRECISION) return 1;return 0;int Jacobi_(float AMAX_n,float x,int n) /具體計算float x_formerMAX_n;int i,j,k;printf("nInput vector x0:n");VectorInput(x,n);k=0;dofor(i=1;i<=n;+i)printf("nx%d=%f",i,xi);x_formeri

5、=xi;printf("n");for(i=1;i<=n;+i)xi=Ain+1;for(j=1;j<=n;+j)if(j!=i) xi-=Aij*xj;if(fabs(Aii)>PRECISION)xi/=Aii;elsereturn 1;+k;while(IsSatisfyPricision(x,x_former,n) && k<MAX_Number);if(k>=MAX_Number)return 1;elseprintf("nG-S %d times!",k);return 0;int main()

6、/主函數int n;float AMAX_nMAX_n,xMAX_n;printf("nInput n=");scanf("%d",&n);if(n>=MAX_n-1)printf("n007n must <%d!",MAX_n);exit(0);MatrixInput(A,n,n+1);if(Jacobi_(A,x,n)printf("nG-S Failed!");elseprintf("nOutput Solution:");VectorOutput(x,n);printf("nn007Press any key to quit!n"

溫馨提示

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

評論

0/150

提交評論