第二章 插值与拟合算法_第1页
第二章 插值与拟合算法_第2页
第二章 插值与拟合算法_第3页
第二章 插值与拟合算法_第4页
第二章 插值与拟合算法_第5页
已阅读5页,还剩148页未读 继续免费阅读

下载本文档

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

文档简介

1、科学计算与数学建模中南大学数学科学与计算技术学院中南大学数学科学与计算技术学院 求未知函数近似表达式的插值法求未知函数近似表达式的插值法2 求插值多项式的求插值多项式的Lagrange法法3 求插值多项式的求插值多项式的Newton法法45 求插值多项式的改进算法求插值多项式的改进算法6 求函数近似表达式的拟合法求函数近似表达式的拟合法1 城市供水量的预测问题城市供水量的预测问题第第2章章 城市供水量的预测模型城市供水量的预测模型 插值与拟合算法插值与拟合算法7 城市供水量预测的简单方法城市供水量预测的简单方法 2.1 城市供水量的预测问题城市供水量的预测问题2.1.1 2.1.1 实际问题与

2、背景实际问题与背景 为了节约能源和水源,某供水公司需要根据日供水量记录为了节约能源和水源,某供水公司需要根据日供水量记录估计未来一时间段(未来一天或一周)的用水量,以便安排估计未来一时间段(未来一天或一周)的用水量,以便安排未来(该时间段)的生产调度计划。现有某城市未来(该时间段)的生产调度计划。现有某城市7 7年用水量的年用水量的历史记录,记录中给出了日期、每日用水量(吨历史记录,记录中给出了日期、每日用水量(吨/ /日)。如何日)。如何充分地利用这些数据建立数学模型,预测充分地利用这些数据建立数学模型,预测20072007年年1 1月份城市的月份城市的用水量,以制定相应的供水计划和生产调度

3、计划。用水量,以制定相应的供水计划和生产调度计划。表表2.1.12.1.1 某城市某城市7 7年日常用水量历史记录(万吨年日常用水量历史记录(万吨/ /日)日)日期日期2000010120000101200001022000010220061230200612302006123120061231日用水量日用水量122.1790122.1790128.2410128.2410150.40168150.40168148.2064148.2064表表2.1.22.1.2 2000-20062000-2006年年1 1月城市的总用水量(万吨月城市的总用水量(万吨/ /日)日)年份年份200020002

4、00120012002200220032003200420042005200520062006用水量用水量4032403241414186418602540254429642969866986643744374852852443544352344234445054505427442744517451769936993利用这些数据,可以采用时间序列、灰色预测等方法建立数利用这些数据,可以采用时间序列、灰色预测等方法建立数学模型来预测学模型来预测20072007年年1 1月份该城市的用水量。如果能建立该城市月份该城市的用水量。如果能建立该城市的日用水量随时间变化的函数关系,则用该函数来进行预测非常

5、的日用水量随时间变化的函数关系,则用该函数来进行预测非常方便。但是这一函数关系的解析表达式是没办法求出来的,那么方便。但是这一函数关系的解析表达式是没办法求出来的,那么能否根据历史数据求出该函数的近似函数呢?根据未知函数的已能否根据历史数据求出该函数的近似函数呢?根据未知函数的已有数据信息求出其近似函数的常用方法有插值法和数据拟合。本有数据信息求出其近似函数的常用方法有插值法和数据拟合。本章将介绍章将介绍插值法插值法和和数据拟合数据拟合,并用这两种方法给出该城市供水量,并用这两种方法给出该城市供水量进行预测。进行预测。2.2 求未知函数近似表达式的插值法求未知函数近似表达式的插值法2.2.1

6、2.2.1 求函数近似表达式的必要性求函数近似表达式的必要性 一般地,在某个实际问题中,虽然可以断定所考虑的函数一般地,在某个实际问题中,虽然可以断定所考虑的函数在区间上存在且连续,但却难以找到它的解析表达式,只能通在区间上存在且连续,但却难以找到它的解析表达式,只能通过实验和观测得到该函数在有限个点上的函数值(即一张函数过实验和观测得到该函数在有限个点上的函数值(即一张函数表)。显然,要利用这张函数表来分析函数的性态,甚至直接表)。显然,要利用这张函数表来分析函数的性态,甚至直接求出其它一些点上的函数值是非常困难的。在有些情况下,虽求出其它一些点上的函数值是非常困难的。在有些情况下,虽然可以

7、写出函数的解析表达式,但由于结构相当复杂,使用起然可以写出函数的解析表达式,但由于结构相当复杂,使用起来很不方便。面对这些情况,总希望根据所得函数表(或结构来很不方便。面对这些情况,总希望根据所得函数表(或结构复杂的解析表达式),构造某个简单函数作为的近似。插值法复杂的解析表达式),构造某个简单函数作为的近似。插值法是解决此类问题的一种比较古老的、然而却是目前常用的方法,是解决此类问题的一种比较古老的、然而却是目前常用的方法,它不仅直接广泛地应用于生产实际和科学研究中,而且也是进它不仅直接广泛地应用于生产实际和科学研究中,而且也是进一步学习数值计算方法的基础。一步学习数值计算方法的基础。定义定

