数据处理插值和拟合方法_第1页
数据处理插值和拟合方法_第2页
数据处理插值和拟合方法_第3页
数据处理插值和拟合方法_第4页
数据处理插值和拟合方法_第5页
已阅读5页,还剩85页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算方法第四章 插值方法计算方法课程组华中科技大学数学与统计学院§4

插值方法§4.1多项式插值问题的一般提法§4.2

拉格朗日(Lagrange)插值§4.3

差商与差分及其性质§4.4牛顿插值公式§4.5

分段插值法§4.6曲线拟合的最小二乘法§4.0

引言插值法是广泛应用于理论研究和生产实践的重要数值方法,它是用简单函数(特别是多项式或分段多项式)为各种离散数组建立连续模型;为各种非有理函数提供好的逼近方法。众所周知,反映自然规律的数量关系的函数有三种表示方法:f

(x)

=

x3

-

2x

-

5x

=

y

-

esin

y解析表达式图象法表格法§4.0

引言许多数据都是用表格法给出的(如观测和实验而得到的函数数据表格),可是,从一个只提供离散的函数值去进行理论分析和进行设计,是极不方便的,甚至是不可能的。因此需要设法去寻找与已知函数值相符,并且形式简单的插值函数(或近似函数)。另外一种情况是,函数表达式完全给定,但其形式不适宜

计算机使用,因为计算机只能执行算术和逻辑操作,因此

涉及连续变量问题的计算都需要经过离散化以后才能进行。如数值积分方法、数值微分方法、差分方程以及有限元法

等,都必须直接或间接地应用到插值理论和方法。§4.1多项式插值问题的一般提法当精确函数y=f(x)非常复杂或未知时,在一系列节点x0

…xn

处测得函数值y0

=f

(x0),…,

yn

=f(xn),由此构造一个简单易算的近似函数p(x)

»

f(x),满足条件:

p(xi)

=

f(xi) (i=0,…n)。这里的

p(x)

称为f(x)

的插值函数。最常用的插值函数是…?代数多项式、三角多项式、有理分式…插值函数p(x)作为f(x)的近似,可以选自不同类型的函数,如p(x)为代数多项式、三角多项式、有理分式;其函数性态可以是光滑的、亦可以是分段光滑的。其中,代数多项式类的插值函数占有重要地位:结构简单、计算机容易处理、任何多项式的导数和积分也易确定,并且仍是多项式。著名的Weierstrass逼近定理(定义在闭区间上的任何连续函数f(x),存在代数多项式p(x)一致逼近f(x),并达到所要求的精度)。因此,我们主要考虑代数多项式的插值问题。x0

,x1,…,

xn

插值节点,函数P(x)称为函数y=f(x)的插值函数,区间[a,b]称为插值区间。例题:

已知函数

f(x)

有如下数据:求f(x)的插值多项式p(x),并求f(x)在x=0.5

处的近似值。插值的几何意义从几何上看,插值就是求一条曲线使其通过给定的并且与已知曲线n

个+1点(,xi

,

yi

)y

=

P(x)(i

=

0,1,,

n)y

=有f(一x)定的近似度。xyy

=p(x)0

a=x0

x1x2

x3xn=b•(xi,

yi)y

=

f

(x)曲线P

(x)近似f

(x)插值方法的研究问题满足插值条件的P

(x)是否存在唯一?若满足插值条件的P

(x)存在,如何构造P

(x)?如何估计用P

(x)近似替代f

(x)产生的误差?xyy

=p(x)0

a=x0

x1x2

x3xn=b•(xi,

yi)y

=

f

(x)曲线P

(x)近似f

(x)求n

次多项式使得:nPn

(

x)

=

a0

+

a1

x

+

+

an

xx

i

x

j条件:无重合节点,即i

„j§4.2

拉格朗日多项式/*

Lagrange

Polynomial

*/根据插值条件,有:nn

nn+

a

x

+

+

a x

n

=

y1

n01+

a

x

+

+

a x

n

=

y1

1

n

11

000

0

1

0

n

0

P

(

x

)

=

a

P

(

x

)

=

a

P

(

x

)

=

a

+

a

x

+

+

a x

n

=

y其系数矩阵的行列式为nnxnxnxn1x1x1x1100Vn

(

x0

,

x1

,,

xn

)

=pn

(

xi

)

=

yi

,

i

=

0,1,

,

nVandermonde行列式0£

j

<i£nVn

(x0

,

x1,,

xn

)

=

(xi

-

xj

)

0a

0

,

a

1

,

a

n注意到插值节点

xi

(i

=1,2,,

n)

两两相异,而故方程组(1)有惟一解于是满足插值条件的多项式存在且惟一。x0

