科学仿真实验五正文_第1页
科学仿真实验五正文_第2页
科学仿真实验五正文_第3页
科学仿真实验五正文_第4页
科学仿真实验五正文_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、的求解线性方程组在科学和工程计算中是非常重要的。虽然线性代数方程的求解方法和数值计算软件包均很成熟,但随着并行计算机的发展,问题的求解速度和本文讨论使用不列主元、列主元和Guass消去法解线性方程组的一般子程序,并用C语言算法描述,用Visual c+6.0编译,用消去法求解具体的线性方程组的解并成功运行程序求解方程。直接法:就是经过有限步算术运算,可求得方程组的精确解的方法(若计算能求的线性方程组的近似接,本文所阐述这类算法中最基本的搞死小区及某些变形,这类方法是解低阶稠密矩阵方程组极其某些大型系数方程组的有效方法。迭代法:就是用某种极限过程去逐步逼近线性方程组精确解的方法。迭代法具有需要计

2、算机的贮存单元较少、程序设计简单、原始系数矩阵在计算过程中始终不变等优点,但存在收敛性用收敛速度问题,迭代法是解大型稀疏矩阵方程组的重要方法。3.1 实验内容:先用你所熟悉的计算机语言将不选主元、列主元和完全主元Gauss消去法编写成通用的子程序,然后用你编写的程序求解下面的方程组(考虑n 从50到60)714 6 111x2x3x 11n4.1 列主元 Guass 消去法列主元消去法就是高斯消去法,主要思想是在系数矩阵A的第一列选绝对值最大的为主元,如 a (i 1,2n),当然a 0,将增广矩阵第一行与第i行对i1Frobcius矩阵a (2)a (2),则将增广矩阵的第k行与第一行对调,

3、之后构造Frobcius矩阵L2,直至进行n-1步后完成消元。得到上三角方程组,再进行回代过程。a12a22 aa111n a a212n an2nnA的第一行选取绝对值最大的元素a ,作为第一步的主元na0,然后再交换A与b的第一行元素,再进行消元计算。1bknnb 0 0 a a0 0 ak1,kk1,n (2)如果t k ,交换 ,b 的第 t 行和第 k 行元素。a m a(k) /a(k),(i k n),( , 1,,n)a(k) m a(k) i j kijik kjijmnikikkk,nnx b kkj首先将线性方程组做成增广矩阵,对增广矩阵进行行变换。对元素aii,在第i

4、i i 行交换,然后采用高斯消元法将新得到的 aii 消去第 i 行以下的元素。一次进行直到 ann。从而得到上三角矩阵。再对得到的上三角矩阵进行回代操作,即可以得到方程组的解。a01a11 a000 0 n1aa axbn-10n-1aij=aij-aik*akj,j,i=k+1,k+2,5.1 列主元 Guass 消去法图 第10页 共 11页图 第页 共 11页图 六 不选主元、列主元与完全主元Guass消去法的比较第12页 共 11页列主元消去法本质上是高斯消去法的变形,但是列主元消去法比高斯消去法得到的结果更精确。在计算机执行消去法时,要将一行是第一个元素化为1,即该行各元素同除以第

5、一个非零元素,如果这个元素的绝对值非常小,就会导致该行其它元素变得绝对值非常大,在与其它行对应元素执行加减运算时会把其它行的元素忽略不计,使得误差增大,为了避免出现这种情况,编制程序的时候增加了选主元的步骤。这主要是因为计算机进行的是近似计算,如果是用准确数运算,选主元的步骤是不必要的。平方根法需要将矩阵做Cholesky分解,化为两个三角方程组求解。平方根法(Cholesky分解法)解线性方程组Ax=b,A为方程组系数矩阵, b是方程组右端向量, x是未知向量,A必须是对称正定矩阵。量x时,用最新分量x ,x ,(k+1代替旧分量(k+1) (k+1)12i-1x ,x ,x ,就得到所谓解

6、方程组的Gauss-Seidel迭代法。(k) (k)127.2 心得体会第13页共11页(3)必须学好基础知识,在做的过程中,发现自己有很多东西都不懂,要博学必须从一点一点做起。以往训练得少只是把握的不牢靠。所以做起来感到有点吃力。所以,无论什么学科,一定要打好基础。第14页 共 11页参考文献 第15页 共 11页char celect;第16页 共 11页celect=getch();if(celect=Esc)exit(0);printf(nn 请输入方程组的维数:n=);printf( nn现在输入方程组系数矩阵 A 和向量 b:);printf(nn请输入 a%d1-a%d%d系数

7、和向量 b%d:,i,i,n,i);for(j=1;j=n+1;j+)for(k=1;k=1;k-)float p1=0;for(j=k+1;j=n;j+)xk=(Akn+1-p1)/Akk;for(i=1;i=n+1;i+)A0i=Ari;for(i=1;i=n+1;i+)Ari=Aki;for(i=1;i=n+1;i+)Aki=A0i;第18页 共 11页/*比较系数大小的函数*/int i;float p2=0;/*对数组中的元素进行取绝对值比较大小的运算*/p2=fabs(Aim);message()printf(nn 继续运算按 Enter 退出程式按 Esc!);程序 2 不选主元 Guass 消去法第19页 共 11页8,6,1,0,0,0,8,6,1,0,;for(k=0;ksize-1;k+)if(!Akk)return -1;for(i=k+1;isiz

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论