8、义2.2.1 设函数设函数 在区间在区间 上连续,且在上连续,且在 个不个不同的点同的点 上分别取值上分别取值 ,在一个,在一个性质优良、便于计算的函数类性质优良、便于计算的函数类 中,求一简单函数中,求一简单函数 ,使,使 (2.2.1) 而在其它点而在其它点 上作为上作为 的近似。称区间的近似。称区间 为插值区为插值区间,点间,点 为插值节点,称(为插值节点,称(2.2.1)为)为 的插值条件,的插值条件,称函数类称函数类 为插值函数类,称为插值函数类,称 为函数在节点为函数在节点 处处的插值函数。求插值函数的插值函数。求插值函数 的方法称为插值法。插值函数的方法称为插值法。插值函数 类类

9、 的取法不同,所求得的插值函数的取法不同,所求得的插值函数 逼近逼近 的效果就的效果就不同,它的选择取决于使用上的需要。常用的有代数多项式、不同,它的选择取决于使用上的需要。常用的有代数多项式、三角多项式和有理函数等。当选用代数多项式作为插值函数时,三角多项式和有理函数等。当选用代数多项式作为插值函数时,相应的插值问题就称为多项式插值。相应的插值问题就称为多项式插值。( )yf x,a b1n 01,naxxxb01,nyyy( )P x 0,1,iiP xy inixx( )f x , a b01,x xx( )f x( )P x01,nxxx( )P x( )P x( )fx 在多项式插值

10、中,求一次数不超过在多项式插值中,求一次数不超过 的代数多项式的代数多项式 (2.2.2)(2.2.2) 使使 (2.2.3 (2.2.3) ) 其中其中 为实数。满足插值条件为实数。满足插值条件(2.2.3)(2.2.3)的的多项多项式式(2.2.2)(2.2.2),称称为函数为函数 的的 次插值值多项式。次插值值多项式。 次插值多项式次插值多项式 的几何意义:过曲线的几何意义:过曲线 上的上的 个点个点 作一条作一条 次代数曲线次代数曲线 作为曲线作为曲线 的近似,的近似,如图如图2.2.12.2.1所示。所示。n 01nnnP xaaxa x 0,1,niiPxy in01,naaa(

11、)f xnn nP x( )yf x1n ( , )(0,1, )iix y inn( )nyP x( )yf x图图2.2.12.2.12.2.22.2.2插值多项式存在唯一性与求插值多项式的解方程组方法插值多项式存在唯一性与求插值多项式的解方程组方法 由插值条件(由插值条件(2.2.32.2.3)知,)知, 的系数的系数 满足线满足线性方程组性方程组 nP x 由线性代数知,线性方程组的系数行列式是由线性代数知,线性方程组的系数行列式是 阶范德阶范德蒙(蒙(VandermondeVandermonde)行列式,且)行列式,且0,1,ia in010000111101nnnnnnnnnaa

12、xa xyaa xa xyaa xa xy (2.2.42.2.4)1n 200021111102111nnniijijnnnnxxxxxxVxxxxx 因因 是区间是区间 上的不同点,上式右端上的不同点,上式右端乘积中的每一个因子乘积中的每一个因子 ,于是系数行列式不等于,于是系数行列式不等于0 0,即方程组(即方程组(2.2.42.2.4)的解存在且唯一。从而得出下面的结论:)的解存在且唯一。从而得出下面的结论:定理定理2.2.12.2.1 若节点若节点 互不相同,则满足插值条件互不相同,则满足插值条件(2.2.32.2.3)的次插值多项式()的次插值多项式(2.2.22.2.2)存在且唯

13、一。)存在且唯一。0,1,nx xx,a b0ijx x 0, 1,nx xx 在上一节里,不仅指出了插值多项式的存在唯一在上一节里,不仅指出了插值多项式的存在唯一性,而且也提供了它的一种求法,即通过解线性方程性,而且也提供了它的一种求法,即通过解线性方程组(组(2.2.42.2.4)来确定其系数)来确定其系数 。但是,当未知数个数。但是,当未知数个数多时,这种做法的计算工作量大,不便于实际应用,多时,这种做法的计算工作量大,不便于实际应用,LagrangeLagrange插值法就是一种简便的求法。插值法就是一种简便的求法。2.3 求插值多项式的求插值多项式的Lagrange法法ia2.3.1

14、 Lagrange2.3.1 Lagrange插值基函数插值基函数 先考虑一下简单的插值问题:对节点先考虑一下简单的插值问题:对节点 中任意一点中任意一点 做一做一 次多项式次多项式 使它在该点上取值为使它在该点上取值为1,1,而在其余点而在其余点 上取值为零上取值为零, , 即即 (2.3.12.3.1) 表明表明 个点个点 都是都是 次多项式次多项式 的零点,故可设的零点,故可设 其中其中 为待定系数,由条件为待定系数,由条件 可得可得 0,1,ix in0kxknn( )klx0,1,1,1,ix ikkn 1()0kiiklxikn0,1,1,1,ix ikkn n( )kl x011

