雅克比法求矩阵特征值特征向量.docxVIP

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言课程设计报告 课程名称: 计算机综合课程设计 学 院: 土木工程学院 设计题目: 矩阵特征值分解 级 另U: B 学生姓名: 学 号: 同组学生: 无 学 号: 无 指导教师: 2012年9月5日 C语言课程设计任务书 (以下要求需写入设计报告书) 学生选题说明: ?以所发课程设计要求为准,请同学们仔细阅读; ?本任务书提供的设计案例仅供选题参考;也可自选,但难易程度需难度相当; ?鼓励结合本专业(土木工程、力学)知识进行选题,编制程序解决专业实际问题 ?限2人选的题目可由1-2人完成(A级);限1人选的题目只能由1人单独完成(B级); 设计总体要求: ?采用模块化程序设计; ?鼓励可视化编程; ?源程序中应有足够的注释; ?学生可自行增加新功能模块(视情况可另外加分); ?必须上机调试通过; ?注重算法运用,优化存储效率与运算效率; ?需提交源程序(含有注释)及相关文件(数据或数据库文件); (cpp文件、txt或dat文件等) ?提交设计报告书,具体要求见以下说明。 设计报告格式: 目录 课程设计任务书(功能简介、课程设计要求); 系统设计(包括总体结构、模块、功能等,辅以程序设计组成框图、流程图解释) ; 模块设计(主要模块功能、源代码、注释(如函数功能、入口及出口参数说明,函数 调用关系描述等); 调试及测试:(调试方法,测试结果的分析与讨论,截屏、正确性分析) ; 设计总结:(编程中遇到的问题及解决方法); 心得体会及致谢; 参考文献 课程设计任务书 功能简介: a) 输入一个对称正方矩阵 A,从文本文件读入; b) 对矩阵A进行特征值分解,将分解结果:即 U矩阵、S矩阵输出至文本文件; c) 将最小特征值及对应的特征向量输出至文本文件; d) 验证其分解结果是否正确。 提小:A=USU具体算法可参考相关文献。 功能说明: 矩阵特征值分解被广泛运用丁土木工程问题的数值计算中, 如可用丁计算结构自振频率与 自振周期、结构特征屈曲问题等。 注:以三阶对称矩阵为例 系统设计 3.模块设计 #include<stdio.h> #include<stdlib.h> #include<math.h> int main() { FILE *fp; int tezheng(double *a,int n,double *s,double *u,double eps,int itmax); // 函数调用 声明 int i,j,p,itmax=1000; //itmax 为最大循环次数 double eps=1e-7,s[3][3],u[3][3]; //eps 为元素精度,s 为对角矩阵 S, u 为矩阵 U double a[9];//a 为待分解矩阵A i=tezheng(a,3,s,u,eps,1000); 对应函数中的返回值it打开待输入 对应函数中的返回值it 打开待输入txt文件 下几句分别向屏幕和txt文件输入矩阵U { if((fp=fopen("juzhen.txt”,"w"))==NULL) // { printf(" 无法打开文件.\n"); return; } printf("U 矩阵为:\n"); // fprintf(fp,"U 矩阵为:\n"); for(i=0;i<3;i++) { for(j=0;j<3;j++) { printf("%10.6f",u[i][j]); fprintf(fp,"%10.6f",u[i][j]); } printf("\n"); fprintf(fp,"\n"); } printf("S 对角矩阵为:\n"); // 下几句分别向屏幕和 txt文件输入矩阵S fprintf(fp,"S 对角矩阵为:\n"); for(i=0;i<3;i++) { for(j=0;j<3;j++) { printf("%10.6f",s[i][j]); fprintf(fp,"%10.6f",s[i][j]); } printf("\n"); fprintf(fp,"\n"); } p=0; for(i=0;i<3;i++)// 下面几句为求最小特征值及其对应特征向量, 并输出到屏幕和txt文 件中 if(s[i][i]<s[0][0]) p=i; printf("最小特征值为:%10.6f\n",s[p][p]); fprintf(fp," 最小特征值为:%10.6f\n”,s[p][p]); printf(" 对应特征向量为:\n"); fprintf(fp," 对应特征向量为:\n"); for(i=0;i<3;i++) { printf("%10.6f\n",u[i][p]); } int tezheng(double *a,int n,double s

文档评论(0)

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

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

1亿VIP精品文档

相关文档