当前位置:文档之家› 化工计算方法-3-插值法

化工计算方法-3-插值法


• 以直线方程作为插值多项式,即下 式中的 n=1
x3= 30 x4= 40
x5= 50 x6= 60 x7= 70
y3= 4.2474 y4= 7.3766
y5= 12.34 y6= 19.923 y7= 31.164
Pn ( x ) a0 a1 x a2 x 2 an x n
饱和蒸汽 压f(x) y0=0.6087 y1= 1.2262 y2= 2.3346 y3= 4.2474 y4= 7.3766 y5= 12.34 y6= 19.923 y7= 31.164
3
• Pn(x)称为函数 f(x) 的插值多项式 • 点 x0, x1, … xn 叫做插值节点 • [a,b]为插值区间。 插值方式: • 全节点插值——用全部节点构造插 值多项式(通过全部节点) • 分段插值——只用部分节点构造插 值多项式(只通过部分节点) 本节讨论 一元n 次拉格朗日插值(n +1个点) • 线性插值(2个节点) • 抛物线插值(3个节点) #
l k 1 ( x ) 必定含有因子 ( x x k ) , ( x xk 1 )
k 1
k 1
l k 1 ( x k ) 0
l k 1 ( x k 1 ) 0 l k 1 ( x ) A( x xk )( x xk 1 ) 1 A( xk 1 xk )( xk 1 xk 1 ) 由 l k 1 ( x k 1 ) 1 1 ( x xk )( x xk 1 ) A l k 1 ( x ) ( x k 1 x k )( x k 1 xk 1 ) ( xk 1 xk )( xk 1 xk 1 )

什么叫插值?
水的物理性质
温度
oC
饱和蒸汽压
kN/m2 0.6082 1.2262
0 10
20
30 40
2.3346
4.2474 7.3766
50
60 70
12.34
19.923 31.164
插 值 法 • 如何查水在27oC、32.7oC 的饱和蒸汽压和焓? •函数关系:函数值和自变量的 焓 关系以表格给出,称列表函数 kJ/kg • 列表函数的特点: 0 ① 自变量与函数值一一对应; 42.04 ② 函数值有很可靠的精确度; 83.90 ③ 自变量与函数间的解析表达 125.69 式可能不清楚,或者解析表达 167.51 式非常复杂不便于计算(如为 209.30 无穷级数等); 251.12 ④ 没有直接给出未列出点的函 292.99 数值,不便于进行微分和积分 以及计算机计算。 # 1 3

jk
拉格朗日插 值公式
将插值基函数组合可得拉格朗日n次插值多项式 n n n x xj Ln ( x ) l k ( x ) yk ( ) yk j , k 0, 1, , n k 0 k 0 j 0 xk x j


