数值分析课程设计报告

上传人:lizhe****0001 文档编号:30017200 上传时间:2018-01-26 格式:DOC 页数:39 大小:299KB
返回 下载 相关 举报
数值分析课程设计报告_第1页
第1页 / 共39页
数值分析课程设计报告_第2页
第2页 / 共39页
数值分析课程设计报告_第3页
第3页 / 共39页
数值分析课程设计报告_第4页
第4页 / 共39页
数值分析课程设计报告_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《数值分析课程设计报告》由会员分享,可在线阅读,更多相关《数值分析课程设计报告(39页珍藏版)》请在金锄头文库上搜索。

1、程序设计综合课程设计报告1计算机学院计算机科学与技术专业程序设计综合课程设计报告(2010/2011 学年 第一学期)学生姓名: 学生班级: 学 生 学 号 : 指导教师: 2011 年1月9日程序设计综合课程设计报告1数值分析2程序设计综合课程设计报告2目录第一章 课程设计的目的和要求 .11.1课程设计的目的 .11.2 课程设计的基本要求 .11.3 系统编写目的 .1第二章 课程设计任务内容 .22.1 课程设计的内容的基本阐述 .22.2 课程设计所要实现的基本功能 .3第三章 课程设计说明 .33.1 模块描述 .33.2 程序性能 .43.3 算法及输入输出项 .53.4 流程逻

2、辑 .63.5 接口及数据文件的存储 .63.6 程序运行的限制条件 .7第四章 软件使用说明 .7第五章 程序设计的心得与体会 .13附录一 参考文献 .14附录二 程序清单 .15程序设计综合课程设计报告1第一章 课程设计的目的和要求课程设计的主要目的是培养学生综合运用 C 语言及 C+程序设计课程所学到的知识,编写 C 程序解决实际问题的能力,以及严谨的工作态度和良好的程序设计习惯。通过课程设计的训练,学生应该能够了解程序设计的基本开发过程,掌握编写、调试和测试 C 语言程序的基本技巧,充分理解结构化程序设计的基本方法。C 语言程序设计的主要任务时要求学生遵循软件开发过程的基本规范,运用

3、结构化程序设计的方法,按照课程设计的题目要求,分析、设计、编写、调试和测试 C 语言程序及编写设计报告。1.1课程设计的目的1、巩固和加深学生对 C 语言课程的基本知识的理解和掌握; 2、掌握 C 语言编程和程序调试的基本技能;3、掌握利用 C 语言进行软件设计的方法;4、提高程序设计以及说明文档的能力;5、提高运用 C 语言解决实际问题的能力。1.2 课程设计的基本要求1、根据所确定的课程设计题目,分析该程序的需求;2、对系统功能模块进行分析,写出详细的设计说明文档;3、要求做一个选择性界面,进行选择性执行子程序;4、编写程序代码,代码量要求在 400 行左右,调试所写程序并保证其能够正确运

4、行;5、设计完成的软件尽量便于操作和使用;6、报告要独立完成;程序设计综合课程设计报告21.3 系统编写目的 此课程设计为数值分析的算法编程,通过编写十种数值分析的算法,更好的了解各种算法的计算方法,熟悉并加以掌握。通过这个程序让运行此程序的人可以对这十种数值分析的基本方法有一定了解,并会运用这些程序算法来解决部分问题。程序设计综合课程设计报告3第二章 课程设计任务内容2.1 课程设计的内容的基本阐述此次课程设计的题目为数值分析 2,就是做一个关于数值分析算法的程序选择十个算法:1.阿当姆斯预测-校正公式 2.埃特金插值 3.复化辛卜生公式 4.高斯-赛德尔迭代法 5.列主元高斯消去法.6.龙

5、贝格算法 7.龙格-库塔算法 8.四阶阿当姆斯预测-校正公式 9.追赶法解三对角方程组 10.最小二乘法,并把这十个算法程序在同一个主程序中选择性实现。2.2 课程设计所要实现的基本功能1、各个算法要有相对独立能单独运行的程序;2、制作一个选择性界面,显示出所有选项,需要考虑选择结果错误的情况;3、在主程序执行时可以选择性退出,否则继续执行,并且在程序中选择执行程序;程序设计综合课程设计报告4第三章 课程设计说明3.1 模块描述1.选择性界面用 switch 语句进行选择,共十个程序为:1.阿当姆斯预测-校正公式2.埃特金插值3.复化辛卜生公式4.高斯-赛德尔迭代法5.列主元高斯消去法6.龙贝

6、格算法7.龙格-库塔算法8.四阶阿当姆斯预测-校正公式9.追赶法解三对角方程组10.最小二乘法这便是选择模块,用 switch 语句实现的。2.执行子程序模块#include 文件名.cpp1在函数头中包含文件名,引用的 CPP 文件,以实现在主程序中调用子程序的目的。3.2 程序性能对于主程序来说,它综合了 10 种算法,并且可以正常的调用文件并正确运行。有可视化选择性界面,选择执行也可以选择退出。 ,执行完一个子程序会有相应的提示问是否要退出,比较人性化。对于阿当姆斯预测-校正公式,,其步长为 0.25,其精确度达到了0.000001,此程序计算出了 20 个数值。艾特金插值的算法可以自动

