第二章 插值法
合集下载
第二章 插值法--课堂

考察函数
右图给出了 和 的图像,当n 增大时, 在两端 会发出激烈的振荡 ,这就是所谓龙格现 象。该现象表明,在 大范围内使用高次 插值,逼近的效果往 往是不理想的
另外,从舍入误差来看,高次插值误差的传播 也较为严重,在一个节点上产生的舍入误差会在计 算中不断扩大,并传播到其它节点上。因此,次数 太高的高次插值多项式并不实用,因为节点数增加 时,计算量增大了,但插值函数的精度并未提高。 为克服在区间上进行高次插值所造成的龙格现象, 采用分段插值的方法,将插值区间分成若干个小的 区间,在每个小区间进行线性插值,然后相互连接 ,用连接相邻节点的折线逼近被插函数,这种把插 值区间分段的方法就是分段线性插值法。
有2n+2个根,但 是不高于2n+1次的多项式
,所以
,即
惟一性得证。
定理5.4 若f(x)在a,b上存在2n+2阶导数,则 2n+1次Hermite插值多项式的余项为
其中 定理的证明可仿照Lagrange插值余项的证 明方法请同学们自行证明
实际中使用最广泛的是三次Hermite插值多项式, 即 n=1的情况
表示互为逆运算。
至于如何实现这些基本运算之
间的联系和转化,途径是多种 多样的,结果是丰富多彩的,魅力是无群无尽的
§4 埃尔米特插值
注: N 个条件可以确定 N 1 阶多项式。 要求在1个节点 x0 处直到m0 阶导数都相等的插值
多项式即为Taylor多项式 其余项为
一般只考虑 f 与f ’的值。
二、分段三次埃尔米特插值
分段线性插值函数导数间断,若已知节点上函数值和
导数,可构造一个导数连续的插值函数Ih(x),满足
§6 三次样条插值
一、样条插值的概念
第二章插值法

分段插值;三角插值.
[a , b] 称为插值区间 求 p ( x ) 的方法就是插值法。
插值函数p(x)在n+1个互异插值节点xi (i=0,1,…,n ) 处与 f(xi)相等,在其它点 x 就用p(x)的值作为f(x) 的近似值。这 一过程称为插值,点 x 称为插值点。 换句话说, 插值就是根据被插函数给出的函数表“插 出”所要点的函数值。用p(x)的值作为f(x)的近似值,不仅
二、拉格朗日插值多项式
一般情况, 对于给定的n 1个插值节点x0 x1 xn, 要求n次插值多项式Ln ( x ),满足 Ln ( xi ) yi , ( i 0,1,, n). 0, i k <n , 通常次数= n , 但特殊情形次数可 l k ( xi ) ( i , k 0,1,, n)
第2章
§1
一、问题背景
y f ( x) ?
yi f ( x i )
插值法
引 言
( i 0,1,, n)
P ( xi ) f ( xi ) ( i 0,1,, n)
求简单P ( x ),满足
应用:例如程控加工机械零件等。
二、问题的提出
函数解析式未知,通过实验观测得到的一组数据, 即在某个
x xk lk 1 ( x ) xk 1 xk
(2.2 )
则所求线性插值多项式 L1 ( x ) yk lk ( x ) yk 1lk 1 ( x ), (2.3)
令 xk 1 x lk ( x ) , xk 1 xk 则所求线性插值多项式 L1 ( x ) yk lk ( x ) yk 1lk 1 ( x ), (2.3) x xk lk 1 ( x ) xk 1 xk
数值方法第二章 插值法2

