2.3 次拉格朗日插值多项式
n
对于
1n =
及
n =
2
,前面已经得到一次与二次插值多项式
1( )P x
及
2( )P x
。下面将这种用插值基函
数表示的方法推广到更一般的情形。
1n +
x<
设有
1
定义 2:若 次多项式
个节点
x
0
n
n
(
2.4 拉格朗日插值余项
nP x
和( )
要讨论
罗尔(Rolle)定理:若 ( )
f x 的误差,先叙述一个定理。
( )
f x 在闭区间 [ , 连续,在开区间 ( , 可导,且
)a b
]a b
f a
( )
=
f b
( )
,则在
( , )a b
中必存在
f ξ′
ξ,使得 ( )
]a b
nP x
( )
若在 [ , 上用
= 。
0
近似
f x ,则其截断误差 ( )
nR x
( )
=
f x
( )
−
P xn
( )
称为插值多项式
nP x
( )
的余项。关
于插值余项有下面定理:
定理 2:设 ( ) ( )
nf
(
)iP x
(
i = L
0,1,
件
x
a b∈
对任意给定的 [ , ]
y=
i
,
,插值余项:
x 在 [ , 上连续,
]a b
nP x
( )
)和条件(1 )的插值多项式,其中 [ , 是包含
内有定义。设
x
1)( )
+ 在
( , )a b
]a b
nf
(
n
1,
是过点
的满足条
x x L x 的任意区间,则
x x L x
,
,
1,
,
,
n
n
0
0
R x
( )
n
=
f x
( )
−
P x
( )
n
1) ( )
+
ξ
1)!
+
ω
n
x
( )
(12)
=
f
n
(
n
(
。
(依赖于 x ),
其中 ( , )a b
ξ∈
证明:
由给定条件知插值余项
ω =
x
( )
n
(
x
−
x
0
)(
x
−
x
1
)
x
−L
(
x
n
)
iR x =
n
(
)
0
(
i
= L ),故
K x x
( )(
,
0,1,
R x
( )
n
n
=
x
nR x
x
( )
(
−
有因子:
0
x
x
x
x
)
(
)(
−
−L
n
0
x
1
−
)
)(
(
)
x
1
x
−L
,设余项:
x
−
(13)
x
n )
其中 ( )K x 为与 x 有关的待定函数。
a b∈
x
固定 [ , ]
t
x
f
t
(
( )
−L
ϕ =
−
n
x x
1,
,
由插值多项式及余项的定义知,点 0
,作函数:
P t K x t
( )(
( )
−
n
t
( )
t
)(
x
0
x
1
−
−
)
)
xL 及 x 均为 ( )tϕ 的零点,则 ( )tϕ 在
,
n
由罗尔定理,
( )tϕ′ 在 ( )tϕ 的任意两个零点之间至少有一个零点,故 ( )tϕ′ 在
( )tϕ′ 用罗尔定理,可得 ( )tϕ′′ 在
[ , ]a b
上至少有 个零点。如此类推,就知
n
[ , ]a b
有
[ , ]a b
上至少有
n
(
tϕ +
1) ( )
2n +
1n +
( , )a b
在
个零点。
个零点。
内至少有
R x
( )
n
≤
M
n
n
+
(
1
ω+
n
1)!
x
( )
(14)
令
1n =
R x
( )
1
=
令
n =
2
R x
( )
2
=
f
f
=
1
2
x
( )
( )(
′′
ξ
( )
′′
ξω
1
,得线性插值余项为:
1
x
0
2
,得抛物线插值余项为:
1
x
)(
0
6
( )
′′′
ξω
2
( )(
′′
ξ
x
( )
1
2
)(
=
−
−
x
x
f
f
x
x
1−
)
,
ξ∈
(
x x
,
0
1
)
x
−
x
1
)(
x
x
2−
)
,
ξ∈
(
x x
,
0
2
)
【例 4】给定被插函数 2x
(1)估计例 1 中的
在点
(2)给定三点坐标(-1,0.5 ),(0,1),(1,2),构造线性插值函数
y = 。
x =
处的截断误差。
1( )P x
0.3
2( )P x
,并求 的近似值和截
0.32
断误差。
解:
(1)由例 1 求得:
P x
1( )
f x =
( )
x= +
1
2x
※ 6 ※
再对
一个零点,记为
nf
(
( )
ϕ ξ
=
1)
+
n
(
ξ,故有:
1)!
1)
+
n
+
K x
( )
=
0
求得
K x
( )
=
nf
(
n
(
( )
(
−
ξ
1)( )
ξ+
1)!
+
,其中 ( , )a b
ξ∈
,且依赖于 x 。
将 ( )K x 代回式(13),就得到式(12)。
定理得证。
值得注意的是,ξ在
M
1 max
=
a x b
< <
则有:
( , )a b
x
( )
1)
+
f
+
n
n
(
内的具体位置一般不知道,不过若可以求出:
R
1
(0.3)
=
0.3
2
−
P
1
(0.3)
≤
0.3(0.3 1)
−
=
0.09522
作为 的近似值,只能保证有一位有效数字。
1
⋅ +
1)(
x
(
0)
(1 1)(1 0)
x
−
−
+
+
2
⋅ =
0.25
x
2
+
0.75
x
+
1
2
f x′
2 ln 2
( )
x
=
x′′
f
2 (ln 2)
( )
x
=
f
x
( )
2(ln 2)
max
′′
x
0
1
≤ ≤
由式(14)得:
=
2
=
0.9609
0.9609
2!
0.32
=
P
1(0.3) 1.3
可见用
(2)将各点坐标代入式(7)得:
x
(
1)
(0 1)(0 1)
0.5
−
−
+
+
1)(
=
+
x
⋅
0.3
0)(
P x
( )
2
x
x
(
1)
−
−
( 1 0)( 1 1)
− −
− −
P≈
(0.3) 1.248
2
=
2
f
x′′′
2 (ln 2)
( )
x
=
x
f
2(ln 2)
( )
max
′′′
x
1
1
− ≤ ≤
由式(14)得:
=
3
3
=
0.6660
0.6660
3!
0.32
R
2
(0.3)
=
0.3
2
−
P
2
(0.3)
≤
(0.3 1)(0.3 0)(0.3 1)
+
−
−
=
0.03030
可见用
P
2(0.3) 1.248
=
作为 的近似值,可以保证有两位有效数字。
= ∑ k
y l x
( )
k
。
n
k
=
0
2.5 拉格朗日插值的 MATLAB 实现
程序 1
给定
1n +
个不同节点,构造
f x x
[
,
1
0
,
xL 的 n 次拉格朗日插值多项式
]k
,
P x
( )
n
function[c,l]=lagran(x,y)
%这里 x 为 n 个节点的横坐标所组成的向量,y 为纵坐标所组成的向量
%c 为所得插值函数的系数组成的向量
w=length(x);
n=w-1;
l=zeros(w,w);
for k=1:n+1
v=1;
for j=1:n+1
if k~=j
v=conv(v,poly(x(j)))/(x(k)-x(j));
end
end
l(k,:)=v;
end
c=y*l;
利用上面程序来计算例 1。
输入:
>>lagran([0,1],[1,2])
得到:
ans =
1 1
这就表明所求拉格朗日插值多项式为 1x + 。
3 均差与牛顿插值多项式
3.1 均差及其性质
拉格朗日插值多项式在理论分析中非常方便,因为它的结构紧凑,利用基函数就很容易得到插
※ 7 ※
值函数。但是拉格朗日插值多项式也有一些缺点,当插值节点增加、减少或其位置变化时,整个插
值多项式的结构都会改变,这就不利于实际计算,增加了算法复杂度。
1n +
假设有
个不同的节点及函数在节点上的值
x y
,
0
点的有效方法之一是把插值多项式构造成如下形式:
x
)(
0
a x
(
1
x
0
+
+
(
)
x
−
−
=
a
0
a x
(
2
P x
x
( )
n
1
n
,
)为待定系数,可由插值条件
y
= 0
a x
(
+
1
1
,故:
。
−
y
= 1
x
0
−
)
i = L
0,1,
a
nP x
(
)
=
0
0
nP x
a
(
)
=
1
0
),
0
L
,(
x y
,
n
n
)
,克服拉格朗日插值多项式的缺
−
x
a x
)
(
+
−
+
L
n
y= ( 0,1,
P x
)
(
n
i
x
)(
0
= L )确定。
i
x
)
L
1
n
,
x
n
−
x
(
)
i
(15)
0
x
x
ia
其中系数 (
x= 时,
当
x= 时,
当
y
1
x
1
x= 时,
y
2
x
2
y
0
x
0
2
−
−
1
−
−
当
a
1
=
−
x
a
2
=
y
0
x
0
x
2
−
)
nP x
(
2
y
y
−
1
0
x
x
−
0
1
x
1
=
a
0
+
a x
(
1
2
−
x
0
)
+
a x
(
2
2
−
x
0
)(
x
2
−
x
1
)
y
= 2
,故:
依此方法递推可以得到系数 (
明确的算法,下面引入均差的概念。
−
−
定 义 3 : 称
f x x
[
,
1
f x
(
)
1
x
1
=
]
0
f x
(
0
x
0
ia
i = L n
,
0,1,
)的一般表达式,为使 的算法更简明,并给出一个
ia
)
为 函 数 ( )
f x 关 于 点 0x , 1x 的 一 阶 均 差 。 令
f x x x
[
,
2
,
0
1
]
=
]
0
f x x
[
,
2
x
2
]
−
−
0
f x x
[
,
1
x
1
,这是一阶均差的均差,称为 ( )
f x 的二阶均差。一般地,称:
f x x
[
,
1
0
,
,
x
k
]
=
L
f x
[
0
,
L
,
x
k
−
2
,
x
k
x
k
]
−
x
−
k
1
−
f x x
[
,
1
0
,
,
x
k
1−L
]
(16)
k
f x 的 阶均差(有时也称为差商)。
为 ( )
均差是数值分析中的重要概念,它有如下性质:
(1) 阶均差
f x
(
1
f x x
[
,
1
),
k
,
0
,
]k
xL 可表为函数值 0
f x
(
k
∑
f x x
[
,
1
x
k
L
=
]
,
,
0
),
f xL
(
)k
,
的线性组合,即:
f x
)
(
i
x
)(
i
x
)k
x
i
x
i
−
−
1
+
)
(
L
1
−
(
x
i
−
x
0
)
L
(
x
i
−
x
i
i
=
0
(17)
这个性质可以用归纳法证明。这个性质也表明均差与节点的排列次序无关,称为均差的对称性,
即:
]
=
(2)由均差性质(1)及式(16)可得:
f x x
[
,
1
x
k
L
,
,
0
f x x x
[
,
2
,
1
0
,
L
,
x
k
]
=
L
=
f x
[
1
,
L
,
x x
,
k
0
]
(18)
(3)若 ( )
f x 在
[ , ]a b
上存在 阶微商,且节点
n
x x
1,
0
计算均差时通常要构造形如表 4 所示的均差表。
f x x
[
,
1
0
,
,
x
k
]
=
L
f x
[
1
,
,
,
,
,
]
L
L
x
1k
−
(19)
f x
x
[
]
−
k
0
x
x
−
k
0
,则 阶均差与微商关系如下:
a b∈L
[ , ]
( )
ξ
]
!
(20)
, [ , ]a b
x
n
f
n
( )
n
ξ∈
n
,
f x x
[
,
1
0
,
=L
x
n
,
表 4 均差表
)k
一阶均差
kx
0x
1x
2x
3x
M
3.2 牛顿插值多项式
f
f x
零阶均差 (
x
0(
)
)x
f
1(
f x
2(
)
f x
3(
)
M
2
1
1
0
,
f x x
[
]
f x x
[
]
f x x
[
]
M
,
,
2
3
二阶均差
三阶均差
1
0
,
f x x x
,
[
2
f x x x
,
[
3
M
,
1
2
]
]
2
1
0
,
,
,
f x x x x
[
]
M
3
根据均差定义,把 x 看成
[ , ]a b
上的一点,可得:
※ 8 ※