数值分析用Jacobi迭代法和GaussSeidel迭代法求解线性方程组_第1页
数值分析用Jacobi迭代法和GaussSeidel迭代法求解线性方程组_第2页
数值分析用Jacobi迭代法和GaussSeidel迭代法求解线性方程组_第3页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

1、作业六:分别编写用Jacobi迭代法和Gauss-Seidel迭代法求解线性方 程组Ax=B的标准程序,并求以下方程组的解。可取初始向量X(0)=(0, 0, 0);迭代终止条件 |x (k+1)-x(k)|<=10e -6(1)8 - 1 1 ?1 1210 - 1 x2=41 1- 5 x3 3(2)521 ?1 -12-142 x2= 20 2 - 310 x3 3Jacob i迭代法:流程图判断b中的最大值有没有比误差大给x赋初值进行迭代求出x,弱到100次还没到,警告不收敛程序clear;clc;A=8,-1,1;2,10,01;1,1, -5; b=1;4;3;e=1e-6;

2、x0=0;0;0'n=length(A); x=zeros(n,1);k=0;r=max(abs(b);while r>efor i=1:nd=A(i,i);if abs(d)<e warning(' 矩阵 A 输入有误 '); return;endsum=0;for j=1:n if j=i sum=sum+A(i,j)*x0(j); endendx1(i)=(b(i)-sum)/A(i,i);endk=k+1;r=max(abs(x1-x0);x0=x1;fprintf('第%d 次迭代:,k)fprintf('n 与上次计算结果的距离

3、:%f n',r) disp(x1);if k>100warning(' 不收敛 ');endendx=x0;程序结果(1)第1次迭代:与上次计算结果的距离汕,000000.12500.4000-0.6000第2次送代:旨上次计算结果的距鬲:0一 1250000.25000. 4350-0. 4550第了次迭代:与上次计算结舉的匪离:0.0355000.24120.30&S-0.4630第4次谨代:;旨上次计算结3:0. 0083500.23280.3981-0.4718第吕次迭代:弓上次计算结果的靦离:h 00Z5720.23370.4006-0.473

4、S第$次迭代:与上次计算结果审距蛊:Q.Q00阳90.23430.4006-0.4731第7决迭代;与上次计草箱果的距鬲:山0001840.23420.4005-0.4730第g次迭代:与上次计算结果的距离:6 0000540.23420. 4005-0. 4731第g庚迭代;与上次计尊结果的韭离:0. 0000130. 23420.4(105-0.4:3i第10次迭代:与上次计算结果的36离:。0000040. 23420. 4005-0, 4731第11次迭世:与上次i+算绪果的距禹山.0000010.23420. 4005-0. 4731(2)第i次迭代:与上次计算结杲的距离;京0000

5、00-2. 40005. 00000. 3000第2次迭优;与上次计尊结果的拒!2.0fi0000-4. 46004. 25002. 2300第d次逸代:与上次计算结果的距高:1.505000-4-55602,74502.4670第4次迭代;与上次计算结果的拒离:0. 564600 -3.99142.62752.0347第5次迭代:与上次计算结果的距富:® 357300-3.857&2.984S1.昭笳第$次迭代:与上次计算结果的距离:山113286-3.97123.09221.9670第均次送优:与上次i-算结杲的距离:Q. 00L023-4.CQ022.9$922.000

6、2第14次送代:与上尖卜尊结果的距离:0. 00Q626 -3.S3972. S5&S 1.9998第15次迭代;与上次卜茸貉果的距离:0- 00034 1-3.S999 X 0002 】用囲9第诃次迭代;与上次卜聲踣衆的題韶;0- 0C0155 -4,COOO 100012. 0000第17次迭代;:与上戾卜算循果的距离:山000106-4.COOO 3.00002.0000第坤宓迭代:与上次说算务杲的距离:0+ 00004】-4.COOO 3.00002.0000第:次迭代:与上决计算结杲的距离:Q. 053570-4-03033.02372.0219第E次迭代;与上次计算结果的3

7、:0,042216 -4, 013&2. 98152*0132第9;乂迭优:与上次计算结果的距离:0. 01阴肌-3-99522.99001.9972第10次迭代:与上次计算结果的距离= 0.012637 -3.S9543.00261.50第门次送代:与上次计算结果的距离:0l 004819-4-00023.00311.9999第12次迭代:与上次计算结果的距高:厲003121-4.00123.0000Z0010 就g坎送代:与上次计算结杲的距离:0.000027-4.0000 玉 0000 N 0000第刘次迭代;与上次计算结果的距离:0. 000009 -4 00003. 0C00

8、2. 0000第21次送代:与上离计茸结果的距离:也000006-4. 0000 玉 00002. 0000第盟次迭代;与上次计軍结果的距离:0. 000003 -4. 00003. 00002. 0400第23次送代匕与上离计茸结果的距离:也000001-4. 0000 玉 00002, 0000第24次迭代二与上次计軍结果的距离= 0.000001-4. 00003. 00002. 0000GaussSeidel 迭代法:程序clear;clc;%A=8,-1,1;2,10,01;1,1, -5;%b=1;4;3;A=5,2,1;-1,4,2;2,-3,10;b=-12;20;3;m=si

9、ze(A);if m(1)=m(2)error(' 矩阵 A 不是方阵 ');endn=length(b);%初始化U 是上三角阵N=0;%迭代次数L=zeros(n);%分解A=D+L+U,D是对角阵,L是下三角阵,U=zeros(n);D=zeros(n);G=zeros(n);%G=-inv(D+L)*U d=zeros(n,1);%d=inv(D+L)*b x=zeros(n,1);for i=1:n% 初始化 L 和 Ufor j=1:nif i<jL(i,j)=A(i,j);endif i>jU(i,j)=A(i,j);endendendfor i=1:n% 初始化 DD(i,i)=A(i,i);endG=-inv(D+L)*U;%初始化 Gd=(D+L)b;%初始化 d%迭代开始x1=x;x2=G*x+d;while

温馨提示

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

评论

0/150

提交评论