15、1( )()()()()()kkkknlxAxxxxxxxxxxkA( ) 1kl x 0111()()()()kkkkkkknAxxxxxxxx 对应于每一节点对应于每一节点 都能求出一个满足都能求出一个满足插值条件(插值条件(2.3.12.3.1)的)的 次插值多项式(次插值多项式(2.3.22.3.2),这样,),这样,由(由(2.3.22.3.2)式可以求出)式可以求出 个个 次插插多项式次插插多项式 。容易看出,这组多项式仅与节点的。容易看出,这组多项式仅与节点的取法有关,称它们为在取法有关,称它们为在 个节点上的个节点上的 次基本插值多项次基本插值多项式或式或 次插值基函数。次插值

16、基函数。011011()()()()( )()()()()kknkkkkkkknx xx xx xx xl xxxxxxxxx (2.3.22.3.2)0kxknn1nn01( ),( ),( )nlxlxlx1nnn2.3.2 Lagrange2.3.2 Lagrange(拉格朗日)插值多项式(拉格朗日)插值多项式 利用插值基函数立即可以写出满足插值条件(利用插值基函数立即可以写出满足插值条件(2.2.32.2.3)的)的 次插次插值多项式值多项式 (2.3.32.3.3) 事实上,由于每个插值基函数事实上,由于每个插值基函数 都是都是 次多项次多项式,故其线性组合(式,故其线性组合(2.3

17、.32.3.3)必是不高于)必是不高于 次的多项式,同时,根据次的多项式,同时,根据条件(条件(2.2.12.2.1)容易验证多项式()容易验证多项式(2.3.32.3.3)在节点)在节点 处的值处的值 为为 ,因此,它就是待求的,因此,它就是待求的 次插值多项式次插值多项式 。形如。形如(2.3.3)(2.3.3)的插值多项式称为拉格朗日插值多项式,记为的插值多项式称为拉格朗日插值多项式,记为n0 01 1( )( )( )n ny lxy lxy lx( )(0,1, )klx knnnix0,1,iy in()niPxnnPx001 1()()()nny lxy lxy lx011001

18、1()()()()()()()()nkknkkkkkkkknxxxxxxxxyxxxxxxxx(2.3.42.3.4) nL x 令,由(令,由(2.3.42.3.4)即得两点插值公式)即得两点插值公式 (2.3.52.3.5)即即 (2.3.62.3.6) 这是一个线性函数,用线性函数这是一个线性函数,用线性函数 近似代替函数近似代替函数 ,在几何上就是通过曲线在几何上就是通过曲线 上两点上两点 做一直线做一直线 近似代替曲线近似代替曲线 (见图(见图2.3.1)2.3.1),故两点插值又名线性插值。,故两点插值又名线性插值。011010110( )xxxxL xyyxxxx1010010(

19、 )()yyLxyxxxx1( )L x( )f x( )yf x0011( ,),( ,)x yx y1( )yL x( )yf x 令令 ,由(,由(2.3.42.3.4)又可得常用的三点插值公式:)又可得常用的三点插值公式: 这是一个二次函数这是一个二次函数 ,用二次函数近似代替函数,用二次函数近似代替函数 ,在几,在几何上就是通过曲线何上就是通过曲线 上的三点上的三点 作一抛物线作一抛物线 ,近似地代替曲线,近似地代替曲线 (图(图2.3.12.3.1),故称为三点插),故称为三点插值值( (二次插值二次插值) )。2n 1202012012010210122021xxxxxxxxxx

20、xxLxyyyxxxxxxxxxxxx(2.3.72.3.7)图图2.3.12.3.12( )L x( )f x( )yf x001122(,),(,),(,)xyx yxy2( )yLx( )yf x例例2.3.1 2.3.1 已知已知 分别用线性插值和抛物插值分别用线性插值和抛物插值求求 的值。的值。 解解 因为因为115115在在100100和和121121之间,故取节点之间,故取节点 , ,相应地有相应地有 , ,于是,由线性插值公式(,于是,由线性插值公式(2.3.52.3.5)可)可得得 故用线性插值求得的近似值为:故用线性插值求得的近似值为:10010, 12111, 14412

21、1150100 x 1121x 010y 111y 1121100( )1011100 121121 100 xxL x图图2.3.22.3.21115 121115 100115(115)101110.714100 121121 100L仿上,用抛物插值公式(仿上,用抛物插值公式(2.3.72.3.7)所求得的近似值为:)所求得的近似值为: 将所得结果与将所得结果与 的精确值的精确值 相比较,可以看出抛物相比较,可以看出抛物插值的精确度较好。为了便于上机计算,我们常将拉格朗日插值多项插值的精确度较好。为了便于上机计算,我们常将拉格朗日插值多项式(式(2.3.42.3.4)改写成公式()改写成

22、公式(2.3.82.3.8)的对称形式)的对称形式2115 121 115 144115 100 115 1441151151011100 121 144 121121 100 121 144115 100 115 12112144 100 144 12110.732L11510.732800( )nnjnkkjkjjkxxLxyxx(2.3.82.3.8)编程框图如图编程框图如图2.3.32.3.3,可用二重循环来完成,可用二重循环来完成 值的计算,先通过值的计算,先通过内循环,即先固定内循环,即先固定 ,令,令 从从0 0到到 累乘求得累乘求得 然后再通过外循环,即令然后再通过外循环,即令

