Professional Documents
Culture Documents
20 Spline
20 Spline
20 Spline
S ( x ) = Sk ( x ) , x xk , xk +1
• deg Sk ( x ) = 1
Sk ( xk ) = yk = Sk +1 ( xk )
Spline tuyến tính
• Sk ( x ) , x xk , xk +1 là đa thức nội suy bậc 1
với hai mốc nội suy:
( xk , yk ) , ( xk +1, yk +1 )
− yk ( x − xk +1 ) + yk +1 ( x − xk )
Sk ( x ) = = ak x + bk
hk
yk +1 − yk yk xk +1 − yk xk
ak = ; bk =
hk hk
Spline tuyến tính
3.5
2.5
1.5
0.5
0
0 0.5 1 1.5 2 2.5 3
Spline cấp 2
• Tìm hàm ghép S ( x ) = Sk ( x ) , x xk , xk +1
deg Sk ( x ) = 2
Sk ( xk ) = yk = Sk +1 ( xk )
S k ( xk ) = S k +1 ( xk )
' '
Spline cấp 2
• Đặt mk = S k ( xk ) = S k +1 ( xk )
' '
• Khi đó
−mk ( x − xk +1 ) + mk +1 ( x − xk )
Sk ( x ) =
'
hk
−mk ( x − xk +1 ) + mk +1 ( x − xk )
2 2
Sk ( x ) = + k
2hk
−mk hk mk hk
Sk ( xk ) = + k = yk k = yk +
2 2
yk +1 − yk
Sk ( xk +1 ) = yk +1 mk +1 + mk = 2 = 1
hk
Spline cấp 2
• Ta thu được hệ n-1 phương trình, n ẩn
1 1 0 1
0 1 1 0 2
0 1 1 0 3
0 1 1 0 4
0 1 1 0 n−2
0 1 1 n−1
Spline cấp 2
• Sk ( x ) = ak x + bk x + ck
2
mk +1 − mk
ak = ;
2hk
mk xk +1 − mk +1 xk
bk = ;
hk
−mk xk +1
2
+ 2
mk +1 xk mk hk
ck = + yk +
2hk 2
Spline tuyến tính
3.5
2.5
1.5
0.5
0
0 0.5 1 1.5 2 2.5 3
Spline cấp 3
• Tìm hàm ghép S ( x ) = Sk ( x ) , x xk , xk +1
deg Sk ( x ) = 3
Sk ( xk ) = yk = Sk +1 ( xk )
S k ( xk ) = S k +1 ( xk )
' '
''
Sk ( xk ) = ''
Sk +1 ( xk )
Spline cấp 3
• Đặt k = S k'' ( xk ) = S k'' +1 ( xk )
• Khi đó
− k ( x − xk +1 ) + k +1 ( x − xk )
Sk'' ( x) =
hk
− k ( x − xk +1 ) + k +1 ( x − xk )
2 2
Sk' ( x ) = + k
2hk
− k ( x − xk +1 ) + k +1 ( x − xk )
3 3
Sk ( x ) = + k x + k
6hk
Spline cấp 3
•
− k ( x − xk +1 ) + k +1 ( x − xk )
3 3
Sk ( x ) = + k ( x − xk ) − k ( x − xk +1 )
6hk
k hk2 yk k hk
Sk ( xk ) = + k hk = yk k = −
6 hk 6
k +1hk2 yk +1 k +1hk
Sk ( xk +1 ) = + k hk = yk +1 k = −
6 hk 6
Spline cấp 3
•
− k ( x − xk +1 ) + k +1 ( x − xk )
2 2
yk +1 k +1hk yk k hk
Sk' ( x ) = + − − −
2hk hk 6 k
h 6
− k +1hk +1 yk + 2 k + 2 hk +1 yk +1 k +1hk +1
Sk' +1 ( xk +1 ) = + − − −
2 hk +1 6 k +1
h 6
k +1hk yk +1 k +1hk y h
Sk ( xk +1 ) = + − − k − k k
2 hk 6 k hk 6
Spline cấp 3
•
Sk' ( xk +1 ) − Sk' +1 ( xk +1 ) = 0
hk +1 hk + hk +1 hk
k +2 + k +1 + k = k
6 3 6
yk + 2 − yk +1 yk +1 − yk
k = −
hk +1 hk
Spline cấp 3
• Sk' ( xk +1 ) − Sk' +1 ( xk +1 ) = 0
hk +1 hk + hk +1 hk
k +2 + k +1 + k = k
6 3 6
yk + 2 − yk +1 yk +1 − yk
k = −
hk +1 hk
Spline cấp 3
Hệ n-2 phương trình, n ẩn
h1 h1 + h2 h2
6 0 1
3 6
0 h2 h2 + h3 h3
0 2
6 3 6
h3 h3 + h4 h4
0 0
6 3 6 3
hn−3 + hn−2
0
hn−3 hn−2
0
n−3
6 3 6
hn−2 hn−2 + hn−1 hn−1
0 n−2
6 3 6
Spline cấp 3
Sk•( x ) = ak x3 + bk x 2 + ck x + d k
k +1 − k
ak = ;
6hk
3 k xk +1 − 3 k +1 xk
bk = ;
6hk
−3 k xk2+1 + 3 k +1 xk2 yk +1 − yk ( k +1 − k ) hk
ck = + −
6hk hk 6
k xk3+1 − k +1 xk3 yk xk +1 − yk +1 xk ( k +1 xk − k xk +1 ) hk
dk = + +
6hk hk 6
Spline tuyến tính
3.5
2.5
1.5
0.5
0
0 0.5 1 1.5 2 2.5 3