• 沒有找到結果。

《数值分析》14

N/A
N/A
Protected

Academic year: 2022

Share "《数值分析》14"

Copied!
16
0
0

加載中.... (立即查看全文)

全文

(1)

《数值分析》14

主要内容:

样条插值的算例 三次样条的概念

用一阶导数表示的样条 三次样条的极性

(2)

1. 飞机机翼剖面图 1.数据采集

2. 数据样条插值

X 0 -0.4552 -0.6913 -0.8640 -0.9689 -0.9996 Y 0 0.3285 0.3467 0.2716 0.1408 -0.0160

S=sqrt(diff(x).^2+diff(y).^2);

S=[0,S];Sk=cumsum(S);

sk=linspace(0,Sk(end),24);

xt=spline(Sk,x,sk);

yt=spline(Sk,y,sk);

样条插值的算例

1

(3)

样条插值的算例

2:龙格函数的插值逼近

-5 0 5

-0.5 0 0.5 1

1

2

) 1

( x x

f  

-5 0 5

-0.5 0 0.5 1

7结点等距插值 7结点切比雪夫插值

7结点样条插值

7结点埃尔米特插值 -5 0 5

0 0.5 1

-5 0 5

0 0.5 1

2

(4)

三次样条的概念

定义 5.4: 给定区间[a , b]上的一个分划:

a = x

0 < x1 < … < xn

= b

已知

f(x

j) = yj (j = 0,1,···,n), 如果

, ] [

), (

] ,

[ ),

(

] , [ ),

( )

(

1 2 1 2

1 0 1

n n

n x x x x

S

x x x

x S

x x x

x S x

S

满足: (1) S(x)

[x

j

x

j+ 1

]

上为三次多项式;

(2)

S” (x)

在区间

[a,b]

上连续; (3) S(xj

) = y

j

( j = 0,1,···,n).

则称

S(x)

为三次样条插值函数. 3

(5)

用一阶导数表示的样条

x∈[x

j , xj+ 1] ( j= 0,1,…n-1 )时 Sj(x)= aj

+ b

j

x + c

j

x

2 + dj

x

3

插值条件

: S(x

j) = yj ( j = 0,1,···,n)

连续性条件: S(xj

+0) =S(x

j

-0)

( j = 1,···,n-1)

S’(x

j

+0) =S’(x

j

-0)

( j = 1,···,n-1)

S”(x

j

+0) =S”(x

j

-0)

( j = 1,···,n-1) 由样条定义,可建立方程(4n-2)个!!

Why?

n个三次多项式(每个三次多项式是4个待定系数), 待定系数

4n个!!

4

(6)

用一阶导数表示的样条

(1)自然边界条件

: S”(x

0)=0, S”(xn)=0

5.7:

已知

f(–1) = 1, f(0) = 0, f(1) = 1.验证下

面分段三次多项式是自然样条函数.

(2)周期边界条件

: S’(x

0)=S’(xn), S”(x0)=S”(xn) (3)固定边界条件

: S’(x

0)=f ’(x0), S’(xn)=f ’(xn)





] , [ ,

] , [ ) ,

(

1 2 0

3 2

1

0 2 1

3 2

1

2 3

2 3

x x

x

x x

x x S

:显然

S (1 )1 S (  1 ) 1 S ( 0)S ( 0)0

5

(7)

用一阶导数表示的样条

求导数得





 

] 1 , 0 [ ,

2 3 3

] 0 , 1 [ ,

2 3 3 )

(

2 2

x x x

x x x x

S

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

0 0.2 0.4 0.6 0.8 1

y= x2 y= S (x)



 

 3 3, [0, 1] ] 0 , 1 [ ,

3 ) 3

( x x

x x x

S

显然

2

) 3 1

(    S

2 ) 3

1

( 

S S( 0)S( 0)0 0

) 1 (  

S  S  (  1 ) 0 S  ( 0)S  ( 0)3

所以,S(x)是满足插值条件且

阶导函数连续的分段三次多项 式

6

(8)

用一阶导数表示的样条

分段Hermite插值公式导出的三次样条方法

已知函数表 x x0 x1 ··· xn f(x) y0 y1 ··· yn

f(x)

在各插值节点

x

j 处的一阶导数为

m

j

(未知)

x

j+1 – xj = h,( j = 0,1,2,···,n).

x

[xj, xj+ 1],

分段Hermite插值

2 1 2 1

1

2 1 2 1

1 1 2

2 1

 

 

 

 

 

j j j

j j j

j j j j

j j

h m x x x

x h m

x x x

x

h y x x

h x y x

h x x

h x x x

S

) )(

( )

)(

(

) )(

( )

)(

( )

(

7

(9)

用一阶导数表示的样条

S”(x)连续

:有等式: S”(xj

+ 0)=S”(x

j

– 0)

1 2

1( ) ( )( )

h x x x

x

x j j

j

 

1 2

2

1 )( )

( )

( h

x x

h x

x x j j

j

 

1 2

1( ) (1 2 )( )

h x x

h

x

x xj j

j

 

1 )2

)(

( )

( h

x x x

x

x j j

j

考虑

S”(x)

在区间[xj , xj+1][xj-1 , xj]上表达式.

x∈[x

j , xj+1], S(x) 由基函数组合而成

8

(10)

用一阶导数表示的样条





 

 

 

 

 

 

2 2

1 1 3

2 1 2

3

6 2 2

8 1

2 2 8 1

h h

h x x x

h x x

h h

h x x x

h x x

j j

x j x

j j

j

x j x

j j

j

] )