23、 从从0 0到到 ,累加得出插值结果,累加得出插值结果图图2.3.32.3.30( )njkjkjjkxxlxxx( )nL xkj()n jkkn( )nLx 2.3.3 2.3.3 插值余项插值余项 在插值区间在插值区间 上用插值多项式上用插值多项式 近似代替近似代替 ,除了在插值节点除了在插值节点 上没有误差以外,在其他点上一般有存在误差的。上没有误差以外,在其他点上一般有存在误差的。若记若记 则则 就是用就是用 近似代替近似代替 时所产生的截断误差,称为插值时所产生的截断误差,称为插值多项式多项式 的余项。的余项。 关于误差有如下定理关于误差有如下定理2.3.12.3.1中的估计式。中

24、的估计式。 定理定理2.3.12.3.1 设设 在区间在区间 上有直到上有直到 阶导数阶导数, , 为区间为区间 上上 个互异的节点,个互异的节点, 为满足条件为满足条件: : 的的 次插值多项式,则对于任何次插值多项式,则对于任何 有有 , a b()nPx()fxix( )( )( )nnR xf xP x( )nR x( )nP x( )f x( )nPx( )f x , a b1n 01,nxxx , a b1n( )nPx( )( )(0,1, )niiP xf x inn,xa b(1 )1()()()(1) !nnnfRxxn(2.3.92.3.9)其中其中 且依赖于且依赖于证明

25、证明 由插值条件由插值条件 知知 ,即插,即插值节点都是值节点都是 的零点的零点, ,故可设故可设 (2.3.10)(2.3.10)其中其中 为待定函数。下面求为待定函数。下面求 。对区间。对区间 上异于上异于 的任意一点的任意一点 作辅助函数:作辅助函数: 不难看出具有如下特点不难看出具有如下特点(1 1)(2 2)在)在 上有直到上有直到 阶导数,且阶导数,且10( )() ,(a,b)nniixxxx()()niiP xf x( )0(0,1, )niR xin( )nR x1()()()nnRxKxx( )K x()Kx , a bixixx1( )( )( )( )( )nnF tf

26、 tP tK xt( )()0(0,1, )iF xF xin (2.3.11) (2.3.11)(1)(1)( )( )( )(1)!nnFtftK x n , a b1n (2.3.122.3.12)等式(等式(2.3.112.3.11)表明)表明 在在 上至少有上至少有 个互异的个互异的零点,根据罗尔零点,根据罗尔(Rolle)(Rolle)定理,在定理,在 的两个零点之间的两个零点之间, 至少有一个零点,因此,至少有一个零点,因此, 在在 内至少有内至少有 个互个互异的零点,对异的零点,对 再应用罗尔定理,推得再应用罗尔定理,推得 在在 内至少有内至少有 个互异的零点。继续上述讨论,可

27、推得个互异的零点。继续上述讨论,可推得 在在 内至少有一个零点,若记为内至少有一个零点,若记为 ,则则 ,于是由(,于是由(2.3.122.3.12)式得)式得将它代入将它代入(2.3.10)(2.3.10)即得(即得(2.3.92.3.9)。对于)。对于 ,(,(2.3.92.3.9)显然成立。显然成立。( )F t , a b2n( )F t( )F t( )F t( , )a b1n( )F t( )Ft(,)a bn(1)( )nFt( , )a b(1)( )0nF(1)()()(1)!0nfKxn(1 )()()(1) !nfKxnixx例例2.3.2 2.3.2 在例在例2.3.

28、22.3.2中分别用线性插值和抛物插值计算了中分别用线性插值和抛物插值计算了 近似近似值,试估计它们的截断误差。值,试估计它们的截断误差。 解解 用线性插值求用线性插值求 的近似值,其截断误差由插值余项公式的近似值,其截断误差由插值余项公式(2.3.92.3.9)知)知 现在现在 , , ,故,故 115( )f xx123/201011( )( )( )21()(),8R xfxxxxxx x 0100 x 1121x 115x 3/21100,12131(115)(115100)(115121)max81156 100.011258R当用抛物插值求当用抛物插值求 的近似值时,其截断误差为的

29、近似值时,其截断误差为 现在现在 , , 代入,即得代入,即得0100 x 1121x 115x521(115)(115100)(115121)(115144)100.001716R( )f xx2352012021( )( )( )3!1()()(),16Rxfxxxxxxxxx 2.3.4 2.3.4 插值误差的事后估计法插值误差的事后估计法 在许多情况下,要直接应用余项公式(在许多情况下,要直接应用余项公式(2.3.92.3.9)来估)来估计误差是很困难的,下面将以线性插值为例,介绍另一种计误差是很困难的,下面将以线性插值为例,介绍另一种估计误差的方法。估计误差的方法。 设设 且且 为已

30、知,若将用为已知,若将用 两两点做线性插值求得点做线性插值求得 的近似值为的近似值为 ,用,用 两点作两点作线性插值所求得线性插值所求得 的近似值记为的近似值记为 ,则由余项公式,则由余项公式(2.3.92.3.9)知:)知: 假设假设 在区间在区间 中变化不大,将上面两式相除,中变化不大,将上面两式相除,即得近似式即得近似式012xxxx( ) (0,1,2)if xi 01,xx( )yf x1y02,xx( )yf x2y110110122022021()()(),21()()(),2yyfxxxxxxyyfxxxxxx( )f x02,xx 即即 近似式(近似式(2.3.132.3.1

31、3)表明,可以通过两个结果的偏差)表明,可以通过两个结果的偏差 来估计插值,这种直接利用计算结果来估计误差的方法,来估计插值,这种直接利用计算结果来估计误差的方法,称为事后估计法。称为事后估计法。1122yyxxyyxx112121()xxyyyyxx(2.3.132.3.13)21yy 在例在例2.3.12.3.1中,用中,用 做节点,算得的做节点,算得的 近似近似值为值为 ,同样,用,同样,用 做节点,可算得做节点,可算得 的另一近似值的另一近似值 。 通过(通过(2.3.132.3.13)可以估计出插值)可以估计出插值 的误差为:的误差为:01100,121xx115110.714y 0

