数值分析-6-1
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第六章 插值法与数值微分
我们仅介绍多项式插值,即如果已知函数 我们仅介绍多项式插值 即如果已知函数f (x)在n+1个互异 即如果已知函数 在 个互异 点的值y 求一个次数不高于n的 点的值 i=f (xi) (i=0,1,2,L,n),求一个次数不高于 的多项式 L 求一个次数不高于 Pn(x)=a0+a1x+a2x2+L+anxn ,使 L 使 Pn(xi)=yi (i=0,1,2,L,n) L 为了确定P 个系数,由上述条件得线性方程组 为了确定 n(x)的n+1个系数 由上述条件得线性方程组 的 个系数
o
∴
sin 40
2π ≈ P2 ( 40 ) = P2 = P2 ( 0 . 6981 ) 9
o
(0.6981 − 0.7854 ) × (0.6981 − 1.0472 ) = × 0 .5 (0.5236 − 0.7854 ) × (0.5236 − 1.0472 ) (0.6981 − 0.5236 ) × (0.6981 − 1.0472 ) + × 0.7071 (0.7854 − 0.5236 ) × (0.7854 − 1.0472 ) (0.6981 − 0.5236 ) × (0.6981 − 0.7854 ) + × 0.8660 (1.0472 − 0.5236 ) × (1.0472 − .7854 ) 8 结束
0
x 1 = 45 =
o来自百度文库
π
6
0
x 2 = 60 o =
π
4
3
= 0 . 7854 (弧度 ), y1 = 0 . 7071
= 1 . 0472 ( 弧度 ), y 2 = 0 . 8660
7
结束
∴
P2 ( x ) =
( x − 0 . 7854 )( x − 1 . 0472 ) × 0 .5 ( 0 . 5236 − 0 . 7854 )( 0 . 5236 − 1 . 0472 ) ( x − 0 . 5236 )( x − 1 . 0472 ) + × 0 . 7071 ( 0 . 7854 − 0 . 5236 )( 0 . 7854 − 1 . 0472 ) ( x − 0 . 5236 )( x − 0 . 7854 ) + × 0 . 8660 (1 . 0472 − 0 . 5236 )(1 . 0472 − 0 . 7854 )
∏
j =1
2
2
x − xj x0 − x j
x − xj x1 − x j x − xj x2 − x j
∏
j=0 j ≠1
( x − x 0 )( x − x 1 ) l2 ( x ) = = ( x 2 − x 0 )( x 2 − x 1 )
∏
j =0
1
6
结束
li ( x )
( i = 0 ,1, 2 ) 仍叫拉格朗日二次插值基函数, 仍叫拉格朗日二次插值基函数 拉格朗日二次插值基函数,
拉格朗日插值法。 第一节 拉格朗日插值法。
一 线性插值 已知两点(x 求一次多项式P 已知两点 0,y0) ,(x1,y1),求一次多项式 1(x),使 P1(x0)=y0 求一次多项式 使 ,P1(x1)=y1 ,即求一条过 0,y0)和(x1,y1)的直线 y=P1(x) . 即求一条过(x 即求一条过 和 = ) 2 结束
于是拉格朗日二次插值多项式 于是拉格朗日二次插值多项式
2 x − xj P2 ( x ) = ∑ l i ( x ) y i = ∑ ∏ i=0 i = 0 j = 0 xi − x j j≠i
2 2
yi
这相当于用抛物线逼近曲线。 这相当于用抛物线逼近曲线。 例2 已知 sin 30 o = 0 . 5 , sin 45 o = 0 . 7071 , sin 60 o = 0 . 8660 , o 求 sin 40 解 ∵ x = 30 o = π = 0 . 5236 (弧度 ), y = 0 . 5
2 n a 0 + a1 x 0 + a 2 x 0 + L + a n x 0 = y 0 a 0 + a1 x1 + a 2 x12 + L + a n x1n = y1 LLLLLLLLLLLLL 2 n a 0 + a1 x n + a 2 x n + L + a n x n = y n
( i = 0 ,1, 2 ) 。
例如为确定二次多项式 例如为确定二次多项式 l 0 ( x ) ,∵ l 0 ( x 1 ) = l 0 ( x 2 ) = 0 二次 l 0 ( x ) = λ ( x − x 1 )( x − x 2 ) ∴ 可令 l0 ( x 0 ) = 1 又∵ ∴ 则 类似地有
l0 ( x0 ) = 1 l1 ( x0 ) = 0
, l0 ( x1 ) = 0 , l1 ( x1 ) = 1
可写成
0 li ( x j ) = δij = 1
j ≠i j =i
(i, j = 0,1)
均为x的一 拉格朗日线性插值基函数 li ( x) (i = 0,1) 均为 的一 次多项式,而拉格朗日线性插值多项式P ) 次多项式,而拉格朗日线性插值多项式 1(x)插值基函数的 线性组合,相当于用直线逼近曲线。 线性组合,相当于用直线逼近曲线。 o o o 例1 已知 sin 30 = 0.5, sin 45 = 0.7071 ,求 sin 40 解 ∵ x0 = 30o = π = 0.5236(弧度), y0 = 0.5
P2 ( x) = l0 ( x) y0 + l1 ( x) y1 + l2 ( x) y2
其中 li ( x)
(i = 0,1,2) 0 li ( x j ) = δ ij = 1
均为二次多项式 且满足 均为二次多项式,且满足 多项式
j≠i j=i (i , j = 0,1,2)
5
结束
用待定系数法可确定 l i ( x )
n x − xj Pn ( x) = ∑ li ( x) yi = ∑ ∏ i =0 i = 0 j = 0 xi − x j j ≠i
n n
yi
第二节 插值多项式的唯一性及误差估计
插值多项式的唯一性 一 插值多项式的唯一性 对于已知数据(x 对于已知数据 i,yi)(i=0,1,2,L,n),设Pn(x)是拉格朗日 次插值 L 设 是拉格朗日n次插值 多项式,则有 则有P 多项式 则有 n(xi)=yi (i=0,1,2,L,n)。假如还有另一个次数不 L 。 超过n的 超过 的多项式ϕn(x),也使 也使 10 结束
(sin 40o 的准确值是 的准确值是0.6428) 精确。 图6-2 显然比线性插值 P1(40O)=0.6380 精确。
= 0.6434
三 n次插值 次插值 已知n+1点(xi,yi) (i=0,1,2,L,n) ,求一个 次多项式 n(x),使 求一个n次多项式 已知 点 L 求一个 次多项式P 使 Pn(xi)=yi (i=0,1,2,L,n) L 由二次插值的启示和拉格朗日线性插值公式的特点,可令 由二次插值的启示和拉格朗日线性插值公式的特点 可令
9 结束
与二次插值类似可得 li ( x) = ∏
j =0 j ≠i
n
x − xj xi − x j
(i = 0,1,2,L , n)
均为拉格朗日n次插值基函数 次插值基函数, 其中 li ( x) (i = 0,1,2,L, n) 均为拉格朗日 次插值基函数 于是拉格朗日n次插值 次插值多项式 于是拉格朗日 次插值多项式
4 x − 0.7854 x − 0.5236 P1 ( x) = × 0.5 + × 0.7071 0.5236 − 0.7854 0.7854 − 0.5236 x1 = 45 =
o
π
6
= 0.7854(弧度), y1 = 0.7071
∴
4
结束
∴
2π sin 40o ≈ P1 (40o ) = P1 = P1 (0.6981) 9 0.6981− 0.7854 0.6981− 0.5236 = × 0.5 + × 0.7071 0.5236− 0.7854 0.7854− 0.5236
由直线的两点式方程
y − y0 x − x0 = y1 − y 0 x1 − x 0 ( 6 . 1)
得
y=
x − x0 x − x1 y0 + y1 x 0 − x1 x1 − x 0
(6.1)称为拉格朗日线性插值公式。 (6.1)称为拉格朗日线性插值公式。 称为拉格朗日线性插值公式 x − x1 x − x0 记 l0 ( x ) = l1 ( x ) = x 0 − x1 x1 − x 0 P1 ( x ) = l 0 ( x ) y 0 + l1 ( x ) y1 ( 6 .2 ) 则(6.1)可写成 (6.1)可写成 ( i = 0,1) 称为拉格朗日线性插值基函数,其性 其中 l i ( x ) 称为拉格朗日线性插值基函数, 拉格朗日线性插值基函数 质如下: 质如下: 3 结束
其系数矩阵是n+1阶范德蒙 阶范德蒙(Vandermonde)行列式 其系数矩阵是 阶范德蒙 行列式 1 结束
1 1 V ( x 0 , x1 , L , x n ) = 1 M 1
x0 x1 x2 M xn
2 x0
L L L M L
n x0
x 12 2 x2 M
2 xn
x 1n n x2 M
n xn
Pn ( x ) =
∑
n
其中
(i = 0,1,2,L, n) 均为 次多项式 且满足 均为n次多项式,且满足 j ≠i 0 li (xj ) = δij = (i, j = 0,1,2,L, n) j =i 1 li ( x)
i=0
li ( x ) y i
用待定系数法可确定 li (x)
(i = 0,1,2,L, n) 。
ϕ n(xi)=yi (i =0,1,2,L,n)。令 Fn(x)=Pn(x)-ϕn(x),则Fn(x)仍为一 L 。 则 仍为一
次数不超过n的多项式。假设 不恒等于零,则方程 次数不超过 的多项式。假设Fn(x)不恒等于零 则方程 不恒等于零 Fn(x)=0最多有 个根。但是 最多有n个根 最多有 个根。 ∵ Fn ( xi ) = P ( xi ) − φn ( xi ) = yi − yi ≡ 0 (i = 0,1,2,L, n) n 即次数不超过n的方程 个根,出现矛盾 即次数不超过 的方程 Fn(x)=0 有n+1个根 出现矛盾。 个根 出现矛盾。 唯一。 ∴必有 Fn(x)≡0,即 Pn(x) ≡ ϕn(x)。于是 n(x)唯一。 ≡ 即 。于是P 唯一 这说明,过 个点 个点(x 次数不超过n的 这说明 过n个点 i,yi)(i=0,1,2,L,n),次数不超过 的多项 L 次数不超过 (x)是唯一的 是唯一的。 式Pn(x)是唯一的。 二 插值公式的余项 误差) 插值公式的余项(误差 式的余项 误差 设已知函数y=f(x)在n+1个点的值 设已知函数 在 个点的值 yi=f(xi) (i=0,1,2,L,n) L Pn(x)是满足 n(xi)=f(xi)的n次插值多项式 则称 是满足P 次插值多项式 是满足 的 次插值多项式,则称 Rn(x)= f (x)-Pn(x) 插值多项式在点 处的截断误差 多项式在点x处的截断误差。 为插值多项式在点 处的截断误差。 11
= 0.6380
(sin 40o 的准确值是 的准确值是0.6428)
图6-1 二 二次插值 已知三点(x 求一个二次多项式P 已知三点 i,yi)(i=0,1,2),求一个二次多项式 2(x),使 求一个二次多项式 使 P2(xi)=yi (i=0,1,2) 由线性插值的启示和拉格朗日线性插值公式的特点,可令 由线性插值的启示和拉格朗日线性插值公式的特点 可令
∵ xi≠xj ,(i≠j),∴此范德蒙行列式的值不为零 方程组有唯一 ∴ 范德蒙行列式的值不为零,方程组有唯一 解a0,a1,a2,L,an. L 虽然此法可以求出唯一的插值多项式,但是计算量太大 但是计算量太大,并 虽然此法可以求出唯一的插值多项式 但是计算量太大 并 不实用。下面介绍拉格朗日和牛顿两种插值法。 不实用。下面介绍拉格朗日和牛顿两种插值法。
λ ( x 0 − x 1 )( x 0 − x 2 ) = 1
1 λ= ( x 0 − x 1 )( x 0 − x 2 )
( x − x 1 )( x − x 2 ) l0 ( x ) = = ( x 0 − x 1 )( x 0 − x 2 )
( x − x 0 )( x − x 2 ) l1 ( x ) = = ( x 1 − x 0 )( x 1 − x 2 )
我们仅介绍多项式插值,即如果已知函数 我们仅介绍多项式插值 即如果已知函数f (x)在n+1个互异 即如果已知函数 在 个互异 点的值y 求一个次数不高于n的 点的值 i=f (xi) (i=0,1,2,L,n),求一个次数不高于 的多项式 L 求一个次数不高于 Pn(x)=a0+a1x+a2x2+L+anxn ,使 L 使 Pn(xi)=yi (i=0,1,2,L,n) L 为了确定P 个系数,由上述条件得线性方程组 为了确定 n(x)的n+1个系数 由上述条件得线性方程组 的 个系数
o
∴
sin 40
2π ≈ P2 ( 40 ) = P2 = P2 ( 0 . 6981 ) 9
o
(0.6981 − 0.7854 ) × (0.6981 − 1.0472 ) = × 0 .5 (0.5236 − 0.7854 ) × (0.5236 − 1.0472 ) (0.6981 − 0.5236 ) × (0.6981 − 1.0472 ) + × 0.7071 (0.7854 − 0.5236 ) × (0.7854 − 1.0472 ) (0.6981 − 0.5236 ) × (0.6981 − 0.7854 ) + × 0.8660 (1.0472 − 0.5236 ) × (1.0472 − .7854 ) 8 结束
0
x 1 = 45 =
o来自百度文库
π
6
0
x 2 = 60 o =
π
4
3
= 0 . 7854 (弧度 ), y1 = 0 . 7071
= 1 . 0472 ( 弧度 ), y 2 = 0 . 8660
7
结束
∴
P2 ( x ) =
( x − 0 . 7854 )( x − 1 . 0472 ) × 0 .5 ( 0 . 5236 − 0 . 7854 )( 0 . 5236 − 1 . 0472 ) ( x − 0 . 5236 )( x − 1 . 0472 ) + × 0 . 7071 ( 0 . 7854 − 0 . 5236 )( 0 . 7854 − 1 . 0472 ) ( x − 0 . 5236 )( x − 0 . 7854 ) + × 0 . 8660 (1 . 0472 − 0 . 5236 )(1 . 0472 − 0 . 7854 )
∏
j =1
2
2
x − xj x0 − x j
x − xj x1 − x j x − xj x2 − x j
∏
j=0 j ≠1
( x − x 0 )( x − x 1 ) l2 ( x ) = = ( x 2 − x 0 )( x 2 − x 1 )
∏
j =0
1
6
结束
li ( x )
( i = 0 ,1, 2 ) 仍叫拉格朗日二次插值基函数, 仍叫拉格朗日二次插值基函数 拉格朗日二次插值基函数,
拉格朗日插值法。 第一节 拉格朗日插值法。
一 线性插值 已知两点(x 求一次多项式P 已知两点 0,y0) ,(x1,y1),求一次多项式 1(x),使 P1(x0)=y0 求一次多项式 使 ,P1(x1)=y1 ,即求一条过 0,y0)和(x1,y1)的直线 y=P1(x) . 即求一条过(x 即求一条过 和 = ) 2 结束
于是拉格朗日二次插值多项式 于是拉格朗日二次插值多项式
2 x − xj P2 ( x ) = ∑ l i ( x ) y i = ∑ ∏ i=0 i = 0 j = 0 xi − x j j≠i
2 2
yi
这相当于用抛物线逼近曲线。 这相当于用抛物线逼近曲线。 例2 已知 sin 30 o = 0 . 5 , sin 45 o = 0 . 7071 , sin 60 o = 0 . 8660 , o 求 sin 40 解 ∵ x = 30 o = π = 0 . 5236 (弧度 ), y = 0 . 5
2 n a 0 + a1 x 0 + a 2 x 0 + L + a n x 0 = y 0 a 0 + a1 x1 + a 2 x12 + L + a n x1n = y1 LLLLLLLLLLLLL 2 n a 0 + a1 x n + a 2 x n + L + a n x n = y n
( i = 0 ,1, 2 ) 。
例如为确定二次多项式 例如为确定二次多项式 l 0 ( x ) ,∵ l 0 ( x 1 ) = l 0 ( x 2 ) = 0 二次 l 0 ( x ) = λ ( x − x 1 )( x − x 2 ) ∴ 可令 l0 ( x 0 ) = 1 又∵ ∴ 则 类似地有
l0 ( x0 ) = 1 l1 ( x0 ) = 0
, l0 ( x1 ) = 0 , l1 ( x1 ) = 1
可写成
0 li ( x j ) = δij = 1
j ≠i j =i
(i, j = 0,1)
均为x的一 拉格朗日线性插值基函数 li ( x) (i = 0,1) 均为 的一 次多项式,而拉格朗日线性插值多项式P ) 次多项式,而拉格朗日线性插值多项式 1(x)插值基函数的 线性组合,相当于用直线逼近曲线。 线性组合,相当于用直线逼近曲线。 o o o 例1 已知 sin 30 = 0.5, sin 45 = 0.7071 ,求 sin 40 解 ∵ x0 = 30o = π = 0.5236(弧度), y0 = 0.5
P2 ( x) = l0 ( x) y0 + l1 ( x) y1 + l2 ( x) y2
其中 li ( x)
(i = 0,1,2) 0 li ( x j ) = δ ij = 1
均为二次多项式 且满足 均为二次多项式,且满足 多项式
j≠i j=i (i , j = 0,1,2)
5
结束
用待定系数法可确定 l i ( x )
n x − xj Pn ( x) = ∑ li ( x) yi = ∑ ∏ i =0 i = 0 j = 0 xi − x j j ≠i
n n
yi
第二节 插值多项式的唯一性及误差估计
插值多项式的唯一性 一 插值多项式的唯一性 对于已知数据(x 对于已知数据 i,yi)(i=0,1,2,L,n),设Pn(x)是拉格朗日 次插值 L 设 是拉格朗日n次插值 多项式,则有 则有P 多项式 则有 n(xi)=yi (i=0,1,2,L,n)。假如还有另一个次数不 L 。 超过n的 超过 的多项式ϕn(x),也使 也使 10 结束
(sin 40o 的准确值是 的准确值是0.6428) 精确。 图6-2 显然比线性插值 P1(40O)=0.6380 精确。
= 0.6434
三 n次插值 次插值 已知n+1点(xi,yi) (i=0,1,2,L,n) ,求一个 次多项式 n(x),使 求一个n次多项式 已知 点 L 求一个 次多项式P 使 Pn(xi)=yi (i=0,1,2,L,n) L 由二次插值的启示和拉格朗日线性插值公式的特点,可令 由二次插值的启示和拉格朗日线性插值公式的特点 可令
9 结束
与二次插值类似可得 li ( x) = ∏
j =0 j ≠i
n
x − xj xi − x j
(i = 0,1,2,L , n)
均为拉格朗日n次插值基函数 次插值基函数, 其中 li ( x) (i = 0,1,2,L, n) 均为拉格朗日 次插值基函数 于是拉格朗日n次插值 次插值多项式 于是拉格朗日 次插值多项式
4 x − 0.7854 x − 0.5236 P1 ( x) = × 0.5 + × 0.7071 0.5236 − 0.7854 0.7854 − 0.5236 x1 = 45 =
o
π
6
= 0.7854(弧度), y1 = 0.7071
∴
4
结束
∴
2π sin 40o ≈ P1 (40o ) = P1 = P1 (0.6981) 9 0.6981− 0.7854 0.6981− 0.5236 = × 0.5 + × 0.7071 0.5236− 0.7854 0.7854− 0.5236
由直线的两点式方程
y − y0 x − x0 = y1 − y 0 x1 − x 0 ( 6 . 1)
得
y=
x − x0 x − x1 y0 + y1 x 0 − x1 x1 − x 0
(6.1)称为拉格朗日线性插值公式。 (6.1)称为拉格朗日线性插值公式。 称为拉格朗日线性插值公式 x − x1 x − x0 记 l0 ( x ) = l1 ( x ) = x 0 − x1 x1 − x 0 P1 ( x ) = l 0 ( x ) y 0 + l1 ( x ) y1 ( 6 .2 ) 则(6.1)可写成 (6.1)可写成 ( i = 0,1) 称为拉格朗日线性插值基函数,其性 其中 l i ( x ) 称为拉格朗日线性插值基函数, 拉格朗日线性插值基函数 质如下: 质如下: 3 结束
其系数矩阵是n+1阶范德蒙 阶范德蒙(Vandermonde)行列式 其系数矩阵是 阶范德蒙 行列式 1 结束
1 1 V ( x 0 , x1 , L , x n ) = 1 M 1
x0 x1 x2 M xn
2 x0
L L L M L
n x0
x 12 2 x2 M
2 xn
x 1n n x2 M
n xn
Pn ( x ) =
∑
n
其中
(i = 0,1,2,L, n) 均为 次多项式 且满足 均为n次多项式,且满足 j ≠i 0 li (xj ) = δij = (i, j = 0,1,2,L, n) j =i 1 li ( x)
i=0
li ( x ) y i
用待定系数法可确定 li (x)
(i = 0,1,2,L, n) 。
ϕ n(xi)=yi (i =0,1,2,L,n)。令 Fn(x)=Pn(x)-ϕn(x),则Fn(x)仍为一 L 。 则 仍为一
次数不超过n的多项式。假设 不恒等于零,则方程 次数不超过 的多项式。假设Fn(x)不恒等于零 则方程 不恒等于零 Fn(x)=0最多有 个根。但是 最多有n个根 最多有 个根。 ∵ Fn ( xi ) = P ( xi ) − φn ( xi ) = yi − yi ≡ 0 (i = 0,1,2,L, n) n 即次数不超过n的方程 个根,出现矛盾 即次数不超过 的方程 Fn(x)=0 有n+1个根 出现矛盾。 个根 出现矛盾。 唯一。 ∴必有 Fn(x)≡0,即 Pn(x) ≡ ϕn(x)。于是 n(x)唯一。 ≡ 即 。于是P 唯一 这说明,过 个点 个点(x 次数不超过n的 这说明 过n个点 i,yi)(i=0,1,2,L,n),次数不超过 的多项 L 次数不超过 (x)是唯一的 是唯一的。 式Pn(x)是唯一的。 二 插值公式的余项 误差) 插值公式的余项(误差 式的余项 误差 设已知函数y=f(x)在n+1个点的值 设已知函数 在 个点的值 yi=f(xi) (i=0,1,2,L,n) L Pn(x)是满足 n(xi)=f(xi)的n次插值多项式 则称 是满足P 次插值多项式 是满足 的 次插值多项式,则称 Rn(x)= f (x)-Pn(x) 插值多项式在点 处的截断误差 多项式在点x处的截断误差。 为插值多项式在点 处的截断误差。 11
= 0.6380
(sin 40o 的准确值是 的准确值是0.6428)
图6-1 二 二次插值 已知三点(x 求一个二次多项式P 已知三点 i,yi)(i=0,1,2),求一个二次多项式 2(x),使 求一个二次多项式 使 P2(xi)=yi (i=0,1,2) 由线性插值的启示和拉格朗日线性插值公式的特点,可令 由线性插值的启示和拉格朗日线性插值公式的特点 可令
∵ xi≠xj ,(i≠j),∴此范德蒙行列式的值不为零 方程组有唯一 ∴ 范德蒙行列式的值不为零,方程组有唯一 解a0,a1,a2,L,an. L 虽然此法可以求出唯一的插值多项式,但是计算量太大 但是计算量太大,并 虽然此法可以求出唯一的插值多项式 但是计算量太大 并 不实用。下面介绍拉格朗日和牛顿两种插值法。 不实用。下面介绍拉格朗日和牛顿两种插值法。
λ ( x 0 − x 1 )( x 0 − x 2 ) = 1
1 λ= ( x 0 − x 1 )( x 0 − x 2 )
( x − x 1 )( x − x 2 ) l0 ( x ) = = ( x 0 − x 1 )( x 0 − x 2 )
( x − x 0 )( x − x 2 ) l1 ( x ) = = ( x 1 − x 0 )( x 1 − x 2 )