高斯-赛德尔矩阵方程试验_第1页
高斯-赛德尔矩阵方程试验_第2页
高斯-赛德尔矩阵方程试验_第3页
高斯-赛德尔矩阵方程试验_第4页
高斯-赛德尔矩阵方程试验_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

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

提交评论