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

数值分析上机实验——解线性方程组..doc

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实 验 报 告 课程名称 数值分析 实验项目名称 解线性方程组 实验类型 上机 实验学时 4 班级学号 2011113130 姓名 张振 指导教师 沈艳 实验室名称 理学楼407 实验时间 2013.12.9 实验成绩 预习部分 实验过程 表现 实验报告 部分 总成绩 教师签字 日期 哈尔滨工程大学教务处 制 实验四 解线性方程组 一.解线性方程组的基本思想 1.直接三角分解法: 将系数矩阵A转变成等价两个矩阵L和U的乘积 ,其中L和U分别是下三角和上三角矩阵。当A的所有顺序主子式都不为0时,矩阵A可以分解为A=LU,且分解唯一。其中L是单位下三角矩阵,U是上三角矩阵。 2.平方根法: 如果矩阵A为n阶对称正定矩阵,则存在一个对角元素为正数的下三角实矩阵L,使得:A=LL^T。当限定L的对角元素为正时,这种分解是唯一的,称为平方根法(Cholesky)分解。 3.追赶法: 设系数矩阵为三对角矩阵 则方程组Ax=f称为三对角方程组。 设矩阵A非奇异,A有Crout分解A=LU,其中L为下三角矩阵,U为单位上三角矩阵,记     可先依次求出L,U中的元素后,令Ux=y,先求解下三角方程组Ly=f得出y,再求解上三角方程组Ux=y。 4.雅克比迭代法: 首先将方程组中的系数矩阵A分解成三部分,即:A = L+D+U,如图1所示,其中D为对角阵,L为下三角矩阵,U为上三角矩阵。 之后确定迭代格式,X = BX +f ,如图2所示,其中B称为迭代矩阵,雅克比迭代法中一般记为J。(k = 0,1,......)再选取初始迭代向量X,开始逐次迭代。 5.超松弛迭代法(SOR) 它是在GS法基础上为提高收敛速度,采用加权平均而得到的新算法。 选取分裂矩阵M为带参数的下三角矩阵 M=(D-), 其中>0 为可选择的松弛因子,一般当12时称为超松弛。 二.实验题目及实验目的 1.(第五章习题8)用直接三角分解(杜利特尔(Doolittle)分解)求线性方程组 + += 9, + += 8, + += 8 的解。 2.(第五章习题9)用追赶法解三对角方程组Ax=b,其中 A=,b=. 3.(第五章习题10)用改进的平方根法解线性方程组 = 4.(第六章习题7)用SOR方法解线性方程组(分别取松弛因子ω=1.03,ω=1,ω=1.1) 4 - = 1, - +4- = 4, - +4= -3. 精确解x=(,1,-).要求当5×10时迭代终止,并且对每一个ω值确定迭代次数. 5.(第六章习题8)用SOR方法解线性方程组(取ω=0.9) 5 -2+ = -12, - +4- 2= 20, 2 -3+10= 3. 要求当10时迭代终止. 6.(第六章习题9)设有线性方程组Ax=b,其中A为对称正定阵,迭代公式 +ω(b- A),k=0,1,2…, 试证明当0ω时上述迭代法收敛(其中0(A)). 7.(第六章计算实习题1)给出线性方程组Hx=b,其中系数矩阵H为希尔伯特矩阵: Hx=(h)R, h=,i,j=1,2,…,n. 假设x=(1,1,…,1)R,b= Hx.若取n=6,8,10,分别雅克比迭代法及SOR迭代(ω=1,1.25,1.5)求解.比较计算结果. 三.实验手段: 指操作环境和平台:win7系统下MATLAB R2009a 程序语言:一种类似C语言的程序语言,但比C语言要宽松得多,非常方便。 四.程序 1. = 1 \* GB3 ①直接三角分解(文件ZJsanjiao.m) function x=ZJsanjiao(A,b) [m,n]=size(A); [l u]=lu(A); s=inv(l)*[A,b]; x=ones(m,1); for i=m:-1:1 h=s(i,m+1); for j=m:-1:1; if j~=i h=h-x(j)*s(i,j); end end x(i)=h/s(i,i); end = 2 \* GB3 ②控制台输入代码: A=[1/4,1/5,1/6;1/3,1/4,1/5;1/2,1,2]; b=[9;8;8]; x=ZJsanjiao(A,b) 2. = 1 \* GB3 ①追赶法(文件ZG_SDJ.m) function x=ZG_SDJ(a,b,c,f) %aê????????a?? %bê???????é?·?μ??a??£???êy±èaéùò??? %cê?????????·?μ??a??£???êy±èaéùò??? %fê?3£êy??b N=length(a); b=[b,0]; c=[0,c]; a1=zero

文档评论(0)

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

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档