,

x1

,,

xnP

(x)

=

a

+

a

x

++

a

xnn

0

1

nPn

(

xi

)

=

yi由n+1个不同插值节点满足插值条件(唯一性)

可以惟一确定一个n次多项式Returnn

=

1()x

=

a

0+

a1

x

使得已知

x0

,

x1

;

y0

,

y1

,求

L1L1

(

x00

)

=

y00

,

L1

(

x11

)

=

y11可见L1(x)是过(x0

,y0

)和(x1,y1

)两点的直线。l0(x)§4.2

拉格朗日多项式/*

Lagrange

Polynomial

*/线性插值基函数1.

构造线性插值基函数的方法:li

(x)

yi1100001010y

=x1

-

x0l1(x)x

-

xy

+x0

-

x1=

x

-

x1(x

-

x

)x

-

xy

-

yL1

(x)

=

y

+i

=0线性插值与其基函数示意图xyy

=

y1l1

(x)x0x1OL1

(x)

=

y0l0

(x)

+

y1l1

(x)y

=

y0l0

(x)x1xyy0y1y

=

f

(x)1y

=

L

(x)O

x0三点的一条抛物线。1

1(x

,

y

)(x2,

y2)n

=2

已知,

L2

(x)使得2

112

22()()()L2

x0

=

y0

L

x=

yL

x

=

