当前位置:
文档之家› 计算方法中的Lagrange插值
计算方法中的Lagrange插值
(
x1
)
M M M
ln
(
xn
)
cn
f
(xn
)
由Lagrange插值基函数满足(2)式可知,方程组变成
1 0 L
0
1
L
M M L
0
0
L
0 c0 f (x0 )
0
c1
f
(
x1
)
M M M
1
cn
f (xn )
因此得到插值多项式 pn(x)= f(x0)l0(x)+f(x1) l1(x)+…+ f(xn) ln(x)
Pn (xi ) yi , i 0,1,L , n
n = 1 已知 x0 , x1 ; y0 , y1 ,求
使得
P1(x) a0 + a1x 使得P1(x0 ) y0 , P1(x1) y1
可见 P1(x) 是过 ( x0 , y0 ) 和 ( x1, y1 ) 两点的直线。
y y
P (x) y + 1 0 (x x )
0.00660
sin 50 = 0.7660444…
利用x0, x1 作为插值节点的实际误差 0.01001
利用x1, x2作为插值节点的实际误差 0.00596
n
=
2
L2 (x)
(x
(
6
4
4
)( x
)(
6
3
)
3
)
1 2
+
(x
(
4
6
6
)( x
)(
4
3
)
3
)
1 2
由于xi互异,所以(4)右端不为零,从而方程组 (3)的解 a0 ,a1 ,…an 存在且唯一。
通过解上述方程组(3)求得插值多项式pn(x)的方法并 不可取.这是因为当n较大时解方程组的计算量较大, 而且方程组系数矩阵的条件数一般较大(可能是病 态方程组),当阶数n越高时,病态越重。
为此我们必须从其它途 径来求Pn(x):
这就是本章要讨论的“插值问题”
插值问题的定义
当精确函数 y = f(x) 非常复杂或未知时,在区
间[a,b]上一系列节点 x0 … xm 处测得函数值 y0 = f(x0), …, ym = f(xm),由此构造一个简单易算的 近似函数 g(x) f(x),满足条件
g(xj) = f(xj) (j = 0, … m)
不通过求解方程组而获 得插值多项式
基本思想:在n次多项式空间Pn中找一组合适的基函数 0(x),1(x),…, n(x),使
pn(x)=a0 0(x) +a1 1(x) +…+an n(x) 不同的基函数的选取导致不同的插值方法
Lagrange插值
Newton插值
3.3 Lagrange插值
求 n 次多项式 Pn ( x) a0 + a1 x + + an xn 使得
pn(xj)=f(xj),j=0,1,…,n. …... (1)
令 pn(x)=a0+a1x+…+anxn,
…... (2)
只要证明Pn(x)的系数a0 ,a1,…, an存在唯一即可
为此由插值条件(1)知Pn(x)的系数满足下列n+1 个代数方程构成的线性方程组
a0+a1x0+…+anx0n=f(x0) a0+a1x1+…+anx1n= f(x1) ……………………. a0+a1xn+…+anxnn= f(xn)
……(3)
而ai(i=0,1,2,…,n)的系数行列式是Vandermonde行列式
x x x 1
2 ... n
0
0
0
1
2 ... n
x x x V( , ,..., )
1
1
1
x x x 0 1 n ... ... ... ... ...
x x x 1
2 ... i1
(
xi
x
)
j
i1 j0
Rn (x)
f (x) Ln (x)
f (n+1) ( )
(n +1) !
n
(x xi )
i0
Rolle’s Theorem的推论: 若 ( x)充分光滑,且 ( x0 ) ( xn ) 0 存在 (a, b) 使得 (n)( ) 0
证明:由于Rn(xi) =0 ,i=0,1,…,n
称Ln(x)为n次Lagrange插值多项 式
记为Ln(x)= f(xj)lj(x)
➢ 插值余项 /* Remainder */
定理4.3.1 若 f (n+1) (x) 在[a , b]内存在, 则在[a , b]上
的n+1个互异的点,对 f(x)所作的n次Lagrange插
值多项式Ln (x) 有误差估计
+
(x
6
)( x
4
)
3
(
3
6
)(
3
4
)
2
sin 500
5
L2 ( 18
)
0.76543
R2 ( x)
cos x
3!
(x
6
)(
x
4
)(
x
3
)
;
1 2
cos x
3 2
0.00044
R2
5
18
0.00077
sin 50 = 0.7660444…
2次插值的实际误差 0.00061
/ 6
4 /4
1 2
+
x /
/ 4
6 /6
1 2
sin 500
5
L1( 18
)
0.77614
R1(x)
f
(2) (x )
2!
(x
6
)( x
4
),
1 2
sin x
3 2
0.01319
R1
(
5
18
)
0.00762
利用
x1
4
,
x2
3
计算得:sin 50 0.76008,
0.00538
R%1
5
18
n
Rn (x)
u(x) i
(x 0
xi
)
任意固定 x xi (i = 0, …, n), 考察
n
n
(t) Rn (t) u(x) (t xi ) f (t) Ln(t) u(x) (t xi )
i0
i0
(t)有 n+2 个不同的根 x0 … xn x
(n+1) (x ) 0, x (a, b)
1
0 x x
0
1
0
=
x x1 x0 x1
y0 +
x x0 x1 x0
1
y1 l ( x ) y
i
i
i 0
l0(x)
l1(x)
与 节点有关,而与f 无关
• 构造基函数
lj (x)
(x x0 )(x x1)L (x j x0 )(x j x1)L
(x x j1)(x x j+1)L (x xn ) (x j x j1)(x j x j+1)L (x j xn )
u(x) f (n+1) ( )
(n +1) !
例:已知
sin
6
1 2
,
sin
4
1, 2
sin3
3 2
分别利用 sin x 的1次、2次 Lagrange 插值计算
sin 50, 并估计误差。
解: n = 1 分别利用x0, x1 以及 x1, x2 计算
利用
x0
6
,
x1
4
L1
(
x
)
x /
n x
x
i
x x i0 j
i
i j
j=0,1,…,n (1)
这里每个lj(x)都是n次多项式,且由(1)式容易验证
lj(x)满足
0, i j
l j (xi) 1, i j
(2)
可以证明函数组l0(x),l1(x),…, ln(x) 在插值区 间[a,b]上线性无关,所以这n+1个函数可作 为Pn的一组基函数,称为Lagrange插值基函数
(*)
这个问题称为“插值问题”
这里的 g(x) 称为f(x) 的插值函数。 节点 x0 … xm称为插值节点, 条件(*)称为插值条件,区间[a,b]称为插值区间
g(x) f(x)
x0
x1
x2
x
x3
x4
插值函数的类型有很多种
最常用的插值函数是代…数? 多项式 用代数多项式作插值函数的插值称为代数插值
第三章 插值法(Interpolation Method)
举例
已经测得在某处海洋不同深度处的水温如下:
深度(M) 466 741 950 1422 1634 水温(oC)7.04 4.28 3.40 2.54 2.13
根据这些数据,希望合理地估计出其它深度(如 500米,600米,1000米…)处的水温
插值问题
插值法
本章主要讨论的内 容
插值函数
代 数
• 一、插值问题解的存在唯一性? • 二、插值多项式的常用构造方法?
插 值
• 三、插值函数的误差如何估计?
3.2 代数插值问题解的存在惟一性
给定区间[a,b]上互异的n+1个点{xj}nj=0的一