北航大学数值分析计算实习报告_第1页
北航大学数值分析计算实习报告_第2页
北航大学数值分析计算实习报告_第3页
北航大学数值分析计算实习报告_第4页
北航大学数值分析计算实习报告_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1 北 航大学 数值分析 计算实习报告 实习题目: 第一题 设有 501501 的实对称矩阵 A, 5011其中, 0 6 5 0 1,2,1(i n ()0 2 矩阵 A 的特征值为 )501,2,1( 并且有 |m , 501150121 ,501和s的值。 的与数40 15011 39,2,1( 的 (谱范数 )条件数 2)A(行列式 说明: 是要给出精度水平 的,都取 12 。 使矩阵 ( 1) 全部源程序; ( 2) 特征值 ), 39,.,2,1(,以及 A(值。 且至少显示 12 位有效数字。 2 一、算法设计方案 1、求 1 ,501和s的值。 由于 |m ,501150121 ,可知绝对值最大特征值必为 1 和501其中之一,故可用幂法求出绝对值最大的特征值 ,如果 =0,则 1 = ,否则501= 。将矩阵 ( 1) 对 A 用幂法求出其绝对值最大的特征值 ,则 或501为 + 。 s为按模最小特征值, |5011 ,可对 2、求 5011 39,.,2,1( 计算 1)1,2,.,50=(- k ,其模值最小的值对应的特征值 k 与 k 最接近。因此对 )39,2,1 (I ( 2) 对 反幂法 求得其模最小的特征值 k ,则 k = k + k 。 3、求 谱范数 )条件数 2)(行列式 由矩阵 对称矩阵可得: |)( m a ( 3) 其中 为按模最大特征值, 为按模最小特征值,通过第一问我们求得 3 的 和s可以很容易求得 在进行反幂法求解时,要对 A 进行 解得到。因 L 为单位下三角阵,行列式为 1, U 为上三角阵,行列式为主对角线乘积,所以 A 的行列式等于 U 的行列式,为 二、 算法实现 1、 矩阵存储 原矩阵 A 为一个上、下半带宽都为 2 的 501 501 的带状矩阵,由于矩阵中的 0 元素太多,如果分配一个 501 501 的空间保存矩阵的话会浪费很多空间。因此,为了节省存储量, 值存储带内元素,如下 000000501500499321( 4) 501 的矩阵,相比 数组 j1, 中的元素的带内元素 5) 2、 幂法 幂法迭代公式如下: 任取非零向量( 6) 4 其中 断迭代当 |/| 1 k 。 在程序中计算1u 据 化如下: )499,3()2()1()()()1()2()()501()500()499()501()501()500()499()498()500()4()3()2()2(C)1()2()3()2()1(C)1(35013500323137) 3、反幂法 反幂法迭代公式如下: 任取非零向量( 8) 当 k 1s 。 在求解1 kk 先对 A 进行 解,由于 A 是带状结构,所以分解出的 L、 用 ( 1)作分解 A=于 n,2,1k 执行: 5 ),m i n (,2,1/)(:),m i n (,1,:,11),1m a x (,1,1,1,11),1m a x (,1,1,1,1( 9) 由 于 开始的,所以在程序中矩阵元素 。 ( 2) 求解 , (数组 b 先是存放原方程组右端向量,后来存放中间向量 y,在程序中 b和 y 都保存在数组 y501中。) )1,2,1(/)(/),3,2(,1),m i n(1,1,11),1m a x(,110) 求出他部分与幂法求解相同。 6 三、 结果分析 实验表明,本程序中,初始向量 , 对结果影响较大,合适的初始向量对得到正确的收敛结果比较重要,如表 1是不同初始向量的情况下的得到的部分结果。(实验结果截图见附录) 1501 迭代次数 501 迭代次数 11u 0 0 0370 8 0 9 8 1 0 8 5 0 0787 2 4 6 3 4 0 9 9 e 381 121 0 0 0 0 9 8 1 0 8 5 160 0 0 0787 2 4 6 3 4 0 9 9 e 381 14001 0 0 0962 0 8 5 5 3 1 5 9 0 0087 2 4 6 3 4 0 9 8 e 573 14611 0 0 0659 5 3 9 7 8 9 7 8 0 0407 2 4 6 3 4 0 9 8 e 592 14621 0 0 15 0 0 0 1 1 3 6 11- 0 0727 2 4 6 3 4 0 9 8 e 611 1462 u 0 0 15 0 0 0 1 1 3 6 11- 0 0727 2 4 6 3 4 0 9 8 e 611 1481 u 0 0 1 1 3 6 11- 0 0727 2 4 6 3 4 0 9 8 e 611 1501462 0 0 15 0 0 0 1 1 3 6 11- 0 0727 2 4 6 3 4 0 9 8 e 611 15011 0 0 15 0 0 0 1 1 3 6 11- 0 0727 2 4 6 3 4 0 9 8 e 611 2,1 0 0 15 0 0 0 1 1 3 6 11- e 343 0 0 0727 2 4 6 3 4 0 9 8 e 611 表 1 不同初始向量对应的 1 和501及其迭代次数 由表 1可以得到如下结论: 1. 不同的初始向量对本程序的 1 影响大,对 501 没有影响,都能保证收敛到正确值。 7 2. 初始向量中必须保证 501462 至少有一个为 1才能保证 1 收敛到正确值。 3. 初始向量非零值的多少和大小对迭代次数并没有明显影响。 4. 为解决初始向量对程序的影响,可以先对 。 四、 实验程序 #b=c=#b501,y501); x,y);/计算两个向量内积 p);/ a,b);/ 范数 y,u);/y u,y,a);/u p);/初始化初始向量 u a,u,(a,*I 5501);/初始化数组 C 5501,n,s,r);/进行 解 a,b);/取返回 a,b 最小值 a,b);/求最大值 5501,y501,u501,n,s,r); 5501,u,n,s,r, 5501);/求 A 的行列式 ;/特征值最大值 ;/模最大特征值 ;/A 的条件数 ;/最大值迭代次数 ; 8 0,0,0,0; ; u501=0;/,y501;/为 初值 ;/范数 5501 = 0; );/初始化 C i=0,*u); & 2,u,; 2, i=0; 最 小 特 征 值 为 : %迭 代 次 数为: %dn, 最 大 特 征 值 为 : %迭 代 次 数为: %dn, /*/ /*以下利用反幂法求解模最小的特征值 */ /*/ );/初始化 C u); ,501,2,2); ); & 9 ,u,501,2,2, 绝 对 值 最 小 特 征 值 为 : %迭 代 次 数为: %dn, A 的行列式为: %, A 的条件数 )2 为: %n, /*/ /*以下利用反幂法求与数列 元素最相近的特征值 */ /*/ k39;/保存 值并保存与 Uki最接近的 39; &i=1; 迭代次数超长,请 更改初始向量 n); _ * i; _ 5501,u,n,s,r, y501 = 0,; b501 = 0;/储存 y 值的中间向量 i=0; ) +i; y,u); b,y);/保护 y 向量 ,y,u,501,2,2); y,b); y,u);/是否判断 否为 0? )/(1/_;/(_(_;/if( 迭代次数超长,请更改初始向量 n); _ * i; 1/ 5501,y501,u501,n,s,r) 13 i,t; e; i = 2;i =1; e = 0; t = i+1;t=b) a; b; 15 附录:部分实验程序截图 1、 ,1,15011 16 2、

温馨提示

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

评论

0/150

提交评论