jk
11
3.2.3 n次插值
Ln ( x )
L1 ( x ) yk l k ( x ) yk 1l k 1 ( x )
也是线性插值多项式 线性组合系数
l k ( x k 1 ) 0 l k 1 ( x k 1 ) 1
• 满足以上条件的 lk(x) 和 lk+1(x) 称为线性基本插值多项式 或线性插值基函数,插值多项式可用插值基函数的线性组合 5 构成。 #
温度 x
插 值 法 饱和蒸汽压 f(x)
• 代数插值问题描述(怎样进行插值) • 列表函数例
x0= 0
x1= 10 x2= 20 x3= 30
0.6087
1.2262 2.3346 4.2474
a x0 x1 x2 xn b
已知函数 f (x) 在各点(x0 , x1 …)上的值
y0 , y1 , y2 yn
设函数
y f ( x) 在区间上连续
x4= 40
x5= 50
7.3766
12.34
目的:运用计算机方便地求解函数值 和进行微积分等计算
思路:寻找列表函数的近似解析表达 式 (不知道 f(x) 的函数表达形式)
x6= 60
19.923
x7= 70 31.164 方法:建立一个次数不超过n的代数多项式 P(x) 来近似 f(x)
插值基函数满足 lk (xk) =1, lk (xk+1) =0 lk+1 (xk) =0, lk (xk+1) =0
抛物线插值和插值基函数为
L2 ( x ) yk 1l k 1 ( x ) yk l k ( x ) yk 1l k 1 ( x )
( x xk )( x xk 1 ) l k 1 ( x ) ( xk 1 xk )( xk 1 xk 1 )
f(xk) f(xk-1)
L1(x)
f(xk+2)
L2 ( x )
xk-1
xk
xk+1
7
x
二次插值(三点插值或抛物线插值) 如何求满足条件的二次插值基函数,分析一次插值基函数 x x k 1 x xk •要满足条件 lk ( x ) , l k 1 ( x ) x k x k 1 x k 1 x k l (x ) 1
l k 1 ( x k 1 ) 1 l k ( x k 1 ) 0 l k 1 ( x k ) 0 l k ( x k ) 1 y l k 1 ( x k 1 ) 0 l k ( x k 1 ) 0 l k 1 ( x k 1 ) 0 l k 1 ( x k ) 0 l k 1 ( x k 1 ) 1
( x xk 1 )( x xk ) l k 1 ( x ) ( xk 1 xk 1 )( xk 1 xk )
l k ( x k 1 ) 0 lk ( xk ) 1 l k ( xk 1 ) 0
10
3.2.3 n次插值
用 n+1 个 插值节点,构造一个n 次插值多项式 Pn (x) 使通过所有 n+1 个插值节点,即满足 Pn ( x j ) y j (j = 0, 1,…,n) 所以此时的插值基函数应该满足 1 i k lk ( xi ) ( i , k 0, 1, 2, , n) 0 i k 用类似的推导方法,可求得n次插值基函数为 n x xj lk ( x ) ( ) j , k 0, 1, 2, , n j 0 xk x j
Pn ( x ) a0 a1 x a2 x 2 an x n
2
插 值 法 •用代数多项式P(x)近似列表函数 y 条件:满足 Pn(xi)=yi (i=0,1,…n)
Pn ( x ) a0 a1 x a2 x 2 an x n
温度 x x0 = 0 x1= 10 x2= 20 x3= 30 x4= 40 x5= 50 x6= 60 x7= 70
线性插值图示
L1 ( xk ) y( xk )
y
L1 ( xk L1(x)
温度 x x0= 0
x1= 10 x2= 20 x3= 30 x4= 40 x5= 50 x6= 60 x7= 70
饱和蒸汽压 f(x) y0=0.6082
y1= 1.2262 y2= 2.3346 y3= 4.2474 y4= 7.3766 y5= 12.34 y6= 19.923 y7= 31.164
• 3.2 拉格朗日(Lagrange)插值 3.2.1 线性插值(2个节点)

线性插值——用直线方程 L1(x) 近 似列表函数式 f(x) 需要构造一个直线方程(线性插值 多项式)
温度 x
x0= 0 x1= 10 x2= 20
饱和蒸汽压 f(x)
y0=0.6082 y1= 1.2262 y2= 2.3346
xk 1 xk 由两点式可看出, L1(x) 是由两个线性函数 x x k 1 x xk 的线性组合得到的, lk ( x ) , l k 1 ( x ) x k x k 1 x k 1 x k
线性插值多项式可写为 满足
l k ( xk ) 1 l k 1 ( x k ) 0
l ( x) y ( x
k k k 0 k 0 j 0 jk
n
n
n
x xj
k
xj
) yk
j , k 0, 1, , n
• 如果节点数有n+1个,称为 全节点插值 插值公式通过n+1个插值节点,是唯一确定的 拉格朗日n次插值 的几何意义 是否通过的点越多, 插值次数越高 越好? #
f(xk)
f(x)
xk
xk+1
x
• 几何意义:用给定两点的直线 y=L1(x) 近似替代 f (x)。 #
6
3.2.2
二次插值(三点插值或抛物线插值)
二次插值是用已知的3个插值节点,构造一个二次函数L2(x) 并使函数通过三个插值节点 ( x k 1 , y k 1 ) ( x k , y k ) ( x k 1 , y k 1 ) 构造方法:用插值基函数进行线性组合。 但此时因是三个插值节点,插值基函数应该是二次函数。 插值基函数在节点处应满足条件:
12
•用11点构造10次多项式插值的龙格现象
1 1 25 x 2
• 某些点插值结果误差很大,函数两端震荡加剧 • 在节点很多的场合,通常不宜采用高次插值 • 分段的低阶插值往往效果更好
13
例题 3-1 已知函数表 x 0· 1 0· 2 0· 3 0· 4 f(x) 0· 0998 0· 1987 0· 2955 0· 3894 分别用线性插值、2次插值和3次插值求f(x)在x = 0.25处的值。 解(1)分段线性插值 选取最接近插值点0.25的两个插值节点,求f(x)在x=0.25处 的值。 由于简单,可以直接计算。选取的两个插值节点如下
相关主题