4插值与拟合方法

更新时间:2023-09-25 21:43:02 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第4章 插值与拟合方法

1 问题的描述与基本概念

已知[a,b]上实函数f(x)在n?1个互异点xi?[a,b](i?0,1,???,n)处的函数值

f(xi)(i?0,1,???,n),要求估算f(x)在[a,b]中某

点x的值.

65

1)插值问题的描述

找近似函数P (x),满足

P(xi)?f(xi)(i?0,1,???,n)

? P (x) 称为f (x)的一个插值函数; ? f (x) 称为被插函数;点xi为插值节点; ? P(xi)?f(xi)(i?0,1,???,n)称为插值条件; ? R(x)?f?x??P(x)称为插值余项。

66

当插值函数P(x)是多项式时称为多项式插值. 为获得唯一的插值多项式,设

P(x)??akxk.k?0n

用Hn表示次数不超过n的多项式集合.

67

定理1 Hn中满足插值条件的插值多项式是存在且唯一.

证明 仅证唯一性.设P(x)?Hn,Q(x)?Hn,且都满足插值条件,于是有

P(xi)?Q?xi??f(xi)(i?0,1,???,n).令

R?x??P(x)?Q(x),

那么R(x)?Hn.因为

所以R?x?有n+1个零点. 由代数基本定理有R(x)?0,因此P(x)?Q(x)。

68

R?xi??P(xi)?Q?xi??f(xi)?f(xi)?0(i?0,1,???,n),2 Lagrange插值

n?1时,设L1(x)?H1,满足L1(x0)?L1(x1)?f(x1).

x?x0x?x1L1(x)?fx(0)?fx1()x0?x1x?1x.f(x0),

0n?2时,设L2(x)?H2,满足L2(xi)?f(xi)

(i?0,1,2). 将L2(x)写成

L1(x)?f(x0)l0(x)?f(x1)l1(x)?f(x2)l2(x),

其中li(x)(i?0,1,2)是二次多项式,满足

可求得

?1,i?jli(xj)???0,i?jx?xkli(x)??k?0xi?xk2(i,j?0,1,2)

(i?0,1,2)k?i

例一 已知数表

1 3 3 2 x y=f(x) 0 1 用抛物插值计算f(2)的近似值.

69

一般地,

其中 Ln(x)??f(xi)li(x),i?on

,n).x?xkli(x)??k?0xi?xkk?in(i?0,1, (i,j?0,1,,n).li(x)(i?0,1,,n)具有性质 ?1,i?jli(xj)???0,i?j

Ln(x)称为Lagrange插值多项式,而

li?x?(i?0,1,,n)称为 Lagrange插值基函数

例二 证明:

?n?1(x)li(x)???1(xi)(x?xi)?n (i?0,1,,n) ?n?1(x)??(x?xj).j?0n

70

(n)f(x)在[a,b]上连续,定理2 设

f(n?1)(x)在(a,b)上存在,互异节点xk?[a,b]

Ln(x)是满足插值条件的插值多(k?0,1,,n,),

项式,则有对任何x?[a,b]成立

R?x??f?x??Lfn?1???nn?x???n?1?!?n?1?x?,??(a,b) 式中?n?1(x)?nk??0?x?xk?.

71

设f(x)在[a,b]上有n+1阶导数,若能得 到Mn?1?maxf?a?x?bn?1??x?,则有余项估计式

Mn?1Rn?x???n?1?x?,x?[a,b] ?n?1?!

72

例三 证明由下列插值条件

x 0 y=f(x) ?1 12 3?4 1 0 32 54 2 352 214 所确定的Lagrange插值多项式是一个二次多项式.

73

3 Newton 插值

1) 构造原理

已知数表

x x0 x1 f(x)f(x0)f(x1) 设插值多项式为

xn f(x)n Nn(x)?a0?a1(x?x0)?a2(x?x0)(x?x1)???an(x?x0)(x?x1)?(x?xn?1)借助插值条件可求出 N(x)的系数.

n

当x?x0时,有

Nn(x0)?a0?f(x0),

得出a0?f(x0). 当x?x1时, 有

Nn(x1)?a0?a1(x1?x0)?f(x1), 可得

74

例二 已知数表

x y=f(x) 0 1 1 3 3 2 用二次Newton插值计算f(2)的近似值.

80

练习一 给定数表

x 1 2 4 5 6 8 f(x) 0 2 8 12 18 28 试用二次和四次Newton插值多项式计算f(5.8)的近似值.

