西南交通大学数值分析报告.docVIP

  • 4
  • 0
  • 约9.62千字
  • 约 21页
  • 2017-02-15 发布于北京
  • 举报
西南交通大学数值分析报告

数值分析课程上机作业计算报告 班 级: 学 号: 姓 名: 专 业:大地测量学及测绘工程 指导老师: 联系电话: 序 言 通过数值分析的理论知识的学习,此次实验将我们学过的理论知识运用于实践之中。本次实验,我选用的计算机语言为MATLAB,其主要有一下几个特点。 1.编程效率高 MATLAB是一种面向科学与工程计算的高级语言,允许使用数学形式的语言编写程序,且比BASIC、FORTRAN和C等语言更加接近我们书写计算公式的思维方式,用MATLAB编写程序犹如在演算纸上排列出公式与求解问题。因此,MATLAB语言也可通俗地称为演算纸式科学算法语言。由于它编写简单,所以编程效率高,易学易懂 2. 用户使用方便 MATLAB语言与其他语言相比,较好的解决了上述问题,把编辑、编译、链接和执行融为一体。它能在同一画面上进行灵活操作,快速排除输入程序中的书写错误、语法错误以至语义错误,从而加快了用户编写、修改和调试程序的速度,可以说在编程和调试过程中它是一种比VB还要简单的语言。 3. 方便的绘图功能 MATLAB的绘图是十分方便的,它有一系列绘图函数(命令),例如线性坐标、对数坐标、半对数坐标及极坐标,均只需调用不同的绘图函数(命令),在图上标出图题、XY轴标注,格(栅)绘制也只需调用相应的命令,简单易行。另外,在调用绘图函数时调整自变量可绘出不变颜色的点、线、复线或多重线。这种为科学研究着想的设计是通用的编程语言所不能及的。 目 录 1.实验一 1 1.1题目 1 1.2计算思路 1 1.3计算结果 1 1.4总结 6 2.第二题 7 2.1题目 7 2.2 松弛思想分析 7 2.3问题的求解 7 2.4总结 10 3.第三题 11 3.1题目 11 3.2 Runge-Kutta法的基本思想 11 3.3 问题的求解 11 3.4问题的总结 14 总结 15 附件 16 实验一程序设计 16 实验二程序设计 16 实验三程序设计 17 实验一:插值问题 1.1题目 已知:a=-5,b=5, 以下是某函数 f(x)的一些点(xk,yk), 其中xk=a+0.1(k-1) ,k=1,..,101;(数据略)。 请用插值类方法给出函数f(x)的一个解决方案和具体结果。并通过实验考虑下列问题: (1)Ln(x)的次数n越高,逼近f(x)的程度越好? (2)高次插值收敛性如何? (3)如何选择等距插值多项式次数 ? (4)若要精度增高,你有什么想法? 比如一定用插值吗? (5)逼近某个函数不用插值方式,有何变通之举? (6) 1.3 计算结果 当阶数为5阶时,插值图像与原函数图象如下所示(红色曲线为插值函数曲线,蓝色为原函数曲线) 表1(迭代数据) i Xi Yi 1 -5.0000 25.0000 26 -2.5000 6.2693 51 0 10.0000 71 1.0000 6.2693 101 5.0000 25.0000 由图象可以看出,除了在插值点附近的拟合效果还可以,其他的点都差距比较大,总的来说效果不是很好。 当阶数为7阶时图象如下: 表2(迭代数据) i Xi Yi 1 -5.0000 25.0000 17 -3.4000 11.5600 33 -1.8000 2.8832 49 -0.2000 5.2312 65 1.4000 3.0219 81 3.0000 8.9991 97 4.6000 21.1600 由此图象可以看出,利用7阶插值来进行计算,在0值附近的拟合不是很好,但总得来说比5阶函数较好。 当阶数为10阶时,图象如下: 表3(迭代数据) i Xi Yi 1 -5.0000 25.0000 12 -3.9000 15.2100 23 -2.8000 7.8405 34 -1.7000 2.5554 ... … … 89 3.8000 14.4400 100 4.9000 24.0100 利用10阶函数进行插值计算时,在函数的两端会出现相比于原函数偏离比较大的点,这就是runge(龙格)现象,但不是很明显。 当阶数为20阶时,图象如下: 表4(迭代数据) i Xi Yi 1 -5.0

文档评论(0)

1亿VIP精品文档

相关文档