插值与数据拟合
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
S ( x i 0) S ( x i 0 ) S ' ( x i 0) S ' ( x i 0) S ' ' ( x i 0) S ' ' ( x i 0)
2.三次样条插值函数 给定区间 [a, b] 的一个划分:a = x0 < x1 < … < xn = b,设函数 y = f(x) 在节点 xi 上的值 为 yi = f(xi),i = 0, 1, …, n。如果 S(x) 于 [a, b] 有 二阶连续导数,且在每个小区间 [xi , xi+1] 上是 三次多项式,则称 S(x) 是节点 x0,x1,…,xn 上的三次样条函数。如果 S(x) 在节点 xi上还满 足插值条件 S(xi) = yi,i = 0, 1, …, n, 则称 S(x) 为三次样条插值函数。 (7.2.11)
P3(x) = 0(x)y0 1(x)y1 0(x)m0 1(x)m1 (7.2.9)
1 ( x x0 )(x x2 ) 1 1 ( x ) 1 ( x x1 ) 2 ( x1` x0 ) ( x1 x2 ) x1 x0 x1 x2 2 ( x x0 )(x x1 ) 3 ( x) ( x2 x0 )(x2 x1 ) 2 ( x x0 )(x x1 )(x x2 ) 1 ( x) ( x1 x0 )(x1 x2 ) ( x x1 ) 2 ( x x2 ) 0 ( x) ( x0 x1 ) 2 ( x0 x2 )
i 1
i 1 x x j yk k i 1 j i 1 xk x j j k
(7.2.2)
其中 x[xi -1 , xi +1]
3.三次 Hermite 插值 三次 Hermite 插值问题的基本提法一:已 知一维数据
§7.2 一维数据的基本插值方法简介
插值函数类的取法很多,可以是代数多项 式,也可以是三角多项式或有理函数;可以是 [a, b] 上任意光滑函数,也可以是分段光滑函数。 在此介绍最基本、最常用的两种插值方法:分 段多项式插值与三次样条插值,及其 Matlab 实 现。
§ 7.2.1 一维数据的分段多项式插值
引例 7.1.2 在某化学反应中,已知生成物的浓度 与时间有关。今测得一组数据如下:
表7.1.2
时间t(分)
浓度y103
1
4.00
2
6.40
3
8.00
4
8.80
5
9.22
6
9.50
7
9.70
8
9.86
时间t(分)
浓度y103
9
10
11
12
13
14
15
16
10.00 10.20 10.32 10.32 10.50 10.55 10.58 10.60
根据这些数据,我们希望寻找一个 y = f(t) 的近似表达 式(如建立浓度y与时间 t 之间的经验公式等)。从几 何上看,就是希望根据给定的一组点(1, 4.00),…, (16, 10.60),求函数 y = f(t) 的图象的一条拟合曲线。
数据拟合问题的基本提法:对于给定的函数表
x
y = f(x)
对于给定的一维数据
x y = f(x) x0 y0 x1 y1 … … xn yn
分段多项式插值就是求一个分段(共 n 段)多 项式 P(x),使其满足 P(xi) = yi(i = 0, 1, …, n) 或更高的要求。一般地,分段多项式插值中的 多项式都是低次多项式(不超过三次)。
1.分段线性插值
分段线性插值函数 P1(x) 是一个分段一次多 项式(分段线性函数)。在几何上就是用折线 代替曲线,如图 7.2.1,故分段线性插值亦称为 折线插值。其插值公式为
x xi x xi 1 P yi 1 yi 1 ( x) xi 1 xi xi xi 1
其中 x[xi, xi +1]
§ 7.1.1 插值 引例 7.1.1 已经测得在北纬 32.3 海洋不同深度处 的温度如下表:
表7.1.1 深度x (m) 466 714 950 1422 1634
水温y (C)
7.04
4.28
3.40
2.54
2.13
根据这些数据,我们希望能合理地估计出其它深度 (如 500米、600米、1000米…)处的水温。 解决这个问题,可以通过构造一个与给定数据相 适应的函数来解决,这是一个被称为插值的问题。
2.如果给定的数据是大量的测试或统计的 结果,并不是必须严格遵守的,而是起定性地 控制作用的,那么宜选用数据拟合的方法。这 是因为,一方面测试或统计数据本身往往带有 测量误差,如果要求所得的函数与所给数据完 全吻合,就会使所求函数保留着原有的测量误 差;另一方面,测试或统计数据通常很多,如 果采用插值方法,不仅计算麻烦,而且逼近效 果往往较差。
(7.2.1)
图 7.2.1 分段线性插值示意图
2.分段二次插值
分段二次插值函数 P2(x) 是一个分段二次多项 式。在几何上就是分段抛物线代替曲线 y = f(x), 故分段二次插值又称为分段抛物插值。其插值公式
P2 ( x) ( x xi )(x xi 1 ) ( x xi 1 )(x xi 1 ) ( x xi 1 )(x xi ) yi 1 yi yi 1 ( xi 1 xi )(xi 1 xi 1 ) ( xi xi 1 )(xi xi 1 ) ( xi 1 xi 1 )(xi 1 xi )
x0
y0
x1
y1
…
…
xn
yn
其中 f(x) 在区间 [a, b] 上连续,x0,x1,…,xn为 [a, b] 上 n1个互不相同的点,要求找一个简单合理的函数 近似表达式 (x),使 (x) 与 f(x) 在某种准则下最为接 近,这就是最基本的数据拟合问题(见图7.1.2)。 通常,我们称 (x) 为给定数据点的拟合函数。
插值与数据拟合
第七讲
插值与数据拟合
§7.1 引言
在工程和科学实验中,常常需要从一组实 验观测数据 (xi , yi ) (i = 1, 2, …, n) 揭示自变量 x 与因变量 y 之间的关系,一般可以用一个近 似的函数关系式 y = f(x) 来表示。函数 f(x) 的产 生办法因观测数据与要求的不同而异,通常可 采用两种方法:插值与数据拟合。
9 8 7 6 5 4 3 2 400 600 800 1000 1200 1400 1600 1800
图 7.1.1 插值问题示意图
为便于叙述,通常称区间 [a, b] 为插值区 间,称点 x0,x1,…,xn为插值节点,称函数类 {P(x)} 为插值函数类,称式 (7.1.1) 为插值条件, 称函数 P(x) 为插值函数,称 f(x) 为被插函数。 求插值函数 P(x) 的方法称为插值法。
1.三次样条插值问题的基本提法 对于给定的一维数据 x y = f(x) x0 y0 x1 y1 … … xn yn
求一个三次多项式 S(x) 满足条件 (1)S(xi) = yi,i = 0, 1, …, n; (2)S(x) 具有二阶连续导数,特别在节点 xi 上应 满足连续性要求,即对 i = 0, 1, …, n 有
(7.2.6)
三次 Hermite 插值问题的基本提法二:已 知一维数据
x y = f (x) y = f (x) x0 y0 x1 y1 m1 x2 y2
求一个三次多项式 P3(x),使之满足 P3(xi) = yi,i = 0, 1, 2,P3(x1) = mi
(7.2.3)
下 面 的 (7.2.9) 、 (7.2.10) 两 式 构 成 里 三 次 Hermite 插值基本提法二的插值公式
对应于划分 的三次样条插值函数的表达式为
S3 ( x) 0 1 x
2 x
2!
2
3 x3
3!
j 1
百度文库
n 1
j ( x x j )3
3!
(7.2.12)
其中
m x , x0 m x 0, x 0
3.边界条件 在式 (7.2.12) 给出的三次多项式中,共含 有 n3 个待定系数。而由插值条件 (7.2.11) 式, 可列出 n1 个方程,方程组中未知数的个数比 方程个数多 2,还需附加 2 个条件才能进行求 解。通常可在区间端点 x0 = a 和 xn = b 处各附 加一个条件(称为边界条件或边值条件)去确 定 S (x )。
x[ a ,b ]
即:有界区间上的连续函数被多项式一致逼近。
§ 7.1.4 实际应用中两种方法的选择
在实际应用中,究竟选择哪种方法比较恰 当?总的原则是根据实际问题的特点来决定采 用哪一种方法。具体说来,可从以下两方面来 考虑:
1.如果给定的数据是少量的且被认为是严 格精确的,那么宜选择插值方法。采用插值方 法可以保证插值函数与被插函数在插值节点处 完全相等。
解决这个问题,可以通过构造一个与给定数据相 适应的函数来解决,这是一个被称为插值的问题。 插值问题的基本提法:对于给定的函数表
x
y = f(x)
x0
y0
x1
y1
…
…
xn
yn
其中 f(x) 在区间 [a, b] 上连续,x0,x1,…,xn为 [a, b] 上 n1个互不相同的点,要求在一个性质优良、便于 计算的函数类 {P(x)} 中,选出一个使 P(xi ) = yi,i = 0, 1, …, n (7.1.1) 成立的函数 P(x) 作为 f(x) 的近似,这就是最基本的插 值问题(见图7.1.1)。
P3(x) = 0(x)y0 1(x)y1 0(x)m0 1(x)m1 (7.2.5)
2 x x0 x x1 0 ( x) 1 2 x x x x 1 0 0 1 2 x x1 x x0 1 ( x) 1 2 x x x x 0 1 1 0 2 x x1 0 ( x) ( x x0 ) x x 0 1 2 x x0 1 ( x) ( x x1 ) x x 1 0
11 10 9 8 7 6 5 4 3 0 2 4 6 8 10 12 14 16
图7.1.2 数据拟合问题示意图
§ 7.1.3 插值与数据拟合的基本理论依据
插值方法与数据拟合的基本理论依据,就 是数学分析中的 Weierstrass 定理:设函数 f(x) 在区间 [a, b] 上连续,则对 > 0,存在多项式 P(x),使得 max f ( x) P( x)
x y = f (x) y = f (x) x0 y0 m0 x1 y1 m1
求一个三次多项式 P3(x),使之满足 P3(xi) = yi,P3(xi) = mi,i = 0, 1
(7.2.3)
下面的 (7.2.5)、 (7.2.6) 两式构成里三次 Hermite 插值基本提法一的插值公式
(7.2.10)
§ 7.2.2 一维数据的三次样条插值 上述介绍的分段多项式插值,其优点为计算简单、稳 定性好、收敛性有保证,且易于在计算机上实现。但它也 明显存在着缺陷。它只能保证在每个小区间段 [xi, xi+1] 内 光滑,在各小区间连接点 xi 处连续,却不能保证整条曲线 的光滑、光顺性,难以满足某些工程的要求。对于象高速 飞机的机翼形线,船体放样等型值线往往要求有二阶光滑 度,即有二阶连续导数。而由 60 年代开始,首先起源与 航空、造船业等工程设计的实际需要而发展起来的样条插 值,既保留了分段多项式插值的各种优点,又提高了插值 函数的光滑度。 在此,仅介绍应用最广且具有二阶连续导数的三次样 条插值方法。
2.三次样条插值函数 给定区间 [a, b] 的一个划分:a = x0 < x1 < … < xn = b,设函数 y = f(x) 在节点 xi 上的值 为 yi = f(xi),i = 0, 1, …, n。如果 S(x) 于 [a, b] 有 二阶连续导数,且在每个小区间 [xi , xi+1] 上是 三次多项式,则称 S(x) 是节点 x0,x1,…,xn 上的三次样条函数。如果 S(x) 在节点 xi上还满 足插值条件 S(xi) = yi,i = 0, 1, …, n, 则称 S(x) 为三次样条插值函数。 (7.2.11)
P3(x) = 0(x)y0 1(x)y1 0(x)m0 1(x)m1 (7.2.9)
1 ( x x0 )(x x2 ) 1 1 ( x ) 1 ( x x1 ) 2 ( x1` x0 ) ( x1 x2 ) x1 x0 x1 x2 2 ( x x0 )(x x1 ) 3 ( x) ( x2 x0 )(x2 x1 ) 2 ( x x0 )(x x1 )(x x2 ) 1 ( x) ( x1 x0 )(x1 x2 ) ( x x1 ) 2 ( x x2 ) 0 ( x) ( x0 x1 ) 2 ( x0 x2 )
i 1
i 1 x x j yk k i 1 j i 1 xk x j j k
(7.2.2)
其中 x[xi -1 , xi +1]
3.三次 Hermite 插值 三次 Hermite 插值问题的基本提法一:已 知一维数据
§7.2 一维数据的基本插值方法简介
插值函数类的取法很多,可以是代数多项 式,也可以是三角多项式或有理函数;可以是 [a, b] 上任意光滑函数,也可以是分段光滑函数。 在此介绍最基本、最常用的两种插值方法:分 段多项式插值与三次样条插值,及其 Matlab 实 现。
§ 7.2.1 一维数据的分段多项式插值
引例 7.1.2 在某化学反应中,已知生成物的浓度 与时间有关。今测得一组数据如下:
表7.1.2
时间t(分)
浓度y103
1
4.00
2
6.40
3
8.00
4
8.80
5
9.22
6
9.50
7
9.70
8
9.86
时间t(分)
浓度y103
9
10
11
12
13
14
15
16
10.00 10.20 10.32 10.32 10.50 10.55 10.58 10.60
根据这些数据,我们希望寻找一个 y = f(t) 的近似表达 式(如建立浓度y与时间 t 之间的经验公式等)。从几 何上看,就是希望根据给定的一组点(1, 4.00),…, (16, 10.60),求函数 y = f(t) 的图象的一条拟合曲线。
数据拟合问题的基本提法:对于给定的函数表
x
y = f(x)
对于给定的一维数据
x y = f(x) x0 y0 x1 y1 … … xn yn
分段多项式插值就是求一个分段(共 n 段)多 项式 P(x),使其满足 P(xi) = yi(i = 0, 1, …, n) 或更高的要求。一般地,分段多项式插值中的 多项式都是低次多项式(不超过三次)。
1.分段线性插值
分段线性插值函数 P1(x) 是一个分段一次多 项式(分段线性函数)。在几何上就是用折线 代替曲线,如图 7.2.1,故分段线性插值亦称为 折线插值。其插值公式为
x xi x xi 1 P yi 1 yi 1 ( x) xi 1 xi xi xi 1
其中 x[xi, xi +1]
§ 7.1.1 插值 引例 7.1.1 已经测得在北纬 32.3 海洋不同深度处 的温度如下表:
表7.1.1 深度x (m) 466 714 950 1422 1634
水温y (C)
7.04
4.28
3.40
2.54
2.13
根据这些数据,我们希望能合理地估计出其它深度 (如 500米、600米、1000米…)处的水温。 解决这个问题,可以通过构造一个与给定数据相 适应的函数来解决,这是一个被称为插值的问题。
2.如果给定的数据是大量的测试或统计的 结果,并不是必须严格遵守的,而是起定性地 控制作用的,那么宜选用数据拟合的方法。这 是因为,一方面测试或统计数据本身往往带有 测量误差,如果要求所得的函数与所给数据完 全吻合,就会使所求函数保留着原有的测量误 差;另一方面,测试或统计数据通常很多,如 果采用插值方法,不仅计算麻烦,而且逼近效 果往往较差。
(7.2.1)
图 7.2.1 分段线性插值示意图
2.分段二次插值
分段二次插值函数 P2(x) 是一个分段二次多项 式。在几何上就是分段抛物线代替曲线 y = f(x), 故分段二次插值又称为分段抛物插值。其插值公式
P2 ( x) ( x xi )(x xi 1 ) ( x xi 1 )(x xi 1 ) ( x xi 1 )(x xi ) yi 1 yi yi 1 ( xi 1 xi )(xi 1 xi 1 ) ( xi xi 1 )(xi xi 1 ) ( xi 1 xi 1 )(xi 1 xi )
x0
y0
x1
y1
…
…
xn
yn
其中 f(x) 在区间 [a, b] 上连续,x0,x1,…,xn为 [a, b] 上 n1个互不相同的点,要求找一个简单合理的函数 近似表达式 (x),使 (x) 与 f(x) 在某种准则下最为接 近,这就是最基本的数据拟合问题(见图7.1.2)。 通常,我们称 (x) 为给定数据点的拟合函数。
插值与数据拟合
第七讲
插值与数据拟合
§7.1 引言
在工程和科学实验中,常常需要从一组实 验观测数据 (xi , yi ) (i = 1, 2, …, n) 揭示自变量 x 与因变量 y 之间的关系,一般可以用一个近 似的函数关系式 y = f(x) 来表示。函数 f(x) 的产 生办法因观测数据与要求的不同而异,通常可 采用两种方法:插值与数据拟合。
9 8 7 6 5 4 3 2 400 600 800 1000 1200 1400 1600 1800
图 7.1.1 插值问题示意图
为便于叙述,通常称区间 [a, b] 为插值区 间,称点 x0,x1,…,xn为插值节点,称函数类 {P(x)} 为插值函数类,称式 (7.1.1) 为插值条件, 称函数 P(x) 为插值函数,称 f(x) 为被插函数。 求插值函数 P(x) 的方法称为插值法。
1.三次样条插值问题的基本提法 对于给定的一维数据 x y = f(x) x0 y0 x1 y1 … … xn yn
求一个三次多项式 S(x) 满足条件 (1)S(xi) = yi,i = 0, 1, …, n; (2)S(x) 具有二阶连续导数,特别在节点 xi 上应 满足连续性要求,即对 i = 0, 1, …, n 有
(7.2.6)
三次 Hermite 插值问题的基本提法二:已 知一维数据
x y = f (x) y = f (x) x0 y0 x1 y1 m1 x2 y2
求一个三次多项式 P3(x),使之满足 P3(xi) = yi,i = 0, 1, 2,P3(x1) = mi
(7.2.3)
下 面 的 (7.2.9) 、 (7.2.10) 两 式 构 成 里 三 次 Hermite 插值基本提法二的插值公式
对应于划分 的三次样条插值函数的表达式为
S3 ( x) 0 1 x
2 x
2!
2
3 x3
3!
j 1
百度文库
n 1
j ( x x j )3
3!
(7.2.12)
其中
m x , x0 m x 0, x 0
3.边界条件 在式 (7.2.12) 给出的三次多项式中,共含 有 n3 个待定系数。而由插值条件 (7.2.11) 式, 可列出 n1 个方程,方程组中未知数的个数比 方程个数多 2,还需附加 2 个条件才能进行求 解。通常可在区间端点 x0 = a 和 xn = b 处各附 加一个条件(称为边界条件或边值条件)去确 定 S (x )。
x[ a ,b ]
即:有界区间上的连续函数被多项式一致逼近。
§ 7.1.4 实际应用中两种方法的选择
在实际应用中,究竟选择哪种方法比较恰 当?总的原则是根据实际问题的特点来决定采 用哪一种方法。具体说来,可从以下两方面来 考虑:
1.如果给定的数据是少量的且被认为是严 格精确的,那么宜选择插值方法。采用插值方 法可以保证插值函数与被插函数在插值节点处 完全相等。
解决这个问题,可以通过构造一个与给定数据相 适应的函数来解决,这是一个被称为插值的问题。 插值问题的基本提法:对于给定的函数表
x
y = f(x)
x0
y0
x1
y1
…
…
xn
yn
其中 f(x) 在区间 [a, b] 上连续,x0,x1,…,xn为 [a, b] 上 n1个互不相同的点,要求在一个性质优良、便于 计算的函数类 {P(x)} 中,选出一个使 P(xi ) = yi,i = 0, 1, …, n (7.1.1) 成立的函数 P(x) 作为 f(x) 的近似,这就是最基本的插 值问题(见图7.1.1)。
P3(x) = 0(x)y0 1(x)y1 0(x)m0 1(x)m1 (7.2.5)
2 x x0 x x1 0 ( x) 1 2 x x x x 1 0 0 1 2 x x1 x x0 1 ( x) 1 2 x x x x 0 1 1 0 2 x x1 0 ( x) ( x x0 ) x x 0 1 2 x x0 1 ( x) ( x x1 ) x x 1 0
11 10 9 8 7 6 5 4 3 0 2 4 6 8 10 12 14 16
图7.1.2 数据拟合问题示意图
§ 7.1.3 插值与数据拟合的基本理论依据
插值方法与数据拟合的基本理论依据,就 是数学分析中的 Weierstrass 定理:设函数 f(x) 在区间 [a, b] 上连续,则对 > 0,存在多项式 P(x),使得 max f ( x) P( x)
x y = f (x) y = f (x) x0 y0 m0 x1 y1 m1
求一个三次多项式 P3(x),使之满足 P3(xi) = yi,P3(xi) = mi,i = 0, 1
(7.2.3)
下面的 (7.2.5)、 (7.2.6) 两式构成里三次 Hermite 插值基本提法一的插值公式
(7.2.10)
§ 7.2.2 一维数据的三次样条插值 上述介绍的分段多项式插值,其优点为计算简单、稳 定性好、收敛性有保证,且易于在计算机上实现。但它也 明显存在着缺陷。它只能保证在每个小区间段 [xi, xi+1] 内 光滑,在各小区间连接点 xi 处连续,却不能保证整条曲线 的光滑、光顺性,难以满足某些工程的要求。对于象高速 飞机的机翼形线,船体放样等型值线往往要求有二阶光滑 度,即有二阶连续导数。而由 60 年代开始,首先起源与 航空、造船业等工程设计的实际需要而发展起来的样条插 值,既保留了分段多项式插值的各种优点,又提高了插值 函数的光滑度。 在此,仅介绍应用最广且具有二阶连续导数的三次样 条插值方法。