内容发布更新时间 : 2024/12/23 16:16:49星期一 下面是文章的全部内容请认真阅读。
第六章 函数插值
实践中常有这样的问题:由实验得到某一函数y = f (x)在一系列点x0, x1,…, xn处的值y0, yi,…, yn,其函数的解析表达式是未知的,需要构造一个简单函数P(x)作为y = f (x)的近似表达式;或者y = f (x)虽有解析式,但计算复杂,不便于使用,需要用一个比较简单且易于计算的函数P (x)去近似代替它;本章所介绍的插值法就是建立这种近似公式的基本方法。
§1 代数插值 设已知某个函数关系y = f (x)在某些离散点上的函数值:
xyx0y0x1y1x2?xny2?yn (6.1)
插值问题就是根据这些已知数据来构造函数y = f (x)的一种简单的近似表达式,以便于计算点x?xi的函数值f(x),或计算函数的一阶、二阶导数值。一种常用的方法就是从多项式中选一个Pn(x),使得
Pn(xi)?yi,i?0,1,2,?,n
(6.2)
作为f (x)的近似。因为多项式求值方便,且还有直到n阶的导数。我们称满足关系(6.2)的函数Pn(x)为f (x)的一个插值函数,称x0, x1,…, xn为插值节点,并称关系(6.2)为插值原则。 这种用代数多项式作为工具来研究插值的方法叫做代数插值。 设 x0 < x1< …< xn
记a = x0, b = xn,则 [a, b] 为插值区间。 插值多项式存在的唯一性: 设所要构造的插值多项式为:
Pn(x)?a0?a1x?a2x2???anxn
由插值条件
Pn(xi)?yii?0,1,?,n
得到如下线性代数方程组:
n?1?a0?x0a1???x0an?y0?n?1?a0?x1a1???x1an?y1 ?????1?a?xa???xna?yn1nnn?0
此方程组的系数行列式为
1x0
2x0???nx0D?1x1??1xnx122xnx1nnxn?0?j?i?n?(xi?xj)
此为范得蒙行列式,在线性代数课中,已经证明当xi?xj,i?1,2,?n; j?1,2,?n时,D ? 0,因此,Pn(x)由a0, a1,…, an唯一确定。
§2 拉格朗日(Lagrange插值) 1.线性插值 线性插值也叫两点插值,已知函数y = f (x)在给定互异点x0, x1上的值为y0= f (x0),y1=f (x1)线性插值就是构造一个一次多项式 P1(x) = ax + b 使它满足条件 P1 (x0) = y0 P1 (x1) = y1 (6.3) 其几何解释就是一条直线,通过已知点A (x0, y0),B(x1, y1)。
图6.1
由解析几何,过两点A、B的直线方程可写为:
P1(x)?y0?y1?y0(x?x0)
x1?x0(点斜式) (6.4)
或改写成
P1(x)?x?x0x?x1y0?y1
x0?x1x1?x0(对称式) (6.5)
容易验证,P1(x)就是所求的一次多项多,称为f (x)的线性插值多项式。
再研究对称式的结构。记
l0(x)?x?x1x0?x1l1(x)?x?x0
x1?x0则(6.5)式可写为
P1(x)?l0(x)y0?l1(x)y1
(6.6)
由于
l0(x0)?1l1(x0)?0l0(x1)?0 l1(x1)?1
因此,l0 (x)与l1 (x)分别是适合函数表
xyx01x10 和
xyx00x11
的插值多项式。这两个插值多项式称作以x0, x1为结点的基本插值多项式。 (6.6)式说明,满足条件(6.3)的一次插值多项式y = P1 (x)可以由两个基本插值多项式l0(x)、l1(x)的线性组合来表示。
例:用线性插值求115 (x* = 10.723805) 解:设y?x,取x0 = 100,x1 = 121
则 y0 = 10 y1 = 11 从而
115?P1(115)?10?11?10(115?100)?10.71428
121?100线性插值也可构造《数学用表》中正弦、余弦、对数等数表的修正项。 2.抛物插值 线性插值计算方便、应用很广,但由于它是用直线去代替曲线,因而一般要求[x0, x1]比较小,且f(x)在[x0, x1]上变化比较平稳,否则线性插值的误差可能很大。为了克服这一缺点,有时用简单的曲线去近似地代替复杂的曲线,最简单的曲线是二次曲线,下面就研究用二次曲线去逼近复杂曲线的情形。 设函数y=f (x) 在给定互异的自变量值x0, x1, x2上对应的函数值为y0, y1, y2,二次插值就是构造一个二次多项式
P2(x)?a0?a1x?a2x2
使之满足
图6.2
又因过三点的二次曲线为抛物线,故又称为抛物插值。注意,线性插值多项式可写为
P2(xi)?yi,i?0,1,2
(6.7)