实验一:牛顿插值法

上传人:小** 文档编号:92557402 上传时间:2019-07-11 格式:DOC 页数:10 大小:338.50KB
返回 下载 相关 举报
实验一:牛顿插值法_第1页
第1页 / 共10页
实验一:牛顿插值法_第2页
第2页 / 共10页
实验一:牛顿插值法_第3页
第3页 / 共10页
实验一:牛顿插值法_第4页
第4页 / 共10页
实验一:牛顿插值法_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《实验一:牛顿插值法》由会员分享,可在线阅读,更多相关《实验一:牛顿插值法(10页珍藏版)》请在金锄头文库上搜索。

1、计算方法实验报告书院系名称:计算机学院学生姓名:专业名称:计算机科学与技术班 级:时间:2017年4月23日至2017年6月05日实验一:牛顿插值法一、实验目的(1) 掌握牛顿插值法的基本思路和步骤(2) 培养编程与上机调试能力二、实验内容(1)已知数据点:x=0.017037, 0.146447, 0.370590, 0.629410, 0.853553, 0.982963;y=1.017183, 1.157713, 1.448590, 1.876502, 2.347975, 2.672363;利用关于该数据点的牛顿插值多项式计算出xt中各点所对应的函数值xt=0.155026, 0.293

2、016, 0.431005, 0.568995, 0.706984, 0.844974,并给出牛顿插值多项式中所用的各阶差商dq。要求:编写函数yt,dq=Newtonchz(x,y,t),其中数据点的个数可变.输出的数据要求保留小数点后六位。三、实验原理简述插值法利用函数f (x)在某区间中若干点的函数值,作出适当的特定函数,在这些点上取已知值,在区间的其他点上用这特定函数的值作为函数f (x)的近似值。如果这特定函数是多项式,就称它为插值多项式。利用插值基函数很容易得到拉格朗日插值多项式,公式结构紧凑,在理论分析中甚为方便,但当插值节点增减时全部插值基函数均要随之变化,整个公式也将发生变化

3、, 这在实际计算中是很不方便的,为了克服这一缺点,提出了牛顿插值。 牛顿插值通过求各阶差商,递推得到的一个公式: f(x)=fx0+fx0,x1(x-x0)+fx0,x1,x2(x-x0)(x-x1)+.fx0,.xn(x-x0).(x-xn-1)+Rn(x)。四、实验结果牛顿插值多项式请输入结点个数:6请输入各个结点的数值:X0=0.017037 Y0=1.017183X1=0.146447 Y1=1.157713X2=0.370590 Y2=1.448590X3=0.629410 Y3=1.876502X4=0.853553 y4=2.347975X5=0.982963 Y5=2.6723

4、63请输入所要求函数值的X值,输入0结束: 0.155026 则所求得的近似值是: 1.167688请输入所要求函数值的X值,输入0结束: 0.293016则所求得的近似值是: 1.340464请输入所要求函数值的X值,输入0结束: 0.431005 则所求得的近似值是: 1.538805请输入所要求函数值的X值,输入0结束: 0.568995则所求得的近似值是: 1.766491请输入所要求函数值的X值,输入0结束: 0.706984则所求得的近似值是: 2.027864请输入所要求函数值的X值,输入0结束: 0.844974则所求得的近似值是: 2.327918请输入所要求函数值的X值,输

5、入0结束: 0Press any key to continue五、实验分析(1)计算方法及过程:1.先后输入节点个数n和节点的横纵坐标,插值点的横坐标,最后输入精度e2. 用do-while循环语句得到跳出循环时k的值3.将k值与n-1进行比较,若在达到精度时kn-1,则输出计算结果;若此时k=n-1,则计算失败!(2)我们通常会选择与插值点最接近的节点,可以提高精度;(3)在可以计算出结果的情况下,插值点越多,结果越精确。(4)利用牛顿插值公式,当增加一个节点时,只需在后面多计算一项,而前面的计算仍有用;另一方面Nn(x)的各项系数恰好又是各阶差商,而各阶差商可用差商公式来计算。由线性代数

6、知,对任何一个不高n次的多项式P(x)=b0b1xb2x2bnxn (幂基) 也可将其写成P(x)=a0a1(xx0)a2(xx0) (xx1)an(xx0) (xxn-1)其中ai为系数,xi为给定节点,可由求出ai 一般情况下,牛顿插值多项式Nn(x)可写成:Nn(x)= a0a1(xx0)a2(xx0) (xx1)an(xx0) (xxn-1)只需求出系数ai,即可得到插值多项式。实验二:Romberg求积算法一、实验目的 掌握Romberg求积算法的基本原理,理解数值积分的基本思想,学会用计算机语言编写程序实现算法二、实验内容Romberg求积算法:用Romberg求积算法计算积分的近

7、似值,wuch.要求: 编写函数I=Romberg(f,a,b,wuch),其中被积函数f、上下限a,b及误差wuch可变.输出的数据要求与wuch保持一致(缺省值取小数点后六位).三、实验原理简述计算计算这样就构成了Romberg积分的基本步骤,其计算步骤可以表1.1来表示:表1.1 Romberg积分R(1,1)R(2,1)R(2,2)R(3,1)R(3,2)R(3,3)R(4,1)R(4,2)R(4,3)R(4,4)R(5,1)R(5,2)R(5,3)R(5,4)R(5,5)可以证明Romberg方法是数值稳定的。四、实验结果输入积分上限:1输入积分下限:0用算法算出的精确结果是:0.8

