数值分析-课程设计报告.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课程设计报告 题目:数值分析课程设计报告 学 院 理学院 班 级 数学与应用数学2010级 学生姓名 学 号 提交日期 2013 年 8 月 20 日 数值分析课程设计报告 [设计题一] 要求 编写解线性代数方程组的列主元高斯消去法的函数,并调用该函数计算某个9阶以上的非奇异阵A的逆矩阵。通过计算AA-1检查答案,并与使用inv(A)所得结果和运行时间进行比较。 二.设计思路 ①先确定求逆矩阵A为方阵,构造n*2n矩阵C,使得C [A+E]; ②令i 1,2,3……n,找出第i列中从i到n的绝对值最大元素C k,i ,如果k~ I,则两行调换位置,并且把换位信息传给记录矩阵flag,同时对第i行进行化一处理,对第i+1行到n行通过行列变换使得C[:,i] 0,最后得到C为前n*n是上三角的单位阵; ③通过行列变换把矩阵C的前n*n部分化成单位阵; ④把C的后n*n部分赋给B,则B就是所求的逆矩阵。 程序清单 function B inv_dm A %用途:列主元高斯消去法求逆矩阵 %A----------原矩阵 %B----------逆矩阵 [n,n] size A ; B zeros n,n ; C zeros n,2*n ; for i 1:n for j 1:n C i,j A i,j ; end for k n+1:2*n if k~ n+i C i,k 0; else C i,k 1; end end end %构造C [A+E] flag 1:n; %记录行顺序向量 for i 1:n-1 t find abs C i:n,i max abs C i:n,i ; %寻找最大元素 t t 1 +i-1; flag i t; if t~ i p C i,: ;C i,: C t,: ;C t,: p; %换位 end if C i,i 0 error 矩阵不可逆 ; end C i,: C i,: /C i,i ; for j i+1:n C j,: C j,: -C i,: *C j,i ; end end C n,: C n,: /C n,n ; %因为循环结构问题,所以C[n,:]并没有化一,所以在最后才把最后一行化一 for i n:-1:2 for j 1:i-1 C j,: C j,: -C i,: *C j,i ; end end %通过行变换,使得C的前n列为单位阵形式 for i n:-1:1 t flag i ; if t~ i p C :,t ;C :,t C :,i ;C :,i p; end end %通过行变化矩阵还原行的顺序 for i 1:n for j 1:n B i,j C i,n+j ; end end %将C的后n列赋给B矩阵 程序运行操作过程与输出结果 操作时间 ①给出所要求逆的矩阵A: ②执行inv_dm A ③执行inv A ④检验正确性 显然从数量级上我们可以容易判断这是一个单位阵,负号的出现是由于计算机默认误差造成细小误差。 [设计题二] 一.要求 对于迭代法, 它显然有不动点。 试不用判定收敛阶的定理,设计1至2个数值实验(其中必须有一个不是直接用收敛阶的定义)得到收敛阶数的大概数值。 设计思路 求出不动点,利用fixed.m函数: 确定包含不动点的区间[a,b],此处令a -0.5,b 0.5,接着从b开始迭代,利用迭代公式,以x0 0.5开始迭代,终止条件为abs x-x0 1e-6 或者迭代次数超过了10000次,最终返回不动点 计算收敛阶m,利用jie.m函数: 1.由①知道当,所以根据收敛阶公式,其中C为非零常数,转化为 2.从1开始找出满足的p,如果p不满足,令p p+1,直至找到满足条件的p. 3.返回收敛阶n p. 程序清单 求不动点函数fixed.m function x fixed x0,e %用途---求不动点 %x0-------初值,abs x0 0.5 %e-----迭代精度 x 0.99*x0-x0^2; %迭代公式 n 1; while abs x-x0 e n 10000 x0 x; x 0.99*x0-x0^2; n n+1; end %循环体 x x0; 求收敛阶函数jie.m function n jie x0 %用途---求阶函数 k 0; syms x; x1 0.99*x-x^2; h abs x0-x1 / abs x0-x ^k; while limit h,x,x0 0 k k+1; h abs x0-x1 / abs x0-x ^k; end n k; 程序运行操作过程与输出结果 操作时间

文档评论(0)

lyxbb + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档