迭代法与超松弛法求解线性方程组.doc_第1页
迭代法与超松弛法求解线性方程组.doc_第2页
迭代法与超松弛法求解线性方程组.doc_第3页
迭代法与超松弛法求解线性方程组.doc_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

实验名称高斯-赛德尔、超松弛迭代法求解线性方程组实验时间2012-5-30姓名班级学号成绩一 实验目的1 掌握Gauss顺序消去和选列主元消去解线性方程组基本原理和方法2 用MATLAB编写程序实现Gauss顺序消去和选列主元消去解线性方程组二 实验内容1.编写MATLAB程序实现雅可比迭代法、高斯-赛德尔、超松弛迭代法求解线性方程组 2.编写MATLAB程序实现超松弛迭代法求解线性方程组 , 二 程序代码1.(1)雅可比迭代法: function x,n=jacobi(A,b,x0,eps)if nargin=3 eps= 1.0e-6; M = 1000;elseif nargin=eps x0=x; x=B*x0+f; n=n+1; if(n=M) disp(Warning: 迭代次数太多,可能不收敛!); return; endend(2)高斯赛德尔法:1.function x=gaussMethod(A,b)%高斯列主元消去法,要求系数矩阵非奇异的, n = size(A,1);if abs(det(A)= 1e-8 error(系数矩阵是奇异的); return;endfor k=1:n ak = max(abs(A(k:n,k); index = find(A(:,k)=ak); if length(index) = 0 index = find(A(:,k)=-ak); end %交换列主元 temp = A(index,:); A(index,:) = A(k,:); A(k,:) = temp; temp = b(index);b(index) = b(k); b(k) = temp; %消元过程 for i=k+1:n m=A(i,k)/A(k,k); %消除列元素 A(i,k+1:n)=A(i,k+1:n)-m*A(k,k+1:n); b(i)=b(i)-m*b(k); endend %回代过程 x(n)=b(n)/A(n,n); for k=n-1:-1:1; x(k)=(b(k)-A(k,k+1:n)*x(k+1:n)/A(k,k); end x=x;end 2. 超松弛法:function x,n=SOR(A,b,x0,w,eps,M)if nargin=4 eps= 1.0e-6; M = 200;elseif nargin4 error returnelseif nargin =5 M = 200;end if(w=2) error; return;endD=diag(diag(A); %求A的对角矩阵L=-tril(A,-1); %求A的下三角阵U=-triu(A,1); %求A的上三角阵B=inv(D-L*w)*(1-w)*D+w*U);f=w*inv(D-L*w)*b;x=B*x0+f;n=1; %迭代次数while norm(x-x0)=eps x0=x; x =B*x0+f; n=n+1; if(n=M) disp(Warning: 迭代次数太多,可能不收敛!); return; endend三 数据结果A=-0.98 -0.05 -0.02;-0.04 -0.9 0.07;-0.02 0.09 0.94;x0=0 0 0;b=1 1 1;x,n=jacobi(A,b,x0) %雅克比迭代法求解线性方程组X1=inv(A)*b %原线性方程组的精确解x11=gaussMethod(A,b) %高斯赛德儿法求解线性方程组x = -0.9937 -0.9786 1.1364n = 6X1 = -0.9937 -0.9786 1.1364x11 = -0.9937 -0.9786 1.1364 B=0.68 0.01 0.12;0.03 -0.54 -0.05;0.2 0.08 0.74 ; x=0 0 0;b=1 1 1;w=1.07;x2=Bb %原线性方程组的精确解x22,n=SOR(B,b,x0,w) %超松弛法求解线性方程组x2 = 1.2851 -1.8924 1.2086x22 = 1.2851 -1.8924 1.2086n = 7四 计算结果分析高斯-赛德尔迭代和雅克比迭代的算法很类似。只不过,雅克比迭代的时候每次只用到上次迭代的值。而高斯-赛德尔则是算出分量后立即用于后面的运算五 计算中

温馨提示

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

评论

0/150

提交评论