32、2100,144xx115210.682y1115121115(10.68210.714)0.00835144121y1y2.4 求插值多项式的求插值多项式的Newton法法 由线性代数可知,任何一个不高于由线性代数可知,任何一个不高于 次的多项式,都可表示成函数次的多项式,都可表示成函数 的线性组的线性组合,即可将满足插值条件合,即可将满足插值条件 的的 次多项式写成次多项式写成形式形式 其中其中 为待定系数。这种形式的插值多项式称为牛顿为待定系数。这种形式的插值多项式称为牛顿NewtonNewton插值多项式,我们把它记成插值多项式,我们把它记成 , ,即即 因此,牛顿插值多项式因此,牛顿

33、插值多项式 是插值多项式是插值多项式 的另一种表的另一种表示形式示形式, ,与拉格朗日插值多项式相比较,不仅克服了与拉格朗日插值多项式相比较,不仅克服了“增加一个节点增加一个节点时整个计算机工作必须重新开始时整个计算机工作必须重新开始”见例见例2.3.12.3.1的缺点,而且可以的缺点,而且可以节省乘节省乘除法运算次数。同时,在牛顿插值多项式中用到的差分与差除法运算次数。同时,在牛顿插值多项式中用到的差分与差商等概念,又与数值计算的其它方面有着密切的关系商等概念,又与数值计算的其它方面有着密切的关系. .n0010111,()(),()()()nxxxxxxxxxxxx()(0,1,)iiP

34、xyinn010201011()()()()()()nnaa xxaxxxxaxxxxxx0,1,ka kn( )nNx 01021011nonnN xaa x xa x xx xa x xx xx x nNx(2.4.1)nPx2.4.1 2.4.1 向前差分与向前差分与NewtonNewton(牛顿)向前插值公式(牛顿)向前插值公式 设函数设函数 在等距节点在等距节点 处的函数值处的函数值 为为已知,其中已知,其中 是正常数,称为步长,称两个相邻点是正常数,称为步长,称两个相邻点 和和 处函数处函数值之差值之差 为函数为函数 在点在点 处以处以 为步长的一阶向前差分为步长的一阶向前差分简简

35、称一阶差分称一阶差分,记,记 ,即,即 于是,函数于是,函数 在各节点处的一阶差分依次为在各节点处的一阶差分依次为 又称一阶差分的差分又称一阶差分的差分 为二阶差分。为二阶差分。一般地,定义函数一般地,定义函数 在点在点 处的处的 阶差分为:阶差分为: 为了便于计算与应用,通常采用表格形式计算差分,如表为了便于计算与应用,通常采用表格形式计算差分,如表2.4.12.4.1所示。所示。( )f x00,1,kxxkh kn kkf xyhkx1kx1kkyy( )f xkxhky1kkkyyy( )f x01012111,nnnyyyyyyyyy21kkkkyyyy ( )f xkxm111mm

36、mkkkyyy 在等距节点在等距节点 情况下,可以利用情况下,可以利用差分表示牛顿插值多项式差分表示牛顿插值多项式2.4.12.4.1 的系数,并将所得公的系数,并将所得公式加以简化。事实上,由插值条件式加以简化。事实上,由插值条件 即可得即可得 。 kxkyky2ky3ky4ky0 x2x3x4x1x0y1y2y3y4y0y1y2y3y20y21y22y30y31yiy 表2.4.10(0,1,)kxxkh kn00nNxy00ay 再由插值条件再由插值条件 可得:可得: 由插值条件由插值条件 可得:可得: 一般地,由插值条件一般地,由插值条件 可得可得: : 于是,满足插值条件的插值多项式

37、为:于是,满足插值条件的插值多项式为: 11nNxy100110yyyaxxh0202202100222021222!yxxyyyyyyhaxxxxhhh(1,2,)!kokkyaknkh22nNxynkkNxy 2000000101122!nnnnyyyN xyx xx xx xx xx xx xhhn h 令令 并注意到并注意到 则可简化为则可简化为 这个用向前差分表示的插值多项式,称为牛顿向前插这个用向前差分表示的插值多项式,称为牛顿向前插值公式,简称前插公式。它适用于计算表头值公式,简称前插公式。它适用于计算表头 附近的函附近的函数值。数值。 由插值余项公式(由插值余项公式(2.3.9

38、2.3.9),可得前插公式的余项为:),可得前插公式的余项为:0(0)xxth t0kxxkh2000001112!nnt tt ttnNxthyt yyyn (2.4.22.4.2)0 x 11001,(,)1 !nnnnt ttnRxthhfxxn (2.4.32.4.3)例例2.4.1 2.4.1 从给定的正弦函数表从给定的正弦函数表表表2.4.22.4.2左边两列左边两列出发计出发计算算 , ,并估计截断误差。并估计截断误差。sin(0.12)表表2.4.22.4.2xs in xy2y3y0.10.20.30.40.50.60.295520.198670.099830.479430.

