高斯-赛德尔迭代法的算法及程序设计

高斯-赛德尔迭代法的算法及程序设计

ID:12587761

大小:45.50 KB

页数:5页

时间:2018-07-17

高斯-赛德尔迭代法的算法及程序设计_第1页
高斯-赛德尔迭代法的算法及程序设计_第2页
高斯-赛德尔迭代法的算法及程序设计_第3页
高斯-赛德尔迭代法的算法及程序设计_第4页
高斯-赛德尔迭代法的算法及程序设计_第5页
资源描述:

《高斯-赛德尔迭代法的算法及程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、高斯-赛德尔迭代法的算法及程序设计设方程组的系数矩阵的对角线元素,为迭代次数容许的最大值,为容许误差。1取初始向量令k=0.2对i=1,2,…,n计算3如果则输出结束;否则执行44如果则不收敛,终止程序;否则,转2源程序:#include#include#defineN600voidmain(){inti;doublex[4];doublec[4][5]={10,-1,2,0,-11,0,8,-1,3,-11,2,-1,10,0,6,-1,3,-1,11,25};voidGaussSeide

2、l(double*,int,double[]);GaussSeidel(c[0],4,x);for(i=0;i<=3;i++)printf("x[%d]=%f",i,x[i]);}voidGaussSeidel(double*a,intn,doublex[]){inti,j,k=1;doubled,dx,eps;for(i=0;i<=3;i++)while(1){eps=0;for(i=0;i<=3;i++){d=0;for(j=0;j<=4;j++){if(j==i)continue;d+=*(a+i*(n+1)+j)

3、*x[j];}dx=(*(a+i*(n+1)+n)-d)/(*(a+i*(n+1)+i));eps+=fabs(dx-x[i]);4x[i]=dx;}if(eps<1e-6){printf("迭代次数是:%d",k);return;}if(k>N){printf("迭代发散n");return;}}}输出结果结果分析:从输出结果可以看出此方程组的迭代次数为1,此时能得到精确结果是  x[0]=-1.467391,x[1]=-2.358696,x[2]=0.657609,x[3]=2.842391从结果和原有知识可以知

4、道其系数矩阵是严格对角占优的。所以此迭代解法有很好的收敛性.4附录C语言编程源程序#include#include#include#include#defineN3main(){inti,j,k,s;floata[N][N]={0},L[N][N]={0},U[N][N]={0},sigma1,sigma2;for(i=0;i

5、);for(j=0;j

6、[s]*U[s][k];L[i][k]=(a[i][k]-sigma2)/U[k][k];}}printf("a矩阵为:");for(i=0;i

7、j=0;j

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。