8、55624-Process exited with return value 0Press any key to continue . . .五、实验分析(1)龙贝格求积公式也称为逐次分半加速法。它是在梯形公式、辛普森公式和柯特斯公式之间的关系的基础上,构造出一种加速计算积分的方法。 作为一种外推算法, 它在不增加计算量的前提下提高了误差的精度。(2)在等距基点的情况下,用计算机计算积分值通常都采用把区间逐次分半的方法进行。这样,前一次分割得到的函数值在分半以后仍可被利用,且易于编程。(3)用rombreg算法在一定的精确度内计算比较准确。实验三:解线性方程组的高斯全主元消去法一、实验目的 熟

9、悉线性代数方程组高斯消去法,高斯列主元消去法, 高斯全主元消去法二、实验内容解线性方程组的高斯全主元消去法:要求: 编写函数x=Gaussqzy(A,b),其中系数矩阵A及非齐次项b可变(元素及阶数).输出的数据要求保留小数点后六位.三、实验原理简述将方程组(1)记为(1) = (1),其中 . 1) 第一步(k = 1). 设,首先计算乘数 . 用1乘方程组(1) 的第一个方程,加到第个( = 2,3, , . )方程上,消去方程组(1) 的从第 2 个方程到第个方程的未知数1,得到与方程组(1) 等价的线性方程组 简记为 , 其中,的元素个数计算公式为 2) 第次消元. 设上述第 1 步,

10、 ,第 k-1 步消元过程计算已经完成,即已计算好与方程组(1) 等价的线性方程组 简记为. 设,计算乘数 . 用乘方程组(3) 的第 个方程加到第 i 个方程,消去从个方程到第个方程的未知数,得到方程组(1) 等价的线性方程组. ,元素的计算公式为 显然中从第 1 行到第 k 行与相同。 3) 继续上述过程,且设,直到完成第 n-1 步消元计算。最后得到与原方程组等价的简单方程组,即 如果是非奇异矩阵(即),且,求解三角形线性方程组(4),得到求解公式 , 以上为高斯消去法的基本过程。四、实验结果请输入方程的个数和未知数个数:4请输入方程组(逐个输入方程 i)1 0.333 1.5 -0.3

11、33-2.01 1.45 0.5 2.954.32 -1.95 0 2.085.11 -4 3.33 -1.1135.40.133.77第1次消元结果:x1 + 0.344828x2 + 2.03448x3 + 2.97931x4 = -1.34483-0.0118276x2 + -0.534483x3 + -3.31231x4 = -0.6651725.11x3 + -4x4 = 3.333.43703x4 = 2.27724第2次消元结果:x1 + 0.344828x2 + 2.03448x3 + 2.97931x4 = -1.34483x2 + 2.26391x3 + 1.01604x4

12、 = 0.6731910.401058x3 + -6.11337x4 = 1.92976-3.30029x4 = -0.65721第3次消元结果:x1 + 0.344828x2 + 2.03448x3 + 2.97931x4 = -1.34483x2 + 2.26391x3 + 1.01604x4 = 0.673191x3 + -15.2431x4 = 4.81168-11.0393x4 = 1.78571解方程得:x1 = -4.093134x2 = -4.473527x3 = 2.345969x4 = -0.161759-Process exited with return value 0

13、Press any key to continue . . .五、实验分析主元素消去法是为控制舍入误差而提出的一种算法,在用消去法的消元过程中,若出现,则消去法无法进行,即使但很小,把它作除数,就会导致其他元素量级的巨大增长和舍入误差的扩散,最后使计算结果不可靠。实验四:解线性方程组的SOR迭代法一、实验目的1.熟悉掌握逐次超松值迭代法的基本原理和基本方法。 2.学会用逐次超松弛迭代法解简单的方程组。 3.选取不同的w值(0w2)进行试探性的计算,从中摸索出近似的最佳松弛因子。二、实验内容解线性方程组的SOR迭代法:用SOR迭代法解,其中:,要求: 编写函数(x,k)=Sor(A,b,x(0)

14、,w, wuch),其中系数矩阵A(元素及阶数)、非齐次项b(元素及阶数)、初值x(0)及松弛系数w可变,输出的x为方程的解,k为迭代的次数. 数据输出要求与wuch保持一致(缺省值取小数点后六位).三、实验原理简述超松弛迭代法以及所涉及的主要算法为:Xi(k+1)(1-w)*Xi(k)+w*Xi的共轭的(k+1)次幂。四实验结果迭代结果:-2.65028 -4.01658 -5.60461 -6.84338 -7.95437 -8.85622 -9.58279 -10.1235 -10.4843 -10.6641 -10.6641 -10.4843 -10.1235 -9.58279 -8.85622 -7.95437 -6.84338 -5.60461 -4.01658 -2.650

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

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