( ) (

[ ) (

] )

( ) (

[ ) (





 

 

h x h

x x

h x x

h x h

x x

h x x

j j

x x j

j j

j

x x j

j j

j

2 2

4

4 2

4

1 2 1 2

1 2 2

] )

( ) (

[ ) (

] )

( ) (

[ ) (

1 1

1 1

) (

) (

) (

) (

) 0 (

 

 

 

 

 

j j

j j

j j

j j

j j

j j

j

m x

m x

y x

y x

x S

9

(11)

用一阶导数表示的样条

1 2 1

2

2 4

6

0   6

 



j

j j j

m

j

m h y h

y h x h

S ( )

j j

j j

j

m

m h y h

y h x h

S  (0 )6

2 1

6

2

2

1

4

同理,有

联立得:

) 3 (

4

1 1 1

1

j

j

j

j

j

y y

m h m

m

( j=1, 2, ···, n-1 )

j j

j

j

m

m h y h

y h h

4 2

6

6

2 1

2

1

1 2 1

2

6 4 2

6

 

j j j

m

j

m h y h

y h h

10

(12)

用一阶导数表示的样条

自然样条的导数值满足:

] [ 1 0

1

0 3

2 y y

m h

m    n12 n3 [ ynyn1] m h

m

2 0 4

6 ) 6

0

(

0

  

2 0

2 1

0

1

 m

m h y h

y h x h

S

4 0 2

6 ) 6

0

(  

2 1

2

1

 



n n n n

m

n

m h y h

y h x h

S

设自然边界条件成立,即

) 3 (

4

1 1 1

1

j

j

j

j

j

y y

m h m

m

( j=1, 2, ···, n-1 ) 11

(13)

用一阶导数表示的样条

MATLAB

样条命令:

yi = spline(x, y, xi)

x=-5:5;y=1./(1+x.^2);

xi=-5:0.1:5;f=1./(1+xi.^2);

yi=spline(x,y,xi); error=max(abs(yi-f)) plot(x,y,'o',xi,f,xi,yi,'r')

error = 0.0220

-5 0 5

0 0.5 1

曲率比较:计算公式 2 3/2 ) ) (

1 (

|

|

y

K

y

 

12

(14)

三次样条的极性

样条插值函数的极性

f(x)∈C2[a, b], 对于a = x0 < x1 < … < xn = b,有 f(xj)=yj(j=0,1,···,n).S(x)是满足S(xj)=yj(j=0,1,···,n) 的三次自然样条.则有

||S”(x)||≤||f”(x)||

 

 

 

b

a

f x S x dx

x S

x

f ( ) ( ) ||

2

[ ( ) ( )]

2 证明:

||

   

b

a b

a b

a

[ f ( x )]

2

dx 2 f ( x ) S ( x ) dx [ S ( x )]

2

dx

2

2

2 [ ( ) ( )] ( ) || ||

||

|| f

b

f x S x S x dx S

a

     

 

 

13

(15)

ab[ f (x) S (x)]S (x)dx ab[ f ( x) S(x)]S (x)dx

 

n

j

x x

j f x S x jj

S

1 [ ( ) ( )] 1 0

所以 0 ||

f

 

S

 ||2 ||

f

 ||2  ||

S

 ||2

2

2

|| ||

||

|| S   f 

ab

[ S  ( x )]

2

dx

ab

[ f  ( x )]

2

dx

样条函数S(x)[a, b]上的总曲率最小

.

14

(16)

学到了什么?

样条插值的算例 三次样条的概念

用一阶导数表示的样条 三次样条的极性

參考文獻

相關文件

线性拟合与二次拟合 数据拟合的线性模型 一次多项式拟合公式..

超定方程组QR分解算法 数据拟合确定常微分方程..

請利用十分逼近法計算出 √14 的近似值到小數點底下第

〝电子签署〞(electronic signature)

 学校能考虑教育发展趋势 注三

上述定理, 即 Dini, Lipschitz, Dirichlet 判别法, 给出函数能展开成 Fourier 级数的充分条件... 下面罗列几个例子,

所以这两条直线与第三条直线所成角都是 90°, (结论).

为此, 我们需要建立函 数的差商与函数的导数间的基本关系式, 这些关系式称为“微分学中值定理”...