7、插入插值点以及函数值 4 组,可以是任意 4 组程序设计综合课程设计报告5值,最后的精度可以达到 0.000001,复化辛卜生公式的算法结果的精确度也是0.000001。追赶法求解三对角方程组的算法比较便捷,可以直接输入矩阵的对角元素,这样的算法具有普遍性,可以解决一类问题,精确度达到 0.01。龙格-库塔的算法计算出 20 个数值,步长为 0.05,精度 0.00001,误差较小。3.3 算法及输入输出项埃特金算法既是用两个 k-1 次插值做线性插值得到 k 次插值公式,实质还是拉格朗日插值。因此,误差可用拉格朗日余项定理来求得!e=f(n+1)()/(n+1)!*(x-x0)*(x-x1)

8、*(x-x2).(x-xn).复合辛卜生公式是采用“抛物线法”计算定积分所导出一个近似计算公式。其计算误差不超过这里 M 是被积函数 f(x)的 4 阶导数绝对值的上界。如果 f(x)是三次多项式函数,则误差为 0。此时辛卜生公式成为精确计算公式。高斯消去法求解 n 阶线性方程组的基本思想是在逐步消元的过程中把方程组的系数矩阵华为上三角矩阵,从而将原方程组约化为容易求解的等价三角方程组。龙贝格算法利用外推法,提高了计算精度,加快了收敛速度。 ,1,1, 2,3.4kjkjkjjRL对每一个 ,kj从 2 做到 ,一直做到 ,1,kk小于给定的精度是停止计算。其中 ,1khRTf(复化梯度求积公

9、式) , 2kbah。程序设计综合课程设计报告6最小二乘法:a=(Nxy-xy)/(Nx2-(x)2) ;b=y(平均)-ax(平均)当执行主程序时,输入序列号进行算法的选择,输入的是数字,要求正确输入。输入正确的数字选择算法开始运行子程序的时部分子程序需要输入数值,按照要求输入即可;输出项就是运行后直接输出结果至屏幕。3.4 流程逻辑图 3.4-1 这是主程序的流程图。 3.5 接口及数据文件的存储#include 1.Adams 亚当母斯.cpp程序设计综合课程设计报告7#include 2.埃特金插值.cpp#include 3.复化辛卜生公式.cpp#include 4.高斯-赛德尔迭

10、代法.cpp#include 5.列主元高斯消去法.cpp#include 6.龙贝格算法.cpp#include 7.龙格-库塔算法.cpp#include 8.四阶阿当姆斯预测-校正公式.cpp#include 9.追赶法解三对角方程组.cpp#include 10.最小二乘法.cpp1这一块是把主程序和各个子程序连接在一块的函数,可以看作接口。部分数据直接录在子程序中,部分数据需要人工录入来解决一系列的问题,比较人性化,实用性强。3.6 程序运行的限制条件此程序的编译及运行环境是 Microsoft Visual C+ 6.0,系统基本要求是windows2000 及以上版本;程序设计综

11、合课程设计报告8第四章 软件使用说明此软件使用便捷,但是要注意使用方法。运行主程序后要按照要求输入选择性数字,这些数字不能是字符,不能是数字串,只能是一个数字,并且这个数是 1 到 10 这 10 个数中的,输入后摁回车可以执行子程序。有些子程序的执行需要输入数值(有些不需要) ,只要按照要求输入即可。再选择完第一次以后会有一个相应模块运行来实现是否退出程序,并且每一次运行后都会询问。下面通过截图进一步说明此软件;首先运行主程序会出现一个界面,界面如下图:图 4-1在运行主程序时十个子程序的运行结果分别如下图:1.阿当姆斯预测-校正公式程序设计综合课程设计报告9图 4-22.埃特金插值图 4-

12、33.复化辛卜生公式图 4-44.高斯-赛德尔迭代法图 4-5程序设计综合课程设计报告105.列主元高斯消去法图 4-66.龙贝格算法图 4-77.龙格-库塔算法图 4-8程序设计综合课程设计报告118.四阶阿当姆斯预测-校正公式图 4-99.追赶法解三对角方程组图 4-10程序设计综合课程设计报告1210.最小二乘法图 4-11 运行完程序接着还有一个询问是否要退出程序,y 是退出,n 是继续选择执行子程序,观看其它数值分析的算法具体截图如下:图 4-12图 4-13程序设计综合课程设计报告13第五章 程序设计的心得与体会课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻

13、炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,程序软件已经成为当今计算机应用中空前活跃的领域, 在生活领域中的应用可以说得是无处不在。因此作为二十一世纪的大学来说掌握简单的软件的开发技术是十分重要的。回顾起此次数值分析的课程设计,至今我仍感慨颇多,的确,从选题到定稿,从理论到实践,在整整三个星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计之后,一定把以前所学过的知识重新温故。我得到了很多同学的帮助。我想没有他们我可能

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 研究报告 > 综合/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号