3
1 f ( ) ( x) 2
3
1 2 R1 ( x) ( x x0 )(x x1 ) 8 3 1 2 R1 (115) (115 100)(115 121 ) 8 3 1 (115 100)(115 121 max 2 ) 100 ,121 8
当选择代数多项式作为插值函数类时,称为代数多项 式插值问题:
代数多项式插值问题:
设函数y=f(x)在[a,b]有定义, 且已知在n+1个点 a≤x0<x1<……<xn≤b上的函数值y0, y1,……,yn.,要求一 个次数不高于n的多项式
Pn ( x) a0 a1 x a2 x 2 an x n
这是一个线性函数,在几何上就是通过曲线y=f(x)上 的两点(x0,y0)和(x1,y1)作一直线y=L1(x)近似代替曲线 y=f(x),故两点插值又名线性插值
线性插值的几何意义
n=2时
( x x1 )( x x2 ) l0 ( x ) ( x0 x1 )( x0 x2 )
其中,k(x)为待定函数
作辅助函数 F (t ) f (t ) P (t ) k ( x) (t ) n n 1 不难看出F(t)具有以下特点:
(1) F(x)=F(xi)=0(i=0,1….n)也就是F(t)有n+2个零点即x, x0,x1,…,xn. (2)在[a,b]上具有n+1阶导数,且
第2章 插值法
§1
引言 § 2 拉格朗日插值多项式 § 3 牛顿插值多项式
§4 §5 §6
分段低次插值 三次样条插值 数值微分
}
§1
引言
1.1 插值问题及代数多项式插值
1 f ( ) ( x) 2
3
1 2 R1 ( x) ( x x0 )(x x1 ) 8 3 1 2 R1 (115) (115 100)(115 121 ) 8 3 1 (115 100)(115 121 max 2 ) 100 ,121 8
当选择代数多项式作为插值函数类时,称为代数多项 式插值问题:
代数多项式插值问题:
设函数y=f(x)在[a,b]有定义, 且已知在n+1个点 a≤x0<x1<……<xn≤b上的函数值y0, y1,……,yn.,要求一 个次数不高于n的多项式
Pn ( x) a0 a1 x a2 x 2 an x n
这是一个线性函数,在几何上就是通过曲线y=f(x)上 的两点(x0,y0)和(x1,y1)作一直线y=L1(x)近似代替曲线 y=f(x),故两点插值又名线性插值
线性插值的几何意义
n=2时
( x x1 )( x x2 ) l0 ( x ) ( x0 x1 )( x0 x2 )
其中,k(x)为待定函数
作辅助函数 F (t ) f (t ) P (t ) k ( x) (t ) n n 1 不难看出F(t)具有以下特点:
(1) F(x)=F(xi)=0(i=0,1….n)也就是F(t)有n+2个零点即x, x0,x1,…,xn. (2)在[a,b]上具有n+1阶导数,且
第2章 插值法
§1
引言 § 2 拉格朗日插值多项式 § 3 牛顿插值多项式
§4 §5 §6
分段低次插值 三次样条插值 数值微分
}
§1
引言
1.1 插值问题及代数多项式插值
数值分析第二章 插值法

(j,k=0,1,…,n)
( x x0 )( x xk 1 )( x xk 1 )( x xn ) lk ( x ) ( xk x0 )( xk xk 1 )( xk xk 1 )( xk xn )
n1 ( x ) ( x xk ) n1 ' ( xk )
n
• 均差的计算
三、均差与牛顿插值
1.均差与性质
• 均差定义
• 性质 (2)k阶均差可重新写为:
f [ x1 , x2 ,, xk ] f [ x0 , x1 , xk 1 ] f [ x0 , x1 , xk ] xk x0
• 均差的计算
三、均差与牛顿插值
1.均差与性质
• 均差定义
类似地称 2 f k f k 1 f k 为 xk 处的二阶差分. 一般地称 n f k n1 f k 1 n1 f k 为 xk 处的n阶差分.
• 均差与差分关系
• 牛顿前插公式
n f k (1) f nk j , j 0 j
求5、6月份的日照时间的变化规律。 • 多项式插值的存在唯一性
一、引言
2.多项式插值
• 一个例子 日照时间的变化设为 y(x)=a0+ a1x + a2x2, 根据三组数据: (1, 13.53), (31, 14.21),(61, 14.40), 导出关于a0,a1,a2的线性方程组
a0 a1 a2 13.53 2 a0 31a1 (31) a2 14.21 2 a0 61a1 (61) a2 14.40
三、均差与牛顿插值
3.差分形式的牛顿插值公式
若x0,x1,…,xn 为等距节点,即xk=x0+kh (k=0,1,...,n) 时,可将牛顿插值公式简化
第二章插值法

