第三章 插值法和最小二乘法
3.4 Newton插值法§
3.4 Newton插值法§
)(xl j ∏
≠
= ?
?= n
ji
i ij
i
xx
xx
0 )(
)( nj ,,2,1,0 L=
我们知道 ,Lagrange插值多项式的插值基函数为
形式上太复杂 ,计算量很大 ,并且重复计算也很多
由线性代数的知识可知 ,任何一个 n次多项式都可以表示成
,1 ,0xx ? ),)(( 10 xxxx ?? )())(( 110 ???? nxxxxxx L,L
共 n+1个多项式的线性组合
那么 , 是否可以将这 n+1个多项式作为插值基函数呢 ?
,1 ,0xx ? ),)(( 10 xxxx ?? )())(( 110 ???? nxxxxxx L,L
显然 , 多项式组
线性无关 , 因此 , 可以作为插值基函数
,ix设插值节点为 nifi ,,1,0, L=函数值为
1,,2,1,0,1 ?=?= + nixxh iii L i
i
hh max=
nifxP ii ,,1,0,)( L==插值条件为
)())((
))(()()(
110
102010
????+
+??+?+=
nn xxxxxxa
xxxxaxxaaxP
L
L
具有如下形式设插值多项式 )(xP
nifxPxP ii ,,1,0,)()( L==应满足插值条件
000 )( afxP ==有
)()( 011011 xxaafxP ?+==
00 fa =
01
01
1 xx
ffa
?
?=
))(()()( 12022021022 xxxxaxxaafxP ??+?+==
12
01
01
02
02
2 xx
xx
ff
xx
ff
a ? ?
??
?
?
=
再继续下去待定系数的形式将更复杂
为此引入差商和差分的概念
一 、 差商 (均差 )
定义 1. nifxxf ii ,,1,0,)( L=处的函数值为在互异的节点设
称
)(],[ jixx ffxxf
ji
ji
ji ≠?
?=
)(,)( 均差一阶差商关于节点为 ji xxxf
)(],[],[],,[ kjixx xxfxxfxxxf
jk
jiki
kji ≠≠?
?=
的二阶差商关于为 kji xxxxf ,,)(
依此类推
],,,,[
110 kk iiii
xxxxf
?
L
阶差商的关于节点为 kxxxxxf
kk iiii
,,,,)(
110 ?
L
],,,,[ 110 kk xxxxf ?L
差商具有如下性质
且的线性组合表示
可由函数值阶差商的
,)(,),(),(
],,,,[)()1(
10
110
k
kk
xfxfxf
xxxxfkxf
L
L ?
显然
kk
kkk
ii
iiiiiii
xx
xxxxfxxxf
?
?=
?
??
1
210110
],,,,[],,,[ LL
kk
kkk
xx
xxxxfxxxf
?
?=
?
??
1
210110 ],,,,[],,,[ LL
],,,,[ 110 kk xxxxf ?L
∑
= +? ????
=
k
i kiiiiii
i
xxxxxxxx
xf
0 110 )())(()(
)(
LL
(2) 差商具有对称性 ,即任意调换节点的次序 ,差商的值不变
],,[ 210 xxxf ],,[ 120 xxxf= ],,[ 012 xxxf=如
,,,,)()3( 10) 的区间存在时在包含节点当 ( kk xxxxf L
使得之间必存在一点在 ,,,, 10 xkxxx L
],,,[ 10 kxxxf L ! )(
)(
k
f k x=
)(
)(
)(
)(
)(
)(
44
33
22
11
00
xfx
xfx
xfx
xfx
xfx
xfx kk 四阶差商三阶差商二阶差商一阶差商
差商的计算方法 (表格法 ):
],[ 10 xxf
],[ 21 xxf
],[ 32 xxf
],[ 43 xxf
],,[ 210 xxxf
],,[ 321 xxxf
],,[ 432 xxxf
],,,[ 3210 xxxxf
],,,[ 4321 xxxxf
],,,[ 410 xxxf L
规定函数值为 零阶差商
差商表 Chashang.m
二 、 差分
定义 2.
称
处的函数值为在等距节点设
,,,1,0
,)( 0
nk
fkhxxxf kk
L=
+=
kkk fff ?=? +1
处的一阶向前差分在为 kxxf )(
1,,1,0 ?= nk L
1??=? kkk fff
处的一阶向后差分在为 kxxf )(
nk ,,2,1 L=
kkk fff ???=? +1
2 处的二阶向前差分在为
kxxf )(
1
2
????=? kkk fff 处的二阶向后差分在为 kxxf )(
k
m
k
m
k
m fff 1
1
1 ?
+
? ???=? 阶向前差分处的在为 mxxf
k)(
阶向后差分处的在为 mxxf k)(
依此类推
1
11
?
?? ???=?
k
m
k
m
k
m fff
可以证明 mkmkm ff +?=?
1+?=? kk ff
2
22
+?=? kk ff
3
33
+?=? kk ff
如 kkk fff ?=? +1
kkk fff ?=? ++ 11
kkk fff ???=? +1
2
122
2
+++ ???=? kkk fff
44
33
22
11
00
fx
fx
fx
fx
fx
fx kk 四阶差分三阶差分二阶差分一阶差分
0f?
1f?
2f?
3f?
0
2 f?
1
2 f?
2
2 f?
0
3 f?
1
3 f? 0
4 f?
差分表
4f?
3f?
2f?
1f?
4
2 f?
3
2 f?
2
2 f?
4
3 f?
3
3 f?
4
4 f?
在等距节点的前提下 ,差商与差分有如下关系
],[ 1+ii xxf hfi?=
],,[ 21 ++ iii xxxf
2
1
2h
ff ii
?
???= +
2
2
2h
fi?=
h
fi 1+?=
2
21
2h
ff ii
?
???= ++
2
2
2
2h
fi +?=
],,,[ 321 +++ iiii xxxxf
3
1
22
23 h
ff ii
??
???= +
3
3
!3 h
fi
?
?=
ii
ii
xx
ff
?
?=
+
+
1
1
2
211 ],[],[
+
+++
?
?=
ii
iiii
xx
xxfxxf
3
32121 ],,[],,[
+
+++++
?
?=
ii
iiiiii
xx
xxxfxxxf
3
3
2
2
2
23 h
fxf ii
??
???= ++
3
3
3
!3 h
fi
?
?= +
],,,[ 1 miii xxxf ++ L
依此类推
m
i
m
hm
f
?
?=
! m
mi
m
hm
f
?
?= +
!
],,,[ 10 kxxxf L k
k
hk
f
?
?=
!
0
k
k
k
hk
f
?
?=
!
三 、 Newton基本插值公式
)())((
))(()()(
110
102010
????+
+??+?+=
nn xxxxxxa
xxxxaxxaaxP
L
L
设插值多项式
满足插值条件 nifxP ii ,,1,0,)( L==
则待定系数为 00 fa = ],[ 101 xxfa =
],,[ 2102 xxxfa =
],,,[ 10 nn xxxfa L=
)())((
))(()()(
110
102010
????+
+??+?+=
nn
n
xxxxxxa
xxxxaxxaaxN
L
L
∑ ∏
=
?
=
?+=
n
k
k
j
jk xxxxxff
1
1
0
100 )(],,,[ L
称
基本插值多项式次的关于节点为 Newtonnxxf i)(
定义 3.
)()()( xNxfxR nn ?= )()!1( )( 1
)1(
xnf n
n
+
+
+= w
x
由插值多项式的唯一性 ,Newton基本插值公式的余项为
∑
=
+=
n
k
kk xxxxff
1
100 )(],,,[ wL
∏?
=
?=
1
0
)(
k
j
jxx)(xkw
为 k次多项式
],,,,[ 10 kxxxxf L
],,,,[ 110 ?kxxxxf L
则视为一个节点若将 ,),,1,0(, nixx i L=≠
因此可得 )](,[)( 000 xxxxffxf ?+=
)))(](,,[],[( 0110100 xxxxxxxfxxff ??++=
))(](,,[)](,[ 10100100 xxxxxxxfxxxxff ??+?+=
LL
∏∑ ∏
==
?
=
?+?+=
n
j
jn
n
k
k
j
jk xxxxxxfxxxxxff
0
10
1
1
0
100 )(],,,,[)(],,,[ LL
k
kk
xx
xxxfxxxxf
?
?= ? ],,,[],,,,[ 10110 LL
)](,,,,[],,,[ 1010 kkk xxxxxxfxxxf ?+= LL
)(xRn )()!1( )( 1
)1(
xnf n
n
+
+
+= w
x )(],,,,[
110 xxxxxf nn += wL
∏
=
?+=
n
j
jnn xxxxxxfxN
0
10 )(],,,,[)( L
)()( xRxN nn +=
因此
)!1(
)()1(
+=
+
n
f n x],,,,[
10 nxxxxf L
!
)()(
k
f k x=],,,[
10 kxxxf L
)(xRk )(],,,[ 1110 xxxxf kk ++≈ wL nk <一般
Newton插值
估计误差的
重要公式
另外
四 、 Newton插值公式
即是等距节点如果节点 ,,,, 10 nxxx L
n
abhnkkhxx
k
?==+= ,,,1,0,
0 L
],,,[ 10 kxxxf L k
k
hk
f
?
?=
!
0由差商与向前差分的关系
)(xNn ∑
=
+=
n
k
kk xxxxff
1
100 )(],,,[ wL
Newton插值基本公式为
如果假设 thxx += 0
1.Newton向前 (差分 )插值公式
∏?
=
?=
1
0
)(
k
j
jxx)(xkw ∏
?
=
??+=
1
0
00 )(
k
j
jhxthx ∏
?
=
?=
1
0
)(
k
j
hjt
k
k
hk
f
?
?
![
0∑
=
+=
n
k
f
1
0 ])(
1
0
∏?
=
?
k
j
hjt
![
0
k
fk?∑
=
+=
n
k
f
1
0 ])(
1
0
∏?
=
?
k
j
jt
)(xNn ∑
=
+=
n
k
kk xxxxff
1
100 )(],,,[ wL
)( 0 thxNn +
)(xRn )()!1( )( 1
)1(
xnf n
n
+
+
+= w
x
则插值公式
化为
其余项
)( 0 thxRn + )!1( )(
)1(
+=
+
n
f n x ∏
=
+ ?
n
j
n jth
0
1 )(化为
)( 0 thxRn + )!1( )(
)1(
+=
+
n
f n x ∏
=
+ ?
n
j
n jth
0
1 )(
![
0
k
fk?∑
=
+=
n
k
f
1
0 ])(
1
0
∏?
=
?
k
j
jt)( 0 thxNn +称
为 Newton向前 插值公式
插值余项为
![ k
fnk?∑
=
+=
n
k
nf
1
])(
1
0
∏?
=
+
k
j
jt)( thxN nn +
)( thxR nn + )!1( )(
)1(
+=
+
n
f n x ∏
=
+ +
n
j
n jth
0
1 )(
插值余项为
根据向前差分和向后差分的关系
mk
m
k
m ff
+?=?
如果假设 thxx n += )0( <t
可得 Newton向后插值公式
2.Newton向后 (差分 )插值公式
五 、 Newton插值公式的使用
由于高次插值多项式的 Runge现象 ,Newton插值公式
一般也采用分段低次插值
)()(1 xN k )](,[ 1 kkkk xxxxff ?+= +
1,,1,0 ?= nk L分段线性 Newton插值
(1)
)()(2 xN k ))(](,,[)](,[ 1211 ++++ ??+?+= kkkkkkkkk xxxxxxxfxxxxff(2)
2,,1,0 ?= nk L
)()(1 xR k )(!2 )( 2 xf wx′′= )(],,[ 221 xxxxf kkk w++≈
1+≤≤ kk xxx
1+≤≤ kk xxx
Newton分段二次插值
)()(3 xN k ∑ ∏
=
?
=
?++ ?+=
3
1
1
0
1 )(],,,[
i
i
j
jkikkkk xxxxxff L(3)
Newton分段三次插值
1+≤≤ kk xxx 3,,1,0 ?= nk L
)()(3 xR k )(],,,[ 441 xxxxf kkk w++≈ L
)()(2 xR k )(],,,[ 3321 xxxxxf kkkk w+++≈)(!3 )( 3 xf wx′′′=
余项为
余项为
)(!4 )( 4
)4(
xf wx=
)(xNk ∑ ∏
=
?
=
???????? ?+=
k
i
i
j
jmnimnmnmnmn xxxxxff
1
1
0
1 )(],,,[ L
(4) mnxkNewton ?? 为阶基本后插公式 , 起点
从 (2),(3)两种情况可知 ,若 nn xxx ≤≤?1
对分段二次及分段三次插值都没有相应的插值公式
12 ?? ≤≤ nn xxx若 对分段三次插值也没有相应的插值公式
此时应改用 Newton基本后插公式 ,此处只列出公式
)(xRk )()!1( )( 1
)1(
xkf k
k
+
+
+= w
x余项为
)(],,,[ 111 xxxxf kkmnmnmn +??????≈ wL
nk ,,2,1 L=
L,2,1,0=m
(5)
)()(1 thxR kk + 2 )(xf ′′= )1(2 ?tth
tfk ??+= kf)()(1 thxN kk +
插值余项为
10 << t
2
2
kf?≈ )1( ?tt
分段线性 Newton向前 (差分 )插值
1,,1,0 ?= nk L
)( 0)(2 thxR k + !3 )(
)3( xf
= )2)(1(3 ?? ttth
)()(2 thxN kk +(6) tfk ??+= kf )1(2
2
???+ ttfk
10 << t 2,,1,0 ?= nk L
!3
3
kf?≈ )2)(1( ?? ttt
分段二次 Newton
向前 (差分 )插值
次插值多项式则使用在误差范围内很接近差分商
阶差如果
m
m
),()(
1+
)( 0)(2 thxR k + !3 )(
)3( xf
= )2)(1(3 ++ ttth
)()(2 thxN kk + tfk ??+= kf )1(2
2
+??+ ttfk
!3
3
kf?≈ )2)(1( ++ ttt
(7)
01 <<? t 1, ?= nnk
分段二次 Newton
向后 (差分 )插值
依此类推 ,请同学们写出分段三次
向前和向后 Newton公式 及余项
在实际应用中 ,究竟使用几次插值多项式呢 ?
五 、 Newton基本插值公式的算法设计
Newton插值法的优点是计算较简单 ,尤其是增加节点时 ,
计算只要增加一项 ,这是 Lagrange插值无法比的 .
但是 Newton插值仍然没有改变 Lagrange插值的插值曲线
在节点处有尖点 , 不光滑 , 插值多项式在节点处不可导
等缺点