练习二 假定f(x)定义在[a,b]上,又x1,x2,x3,t1,t2,,tn是[a,b]中互异的点,证明 (x1?x2)f[x1,x2,t1,t2,,tn]?(x2?x3)f[x2,x3,t1,t2,,tn] ?(x3?x1)f[x3,x1,t1,t2,,tn]?0.

练习三 设Pj,j?k?1(x)为f(x)关于节点xj,xj?1,???,xj?k?1的k?1次Lagrange插值多项式,证明下列递推关系

Pj,j?k?1(x)?(x?xj)Pj?1,j?k?1(x)?(x?xj?k?1)Pj,j?k(x)xj?k?1?xj,

j?0,1,???,n?k?1, k?0,1,???,n?1.

81

设函数y?f(x)在等距节点xk?x0?kh(k?

,n)上的值fk?h?0,称为步长. 记号

?fk?f?k1? fk ?fk?fk??f1k

0,1,f(xk)为已知,这里常数

分别称为f(x)在xk处以h为步长的一阶向前差分及一阶向后差分.

一般可定义m阶差分为

mm?1m?1 ?fk??fk?1??fk

82

mm?1m?1?f??f??fkkk?1

均差与差分的关系

?mfkf[xk,xk?1,,xk?m]?mm!h 证明:m?1时, fk?1?fk?fkf[xk,xk?1]??,hh 命题成立.

假设m?s?1时命题成立,m?s时,

f[xk+1,xk?2,,xk?s]?f[xk,xk?1,,xk?s?1]f[xk,xk?1,,xk?s]?xk?s?xk?fk?1?fk?(-)/sh s?1s?1 (s?1)!h(s?1)!hs?1s?1?fk?,s s!h

命题成立. 由数学归纳法,命题成立.

83

s Newton插值多项式为

Nn(x)?f?x0??f?x0x,?1x?(x?0f)?xx0x,?1x?,xx?x0?)(2(?f?x0,x1,xn,?x?(x0x?)x(?)xn?(1x?1).

1)由均差与差分的关系,等距节点的Newton插值多项式可改写为

N?f20?f0n(x)?f?x0??h(x?x0)?2!h2(x?x0)(x?x1)? ?n?f0 n!hn(x?x0)(x?x1)?(x?xn?1).令x?x0?,t则有hNewton前插公式 N(x)?f?xft(t?1)2n0?th0??t?0?2!?f0??t(t?1)(t?n?1) n!?nf0.

84

计算得法方程组

?5020??a0??5.5??0200??a???10.2????1??? ??200164????a2????10.4??***aa?1.6524??0.1381,故所求二次解之得 0,1?0.51,a2拟合曲线为

S*(x)?1.6524?0.51x?0.1381x2

105

为避免病态,把基函数组??0(x),?1(x),,?n(x)?选为正交函数组即可.

设函数组??k(x)?(k?0,1,,n)在区间[a,b]上有定义,点集?xi?(i?0,1,,m)?[a,b],权系数?i?0(i?0,1,,m),如果

?0,j?k,(?k,?j)???? ik(xi)?j(xi)??2r?0,j?k.i?0?km则称函数组??0(x),?1(x),,?n(x)?是关于?x0,x1,,xm?的带权正交函数组.

当??0(x),?1(x),,?n(x)?是关于?x0,x1,,xm?的带权正交函数组时,其法方程组就变为对角方程组

106

?r02??????r12??a0??(?0,f)??????a(?,f)??1???1?????? ????2??rn??an??(?n,f)?它不涉及病态方程组问题,可以很容易解出

*ak?(?k,f)/rk2(k?0,1,,n)

其对应的最小二乘解

(?k,f)S*(x)???k(x) 2rkk?0n

可用Schmidt正交化方法构造正交函数组。对于正交多项式有递推公式((?k,?j)????ik(xi)?j(xi)).

i?0m

107

1) ?0(x)?1,?1(x)?x - 2)对 ?j?j?1,2,,n?1(?j,?j)(?j?1,?j?1)(x?j,?j)(?j,?j)(x?0,?0)(?0,?0) ?j?1? ?j?1(x)??x??j?1??j(x)??j?j?1(x)

该算法得到首项系数为1的关于点集x0,x1,的带权正交多项式组??0(x),?1(x),,?n(x)?。

例2 方法2 选用正交基函数

