此程序为解线性方程组的Jacobi迭代法的MATLAB源程序

源代码在线查看: jacobi迭代法.txt

软件大小: 2 K
上传用户: Numb_pqc
关键词: Jacobi MATLAB 程序 方程
下载地址: 免注册下载 普通下载 VIP

相关代码

				Jacobi迭代法的MATLAB函数文件Jacobi.m如下:
				function s=jacobi(A,b,x0,eps)
				%Jacobi迭代法解线性方程组
				%A为系数矩阵,b为方程组Ax=b的右端项,x0为初值,eps为允许误差值
				if nargin==3
				    eps=1.0e-6;
				elseif nargin				    error
				    return
				end      
				D=diag(diag(A));    %求A的对角矩阵
				L=-tril(A,-1);       %求A的下三角阵
				U=-triu(A,1);       %求A的上三角阵
				B=D\(L+U);
				f=D\b;
				s=B*x0+f;
				n=1;                  %迭代次数
				while norm(s-x0)>=eps
				    x0=s;
				   s=B*x0+f;
				    n=n+1;
				end
				 例:10x1-2x1-x3=3
				     -2x1+10x2-x3=15
				     -x1-2x2+5x3=10
				用MATLAB实现,在命令窗口输入
				 A=[10 -2 -1;-2 10 -1;-1 -2 5];
				 b=[3 15 10]';
				 x0=[0 0 0]';
				 eps=0.0001;
				 s=jacobi(A,b,x0,eps)
				 
				     
							

相关资源