39、389420.564640.098840.096850.093900.090010.08521-0.00389-0.00295-0.00094-0.00096-0.00480-0.00091-0.00199解解 因为因为0.120.12介于介于0.10.1与与0.20.2之间,故取之间,故取 ,此时,此时 为求为求 构造差分表构造差分表2.4.22.4.2,表中长方形,表中长方形框中各数依次为框中各数依次为 在在 处的函数值和各阶差分。处的函数值和各阶差分。若用线性插值求若用线性插值求 的近似值,则由前插公式(的近似值,则由前插公式(2.4.22.4.2)立即可得立即可得 用二次插值得:用二次

40、插值得:00.1x 00.120.10.20.1xxth23000,yyysin x00.1x sin(0.12)1sin(0.12)(0.12)0.099830.20.099840.11960N21sin(0.12)(0.12)0.2 (0.2 1)0.099830.2 0.09884( 0.00199)2(0.12)0.000160.11976NN 用三次插值得:用三次插值得: 因因 与与 很接近,且由差分表很接近,且由差分表2.4.22.4.2可以看出,三可以看出,三阶差分接近于常数(即阶差分接近于常数(即 接近于零),故取接近于零),故取 作为作为 的近似值,此时由余项公式(的近似值,

41、此时由余项公式(2.4.32.4.3)可知其截)可知其截断误差为:断误差为:32sin(0.12)(0.12)0.2 (0.2 1) (0.22)(0.12)( 0.00096)60.11971NN 430.2 (0.2 1) (0.22) (0.23)(0.12)(0.1)sin(0.4)0.00000224R3(0.12)N2(0.12)N40y3(0.12)0.11971Nsin(0.12)2.4.2 2.4.2 向后差分与向后差分与NewtonNewton(牛顿)向后插值公式(牛顿)向后插值公式 在等距节点在等距节点 下,除了向前差分外,还下,除了向前差分外,还可引入向后差分和中心差分

42、,其定义和记号分别如下:可引入向后差分和中心差分,其定义和记号分别如下: 在点在点 处以处以 为步长的一阶向后差分和为步长的一阶向后差分和 阶向后差分分别为:阶向后差分分别为: 在点在点 处以处以 为步长的一阶中心差分和为步长的一阶中心差分和 阶中心差分分别为:阶中心差分分别为:0(0,1, )kxxkh kn( )y f xkxhm1111(2,3, )kkkmmmkkkyyyyyymkxhm1122111122(2,3,)kkkmmmkkkyyyyyym 其中其中 ,各阶向后差分与中,各阶向后差分与中心差分的计算,可通过构造向后差分表与中心差分表来完成(参见表心差分的计算,可通过构造向后差

43、分表与中心差分表来完成(参见表2.4.22.4.2)。)。 利用向后差分,可简化牛顿插值多项式(利用向后差分,可简化牛顿插值多项式(2.4.12.4.1),导出与牛顿前),导出与牛顿前插公式(插公式(2.4.22.4.2)类似的公式,即:)类似的公式,即: 若将节点的排列次序看作若将节点的排列次序看作 ,那么,那么?2.4.1)2.4.1)可写成:可写成: 根据插值条件根据插值条件 得到一个用向后差分表示的得到一个用向后差分表示的插值多项式:插值多项式:1122,22kkkkhhyfxyfx10,nnxxx 012111nnnnnnnN xbb x xb x xx xb x xx xx x (

44、,1,1,0)niiNxy in n 其中其中t0t0,插值多项式,插值多项式(2.4.4)(2.4.4)称为牛顿向后插值公式,称为牛顿向后插值公式,简称后插公式。它适用于计算表尾简称后插公式。它适用于计算表尾 附近的函数值。由插值附近的函数值。由插值余项公式(余项公式(2.3.92.3.9),可写出后插公式的余项为:),可写出后插公式的余项为: 例例2.4.2 2.4.2 已知函数表同例已知函数表同例2.4.12.4.1,计算,计算 ,并估,并估算其截断误差。算其截断误差。 21112!nnnnnnnt tt ttnNxthyt yyyn (2.4.42.4.4)nx 1101(,)1 !n

45、nnnnt ttnRxthhfxxn(2.4.52.4.5)sin(0.58) 解解 因为因为0.580.58位于表尾位于表尾 附近,故用后插公式附近,故用后插公式(2.4.42.4.4)计算)计算 的近似值。的近似值。 一般的,为了计算函数在一般的,为了计算函数在 处的各阶向后差分,应构处的各阶向后差分,应构造向后差分表。但由向前差分与向后差分的定义可以看出,造向后差分表。但由向前差分与向后差分的定义可以看出,对同一函数表来说,构造出来的向后差分表与向前差分表对同一函数表来说,构造出来的向后差分表与向前差分表在数据上完全相同。因此,表(在数据上完全相同。因此,表(2.4.22.4.2)用)用