?0(x)?1,r02?(?0,?0)??1?5, (x?0,?0)??xi?0,(x?0,?0)/(?0,?0)?0,?1?x??x?(x?0,?0)/(?0,?0)?x?0?0 , r12?(?1,?1)??xi2?20

?1?(?1,?1)/(?0,?0)?4,?2?(x?1,?1)/(?1,?1)???xi3?/20?0

?2?x??(x??2)?1(x)??1?0(x)?x2?4,r22?(?2,?2)??(xi2?4)2?84,

108

,xm(?0,y)??yi?5.5,(?1,y)??xiyi?10.2,(?22,y)??(xi?4)yi??11.6

故有

a*(?0,y)5.50?r2??1.1 ,a*1?(?1,y)2?10.2?0.51 05r120a*(?2,y)11.62?r2??84??0.1381, 2所求的二次拟合曲线为

?(x)?1.1?0.51x?0.1381(x2?4)

109

均差与向后差分有关系

f[x?mfkk,xk?1,,xk?m]?m!hm. 运用此关系并令x?xn?th,可得Newton插公式

N?th)?f?xt(t?1)2n(xnn??t?fn?2!?fn??t(t?1)(t?n?1)?nf n!n.

后85

差分表

fk

?(?)

f0 ?f0(?f1)f1

?f1(?f2)f2 ?f2(?f3)f3

?2(?2)

?2f20(?f2) ?2f21(?f3)

?3(?3)

?3f30(?f3)

86

x

4. Hermite插值

x0 x1 xn f(x)n f(x)f(x0)f(x1) f?(x)f?(x0) f?(x1) f?(xn) H2n?1中满足条件的多项式称为

Hermite插值多项式.

,为次数不超, 设?j(x)?,jx((j?0,1n过2n?1的多项式,并满足条件

k?j,??(x)?0,j,k?0,1,?j(xk)?1,0,k?j,jk?,n,

1,k?j,??j(xk)?0,k?j,?j(xk)?0,j,k?0,1,?,n.

87

Hermite插值多项式可写成 n

H2n?1(x)??(f(xj)?j(x)?f?(xj)?j(x)).j?0

以下求?j(x). 设

?2j(x)?(ax?b)lj(x),

利用?j(xj)?1,??j(xj)?0可得

? ?ax??2j?b?1,al?j(xj)?0.

因为 nl?1j(xj)??, kk??0jxj?xk 所以

?n?a??21??k?k??0jxj?x,k?nb?1?2x1j ??.?kk??0jxj?xk

88

于是

1?j(x)?(1?2(x?xj)?)l2j(x).k?0xj?xkk?jn 同理

?j(x)?(x?xj)l(x).

三次Hermite插值基函数为

x?x0x?x12?0(x)??(12)(x1?x0x? 0x1 x?x1x?x02?1(x)??(12)(x0?x1x?1x0

x?x12?0(x)?(x?x0)(),x0?x1

x?x02?1(x)?(x?x1)().x1?x0

),),2j 类似于前面证明插值多项式唯一性可证明H2n?1中满足条件的Hermite插值多项式具有唯一性. 类似前面导数余项形式的推导可得

89

f(?)2f(x)?H2n?1(x)??n?1(x),??(a,b).(2n?2)(2n?2)!

例一 按表

x 0 1 f(x)0 1 f?(x)3 9

求Hermite插值多项式

90

5.分段低次插值

1) 定义

分段线性插值函数

取[a,b]上n+1个节点xk

a?x0?x1??xn?b

及函数值f(xk),k?0,1,,n. 若函数?(x)满足 ①?(xk)?f(xk)(k=0,1,…,n),

②?(x)在每个小区间[xk,xk?1]是线性插值多项式. 则称?(x)为f(x)在[a,b]上的分段线性插值函数

易知?(x)在[a,b]上连续. 分段三次Hermite插值函数

若分段插值函数?(x)满足

?(xk)?f(xk),??(xk)?f?(xk),

且?(x)在[xk,xk?1]是三次多项式,则称?(x)为分段三次Hermite插值函数. 易知?(x)?C[a,b].

91

12) 构造原理

分段线性插值函数的构造

设xk,xk?1为任何连个相邻插值点,于是在[xk,xk?1]上分段线性插值函数?(x)是一次多项式.利用[xk,xk?1]上的插值数据

x f(x) xk f(xk) xk?1 f(xk?1) 用n=1的Lagrange插值构造?(x),于是有

x?xk?1x?xk?(x)?f(xk)?f(xk?1)xk?xk?1xk?1?xkx?[xk,xk?1],k?0,1,

92

,n?1.分段三次Hermite插值函数

设[xk,xk?1]是任何两个相邻节点构成的区间,在[xk,xk?1]上的插值数据为 xk xk?1 x

f(xk) f(xk?1) f(x)

f?(xk) f?(xk?1) f?(x) 则

?(x)?f(xk)?0(x)?f(xk?1)?1(x)?f?(xk)?0(x)?f?(xk?1)?1(x)x?[xk,xk?1],k?0,1,,n?1,

x?xk?12x?xk222?0(x)?[1?(x?xk)](),?1(x)?[1?(x?xk?1)](),hkhkhkhk?0(x)?(x?xk)(x?xk?12),hk?1(x)?(x?xk?1)(x?xk2),hk式中 hk?xk?1?xk.

93

3)分析