lk ( xk 1 ) 0
n=2的情况,假定插值节点为
xk 1 , xk , xk 1 , 要求一个二次插值多项式L2 ( x),使它满足 L2 ( x j ) y j ( j k 1, k , k 1)
y L2 ( x)在几何上就是通过三点(xk-1 , yk 1 ),(xk , yk ),(xk+1, yk 1 )的抛物线
插值法
§2.1 §2.2 §2.3 §2.4 §2.5 §2.6 §2.7 引言 拉格朗日插值 均差与牛顿插值公式 差分与等距节点插值 埃尔米特插值 分段低次插值 三次样条插值
一、插值问题
或者函数本身只是 一组实验数据,很 难对函数的性质进 行分析
对函数f (x),其函数形式可能很复杂且不利于在计算机上 ,
设函数
y f ( x ) 在区间 [a, b] 上有定义,且已知在
a x0 x1 x2 xn b
f ( xi ) yi , i 0,1,, n
如果存在一个简单函数 P ( x ),使得
P( xi ) f ( xi ) yi , i 0,1,, n
xx x x
如函数y sin x, 若给定 0, ]上5个等分点 [
其插值函数的图象如图
对于被插函数 ( x)和插值函数 ( x) f P
在节点xi处的函数值必然相等
但在节点外 ( x)的值可能就会偏离 ( x) P f 因此P( x)近似代替 ( x)必然存在着误差 f
整体误差的大小反映了插值函数的好坏
成立,则称 P ( x ) 为 f ( x ) 的插值函数
称点 xi , i 0,1,2,, n为插值节点
称区间 a , b]为插值区间 [
数值分析--第2章插值法

1 x0 1 x1 1 xn
2019/2/6
x0 2 x12 xn 2
x0 n x1n xn n
课件
( x j xi ) 0
ji
由克莱姆法则知方程组 (5-3) 的解存在唯一. 证毕。
上页 下页
7
2.2 拉格朗日插值
2.2.1 基函数
考虑最简单、最基本的插值问题.
求n次插值多项式 l i(x) (i=0,1, …,n), 使其满足插值条件
2019/2/6 课件
(5-2)
则由插值条件式Pn(xi)=yi (i=0,1, ..., n) 可得关于系数
上页
下页
6
n a0 a1 x0 an x0 y0 n a0 a1 x1 an x1 y1 ( 5-3 ) n a a x a x 0 1 n n n yn 此方程组有n+1个方程, n+1个未知数, 其系数行列式是 范德蒙(Vandermonde)行列式:
称为拉格朗日插值多项式,再由插值多项式的唯一性, 得 Pn ( x ) Ln ( x )
特别地, 当 n =1时又叫线性插值,其几何意义为
过两点的直线. 当 n =2时又叫抛物(线)插值, 其几 何意义为过三点的抛物线.
2019/2/6 课件
上页
14
下页
注意 : (1) 对于插值节点,只要求它们互异,与大小次序无关;
其中ai为实数,就称P(x) 为 插值多项式,相应的插 值法称为多项式插值,若P(x)为分段的多项式,就 称为分段插值,若P(x)为三角多项式,就称为三角插
值,本章只讨论插值多项式与分段插值。
本章主要研究如何求出插值多项式,分段插值 函数,样条插值函数;讨论插值多项式P(x)的存在 唯一性、收敛些及误差估计等。
第2章插值法

的n次插值多项式,则对于任何 xa,,b有
Rn (x)
f (n1) ( )
(n 1)!
n1
(
x)
(2.9)
x
其中 n1(x) n (x xi ) , (a,且b)依赖于 。
证明 点都是
由插i值0 条件
知
的零点,故可设Pn(xi)f(xi)
Rn (xi ) 0(i 0,,1,即插, n值) 节
当复杂,使用起来很不方便。面对这些情况,总希望 根据所得函数表(或结构复杂的解析表达式),构造
某个简单函数P(x)作为 的近似。
插值法是解决此类问题的一种比较古老的、
然而却是目前常用f 的x方法,它不仅直接广泛地
应用于生产实际和科学研究中,而且也是进一 步学习数值计算方法的基础。
4
现在你正浏览到当前第四页,共一百零三页。
(图2-3
例1 已知
分别用线性插值和抛物插值
求
的1值0 。1 0,012 11,1 14 1 42
115
15
现在你正浏览到当前第十五页,共一百零三页。
解 因为115在100和121之间,故取节点x0=100,x1=121相应地有 y0=10,y1=11,于是,由线性插值公式(2.5)可得
L1
(
x)
17
现在你正浏览到当前第十七页,共一百零三页。
输入xi,yi,n,x
j=0,1,```,n
P=1
y=0
k=0,1,```,n
k=j?
否 P=P*(x-xj)(xk-xj)
是
输出x,y
图2-4
y=y+P*yk
18
现在你正浏览到当前第十八页,共一百零三页。
lk (x)
Rn (x)
f (n1) ( )
(n 1)!
n1
(
x)
(2.9)
x
其中 n1(x) n (x xi ) , (a,且b)依赖于 。
证明 点都是
由插i值0 条件
知
的零点,故可设Pn(xi)f(xi)
Rn (xi ) 0(i 0,,1,即插, n值) 节
当复杂,使用起来很不方便。面对这些情况,总希望 根据所得函数表(或结构复杂的解析表达式),构造
某个简单函数P(x)作为 的近似。
插值法是解决此类问题的一种比较古老的、
然而却是目前常用f 的x方法,它不仅直接广泛地
应用于生产实际和科学研究中,而且也是进一 步学习数值计算方法的基础。
4
现在你正浏览到当前第四页,共一百零三页。
(图2-3
例1 已知
分别用线性插值和抛物插值
求
的1值0 。1 0,012 11,1 14 1 42
115
15
现在你正浏览到当前第十五页,共一百零三页。
解 因为115在100和121之间,故取节点x0=100,x1=121相应地有 y0=10,y1=11,于是,由线性插值公式(2.5)可得
L1
(
x)
17
现在你正浏览到当前第十七页,共一百零三页。
输入xi,yi,n,x
j=0,1,```,n
P=1
y=0
k=0,1,```,n
k=j?
否 P=P*(x-xj)(xk-xj)
是
输出x,y
图2-4
y=y+P*yk
18
现在你正浏览到当前第十八页,共一百零三页。
lk (x)
第2章_插值法

56
13.214 285 71
175 13.228756555322952...
考虑通过 + 1个节点0 < 1 < ⋯ < 的次插值
多项式 (),满足条件
= ,
= 0,1, … ,
希望找到 li(x),i = 0, …, n, 使得
= ; = ,
n次插值多项式, 插值节点为{ xi }in 0 [ a , b],则x [ a , b],有
f ( n 1) ( )
Rn (x )
n 1 ( x)
Lagrange型余项
(n 1)!
n
其中 n 1 ( x ) ( x xi ) , ( a , b) , 且依赖于 x.
满足条件P(xi) = f(xi) (i = 0, … n)。 P(x) 称
为f(x) 的插值函数。
P(x) f(x)
x0
x1
x2
x
x3
x4
定理1:设插值节点 ≠ ( ≠ ),则满足条件
= , = 0,1, … , 的插值多项式
= 0 + 1 + ⋯ +
− , , + 线性无关。
二次插值多项式
= − − + + + + ()
满足 = ( = − , , + )
例1:
已知 f ( x )满足 f (144) 12 , f (169) 13, f ( 225) 15
i 0
一次及二次差值余项
1 ′′
1 = − 0 − 1 ,
13.214 285 71
175 13.228756555322952...
考虑通过 + 1个节点0 < 1 < ⋯ < 的次插值
多项式 (),满足条件
= ,
= 0,1, … ,
希望找到 li(x),i = 0, …, n, 使得
= ; = ,
n次插值多项式, 插值节点为{ xi }in 0 [ a , b],则x [ a , b],有
f ( n 1) ( )
Rn (x )
n 1 ( x)
Lagrange型余项
(n 1)!
n
其中 n 1 ( x ) ( x xi ) , ( a , b) , 且依赖于 x.
满足条件P(xi) = f(xi) (i = 0, … n)。 P(x) 称
为f(x) 的插值函数。
P(x) f(x)
x0
x1
x2
x
x3
x4
定理1:设插值节点 ≠ ( ≠ ),则满足条件
= , = 0,1, … , 的插值多项式
= 0 + 1 + ⋯ +
− , , + 线性无关。
二次插值多项式
= − − + + + + ()
满足 = ( = − , , + )
例1:
已知 f ( x )满足 f (144) 12 , f (169) 13, f ( 225) 15
i 0
一次及二次差值余项
1 ′′
1 = − 0 − 1 ,
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
项式是唯一存在的。
证明:
yi , i = 0, ... , n 的 n 阶插值多
反证:若不唯一,则除了Ln(x) 外还有另一 n 阶多项 式 Pn(x) 满足 Pn(xi) = yi 。 考察 Qn ( x ) = Pn ( x ) - Ln ( x ) , 则 Qn 的阶数 n 而 Qn 有 n + 1 个不同的根 x0 … xn 注:若不将多项式次数限制为 n ,则插值多项式不唯一。 例如 P ( x ) = Ln ( x ) p( x ) ( x - x i ) 也是一个插值
sin 50 0 L2 ( 5 ) 0.76543 18
R2 ( x ) = - cos x ( x - )( x - )( x - ) ; 3! 6 4 3 1 cos 3 x 2 2
0.00044 R2 5 0.00077 18
=
x - x1 y + x 0 - x1 0
x - x0 y = x1 - x 0 1
l ( x) y
i =0 i
1
i
l0(x)
l1(x)
§1 Lagrange Polynomial
n1
希望找到li(x),i = 0, …, n 使得 li(xj)=ij ;然后令
Pn ( x ) =
l (x) y
g(x) f(x)
x0
x1
x2
x
x3
x4
§1 拉格朗日多项式
Pn ( x i ) = y i ,
/* Lagrange Polynomial */
n 求 n 次多项式 Pn ( x ) = a0 a1 x an x 使得
i = 0 , ... , n
条件:无重合节点,即 i j
0 ( x0 , x1 ), 1 ( x1 , x2 ) 推广:若 ( x0 ) = ( x1 ) = ( x2 ) = 0 ( 0 , 1 ) 使得 ( ) = 0 使得 ( 0 ) = (1 ) = 0
( x0 ) = = ( x n ) = 0
i=0
i
n
i
,则显然有Pn(xi) = yi 。
li(x)
每个 li 有 n 个根 x0 … xi … xn
li ( x) = Ci ( x - x0 )...(x - xi )...(x - xn ) = Ci ( x - x j )
n ji j =0
li ( xi ) = 1
Ci =
1 j i ( xi - x j )
sin 50 = 0.7660444…
2次插值的实际误差 0.00061 高次插值通常优于 低次插值 但绝对不是次数越 高就越好,嘿 嘿……
When What if I writing the program, Oh yeah? you start find Right. Then all you will find how easy it iswant to take Then you might the current interpolation , to calculate the Lagrange basis, li(x) point ! Excellent theinterpolating points into account. Lagrange polynomial. more to be enough? not accuratere-calculated.this problem willWe will come to discuss have next time.
设节点 a x0 x1 xn b ,且 f 满足条件 f C [a, b] , f ( n1)在[a , b]内存在, 考察截断误差 R ( x ) = f ( x ) - L ( x ) n n
n
Rolle’s Theorem: 若 ( x ) 充分光滑, ( x0 ) = ( x1 ) = 0 ,则 存在 ( x0 , x1 ) 使得 ( ) = 0 。
f [ xi , x j ] - f [ x j , xk ] f [ xi , x j , xk ] = (i k ) xi - xk
2阶差商
§2 Newton’s Interpolation
(k+1)阶差商:
f [ x0 , x1 , ... , xk ] - f [ x1 , ... , xk , xk 1 ] f [ x0 , ... , xk 1 ] = x 0 - x k 1 f [ x0 , ... , xk -1 , xk ] - f [ x0 , ... , xk -1 , xk 1 ] = x k - x k 1
n=1
P1 ( x 0 ) = y0 , P1 ( x1 ) = y1
xi x j
已知 x0 , x1 ; y0 , y1/* Lagrange ) = a0 , x 使得 称为拉氏基函数 ,求 P1 ( x Basis */ a1 满足条件 li(xj)=ij /* Kronecker Delta */ 可见 P1(x) 是过 ( x0 , y0 ) 和 ( x1, y1 ) 两点的直线。 y1 - y 0 P1 ( x ) = y0 ( x - x0 ) x1 - x 0
§2 Newton’s Interpolation
牛顿插值 /* Newton’s Interpolation */
N n ( x ) = a0 a1 ( x - x0 ) a2 ( x - x0 )( x - x1 ) ... an ( x - x0 )...( x - xn-1 )
只附加一项上去即可。 差商(亦称均差) /* divided difference */
f ( xi ) - f ( x j ) f [ xi , x j ] = xi - x j (i j , xi x j )
1阶差商 /* the 1st
divided difference of f w.r.t. xi and xj */
i =0 n
多项式,其中 p( x )可以是任意多项式。
推论: 令f ( x ) = x , m = 0,1, 2, , n, 得到
m
x
k =0
n
m k k
l ( x) = x ,
m
取m = 0,
l ( x) = 1
k =0 k
n
§1 Lagrange Polynomial
插值余项 /* Remainder */
Ch2 插值法
/* Interpolation */
当精确函数 y = f(x) 非常复杂或未知时,在一 系列节点 x0 … xn 处测得函数值 y0 = f(x0), … yn = f(xn),由此构造一个简单易算的近似函 数 g(x) f(x),满足条件g(xi) = f(xi) (i = 0, … n)。这里的 g(x) 称为f(x) 的插值函数。最常 用的插值函数是 …? 多项式
事实上 f [ x0 , ... , xk ] =
k
f ( xi ) i = 0 k 1 ( x i )
k j =0 ji
k
其中 k 1 ( x ) = ( x - xi ) , k 1 ( xi ) = ( xi - x j )
i =0
Warning: my head is exploding… 差商的值与 of this formula? What is the pointxi 的顺序无关!
§2 牛顿插值
/* Newton’s Interpolation */
Lagrange 插值虽然易算,但若要增加一个节点时, 全部基函数 li(x) 都需重新算过。
? 将 Ln(x) 改写成 a0 a1 ( x ? x0 ) a2 ( x ? x0 )( x - x1 ) ... an ( x?- x0 )...( x - xn-1 ) 的形式,希望每加一个节点时,
( n1) ( x ) = 0, x (a , b)
§1 Lagrange Polynomial
Rn(x) 至少有 n+1 个根
Rn ( x) = K ( x ) ( x - xi )
i =0 n i=0
n
任意固定 x xi (i = 0, …, n), 考察 ( t ) = Rn ( t ) - K ( x ) ( t - x i )
x0
x1
x2
利用 x1 = , x2 =
4
3
~ 0.00538 R1 5 0.00660 sin 50 0.76008, 18
内插 /* interpolation */ 的实际误差 0.00596
§1 Lagrange Polynomial
§1 Lagrange Polynomial
分别利用 sin x 的1次、2次 Lagrange 插值计算 sin 50 5 并估计误差。 500 =
18
解: n = 1
分别利用x0, x1 以及 x1, x2 计算
, x1 =
利用 x0 =
L1 ( x ) = x - / 4 1 x - / 6 1 6 4 / 6 - / 4 2 / 4 - / 6 2 sin 50 0 L1 ( 5 ) 0.77614 这里 f ( x ) = sin x , f ( 2) ( x ) = - sin x , x ( , ) 18 内插通常优于外推。选择 6 3 ( 2) f ( x ) 而 1要计算的3 x 所在的区间的x - )( x - ) sin x , R1 ( x ) = ( 2 2 2! 6 4 端点,插值效果较好。 sin 50 = 0.7660444… - 0.01319 R1 ( 5 ) -0.00762 18 外推 /* extrapolation */ 的实际误差 -0.01001- xi | 作为误差估计上限。 i =0
证明:
yi , i = 0, ... , n 的 n 阶插值多
反证:若不唯一,则除了Ln(x) 外还有另一 n 阶多项 式 Pn(x) 满足 Pn(xi) = yi 。 考察 Qn ( x ) = Pn ( x ) - Ln ( x ) , 则 Qn 的阶数 n 而 Qn 有 n + 1 个不同的根 x0 … xn 注:若不将多项式次数限制为 n ,则插值多项式不唯一。 例如 P ( x ) = Ln ( x ) p( x ) ( x - x i ) 也是一个插值
sin 50 0 L2 ( 5 ) 0.76543 18
R2 ( x ) = - cos x ( x - )( x - )( x - ) ; 3! 6 4 3 1 cos 3 x 2 2
0.00044 R2 5 0.00077 18
=
x - x1 y + x 0 - x1 0
x - x0 y = x1 - x 0 1
l ( x) y
i =0 i
1
i
l0(x)
l1(x)
§1 Lagrange Polynomial
n1
希望找到li(x),i = 0, …, n 使得 li(xj)=ij ;然后令
Pn ( x ) =
l (x) y
g(x) f(x)
x0
x1
x2
x
x3
x4
§1 拉格朗日多项式
Pn ( x i ) = y i ,
/* Lagrange Polynomial */
n 求 n 次多项式 Pn ( x ) = a0 a1 x an x 使得
i = 0 , ... , n
条件:无重合节点,即 i j
0 ( x0 , x1 ), 1 ( x1 , x2 ) 推广:若 ( x0 ) = ( x1 ) = ( x2 ) = 0 ( 0 , 1 ) 使得 ( ) = 0 使得 ( 0 ) = (1 ) = 0
( x0 ) = = ( x n ) = 0
i=0
i
n
i
,则显然有Pn(xi) = yi 。
li(x)
每个 li 有 n 个根 x0 … xi … xn
li ( x) = Ci ( x - x0 )...(x - xi )...(x - xn ) = Ci ( x - x j )
n ji j =0
li ( xi ) = 1
Ci =
1 j i ( xi - x j )
sin 50 = 0.7660444…
2次插值的实际误差 0.00061 高次插值通常优于 低次插值 但绝对不是次数越 高就越好,嘿 嘿……
When What if I writing the program, Oh yeah? you start find Right. Then all you will find how easy it iswant to take Then you might the current interpolation , to calculate the Lagrange basis, li(x) point ! Excellent theinterpolating points into account. Lagrange polynomial. more to be enough? not accuratere-calculated.this problem willWe will come to discuss have next time.
设节点 a x0 x1 xn b ,且 f 满足条件 f C [a, b] , f ( n1)在[a , b]内存在, 考察截断误差 R ( x ) = f ( x ) - L ( x ) n n
n
Rolle’s Theorem: 若 ( x ) 充分光滑, ( x0 ) = ( x1 ) = 0 ,则 存在 ( x0 , x1 ) 使得 ( ) = 0 。
f [ xi , x j ] - f [ x j , xk ] f [ xi , x j , xk ] = (i k ) xi - xk
2阶差商
§2 Newton’s Interpolation
(k+1)阶差商:
f [ x0 , x1 , ... , xk ] - f [ x1 , ... , xk , xk 1 ] f [ x0 , ... , xk 1 ] = x 0 - x k 1 f [ x0 , ... , xk -1 , xk ] - f [ x0 , ... , xk -1 , xk 1 ] = x k - x k 1
n=1
P1 ( x 0 ) = y0 , P1 ( x1 ) = y1
xi x j
已知 x0 , x1 ; y0 , y1/* Lagrange ) = a0 , x 使得 称为拉氏基函数 ,求 P1 ( x Basis */ a1 满足条件 li(xj)=ij /* Kronecker Delta */ 可见 P1(x) 是过 ( x0 , y0 ) 和 ( x1, y1 ) 两点的直线。 y1 - y 0 P1 ( x ) = y0 ( x - x0 ) x1 - x 0
§2 Newton’s Interpolation
牛顿插值 /* Newton’s Interpolation */
N n ( x ) = a0 a1 ( x - x0 ) a2 ( x - x0 )( x - x1 ) ... an ( x - x0 )...( x - xn-1 )
只附加一项上去即可。 差商(亦称均差) /* divided difference */
f ( xi ) - f ( x j ) f [ xi , x j ] = xi - x j (i j , xi x j )
1阶差商 /* the 1st
divided difference of f w.r.t. xi and xj */
i =0 n
多项式,其中 p( x )可以是任意多项式。
推论: 令f ( x ) = x , m = 0,1, 2, , n, 得到
m
x
k =0
n
m k k
l ( x) = x ,
m
取m = 0,
l ( x) = 1
k =0 k
n
§1 Lagrange Polynomial
插值余项 /* Remainder */
Ch2 插值法
/* Interpolation */
当精确函数 y = f(x) 非常复杂或未知时,在一 系列节点 x0 … xn 处测得函数值 y0 = f(x0), … yn = f(xn),由此构造一个简单易算的近似函 数 g(x) f(x),满足条件g(xi) = f(xi) (i = 0, … n)。这里的 g(x) 称为f(x) 的插值函数。最常 用的插值函数是 …? 多项式
事实上 f [ x0 , ... , xk ] =
k
f ( xi ) i = 0 k 1 ( x i )
k j =0 ji
k
其中 k 1 ( x ) = ( x - xi ) , k 1 ( xi ) = ( xi - x j )
i =0
Warning: my head is exploding… 差商的值与 of this formula? What is the pointxi 的顺序无关!
§2 牛顿插值
/* Newton’s Interpolation */
Lagrange 插值虽然易算,但若要增加一个节点时, 全部基函数 li(x) 都需重新算过。
? 将 Ln(x) 改写成 a0 a1 ( x ? x0 ) a2 ( x ? x0 )( x - x1 ) ... an ( x?- x0 )...( x - xn-1 ) 的形式,希望每加一个节点时,
( n1) ( x ) = 0, x (a , b)
§1 Lagrange Polynomial
Rn(x) 至少有 n+1 个根
Rn ( x) = K ( x ) ( x - xi )
i =0 n i=0
n
任意固定 x xi (i = 0, …, n), 考察 ( t ) = Rn ( t ) - K ( x ) ( t - x i )
x0
x1
x2
利用 x1 = , x2 =
4
3
~ 0.00538 R1 5 0.00660 sin 50 0.76008, 18
内插 /* interpolation */ 的实际误差 0.00596
§1 Lagrange Polynomial
§1 Lagrange Polynomial
分别利用 sin x 的1次、2次 Lagrange 插值计算 sin 50 5 并估计误差。 500 =
18
解: n = 1
分别利用x0, x1 以及 x1, x2 计算
, x1 =
利用 x0 =
L1 ( x ) = x - / 4 1 x - / 6 1 6 4 / 6 - / 4 2 / 4 - / 6 2 sin 50 0 L1 ( 5 ) 0.77614 这里 f ( x ) = sin x , f ( 2) ( x ) = - sin x , x ( , ) 18 内插通常优于外推。选择 6 3 ( 2) f ( x ) 而 1要计算的3 x 所在的区间的x - )( x - ) sin x , R1 ( x ) = ( 2 2 2! 6 4 端点,插值效果较好。 sin 50 = 0.7660444… - 0.01319 R1 ( 5 ) -0.00762 18 外推 /* extrapolation */ 的实际误差 -0.01001- xi | 作为误差估计上限。 i =0