y)((,)L

x

x

y显然,

2是过

、0

0

、x0

,x1,x2y

,y

,,求y0

1

21

1(x

,

y

)(x2,

y2)n

=2

已知x0

,x1,x2y

,y

,,求y0

1

2,

L2

(x)使得2

112

22()()()L2

x0

=

y0

L

x=

yL

x

=

y仿照线性插值基函数的构造方法,令

2

1

0(

x2

-

x0

)(

x2

-

x1

)l

(

x)

=(

x1

-

x0

)(

x1

-

x2

)(

x

-

x0

)(

x

-

x1

)(

x

-

x0

)(

x

-

x2

)l

(

x)

=(

x0

-

x1

)(

x0

-

x2

)(

x

-

x1

)(

x

-

x2

)l

(

x)

=抛物线基函数2)(L

x称其为抛物线插值基函数(如上右图所示)。)((,)L

x

x

y显然,

2是过

、0

0

、 三点的一条抛物线。

2

1

0(

x2

-

x0

)(

x2

-

x1

)l

(

x)

=(

x1

-

x0

)(

x1

-

x2

)(

x

-

x0

)(

x

-

x1

)(

x

-

x0

)(

x

-

x2

)l

(

x)

=(

x0

-

x1

)(

x0

-

x2

)(

x

-

x1

)(

x

-

x2

)l

(

x)

=抛物线插值基函数于是抛物线基函数20122(())(())(()))((())(())(()))(yx

-

x0x

-

x2x

-

x0x

-

x1x

-

x1

x

-

x2L

x

=y

+y

+x0

-

x1

x0

-

x2x1

-

x0x1

-

x2x2

-

x0x2

-

x1=

å

li

x

yii=0希望找到

li

(x),i

=

0,

…,

n

使得

li

(xj)

=

dij

;然后令一般情形lk

(

x)

=(xk

-

x0

)(xk

-

xk-1

)

(xk

-

xk+1

)(xk

-

xn

),

k

=

0,

1

,⋯,

n

.k

=

0,

1

,⋯,

n

.1A

=(xk

-

x0

)(xk

-

xk

-1)

(xk

-

xk

+1)(xk

-

xn

)(x

-

x0

)(

x

-

xk-1)(x

-

xk+1

)(x

-

xn

)每个

li

n

个根

x0

,…

xi

,…

xn令lk

(x)=A(x

-x0

)(x

-xk-1)(x

-xk+1

)(x

-xn

),由lk

(xk

)得=1,:nk

=

0Ln

(

x)=

f

(x

k

)l

k

(x

),则显然有Pn(xi)=yi

。nLn

(

x)=

k

=

0f

(

x

k

)

l

k

(

x

)(Lagrange)插值多项式nLn

(

x)=

f

(

xk

)

l

k

(

x)k

=0设

y

=

f

(

x)

函数表

(xi

,

f

(xi))(i

=0,

1,...,

n)

(xi

xj

,

i

j),则满足插值条件的多项式Ln

(xi

)=f

(xi

),(i

=0,1...n)nkj

=

0j

k

x

-

x

j

其中,

l

k

(

x

)

=(

k

=

0

,

1,

...n

)

.x

-

x

j先求插值基函数.构造插值多项式.以下的问题:如何分析插值的余项?构造插值多项式的方法:x-1012f

(x)-2-212已知连续函数f

(x)的函数表如下:求方程f

(x)=0

在(-1,2)内的近似根。例题取初值x=0.5,利用牛顿法求解可得f(x)在(-1,2)内的近似根为0.67433。-5x3

+9x2

+14x

-12

=0x-1012f(x)-2-212已知连续函数f

(x)的函数表如下:求方程f(x)=0在(-1,2)内的近似根。解:利用Lagrange插值法有例题3(()()(()()))()()(()()())(()())(())(())()(()())L

x

=-

2

+x

-

0

x

-

1

x

-

2

x

+

1

x

-

1

x

-

2

-

2-

1

-

0 -

1

-

1 -

1

-

2 0

+

1 0

-

1 0

-

2+?2x

+

1

x

x

-

2

?1

x+

1

x

x

-

12

?1

1 2

+

1 2

-

0 2

-

16[]=

1

-5x3

+9x2

+14x

-

12

解方程,Lagrange插值法插值余项设节点

,且

f

满足条件f

(n

+1)在[a

,b]内存在,考察截断误差:Rn

(

x)

=

f

(

x)

-

Ln

(

x)nf˛

C

[a,b]a

£

x

<

x

<<

x

£b0

1

nLagrange插值法的插值余项,设节点

,且

f

满足条件nf˛

C

[a,b]a

£

x0

<

x1

<<

xn

£bf

(n

+1)在[a

,b]内存在,截断误差(或插值余项):f

(

n

+1)

(x

)Rn

(

x

)

=

f

(

x

)

-

Ln

(

x

)

=w

n

+1

(

x

)(

n

+

1)!,

x

˛

(a,

b)Lagrange插值法的插值余项,设节点

,且

f

满足条件nf˛

C

[a,b]a

£

x0

<

x1

<<

xn

£bf

(n

+1)在[a

,b]内存在,截断误差(或插值余项):f

(

n

+1)

(x

)Rn

(

x

)

=

f

(

x

)

-

Ln

(

x

)

=w

n

+1

(

x

)(

n

+

1)!,

x

˛

(a,

b)证明:由已知条件得到:Rn

(xk)

=

0,

k

=

0,1,,

n于是有:Rn

(x)

=k(x)(x

-x0

)(x

-x1)(x

-xn

)

=k(x)wn+1(x)其中k

(

x

)

是与

x

有关的待定函数。任意固定

x

xi

(i

=

0,

…,n),

考察j(t)

=

f

(t)

-

Ln

(t)

-

k

(x)(t

-

x0

)(t

-

x1

)(t

-

xn

)根据插值条件及余项定义,可知j

(t)

在点

x0

,

x1

,,

xn

,

x

处均为零,故

j

(t)

[a,

b]

上有n+2个个零点,根据

Roll

定理j¢(t)在j

(t)的每两个零点间至少有一个零点,故j¢(t)在

[a

,

b

]

内至少有

个零点,对

j¢(t)再用Roll

定理,可知j

¢(t)在[a,b]内至少有n

个零点,依此类推,j

(n+1)(t)在[a,b]内至少有一个零点,记为x

˛

(a,b)使得:j

(

n

+1)

(x

)

=

f

(

n

+1)

(x)

-

(n

+1)!k

(

x)

=

0f(

n

+1

)

(x

)k

(

x

)

=,

x

˛

(

a

,

b

)(

n

+

1)

!但如能求出Ln

(x的)截断误差限是:f

(x)当

n

=时1

,1

20

1

0

12

2R

(x)

=

1

f

''(x)w

(x)

=

1

f

''(x)(x

-

x

)(x

-

x

),x

˛

[x

,

x

]当n

=时22

30

1

26

6R

(x)

=

1

f

'''(x)w

(x)

=

1

f

'''(x)(x

-

x

)(x

-

x

)(x

-

x

),x

˛

[x0

,

x2

](

n

+1

)

(

x

,)m

a

x

fa

<

x

<

b=那M么用

逼近n

+1nw

(

x

)M

n

+1n

+1R

(

x

)

£(

n

+

1)!由于

x是不能确定,因此我们并不能确定误差的大小当

f

(x)为任一个次数£

n

的多项式时,f

(

n+1)

(

x)

0

,

可知,Rn

(

x)

0即插值多项式对于次数£

n

的多项式是精确的。注意下面哪个是l2(x)的图像?给定xi

=i

+1,

i

=0,1,2,3,4,5.问题Lagrange插值法用线性插值及抛物线插值计算的值并估计截断误差。,sin

0.34

=

0.333487,算例1已知sin

0.32

=0.314567sin

0.36

=

0.352274sin

0.3367算例1Lagrange插值法,sin

0.34

=

0.333487,已知sin

0.32

=0.314567sin

0.36

=

0.352274sin

0.3367解:x0=

0.32y0=

0.314567x1=

0.34y1=

0.333487x2=

0.36y2=

0.352274用线性插值及抛物线插值计算的值并估计截断误差。线性插值时取x0

=0.32,

x1

=0.34sin0.3367»L1(0.3367)=0.3145670.3367-0.32

+0.3334870.3367-0.340.34-0.32

0.32-0.34=0.330365其截断误差为:其中,因为

可取

于是:212MR

(x)

=(x

-

x0

)(x

-

x1

)

,x0

£x£x1M

2

=

max

f

''(x)f

(x)

=sin

x,

f

''(x)

=-sin

xx0

£x£x1M

2

=

max sin

x

=

sin

x1

£

0.33351112-5R

(0.3367)

=

sin

0.3367

-

L

(0.3367)£·0.3335·0.0167

·0.0033

£

0.92

·10用抛物线插值时,取所有节点,得到sin0.3367

»

L2

(0.3367)=0.314567

(0.3367-0.34)(0.3367-0.36)

+0.333487

(0.3367

-0.32)(0.3367-0.36)(0.32-0.34)(0.32-0.36)

(0.34-0.32)(0.34-0.36)+0.352274

(0.3367-0.32)(0.3367-0.34)(0.36-0.32)(0.36-0.34)0.0008

0.00040.00080.7689·10-4

3.89·10-4-0.5511·10-4+0.333487·+0.352274=0.314567·=0.330374余项讨论:其中:326MR

(

x

)

=(

x

-

x0

)(

x

-

x1

)(

x

-

x2

)

,x0

£x£x1M2

=

max

f

'''(x)

=cos

x0

£0.828R

2

(

0

.3367

)

=

sin

0

.3367

-

L2

(

0

.3367

1

·

0

.828

·

0

.0167

·

0

.033

·

0

.02336<

0

.178

·

10

-6算例2Lagrange插值法由于:解:利用

100,121

的开方计算

115

.利用Lagrange插值法有1121

-10010

+

11100

-121x

-100x

-121L

(x)

=于是,1121-100115

»

L

(115)

=

115-121

10

+115-100

11115的精确值为100

-121=10.7142810.72380529…,因此,

近似值

10.71428

有3

位有效数字.Return§4.3

差商与差分Lagrange插值虽然易算,但若要增加一个节点时,全部基函数

li(x)

都需重新算过。由线性代数的知识可知:任何一个n次多项式都可以表示成共n+1

个线性无关的多项式的线性组合。那么,是否可以将这n+1个多项式作为插值基函数呢?寻求如下形式的插值多项式:Pn

(x)

=

a0

+

a1

(x

-

x0

)

+

a2

(x

-

x0

)(x

-

x1

)

++

an

(x

-

x0

)(x

-

xn-1

)其中的

ai

为待定系数,由插值条件确定.1,x-x0,(x-x0)(x-x1),, (x

-

x0

)(x

-

x1)(x

-xn-1)设插值多项式P(x)具有如下形式:P(

x)

=

a0

+

a1

(

x

-

x0

)

+

a2

(

x

-

x0

)(

x

-

x1

)

++

an

(

x

-

x0

)(

x

-

x1

)(

x

-

xn

-1

)P(

xi

)

=

fi

,

i

=

0,1,,

na0

=

f01

0011x

-

x-

fa

=

fP(

x1

)

=

f1

=

a0

+

a1

(

x1

-

x0

)P(x2

)

=

f2=

a0

+

a1

(x2

-

x0

)+

a2

(x2

-

x0

)(x2

-

x1

)2ax2

-

x1x1

-

x0f2

-

f0

-

f1

-

f0=

x2

-

x0再继续下去,待定系数的形式将更复杂,为此引入差商和差分的概念.P(x)应满足插值条件:有:

P(x0

)

=

f0

=

a0§4.3.1

差商的概念从零阶差商出发,归纳地定义各阶差商:称f

[xi

,

xi+1]

=

f

[xi+1

]-

f

[xi

]xi+1

-

xi为函数

f

(x)

关于点xi

,

xi+1

的一阶差商.一般地,

f

(x)

关于

xi

,

xi+1,,

xi+k

k

阶差商:f

[x

,

xi

i+1i+kxi+k

-

xi]

=

f

[xi+1

,

xi+2

,,

xi+k

]-

f

[xi

,

xi+1,,

xi+k

-1

],,

x称的零阶差商。为f

(x)关于xif

[xi

]记函数

f

(x)

xi

的值

f

[xi

]

=

f

(xi

)

,的n

阶差商:一般地,

f

(x)

关于x0

,

x1,,

xn1

2xn

-

x0f

[x

,

x

,,

xn

]-

f

[x0

,

x1,,

xn-1]f

[x0

,

x1,,

xn

]

=n

阶差商的概念差商的基本性质性质1:差商可表示为函数值的线性组合,即:njjf

(xj

)j

=0j

-1j

+1f

[x0

,

x1

,,

xn

]

=(xj

-

x0

)(x-

x

)(x

-

x

)(xj

-

xn

)可用归纳法证明性质2:差商关于所含节点是对称的,即:f

[x0

,

x1,,

xn

]

=

f

[x1

,

x0

,,

xn

]

=

=

f

[xn

,

xn-1,,

x

0]差商的基本性质性质3:,使得:10mi-2

mi-1

mi-1,

x

]

=x

-

xf

[x

,,

x,

x

]-

f

[x0

,

x1,,

xi-1

]f

[x

,,

xn!f

(n)

(x)f

[x0

,

x1

,,

xn

]

=则$x

˛

(a,b)性质4:设

f

(x)

[a,

b]

存在

n

阶导数,且x

j

˛

[a,

b]差商的计算-差商表xif

(xi)一阶差商二阶差商三阶差商四阶差商x0f

(x0

)x1f

(x1

)f

[x0

,

x1

]x2f

(x2

)f

[x1,

x2

]f

[x0

,

x1,

x2

]x3f

(x3

)f

[x2

,

x3

]f

[x1

,

x2

,

x3

]f

[x0

,

x1

,

x2

,

x3

]x4f

(x4

)f

[x3

,

x4

]f

[x2

,

x3

,

x4

]f

[x1

,

x2

,

x3

,

x4

]f

[x0,

x1,

x2,

x3,

x4

]已知xif

(

xi

)f

[

1

,

2

,

4

,

7

]计算三阶差商解:列表计算x

if

(

x

i

)算例-

1

/

2f

[

1

,

2

,

4

,

7

]

=§4.3.2

差分在前面的讨论中,节点是任意分布的,但实际上经常遇到等距节点的情况,这时插值公式可以得到简化,为此,我们先介绍差分的概念。设函数

f在(x等)

距节点上的值

fi

=

f为(x已i

)

知,这里xi

=

x0

+

i

h

(i

=

0,1,,

n)为常数h

,称为步长。下面来讨论差分的定义。差分的定义记号Dfi

=

fi+1

-

fifi

=

fi

-

fi-1222

2i

i

ii+1i-1df

=

f

(x

+

h

)

-

f

(x

-

h

)

=

f

-

f分别称为

f

(x在

处x以i

为步h长的向前差分、向后差分、中心差分符号D、

分d别称为向前差分算子、向后差分算子、中心差分算子.高阶差分中心差分定义为:以此类推。用一阶差分可以定义二阶差分D2

f

=

Df

-

Df

=

f

-

2

f

+

fi

i+1

i

i+2

i+1

i一般地可定义m

阶差分为:Dm

f

=

Dm-1

f

-

Dm-1

fi

i+1

im

f

=im-1

f

-

m-1

fi

i-12dfi+1

=

fi+1

-

fi2dfi-1

=

fi

-

fi-122ii+1i-1d2

f

=

df

-

df不变算子I、移位算子E定义从而可得:

于是得到:

同理,由于:得到:由于:得到:由差分的定义及不变算子和移位算子有如下性质:Ifk

=

fk

Efk=

fk

+1Dfk

=

fk

+1

-

fk

=

Efk

-

Ifk

=

(E

-

I

)

fkD

=

E

-

I1212-d

=

E

-

E-1

-1fk

=

fk

-

fk

-1

=

Ifk

-

E

fk

=

(I

-

E

)

fk=

I

-

E-111212222kkkk-12-k

+1

k

-1d

f

=

f

-

f

=

Ef

-

Ef

=

(E-

E

)

f差分的性质性质1:各阶差分均可用函数值表示,如:性质2:某点的函数可用各阶差分来表示:nnfjjn-

jj

n

j

n

Dn

f

=

(E

-

I

)n

f

=k

k(-1)E

fk

=(-1)

k

+n-

j

j

=0j

=0nnnkkknn-

jj-nj=0j=0

f

=(I

-E-1)n

f

=(-1)E

f

=(-1)n-

j

n

f

j

j

k+

j-n

nnjkkjjn+k

j

n

n

f

=

En

f

=

(I

+

D)n

f

=k

kD

f

=D

f

j

=0

j

=0

性质3:差商与差分有如下关系:性质4:差分与导数有如下关系:km!

hm1

1

mf

[xk

,

xk

+1,,

xk

+m

]

= D

f(m

=1,

2,,

n)1km

fm!

hmk k

-1k

-m]

=

1f

[x

,

x

,

x(m

=1,

2,,

n)kk k

+nDn

f

=

hn

f

(n)

(x),

x

˛

(x

,

x

)差分的计算fkD(

)D2

(2

)D3

(3

)D4

(4

)f0Df0

(

f1

)D2

f

(02

f

)2D3

f

(03

f

)3D4

f

(04

f

)4f1Df1

(

f2

)D2

f

(12

f

)3D3

f

(13

f

)4f2Df2

(

f3

)D2

f

(22

f

)4f3Df3

(

f4

)f4Return4.4

牛顿插值公式根据差商的定义,把

x看成可得:[上a,的b]一点,f

(x)

=

f

(x0

)

+

f

[x,

x0

](x

-

x0

)f

[x,

x0

]

=f

[x0

,

x1

]

+

f

[x,

x0

,

x1

](x

-

x1

)f

[x,

x0

,,

xn-1

]

=

f

[x0

,

x1,,

xn

]

+

f

[x,

x0

,

x1

,,

xn

](x

-

xn

)4.4

牛顿插值公式根据差商的定义,把可得:x看成

[上a,的b]一点,f

(x)

=

f

(x0

)

+

f

[x,

x0

](x

-

x0

)f

[x,

x0

]

=

f

[x0

,

x1

]

+

f

[x,

x0

,

x1

](x

-

x1

)f

[x,

x0

,,

xn-1

]

=

f

[x0

,

x1,,

xn

]

+

f

[x,

x0

,

x1

,,

xn

](x

-

xn

)f

(x)

=

f

(x0

)

+

f

[x0

,

x1

](x

-

x0

)+

f

[x0

,

x1,

x2

](x

-

x0

)(x

-

x1

)

++

f

[x0

,

x1,,

xn

](x

-

x0

)(x

-

xn-1

)+

f

[x,

x0

,

x1,,

xn

]wn+1

(x)

=

Nn

(x)

+

Rn

(x)把后一式代入前一式其中显然Nn

(x)

=

f

(x0

)

+

f

[x0

,

x1

](x

-

x0

)f

n+1

(x)+

f

[x0

,

x1,

x2

](x

-

x0

)(x

-

x1

)

++

f

[x0

,

x1,,

xn

](x

-

x0

)(x

-

xn-1

)Rn

(x)

=

f

(x)

-

Nn

(x)

=

f

[x,

x0

,

x1

,,

xn

]w

n+1

(x)=

(x

-

x0

)(x

-

xn

)(n

+1)!N满n

(足x)插值条件,且次数不超过

,它就n是插值多项式,其系数为:ai

=

f

[x0

,

x1

,,

xi

],i

=

0,1,,

n我们称

N为n

(牛x)顿插值多项式.算例已知

的f

(函x)数表,求4

次牛顿插值多项式,并求

f

(0.596).0.400.410750.550.578151.116000.650.696751.186000.280000.800.888111.275730.358930.197330.901.026521.384100.433480.213000.031341.051.253821.515330.524930.228630.03126-0.00012并求解:列表计算算例已知的f

(函x)数表,求4

次牛顿插值多项式,f

(0.596).从表中可以看到4阶差商几乎为0,故取4次插值多项式即可,于是:N4

(x)=0.41075

+1.166(x

-0.4)+0.28(x

-0.4)(x

-0.55)+0.19733(x

-0.4)(x

-0.55)(x

-0.65)+0.03134(x

-0.4)(x

-0.55)(x

-0.65)(x

-0.8)f

(0.596)

»

N4

(0.596)

=

0.631920.400.410750.550.578151.116000.650.696751.186000.280000.800.888111.275730.358930.197330.901.026521.384100.433480.213000.031341.051.253821.515330.524930.228630.03126-0.00012并求解:列表计算算例已知的f

(函x)数表,求4

次牛顿插值多项式,f

(0.596).截断误差为:40

45-9£

3.63·10R

(x)

»f

[x

,,

x

]w

(0.596)N4

(x)

=

0.41075

+1.166(x

-0.4)

+0.28(x

-0.4)(x

-0.55)+0.19733(x

-0.4)(x

-0.55)(x

-0.65)+0.03134(x

-0.4)(x

-0.55)(x

-0.65)(x

-0.8)f

(0.596)

»

N4

(0.596)

=

0.63192由多项式的唯一性,的余项是相等的,即然后加上一项即可。牛顿插值公式和Lagrange插值公式比较Ln和(x)均Nn是(x)n

次多项式,且均满足插值条件:Ln

(xi

)

=

Nn

(xi

)

=

f

(xi

),

i

=

0,1,,

nL

(

x)

”,因N而(,x两)

个公式n

nf

(n+1)

(x)f

[x,

x0

,

x1,

xn

]wn

(x)

=

(n

+1)!

wn

(

x)当插值多项式从n-1

次增加到n

次时,拉格朗日型插值必须重新计算所有的基本插值多项式;而对于牛顿型插值,只需用表格再计算一个n

阶差商,Return4.5

分段插值公式在区间[a,

b]

上用插值多项式

P

逼近函数

f

时,f

和P在每个节点上的差异(理论上)应该为零。自然,我们期望在一切中间点上也能很好地逼近

f,并且当插值点增加时这种逼近效果应该越来越好。但上述的期望不可能实现的。当认识到这一点时,在数学界曾引起强烈的震动。20

世纪初,Runge就给出了一个等距节点插值多项式Ln

(x)

不收敛到

f

(x)

的例子。设函数拉格朗日插值多项式为1f

(x)

=,

x

˛

[-5,

5]

,1+

x2在该区间[-5,5]上取

n

+1

个等距节点,

构造f

(x

)

的n

次inx

=

-5

+10

i

(i

=

0,1,,

n)n

=

2,

4,

6,8,

20其matlab的lagrange.m文件及相关图形如下.nnj

inj

=0

i=0i„

j2j(

x

-

x

)1

+

x

1

(

x

-

xi

)

L

(

x)

=Runge

现象%

lagrange.mfunction

y=lagrange

(x0,y0,x)n=length(x0);m=length(x);for

i=1:mz=x(i);s=0;for

k=1:nL=1;for

j=1:nif

j~=kL=L*(z-x0(j))/(x0(k)-x0(j));endends=s+L*y0(k);endy(i)=s;endy;Lagrange插值多项式求插值的Matlab程序.%Compare_Runge.mx=-5:0.1:5;z=0*x;y=1./(1+x.^2);plot(x,z,'k',x,y,'r')axis([-5

5

-1.5

2]);pause,hold

onfor

n=2:2:20x0=linspace(-5,5,n+1);

y0=1./(1+x0.^2);x=-5:0.1:5;

y1=lagrange(x0,y0,x);plot(x,y1),

pauseendy2=1./(1+x0.^2);y=interp1(x0,y2,x);plot

(x,y,'k'),hold

offgtext('n=2'),gtext('n=4'),gtext('n=6')gtext('n=8'),gtext('n=10')gtext('f(x)=1/(1+x^2)')比较不同的插值多项式次数对插值的影响21.510.50-0.5-1-1.5-5 -4 -3 -2 -1

0

1

2

3

4

521.510.50-0.5-1-1.5-5 -4 -3 -2 -1

0

1

2

3

4

521.510.50-0.5-1-1.5-5 -4 -3 -2 -1

0

1

2

3

4

521.510.50-0.5-1-1.5-5 -4 -3 -2 -1

0

1

2

3

4

521.510.50-0.5-1-1.5-5 -4 -3 -2 -1

0

1

2

3

4

52f(x

)=

1/(1+x

2)1.5

n=

101

n=

2n=

40.50n=

6-0.5n=

8-1-1.5-5 -4 -3 -2 -1

0

1

2

3

4

5-5-4-3-22345-1.

5-1-0.

500.511.52n=

2n=

4n=

6n=

8n=

10f(x

)=

1/(1+

x

2

)不同次数的Lagrange插值多项式的比较图-1

0

1Runge现象令下表列出了和2n-1/

2n-1

nx

=

1

(x,则+

x

),xnn-1/

2=

5

-

5n

=

2,

4,,

20)L

(xn

n-1/

2的R(值xn-。1/2)说明:并不是插值多项式的次数越高,插值效果越好,精度也不一定是随次数的提高而升高,这种现象在上个世纪初由

Runge发现,故称为Runge现象.nfi¥结果表明,随着n

的增加,R(xn-1/

2

)

的绝对值几乎成倍地增加,这说明当

n

fi

¥

Ln

[-5,

5]

上不收敛。Runge证明了,存在一个常数

c

»3.63

,

使得当

x

£c

时,limLn(x)=f

(x);而当x

>c

时{Ln

(x)}发散。4.5.1

分段线性插值分段线性插值特别简单,从几何上看,就是用折线逼近曲线。分段线性插值的数学定义设

f

是(

)区间

上[的a,函b]数,在节点,

f0

,

f1

,,

fn则称

[x的i-1分,

x段i

]

线性插值函数。a

=x0

<x1

<上<的x函n

=数b值为求一分段折线函数P(x满)足:(1)

P(xi

)

=

fi

,

i

=

0,1,,

n(2)

[xi-1

,上xi

],

是P一(x次)

多项式。(3)

P(x)

˛

C[a,

b]P(为x)易知,P(x)是个折线函数,在每个区间[

xi

,

xi

+1

]

上,

i

=

0,1,

,

n

-

1有P(x)在[a,b]

上是连续的,但其一阶导数是不连续的.iyi

+1i i

+1x

-

xix

-

xxi

+1

-

xip(

x)

=

x-

xi

+1

y

+当当4.5.1

分段线性插值的基函数i

=时0,0

100

10

x

-

x1x

˛

[x

,

x

]l

(x)

=

x

-

x

0

1x

ˇ[x

,

x

]i

=1,

2,,

n

-10iii-1

ii-1i+1

x

-

xi-1x

˛

[x

,

x

]

x

-

xli

(x)

=

x

-

xi+1

x

-

xx

˛

(xi

,

xi+1

]x

ˇ[xi-1

,

xi+1

]当时,0nn-1x

ˇ[xn-1

,

xn

]l

(x)

=

x

-

x

x

˛

[xn-1

,

xn

]

x

-

x

n

n-1i

=时n,显然P(x是)n的li

(线x)性组合:P(x)

=

fi

li

(x)iiii-1

xi-1i-1x

-

xix

-

xi-1+

fx

£

x

£

x-

xxi

-

xi-1i=0在区间

[xi-1

,上xi

]的值为:P(x)

=

,f注意表达式P(x在)区间[xi-1

,xi]上,只有li-1

(x)

,li

(x)是非零的,其它基函数均为零。即P(x)

=

fi-1

li-1

(x)

+

fi

li

(x)算例1

+

x

2已知函数节点(如下表),求区间上分段线性插值函数,并利用它求出

f

(4.5)

近似值。y

=f

(x

)=

1

在区间[0,5]上取等距插值[k

,

k

+

1]kyk+1P(x)

=y

+x-(k

+1)k

-(k

+1)

x-k

(k

+1)-k=-yk(x-k-1)+

yk+1(x-k)x˛[0,1]x˛[1,2]x˛[2,3]-(x

-1)+0.5x,-0.5(x

-2)+0.2(x

-1),P(x)

=-0.2(x

-3)+0.1(x

-2),

-0.1(x

-4)+0.05882(x

-3),

x˛[3,4]

-0.05882(x

-5)+0.03846(x

-4),

x˛[4,5]解:

在每个分段区间于是,

P(4.5)

=

-0.05882·(4.5

-5)

+0.03846·(4.5

-4)

=

0.04864实际值:

f

(4.5)

=

0.04705882352941当n=7

时,P(4.5)=0.04762270321996;当n=10时,P(4.5)=0.04705882352941由此可见,对于光滑性要求不高的插值问题,分段线性插值的效果非常好!计算也简单!4.5.2

埃尔米特(Hermite)插值拉格朗日和牛顿均只保证函数插值;实际问题有时需要导数也插值;满足这种需要的插值称为埃尔米特插值.埃尔米特插值的一般提法为:设函数在节点埃尔米特插值的一般提法x0

,x1

,的函,数xn

值与导数值为:f

(xi

)=

fi

,

f

'(xi

)

=

fi¢,

,,iii(

m

-1)(

m

-1)f

(xi)

=

fi

=

0,1,,

n其中

m0

,

m1

,是,

m正n整数,寻求一个次数尽可能低的多项式

H

(x,)

满足:H

(k

)

(x

)

=

f

(k

)

,

k

=

0,1,,

m

-1

;

i

=

0,1,,

ni

i

i埃尔米特插值算例以如下数据构建埃尔米特插值埃尔米特插值方法:基函数法.算例以如下数据构建埃尔米特插值共有

2n

+个2条件,可唯一确定一个次数不超过

2的n

+多1项式

H,2n其+1

(形x)式为:x2n+12n+1

0目标:H

求出(x所)=有a的+a,x

++a1

2n+1ai(i

=

0,1,

,

n)n

n可如下构造:H2n+1

(x)=

yiai

(x)+

yi¢bi

(x)i=0

i=0ai

(x),bi

(x)均为2

n+1

次插值基函数.ai

(xk

)

=

dik

,

ai¢(xk

)

=

0bi

(xk

)

=

0,

bi¢(xk

)

=

dikn这样

H2n+1可(x表)

示为:H2n+1

(x)

=

[

yi

ai

(x)

+

yi¢bi

(x)]i=0显然有:H2n+1

(xk

)

=

ykH2¢n+1

(xk

)

=

yk¢令其中从而有:故:现在求

ai

(x及),bi

(x)a

(x)

=

(ax

+

b

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论