46、“”线标线标出的各数依次给出了出的各数依次给出了 在在 处的函数值和向后差处的函数值和向后差分值。因三阶向后差分接近于常数,故用三次插值进行计分值。因三阶向后差分接近于常数,故用三次插值进行计算,且算,且 于是由向后差分公式(于是由向后差分公式(2.4.42.4.4)得:)得:50.6x sin(0.58)5xsin x50.6x 50.58 0.60.20.1xxth 因为在整个计算中,只用到四个点因为在整个计算中,只用到四个点 上的函数值,固由余项公式(上的函数值,固由余项公式(2.4.52.4.5)知其截断误差为:)知其截断误差为:3( 0.2) ( 0.2 1)sin(0.58)(0.

47、58)0.56464( 0.2) 0.08521( 0.00480)2( 0.2) ( 0.2 1) ( 0.22)( 0.00091)60.54802N 0.6,0.5,0.4,0.3x 30.2 ( 0.2 1) ( 0.22) ( 0.2 3)4(0.58)(0.1)sin(0.6)0.00000224R 2.4.3 2.4.3 差商与牛顿基本插值多项式差商与牛顿基本插值多项式 当插值节点非等距分布时,就不能引入差分来简化牛顿当插值节点非等距分布时,就不能引入差分来简化牛顿插值多项式,此时可用差商这个新概念来解决。插值多项式,此时可用差商这个新概念来解决。 设函数设函数 在一串互异的点在

48、一串互异的点 上的值依上的值依次为次为 我们称函数值之差我们称函数值之差 与自变量之差与自变量之差 的比值的比值 为函数为函数 关于关于 点的一阶差商,记作点的一阶差商,记作( )f x012,iiixxx012()( )()iiif xf xf x 、10()()iif xf x10iixx1010()()iiiifxfxxx( )fx10,iixx01,iif xx例例2.4.3 2.4.3 称一阶差商的差商称一阶差商的差商 为函数为函数 关于点关于点 的二阶差商(简称二阶差商),的二阶差商(简称二阶差商),记作记作 , 例例2.4.4 2.4.4 一般地,可通过函数一般地,可通过函数 的

49、的 阶差商定义的阶差商定义的 阶差商阶差商如下:如下: 差商计算也可采用表格形式(称为差商表),如表差商计算也可采用表格形式(称为差商表),如表2.4.32.4.3所示:所示:102101121021()()()(),fxfxfxfxf xxf xxxxxx120120,iiiiiifxxfxxxx( )f x012iiixxx、 、012,iiifxxx120101220,fxxfxxfxxxxx( )f x1m m101010,mmmmiiiiiiiiifxxfxxfxxxxx 二阶差商二阶差商 kx()kf x 一阶差商一阶差商0 x1x2x3x0()f x1( )f x2()f x3(

50、)f x01,f x x12 ,f x x23,f x x012,f x x x123 ,f x x x0123,f x x x x表表2.4.32.4.3 三阶差商三阶差商差商具有下列重要性质(证明略):差商具有下列重要性质(证明略):(1 1)函数)函数 的的 阶差商阶差商 可由函数值可由函数值 的线性组合表示,且的线性组合表示,且(2 2)差商具有对称性,即任意调换节点的次序,不影响差商的值。例如)差商具有对称性,即任意调换节点的次序,不影响差商的值。例如()当()当 在包含节点在包含节点 的某个区间上存在时,的某个区间上存在时,在在 之间必有一点之间必有一点 ,使,使(4 4)在等距节

51、点)在等距节点 情况下,可同时引入情况下,可同时引入 阶差分与差商,且有下面关系:阶差分与差商,且有下面关系:( )f x01,mf xxxm 01mf xf xf x、 010011,()()()()mimiiiiiiimf xf x xxxxxxxxxx012102120,.f xx xf x xxf x xx mfx0,1,jixjm01,miiixxx 10,!immiiff xxxm,00,1,kxxkh knmmn引入差商的概念后,可利用差商表示牛顿插值多项式(引入差商的概念后,可利用差商表示牛顿插值多项式(2.4.12.4.1)的系)的系数。事实上,从插值条件出发,可以像确定前插

52、公式中的系数那样,数。事实上,从插值条件出发,可以像确定前插公式中的系数那样,逐步地确定(逐步地确定(2.4.12.4.1)中的系数)中的系数 故满足插值条件故满足插值条件 的的 次插值多项式为:次插值多项式为: (2.4.62.4.6)(2.4.62.4.6)称为牛顿基本插值多项式,常用来计算非等距节点上的函数值。)称为牛顿基本插值多项式,常用来计算非等距节点上的函数值。0011,!,!mmmmnnnnmmyfxxxmhyfxxxmh0001(), (1,2, )kkaf xaf x xxkn0,1,niiNxy in 00100120101011,()()()nnnNxf xf x xxx

53、f x x xxxxxf x xxxxxxxxn例例2.4.5 2.4.5 试用牛顿基本差值多项式按例试用牛顿基本差值多项式按例1 1要求重新计算的近要求重新计算的近似值。似值。解解 先构造差商表先构造差商表 由上表可以看出牛顿基本插值多项式(由上表可以看出牛顿基本插值多项式(2.4.62.4.6)中各系数)中各系数依次为:依次为:0()10fx01,0.047619f x x 012 , ,0.000094f x x x 故用线性插值所得的近似值为:故用线性插值所得的近似值为: 用抛物插值所求得的近似值为:用抛物插值所求得的近似值为: 所得结果与例所得结果与例2.4.12.4.1一致。比较例