定理1 假设出现在如下不等式中的函数的高阶导

max(xk?1?xk),则有 数存在,记h?0?k?n?11. 分段线性插值的误差估计为 h2R1(x)?f(x)??(x)?maxf??(x)8a?x?bx?[a,b] 2. 分段三次Hermite插值函数的误差估计为

h4(4)R3(x)?f(x)??(x)?maxf(x)4a?x?b4!?2x?[a,b] 证明 只对结果2给出证明,结果1可类似证明。 由两点的Hermite插值余项可知,在区间[xk,xk?1]上,分段三次Hermite插值函数?(x)与被插值函数f(x)的误差关系式

94

d?((f,?0),(f,?1),,(f,?n))T.

?0(x),?1(x),,?n(x)线性无关,detG?0,于是

***a?(a,a方程组有唯一解01,*T,an),因此

S(x)??a?j(x).**jj?0n

最佳逼近的证明

*2(f(x)?S(x))?(x)dx?(f(x)?S(x))?(x)dx ?a?ab2b=?(S(x)?S(x))?(x)dx+2?(f(x)?S*(x))(S*(x)?S(x))?(x)dx.aab*2b因为

?所以

bba(f(x)?S*(x))(S*(x)?S(x))?(x)dx=0,

2b*2 ?a(f(x)?S(x))?(x)dx??a(f(x)?S(x))?(x)dx?0.

100

例一 求

1f(x)?1?x2在区间[0,1]上的二

次最佳平方逼近多项式

101

2) 曲线拟合

曲线拟合也是一种求近似函数的方法,本节主要介绍最小二乘拟合方法.

设有数据(xi,yi),yi?f(xi),i?0,1,, *m, 求S(x)与所给数据拟合.

在?=span{?0(x),?1(x),,?n(x)}中找函数S*(x),使得

*2?(S(x)?f(x))?min?iiii?0mS(x)??2?(S(x)?f(x)), ?iiii?0m?i?0为权系数.

S(x)??aj?j(x),j?0n

有函数

102

I(a0,a1,,an)???i(?aj?j(xi)?f(xi)).2i?0j?0mn

由极值必要条件

?I?0?ak(k?0,1,,n). 类似于求最佳平方逼近函数时的推导可得 法方程组

Ga?d,

其中

(?0,?n)??(?0,?0)(?0,?1)??(?,?)(?,?)(?,?)10111n??G????(?n,?0)(?n,?1)? ?,

(?n,?n)?

a?(a0,a1,

,an)T, ,(f,?n))T.

d?((f,?0),(f,?1),此时

(?,?)???(x)?(x),?jkijiki

i?0m

103

(f,?)??f(x)?(x).?kiiki

i?0m

***a?(a,a若方程组有唯一解01,*T,an),则

有拟合曲线(曲线拟合最小二乘解)

S(x)??a?j(x).**jj?0n

??(f(x)?S(x))称为平方误差

*2iiii?0m

例2 给定数据表

xi -3 -1 0 1 3 2 yi -1.2 1.3 1.5 1.9 求二次拟合曲线。

解 求二次拟合曲线就是求2次最小二乘多项式,由于没给出权系数,可选?i?1(i?0,1,…,4).

取基函数?0(x)?1,?1(x)?x,?2(x)?x2,则二次拟合曲线形式为

***2S*(x)?a0?a1x?a2x

104

本文来源:https://www.bwwdw.com/article/qzld.html

Top