网站大量收购独家精品文档,联系QQ:2885784924

数值分析实习报告二.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数值分析实验报告(第一题) 实验名 称 求解线性方程组的迭代法 交报告时 间 2012年1月5日 姓名 班级 学号 成绩 一.实验目的,内容 二、代码 三.数值结果 四.计算结果的分析及心得体会 一实验目的,内容 第一题用Jacobi, G-S,SOR迭代法求线性方程组的解及精度比较 二代码 clear %输入afn function [x,loop]=Guess(A,b,eps) e=input ( e=); [mfn]=size (A); a=input (1a=1 ); if n?=m n=input ( f=■); disp (1 error 1); esp=10A(-10); return; omega=l; end A=zeros(n,n); x=zeros(n,1); b=zeros(n,1); xt = zeros (n,1); h=l/n; error=l; for i=l:n-1 loop=0; b(i,1)=a*h*h; while (erroreps) end for i=l:n for i=2:n-1 xt(i)=b (i); A(i,i)=-(2*e+h); for j=l:i-1 A(iz i-1)=e; A(i,i+1)=e+h; xt (i) =xt (i) -A (i, j) *xt (j); end end A(l, 1)=-(2*e+h); for j=i+l:n A(n『n)=-(2*e+h); A(nA n-1)=e; Xt(i)=xt(i)-A(i,j)*x (j); 胡店OR求解及迭代次数 end fprintf ( * JIJSOR求解迭代次数1); xt (i) =xt (i) /A (i, i); [xAloop]=SOR(Aa bz omega,eps); end fprin(1%d\n1rloop); error=norm(x-xtf inf); for i=l:n x=x t; fprintf(* %10.7f\nA x (i)); loop=loop+l; end end #川Jacobi求解及迭代次数 fprintf (*用Jacobi求解及迭代次数* ); [xAloop]=Jacobi(Aa bA eps); fprintf(%d\n,loop); for i=l:n fprintf(*%10.7f\n*Ax(i)); end $用6-$求解及迭代次数 fprintf ( *用G-S求解及迭代次数); [x, loop]=Guess(A,b,eps); fprintf(1%d\n1r loop); for i=l:n fprin(%10.7d\n,x(i)); end function [x,loop]=Jacobi (A/b’eps) [mz n]=size (A); if n~=m disp (1 error); function return; [xfloop]=SOR(A,omega,eps) end [mrn]=size (A); x=zeros (nA1); if n~=m xt=zeros(nA1); disp ( 1 error 1); error=l; :return; loop=0; end while (erroreps) x=zeros (n,1); for i=l:n xt = zeros (nz1); xt (i) =b (i); error=l; for j=l:i-1 loop=0; while (erroreps) xt (i)=xt (i)-A(i, j) *x( j); for i=l:n end xt(i)=b(i); for j=i+l:n for j=l:i-1 xt (i)=xt(i)-A(iA j)*x(j); xt (i)=xt(i)-A(i,j)*xt(j); end end Xt (i)=xt (i) /A(izi); for j=i+l:n end error=norm(x-xtf inf); Xt(i)=xt(i)-A(i,j)*x (j); x=x t; end loop=loop+l; xt(i)=omega*xt(i)/A(if i); end xt(i)=xt(i) + (1-omega)*x (i); end error=norm(x-xt? inf); x=xt; loop=loop+l; end 三数值结果 e=l baogaoyi 用Jacobi求解及迭代次数 用G-S求解及迭代次数26084 e=l 51063 -2.005 a=l/2 -0.0000249 -2.8780355e-003 n=l 00 -0.0028780 -5.6534413e-003

文档评论(0)

ggkkppp + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档