Presentation is loading. Please wait.

Presentation is loading. Please wait.

第二章 函 数 插 值 — 三次样条插值.

Similar presentations


Presentation on theme: "第二章 函 数 插 值 — 三次样条插值."— Presentation transcript:

1 第二章 函 数 插 值 — 三次样条插值

2 什么是三次样条插值 给定插值节点 x0 , x1 , … , xn  [a, b] 及函数值
f(xk) = yk , k = 0, 1, 2, …, n 求一个定义在 [a, b] 上的插值函数 S(x),满足: 即二阶连续可导 插值条件: S(xk) = f(xk) = yk 在每个小区间 [xk, xk+1] 上是三次多项式

3 内容提要 三次样条插值 什么是三次样条函数 边界条件的处理 三次样条函数的计算 具体计算过程

4 三次样条插值 定义:设插值节点为 a = x0 < x1 < … < xn-1 < xn = b
若函数 S(x)C2[a,b],且在每个小区间 [xk , xk+1]上是三次多项式,则称其为三次样条函数 如果同时还满足 S(xk) = f(xk) = yk , k = 0, 1, 2, …, n 则称 S(x) 为 f (x) 在 [a , b] 上的三次样条插值函数

5 三次样条插值 怎样计算三次样条插值函数 S(x) 满足: sk(xk) = yk , sk(xk+1) = yk+1
① S(x)C2[a,b]; ② 在 [xk , xk+1] 是三次多项式 ③ S(xk) = yk , k = 0, 1, 2, …, n 其中 sk(x) 为 [xk, xk+1 ] 上的三次多项式,且满足 sk(xk) = yk , sk(xk+1) = yk+1 k = 0, 1, …, n-1

6 边界条件 ( k = 1, 2, …, n-1) 每个 sk(x) 均为三次多项式,有 4 个待定系数,所以共有 4n 个待定系数,故需 4n 个方程。前面已经得到 2n +2(n-1) = 4n-2 个方程,还缺 2 个方程! 实际问题通常对样条函数在两个端点处的状态有要求,即所谓的 边界条件

7 常用的边界条件 第一类边界条件:给定函数在端点处的一阶导数,即 第二类边界条件:给定函数在端点处的二阶导数,即
当 时,称为自然边界条件, 此时的样条函数称为自然样条函数 第三类边界条件:若 f (x) 是周期函数,且 xn – x0 是一个周期,于是要求 S(x) 也是周期函数, 即满足

8 三次样条函数的计算 设 S”(xk) = Mk, k = 0, 1, 2, …, n
下面计算 S(x) 在 [xk, xk+1] 的表达式 sk (x) 由于 sk(x) 是三次多项式,故 sk”(x) 为线性函数,且 sk”(xk) = Mk , sk”(xk+1) = Mk+1 由线性插值公式可得 求积分,可得

9 三次样条函数的计算 将插值条件 sk(xk) = yk,sk(xk+1) = yk+1 代入,即可确定积分常数 c1 和 c2 。整理后可得 sk(x) 的表达式为 k = 0, 1, …, n-1 只需确定 M0, M1 , … , Mn 的值,即可给出 sk(x)的表达式,从而可以得到 S(x) 的表达式。

10 Mk 的计算 条件: 易知 k 6 f[xk-1, xk, xk+1] k dk

11 Mk 的计算 k = 1, 2, …, n-1

12 Mk 的计算 整理后得关于 Mk-1, Mk 和 Mk+1 的方程: k = 1, 2, …, n-1
其中 k = 1, 2, …, n-1 共 n-1 个方程,附加边界条件,补充两个方程后,即可确定 n+1 个未知量 M0, M1 , … , Mn

13 第一类边界条件 第一类边界条件: 直接代入 sk (x) 的一阶导数表达式即得 与前面的 n-1 个方程联立可得 n+1 阶线性方程组:

14 第二类边界条件 第二类边界条件: 直接可得 故前面方程中只含 n-1 个未知量,即可得 n-1 阶线性方程组:

15 第三类边界条件 第三类边界条件: 可得 其中 与前面的 n-1 个方程联立可得 n 阶线性方程组:

16 具体计算过程 上述三个方程都存在唯一解。 具体计算过程 (1) 根据插值条件和边界条件给出 M0, M1 , … , Mn 的方程组
(2) 解方程 (3) 将 M0, M1 , … , Mn 代入 sk(x) 的表达式, 写出三次样条函数 S (x) 在整个插值区间上的分段表达式

17 具体计算过程 三弯 矩方程

18 具体计算过程 注:需将 sk(x) 写成如下形式
sk (x) = a3(x - xk)3 + a2(x - xk)2 + a1(x - xk) + a0 Matlab 中三次样条插值函数 spline 输出的多项式是按上面的格式输出的!

19 插值举例 例 :(教材 44 页,例 7) 函数 f (x) 定义在[27.7, 30] 上,插值节点及函数值如下 ,试求三次样条插值多项式 S(x) ,满足边界条件 S’(27.7)=3.0, S’(30)=-4.0 x 27.7 28 29 30 f(x) 4.1 4.3 3.0 ex28.m 解:(板书)

20 误差估计 误差估计(了解) 定理:设 f(x)  C4[a, b],S(x) 为满足第一或第二类边界条件的三次样条函数,则 其中
证明:不要求

21 插值举例 例:(教材45页,例 8,上机) 函数 ,插值区间 [-5, 5],取 11 个等距节点,试同时画出 10 次插值多项式 L10(x) 与三次样条插值多项式 S (x) 的函数图形 ex29.m

22 作业 1. 教材第 48 页:20(2),21 提示: 第 20 题:将 S(x) 在每个小区间上的表达式写成下面的形式


Download ppt "第二章 函 数 插 值 — 三次样条插值."

Similar presentations


Ads by Google