




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、高斯列主元消元法解线性方程组一、题目:用Gauss列主元消去法解线性方程组,其中,A= 二、原理及步骤分析设,。若约化主元素,则通过高斯消元法将方程约化为三角形方程组求解。 如果在消元过程中发现某个约化主元, 则第K次消元就无法进行。此外,即使所有约化主元全不为零,虽然可以完成方程组的求解,但也无法保证结果的可靠性,因为计算过程中存在舍入误差。为减少计算过程中的舍入误差对解的影响,在每次消元前,应先选择绝对值尽可能大的元作为约元的主元,如果在子块的第一列中选取主元,则相应方法称为列主元消元法。相应过程为:(1)选主元:在子块的第一列中选择一个元使 并将第k行元与第行元互换。(2)消元计算:对k
2、=1,2,n-1依次计算 (3) 回代求解三 流程图回代求解,即交换行,即选主元,即确定,使输入矩阵 消元计算,即四、 源程序高斯列主元消元法程序#include<math.h>#include<stdio.h>#define N 6main() float ANN+1=17.031,-0.615,-2.991,1.007,-1.006,0.000,0.230,-1.000,34.211,-1.000,-2.100,0.300,-1.700,-52.322,0.000,0.500,13.000,-0.500,1.000,-1.500,54.000,4.501,3.110
3、,-3.907,-61.705,12.170,8.999,240.236,0.101,-8.012,-0.017,-0.910,4.918,0.100,29.304,1.000,2.000,3.000,4.500,5.000,21.803,-117.818, total,x6; int i,j,k,m,n;printf("方程的增广矩阵:n"); for(i=0;i<N;i+) for(j=0;j<N+1;j+) printf(" %5.3f ",Aij); printf("n");for(j=0;j<N-1;j+)
4、 /*di j bu xiao yuan */ k=j; /*最大行号赋给k*/ for(i=j+1;i<N;i+) if(fabs(Aij)>fabs(Akj) k=i; if(k=j) for(i=j+1;i<N;i+) for(m=j+1;m<N+1;m+) Aim=Aim-Ajm*Aij/Ajj; else for(n=0;n<N+1;n+) ANn=Akn; /*换行 */ Akn=Ajn; Ajn=ANn; for(i=j+1;i<N;i+) for(m=j+1;m<N+1;m+) Aim=Aim-Ajm*Aij/Ajj; printf(&
5、quot;消元後的结果:n"); for(i=0;i<N;i+) for(j=0;j<N+1;j+) printf(" %5.3f ",Aij); printf("n");xN-1=AN-1N/AN-1N-1;for(i=N-2;i>=0;i-)total=AiN;for(j=N-1;j>i;j-)total=total-xj*Aij;xi=total/Aii;printf("方程的解:n");for(i=0;i<N;i+) printf("x1=%fn",xi); 五、 结果显示6、 结果分析: 消元必须从主元的下一行下一列开始,否则,不会得到正确结果。从结果运行情况看,消元后不会得到三角阵,但回带求解时,程序只关心上三角阵,不会影
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论