解线性方程组的基本迭代法实验(ca参考)

上传人:tang****xu4 文档编号:141746188 上传时间:2020-08-12 格式:DOCX 页数:19 大小:38.41KB
返回 下载 相关 举报
解线性方程组的基本迭代法实验(ca参考)_第1页
第1页 / 共19页
解线性方程组的基本迭代法实验(ca参考)_第2页
第2页 / 共19页
解线性方程组的基本迭代法实验(ca参考)_第3页
第3页 / 共19页
解线性方程组的基本迭代法实验(ca参考)_第4页
第4页 / 共19页
解线性方程组的基本迭代法实验(ca参考)_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《解线性方程组的基本迭代法实验(ca参考)》由会员分享,可在线阅读,更多相关《解线性方程组的基本迭代法实验(ca参考)(19页珍藏版)》请在金锄头文库上搜索。

1、Lab.解线性方程组的基本迭代法实验【实验目的和要求】1使学生深入理解Jacobi迭代法、Gauss-Seidel迭代法和SOF迭代法;2.通过对Jacobi迭代法、Gauss-Seidel迭代法和SOF迭代法的程序设计,以提高学生 程序设计的能力;3应用编写的程序解决具体问题,掌握三种基本迭代法的使用,通过结果的分析了解 每一种迭代法的特点。【实验内容】1根据Matlab语言特点,描述Jacobi迭代法、Gauss-Seidel迭代法和SO曲代法2.编写Jacobi迭代法、Gauss-Seidel迭代法和SOF迭代法的M文件。3给定A R20 20为五对角矩阵1|3 21 3211414-1

2、41124113+1113224111 3 42211342(1)选取不同的初始向量x(0)及右端面项向量b,给定迭代误差要求,分别用编写Jacobi迭代法和Gauss-Seidel迭代法程序求解,观察得到的序列是否收敛?若收敛,通过迭代次数分析 计算结果并得出你的结论。用编写的SOF迭代法程序,对于(1)所选取的初始向量x(0)及右端面项向量b进行求解,松驰系数取13 z 02l|)ai,n_Lainai1ai2IIIain,ai1_a2100II)2, n_L-a2n还1a22IHa2na22I-8bJ L j4丄1弐上III00Jn01an2IIIHin ;ann I Fi3n2III_

3、an,n A0;0丿A 二aiiann_a21-an 4,1aniTn 4,2_an2_an,n -4- ai20IIIIII_ai,n 4_a2,n 4- ain一 a2nan 4,nA=D L -U0则有:第一步Jacobi迭代法Ax 二 b A=D -L_U U)归 Dx=(L U)x b= x = D (L U)x D b令仁D则称J为雅克比迭代矩阵由此可得雅克比迭代的迭代格式如下:x(0),初始向量X(k1) =Jx(k)f,k =0,1,2, I第二步Gauss-Seidel 迭代法Ax =bA =D -L -U二(D _L -U)x=b二(D _ L)x=Ux b= x = (D

4、 _ L)Ux (D -L)令G -(D L) U,则称g为Gauss-Seidel迭代矩阵 f =(D -L) b由此可得Gauss-Seidel迭代的迭代格式如下:x(0),初始向量i,x(k 1)二Gx(k)- f,k =0,1,2, H第三步SOR迭代法w = 0111A D _L _U (D _wL i(1 - w)D - wU )(D - wL)(1 - w)D - wU )www11令 M (D-wL),N (1-w)D-wU)则有:A = M-NwwAx =b(M N)x = bn Mx = Nx+bn x = M Nx + M bA =M -NLw = m n .令 w带入M

5、,N的值可有f =M b(1 -w)D -wU) (D _wL)=(D wL)(1w)D wU)b1(D -wL) w=wJ(D - wL) Jb称Lw为SO曲代矩阵 由此可得SOR迭代的迭代格式如下:x(0),初始向量x(k1)二 Lwx(k) f,k =0,1,2, 1(算法程序Jacobi迭代法的M文件:fun ctio n y,n=Jacobi(A,b,x0,eps)%t*%函数名称Jacobi雅克比迭代函数%参数解释A系数矩阵%b常数项%x0估计解向量%eps%返回值误差范围%y解向量%n迭代次数%函数功能实现线性方程组的Jacobi迭代求解%i*n=len gth(A);if na

6、rgin=1disp( 谱半径大于等于 1,迭代不收敛,无法进行 ); return;endn=1;for i=1:1:nif sum(A(i,i)=n)=nerror(输入的 A 矩阵的对角线元素不能为 0);return;endendy=B*x0+f;while norm(y-x0)=eps&n100x0=y;y=B*x0+f;n=n+1;endGauss-Seidel迭代法的M文件和function y,n=GaussSeidel(A,b,x0,eps)%*%函数名称 GaussSeidel高斯赛德尔迭代函数%参数解释 A系数矩阵% b常数项% x0估计解向量%eps%返回值误差范围%

7、y解向量% n迭代次数%函数功能实现线性方程组的 Jacobi 迭代求解%*n=length(A);if nargin=1disp( 谱半径大于等于 1,迭代不收敛,无法进行 ); return;endn=1;for i=1:1:nif sum(A(i,i)=n)=nerror( 输入的 A 矩阵的对角线元素不能为 0); return;endendy=B*x0+f;while norm(y-x0)=eps&n100x0=y;y=B*x0+f;n=n+1;endSOR迭代法的M文件 function y,n=SOR(A,b,x0,w,eps)%*%函数名称SOR%参数解释A%w%b%x0%eps%返回值%y%n%函数功能松弛迭代函数 系数矩阵 松弛因子 常数项 估计解向量 误差范围解向量迭代次数实现线性方程组的 Jacobi 迭代求解%* n=length(A);if nargin=eps&n b=ones(20,1); x0=zeros(20,1); eps=0.005; y,n=Jacobi(A,b,x0,eps)0.48130.57290.63210.65130.66000.66320.66460.66510.66530.66530.66530.66530.66510.66460.66320.66000

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号