54、一致。比较例2.4.12.4.1和例和例2.4.52.4.5的计算过程可的计算过程可以看出,与拉格朗日插值多项式相比较,牛顿差值多项式的优点是明以看出,与拉格朗日插值多项式相比较,牛顿差值多项式的优点是明显的。显的。 由差值多项式的存在唯一性定理知,满足同一组差值条件的拉格由差值多项式的存在唯一性定理知,满足同一组差值条件的拉格朗日多项式(朗日多项式(2.3.42.3.4)与牛顿基本差值多项式()与牛顿基本差值多项式(2.4.62.4.6)是同一多项式。)是同一多项式。因此,余项公式(因此,余项公式(2.3.92.3.9)也适用于牛顿插值。但是在实际计算中,)也适用于牛顿插值。但是在实际计算中

55、,有时也用差商表示的余项公式:有时也用差商表示的余项公式: (2.4.72.4.7) 来估计截断误差(证明略)来估计截断误差(证明略) 注意注意 上式中的上式中的 阶差商阶差商 与与 的值有关,故不能的值有关,故不能准确地计算出准确地计算出 的精确值,只能对它做一种估计。的精确值,只能对它做一种估计。1115(115)100.047619 (115 100)10.7143N21115(115)(115) ( 0.000094) (115 100) (115 121) 10.7228NN 011( ),( )nnnRxf xxxxx1n 01,mf x xx( )f x01,mf x xx例例2

56、.4.6 2.4.6 当四阶差商变化不大时,可用当四阶差商变化不大时,可用近似代替近似代替01234 , ,f x x x x x0123, f x x x x x2.5 求插值多项式的改进算法求插值多项式的改进算法2.5.1 2.5.1 分段低次插值分段低次插值例例2.3.22.3.2、例、例2.4.12.4.1表明适当地提高插值多项式的次数,有可表明适当地提高插值多项式的次数,有可能提高计算结果的准确程度。但是决不可由此得出结论,能提高计算结果的准确程度。但是决不可由此得出结论,认为插值多项式的次数越高越好。认为插值多项式的次数越高越好。例例2.5.1 2.5.1 对函数对函数先以先以 为

57、节点作五次插值多项为节点作五次插值多项式式 ,再以再以 为节点作十次插值多为节点作十次插值多项项式式 ,并将曲线并将曲线21( )( 11)125f xxx 21(0,1,5)5ixi i 11(0,1,10)5ixi i 5( )P x10( )Px51021( ),( ),( )( 1,1)125f xyP xyPx xx 描绘在同一坐标系中。如图描绘在同一坐标系中。如图2.5.12.5.1所示:所示: 虽然在局部范围中,例如在虽然在局部范围中,例如在 区间中,区间中, 比比 较好地逼近较好地逼近 , ,但从整体上看,但从整体上看, 并非处处都比并非处处都比 较好较好地逼近,尤其是在地逼近

58、,尤其是在 区间的端点附近。进一步的分析表明,区间的端点附近。进一步的分析表明,当当 增大时,该函数在等距节点下的高次插值多项式增大时,该函数在等距节点下的高次插值多项式 ,在,在 两两端会发生激烈的振荡。这种现象称为龙格(端会发生激烈的振荡。这种现象称为龙格(Runge)Runge)现象。这表明,在现象。这表明,在大范围内使用高次插值,逼近的效果可能不理想。大范围内使用高次插值,逼近的效果可能不理想。 另一方面,插值误差除来自截断误差外,还来自初始数据的误差另一方面,插值误差除来自截断误差外,还来自初始数据的误差和计算过程中的舍入误差。插值次数越高,计算工作越大,积累误差和计算过程中的舍入误

59、差。插值次数越高,计算工作越大,积累误差也可能越大。也可能越大。 因此,在实际计算中,常用分段低次插值进行计算,即把整个插因此,在实际计算中,常用分段低次插值进行计算,即把整个插值区间分成若干小区间,在每个小区间上进行低次插值。值区间分成若干小区间,在每个小区间上进行低次插值。 0.2,0.210( )Px5( )P x( )f x10( )Px5( )P x1,1n1,1( )yf x例例2.5.2 2.5.2 当给定当给定 个点个点 上的函数值上的函数值 后,若要计算点后,若要计算点 处函数值处函数值 的近似值,可先选取两个的近似值,可先选取两个节点节点 使使 ,然后在小区间上作线性插值,

60、即得,然后在小区间上作线性插值,即得 这种分段低次插值叫分段线性插值。在几何上就是用折线代替曲线,如图这种分段低次插值叫分段线性插值。在几何上就是用折线代替曲线,如图2.5.22.5.2所示。故分段线性插值又称折线插值所示。故分段线性插值又称折线插值. . 1n 01nxxx01nyyy1,iixxx( )f x1,iixx1,iixxx11111 ( )( )iiiiiiiixxxxf xP xyyxxxx 类似地,为求类似地,为求 的近似值的近似值. .也可选取距点最近的三个节点也可选取距点最近的三个节点 进行二次插值,即取进行二次插值,即取 这种分段低次插值叫分段二次插值。在几何上就是用

温馨提示

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

评论

0/150

提交评论