线性方程组解法 (雅可比 高斯赛德尔 sor)

线性方程组解法 (雅可比 高斯赛德尔 sor)

ID:15137700

大小:42.50 KB

页数:6页

时间:2018-08-01

线性方程组解法 (雅可比 高斯赛德尔 sor)_第1页
线性方程组解法 (雅可比 高斯赛德尔 sor)_第2页
线性方程组解法 (雅可比 高斯赛德尔 sor)_第3页
线性方程组解法 (雅可比 高斯赛德尔 sor)_第4页
线性方程组解法 (雅可比 高斯赛德尔 sor)_第5页
资源描述:

《线性方程组解法 (雅可比 高斯赛德尔 sor)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验作业(一)本章实验内容:实验题目:Jacobi迭代法,Gauss-Saidel迭代法,SOR迭代法。实验内容:利用MATLAB,编制求Ax=b的各迭代计算方法的程序。实验目的:了解迭代法的运用性,进行各迭代法数值结果的比较,并找出一个计算量小的,使迭代法加速收敛的迭代方法。编程要求:①利用迭代法,初始向量为x(0)②同时利用Jacobi法和Gauss-Seidel法来进行对比。③利用SOR迭代法来进行对比。计算算法:①Jacobi迭代法的算法为:②Gauss-Saidel迭代法的算法为:③SOR迭代法的算法为:例1  利用Jacobi方法求方程组的近似解

2、。程序源代码及程序实现一jacobi程序:functionx=Jacobi(A,b,x0,delta,N)%A:系数矩阵;%b:常数向量;%x0:初值向量(列);%delta:误差条件;%N:N取适当大值,限制迭代次数;%============================%error:第k次迭代误差;%k:迭代次数;%B:迭代矩阵;n=length(b);fork=1:Nfori=1:ns=0;forj=1:nifj~=is=s+A(i,j)*x0(j);endendx(i)=(b(i)-s)/A(i,i);enderror=abs(norm(x'-x

3、0));x0=x';if(error>A=[10-1-2;-110-2;-1-15];b=[7.28.34.2]';>>x=Jacobi(A,b,[000]',1e-4,100)结果:x0=1.10001.20001.3000k=10error=7.7813e-005B=00.10000.20000.100000.20000.20000.20000x=1.10001.20001.3000二Gauss_Se

4、idel程序:functionx=Gauss_Seidel(A,b,x0,delta,N)%A:系数矩阵;%b:常数向量;%x0:初值向量(列);%delta:误差条件;%N:N取适当大值,限制迭代次数;%============================%error:第k次迭代误差;%k:迭代次数;n=length(b);fork=1:Nfori=1:ns1=0;s2=0;%--------x0为第k次迭代的值---------forj=i+1:ns1=s1+A(i,j)*x0(j);end%--------x为第k+1次迭代的值--------fo

5、rj=1:i-1s2=s2+A(i,j)*x(j);end%---------------------------------x(i)=(b(i)-s1-s2)/A(i,i);enderror=abs(norm(x'-x0));x0=x';if(error>A=[10-1-2;-110-2;-1-15];b=[7.28.34.2]';x0=[000]';>>Gauss_Seidel(A,b,x0,1e-4,50)结果:k=7error=1.4669e-005ans=1.10001.2000

6、1.3000三SOR程序:functionx=SOR(A,b,x0,omiga,delta,N)%A:系数矩阵;%b:常数向量;%x0:初值向量(列);%omiga:松弛因子;%delta:误差条件;%N:N取适当大值,限制迭代次数;%============================%error:第k次迭代误差;%k:迭代次数;n=length(b);fork=1:Nfori=1:ns1=0;s2=0;%--------x0为第k次迭代的值---------forj=i:ns1=s1+A(i,j)*x0(j);end%--------x为第k+1次迭

7、代的值--------forj=1:i-1s2=s2+A(i,j)*x(j);end%---------------------------------x(i)=x0(i)+omiga*(b(i)-s1-s2)/A(i,i);enderror=abs(norm(x'-x0));x0=x';if(error>A=[10-1-2;-110-2;-1-15];b=[7.28.34.2]';x0=[000]';>>SOR(A,b,x0,1.1,1e-4,100)结果:k=6error=3.2604

8、e-005ans=1.10001.20001.300

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。