- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
§5 三次样条
/* Cubic Spline */
2
定义 设 a = x0 < x1 < ... < xn = b 。三次样条函数 S ( x ) ∈ C
[a , b ]
,
且在每个[ xi , xi +1 ]上为三次多项式 /* cubic polynomial */。若它同 上为三次多项式 时还满足 S ( xi ) = f ( xi ), ( i = 0, ... , n),则称为 f 的三次样条插值函 数 /* cubic spline interpolant */. 插值的根本区别在于S(x)自 注:三次样条与分段 Hermite 插值的根本区别在于 自 的导数值(除了在2个端点可能需 身光滑, 身光滑,不需要知道 f 的导数值(除了在 个端点可能需 );而 插值依赖于f 要);而Hermite插值依赖于 在所有插值点的导数值。 插值依赖于 在所有插值点的导数值。
i =0 i =0 n n
∧
li ( x) = ∏
∧
j≠i
其中 hi(xj) = δij , hi’(xj) = 0, hi (xj) = 0, hi’(xj) = δij
∧ 这样的Hermite 插值唯 这样的 且都是2重根 hi(x) 有根 x0 , …, xi , …, xn且都是 重根 hi ( x ) = ( Ai x + Bi )l i2 ( x )
对于x 设 S[j]”(xj1) = Mj1, S[j]”(xj) = Mj 对于 ∈[xj1, xj ] 可得到 对每个j, 此为3次多项式 对每个 此为 x次多项式 x x x j j 1 [j]”(x) = M +Mj S j 1 h h
j j
积分2次 积分 次,可得 S[j]’(x) 和 S[j](x) :
注:
N 个条件可以确定 N 1 阶多项式。 阶多项式。 要求在1个节点 x0 处直到 0 阶导数都重合的插 要求在 个节点 处直到m 值多项式即为Taylor多项式 值多项式即为 多项式
f ( m0 ) ( x0 ) ( x x0 )m0 ( x) = f ( x0 ) + f ′( x0 )( x x0 ) + ... + m0 ! f ( m +1 ) (ξ ) ( x x 0 )( m +1 ) 其余项为 R( x ) = f ( x ) ( x ) =
§3 Hermite Interpolation
例2 已知f ( x ) = x 在x = 4,9处的函数值和导数值, 用两点三次 处的函数值和导数值,
Hermite插值公式计算 5的近似值,并估计误差 限。 的近似值,
Quiz: 给定 xi = i +1, i = 0, 1, 2, 3, 4, 5. 下面哪个是 h2(x)的图像? 的图像?
§4 分段低次插值
/* piecewise polynomial approximation */
1 1 + x2
例:在[5, 5]上考察 f ( x ) =
2.5
的Ln(x)。取 xi = 5 + 10 i (i = 0, ... , n) 。
n
2
Ln(x) × f (x) →
Remember what I have said? Increasing the degree of interpolating polynomial will NOT guarantee a good result, since high-degree polynomials are n 越大, 越大, oscillating. 端点附近抖动
∧
(x xj ) ( xi x j )
一 可解A 由余下条件 hi(xi) = 1 和 hi’(xi) = 0 可解 i 和 Bi
hi ( x ) = [1 2l i′( xi )( x xi )] l i2 ( x )
∧
∧
hi (x) 有根 x0 , …, xn, 除了xi 外都是 重根 hi( x) = Ci ( x xi ) li2(x) 外都是2重根
P3 ( x ) = Σ f ( x i ) hi ( x ) + f ’( x1) hБайду номын сангаас ( x )
2
∧
其中 hi(xj) = δij , hi’(x1) = 0, h1 (xi) = 0, h1 1) = 1 ’(x
2 是重根。 h0(x) 有根 x1, x2,且 h0’(x1) = 0 x1 是重根。h0 ( x ) = C 0 ( x x1 ) ( x x2 ) ( x x1 ) 2 ( x x 2 ) 又: h0(x0) = 1 C0 h0 ( x ) = ( x0 x1 ) 2 ( x0 x 2 ) h2(x) 与h0(x) 完全类似。 完全类似。
y
110.5 0.50 1 2 3 4 5 6
§3 Hermite Interpolation ∧
y
斜率=1 斜率
x
0
1
2
3
4
5
6
x
HW: p.120-121 #21,#22,#23 , ,
多项式的基本步骤: 求Hermite多项式的基本步骤: 多项式的基本步骤 ∧ 的组合形式; 写出相应于条件的hi(x)、 hi(x) 的组合形式; 、 ∧ 找出尽可能多的条件给出的根; 对每一个hi(x)、 hi(x) 找出尽可能多的条件给出的根; 、 根据多项式的总阶数和根的个数写出表达式; 根据多项式的总阶数和根的个数写出表达式; 根据尚未利用的条件解出表达式中的待定系数; 根据尚未利用的条件解出表达式中的待定系数; 最后完整写出H(x)。 最后完整写出 。
3 3
可解
§5 Cubic Spline
yj yj1 Mj Mj1 Aj = hj hj 6
M j1 2 x j x M j 2 x x j 1 + ( yj Aj x + Bj = ( y j 1 hj ) hj ) 6 hj 6 hj
利用S’ 下面解决 Mj : 利用 在 xj 的连续性
f(x) H(x) S(x)
§5 Cubic Spline
构造三次样条插值函数的三弯矩法 构造三次样条插值函数的三弯矩法
/* method of bending moment */
[ j ] 梁弯矩 对应力学中的梁弯矩 x ∈ [ x j 在 [ x j 1 , x j ] 上,记 h j = x j x j 对应力学中的x ) for ,故名1 , x j ] ( 梁弯矩, 1 , S ( x) = S 次多项式, 个点的值确定之。 则 S[j]”(x) 为 1 次多项式,需 2 个点的值确定之。
i =0
∧
∧
h1(x) 有根 x0, x2 h1 ( x ) = ( Ax + B )( x x0 )( x x2 ) (x) 有根 x0, x1, x2 h1
∧ ∧
与 Lagrange 分析 ’(x1) = 0 可解 可解。 由余下条件 h1(x1) = 1 和 h1完全类似 。
∧
h1( x ) = C 1 ( x x 0 )( x x1 )( x x 2 )
§3 Hermite Interpolation
一般地, 一般地,已知 x0 , …, xn 处有 y0 , …, yn 和 y0’ , …, yn’ ,求 H2n+1(x) 满足 H2n+1(xi) = yi , H’2n+1(xi) = yi’。 。 解:设 H2n+1( x ) = Σ yi hi ( x ) + Σ yi’ h i ( x )
利用S 的同类项, 利用 [j]’(xj) = S[j+1]’(xj),合并关于Mj1、 Mj、 Mj+1的同类项,并 ,
h j +1 , j = 1 λ j , g j = 6 ( f [ x j , x j+1 ] f [ x j 1 , x j ]) , 整理 h j + h j +1 hj + hj +1 M0 后得到: 后得到: j M j 1 + 2 M j + λ j M j + 1 = g j
0 0
( m 0 + 1)!
的值。 一般只考虑 f 与f ’的值。 的值
§3 Hermite Interpolation
例:设 x0 ≠ x1 ≠ x2, 已知 f(x0)、 f(x1)、 f(x2) 和 f ’(x1), 求多项式 P(x) 、 、 并估计误差。 满足 P(xi) = f (xi),i = 0, 1, 2,且 P’(x1) = f ’(x1), 并估计误差。 , , 多项式的思想, 解:首先,P 的阶数 = 3 模仿 Lagrange 多项式的思想,设 首先,
f ( x ) ≈ P1 ( x ) = x x i +1 x xi yi + y i +1 x i x i +1 x i +1 x i
for x ∈ [ x i , x i + 1 ]
一致
易证: 记 h = max | xi +1 xi | ,易证:当 h → 0 时,P1h ( x ) → f ( x ) 失去了原函数的光滑性。 失去了原函数的光滑性。 How can we make a smooth interpolation without asking 分段Hermite插值 /* Hermite piecewise polynomials */ 分段 插值 too much from f ? 给定 x 0 , ... , x n ; y 0 , ... , y n ; y 0 , ... , y ′ ′ n Headache … 构造3次 在[ xi , xi +1 ] 上利用两点的 y 及 y’ 构造 次Hermite函数 函数 导数一般不易得到。 导数一般不易得到。