2022年雅可比迭代 .pdf
1 综合实验报告一、实验名称雅可比迭代法二、实验目的(1)掌握解线性方程组的雅可比迭代和高斯-塞德尔迭代算法;培养编程与上机调试能力 ; (2)熟悉 Matlab 软件环境 . 三、实验要求(1)用雅可比迭代法解方程组;(2)建议利用 C+语言设计算法或利用Matlab 或 Maple 或 Mathematica 软件作为辅助工具来实现该实验. 四、实验原理雅可比( Jacobi)迭代法解方程组设方程组Axb的系数矩阵对角线元素0(1,2,.,)iiain,M为最大迭代次数,为容许误差 . 雅可比( Jacobi)迭代法解方程组算法步骤如下: 取初始向量(0)(0)(0)12(,.,)Tnxxxx,令0k. 对1,2,.,in,计算(1)( )11()nkkiiijjjiij ixba xa. 如果(1)( )1nkkiiixx,则输出(1)kx,结束;否则执行 如果kM,则不收敛,终止程序;否则1kk,转高斯 -塞德尔 (Gauss-Seidel)迭代法在雅可比( Jacobi)迭代法中,如果当新的分量求出后,马上用它来代替旧的分量,则可能会更快地接近方程组的准确解.基于这种设想构造的迭代公式称为高斯 - 塞德尔(Gauss-Seidel)迭代法 . 算法可相应地从雅可比(Jacobi)迭代法改造得到. 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 5 页 - - - - - - - - - 2 五、实验题目求解初值问题2(01)(0)1xyyxyy(1)六、实验步骤设方程组Axb的系数矩阵对角线元素0(1,2,.,)iiain,M为最大迭代次数,为容许误差 . 雅可比( Jacobi)迭代法解方程组算法步骤如下: 取初始向量(0)(0)(0)12(,.,)Tnxxxx,令0k. 对1,2,.,in,计算(1)( )11()nkkiiijjjiij ixba xa. 如果(1)( )1nkkiiixx,则输出(1)kx,结束;否则执行 如果kM,则不收敛,终止程序;否则1kk,转七、实验整体流程图开始输入方程系数矩阵A和常系数矩阵b,n,ee K=k+1Max|x0 (k)-x1(j)|ee,0in-1 x1(j)=(b(j)- Aj,k*x0k)/A(j,j) j=0,1,2,3,n-1名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 5 页 - - - - - - - - - 3 恒等于 0不为 0 八、程序及其运行结果要求:写出关键程序部分即可,程序中至少1/ 3行有注释 . Gauss-Serdel迭代法的 MA TLAB 函数文件 gauseidel.m 如下:Gauss-Serdel迭代法的MATLAB函数文件gauseidel.m如下:function y,n=gauseidel(A,b,x0,eps) if nargin=3 eps=1.0e-6; elseif nargin=eps x0=y; y=G*x0+f; n=n+1; end Jacobi 迭代法的MATLAB函数文件Jacobi.m如下:function varargout=ykb(varargin) A=input( 输入方程系数矩阵A,用逗号和分毫隔开。A=); b=input( 常数矩阵 ,用;隔开。 b= ); x0=input( 初值 x0=); x=ykb(A,b,x0) function x=ykb1(A,b,x0) nn=input( 迭代次数 (必填项 )n=); ee=input(精度 (可不填,表示无精度限制)ee=); n4=0;%n4 为计算迭代次数n1=length(b); x1=zeros(n1,1); for i=1:nn for j=1:n1 s=0; for k=1:n1 if k=j s=s+A(j,k)*x0(k); end end x1(j)=(b(j)-s)/A(j,j); end if norm(x1-x0)ee break end x0=x1; n4=n4+1; end x=x1; n=n4%叠加次数名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 5 页 - - - - - - - - - 5 九、实验结果分析题目应用雅可比迭代和高斯-塞德尔迭代算法解线性方程组12312312352828321361xxxxxxxxx雅可比迭代法迭代次数20 次,结果如下:01.00000012.00000021.000000 xxx 判别迭代法收敛的充分必要条件及充分条件是什么? 雅可比( Jacobi)迭代法和高斯-塞德尔 (Gauss-Seidel)迭代法收敛性的各种判别条件是什么?十、实验体会十一、教材与主要参考书教材:李庆扬,王能超,易大义编著,数值分析(第五版),清华大学出版社,2008 参考书:1 黄友谦,程诗杰,陈浙鹏,数值试验,北京:高等教育出版社,1989 2 蔡大用,数值分析与实验学习指导,北京:清华大学出版社与施普林格出版社,2001 3 肖筱南,数值计算方法与上机实习指导,北京:北京大学出版社,2004 4 A. Quarteroni, R. Sacco, F. Saleri, Numerical Mathematics, New York :Springer-Verlag, 2000 5 傅凯新,黄云清,舒适,数值计算方法,长沙:湖南科学技术出版社,2002名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 5 页 - - - - - - - - -