Вычислительная математика. Ч. 2. Асламова В.С - 11 стр.

UptoLike

21
1.4. Сплайны
Кубические сплайн-функцииспециальным образом построенные мно-
гочлены третьей степени. Они представляют собой некоторую математиче-
скую модель гибкого тонкого стержня из упругого материала. Если закрепить
его в двух соседних узлах интерполяции с заданными углами наклонов α и β,
то между точками закрепления этот стержень (механический сплайн) примет
некоторую форму, минимизирующую его по
тенциальную энергию (рис.6).
Пусть форма этого стержня определяется функцией y=S(x). Уравнение
свободного равновесия имеет вид
0
)(
4
4
=
d
x
xSd
. Отсюда следует, что между каж-
дой парой соседних узлов интерполяции функция S(x) является многочленом
третьей степени. Запишем его в виде:
3
1
2
11
)()()()(
+++=
iiiiiii
xxdxxcxxbaxS
,
ii
xxx
1
. (1.21)
Для определения коэффициентов a
i
, b
i
, c
i
, d
i
на всех n элементарных отрез-
ках необходимо получить 4n уравнений.
Часть из них вытекает из условий
прохождения графика функции S(x) через заданные точки, то есть S(x
i-1
)=y
i-1
,
S(x
i
)=y
i
. Эти условия можно записать следующим образом:
11
)(
==
iii
yaxS
, (1.22)
iiiiiiiiii
yhdhchbahxSxS =+++=+=
32
)()(
, i=1,2,…,n. (1.23)
Эта система содержит 2n уравнений. Для получения недостающих урав-
нений зададим условия непрерывности первых и вторых производных в уз-
лах интерполяции.
Вычислим производные многочлена (1.21):
2
11
)(3)(2)(
++=
iiiii
xxdxxcbxS
,
)(62)(
1
+
=
iii
xxdcxS
.
β
α
S(x)
Рис.6. Сплайн
22
Приравнивая в каждом внутреннем узле x=x
i
(i=2, n-1) значения этих про-
изводных, вычисленные в левом узле интервала (x
i
, x
i+1
) и правом узле интер-
вала (x
i-1
, x
i
), получаем 2n-2 уравнений:
iiiiii
dhchbb
2
1
32 ++=
+
, (1.24)
iiii
dhcc 3
1
+=
+
, i=1,2,…,n-1. (1.25)
Недостающие два соотношения получаются из условий закрепления кон-
цов сплайна.
В частности, при свободном закреплении концов можно приравнять нулю
кривизну линии в этих точках. Такая функция, называемая свободным куби-
ческим сплайном, обладает свойством минимальной кривизны. Из условий
нулевой кривизны на концах следуют равенства нулю вторых производных в
этих точках:
0)(
10
=
=
cxS
,
062)(
=
+
=
nnnn
hdcxS
. (1.26)
Уравнения (1.22)–(1.26) составляют систему линейных алгебраических
уравнений для определения 4n коэффициентов a
i
,, b
i
,, c
i
,, d
i
(i=1,2,…,n).
Эту систему можно привести к более удобному виду. Из условия (1.22)
сразу можно найти все коэффициенты a
i
. Далее из (1.25),(1.26) получим:
i
ii
i
h
cc
d
3
1
=
+
, i=1,2,…,n-1,
n
n
n
h
c
d
3
=
. (1.27)
Подставим эти соотношения, а также значения a
i
= y
i -1
в (1.23) и найдем
отсюда коэффициенты:
)2(
3
1
1
ii
i
i
ii
i
cc
h
h
yy
b +
=
+
, i=1,2,…,n-1,
nn
n
nn
n
ch
h
yy
b
3
2
1
=
. (1.28)
Учитывая выражения (1.27) и (1.28) исключим из уравнения (1.24) коэф-
фициенты d
i
и b
i
. Окончательно получим следующую систему уравнений
только для коэффициентов c
i
:
0
1
=
c
,
0
1
=
+n
c
,
)(3)(2
1
211
1111
+
=+++
i
ii
i
ii
iiiiiii
h
yy
h
yy
chchhch
, i=2,3,…,n. (1.29)
                               1.4. Сплайны                                                                          Приравнивая в каждом внутреннем узле x=xi (i=2, n-1) значения этих про-
    Кубические сплайн-функции – специальным образом построенные мно-                                              изводных, вычисленные в левом узле интервала (xi, xi+1) и правом узле интер-
гочлены третьей степени. Они представляют собой некоторую математиче-                                             вала (xi-1, xi), получаем 2n-2 уравнений:
скую модель гибкого тонкого стержня из упругого материала. Если закрепить
                                                                                                                                                           bi + 1 = bi + 2 hi ci + 3 hi2 d i ,                 (1.24)
его в двух соседних узлах интерполяции с заданными углами наклонов α и β,
то между точками закрепления этот стержень (механический сплайн) примет                                                                             c i +1 = c i + 3h i d i , i=1,2, ,n-1.                     (1.25)
некоторую форму, минимизирующую его потенциальную энергию (рис.6).                                                   Недостающие два соотношения получаются из условий закрепления кон-
                                                                                                                  цов сплайна.
                                                                        β                                            В частности, при свободном закреплении концов можно приравнять нулю
                                                                                                                  кривизну линии в этих точках. Такая функция, называемая свободным куби-
                                         S(x)                                                                     ческим сплайном, обладает свойством минимальной кривизны. Из условий
                                                                                                                  нулевой кривизны на концах следуют равенства нулю вторых производных в
                                                                                                                  этих точках:
                                                                                                                                          S ′′( x 0 ) = c1 = 0 ,       S ′′( x n ) = 2c n + 6d n hn = 0 .      (1.26)
                                       α                                                                                Уравнения (1.22)–(1.26) составляют систему линейных алгебраических
                           Рис.6. Сплайн
                                                                                                                  уравнений для определения 4n коэффициентов ai,, bi,, ci,, di (i=1,2, ,n).
   Пусть форма этого стержня определяется функцией y=S(x). Уравнение
                                                                                                                        Эту систему можно привести к более удобному виду. Из условия (1.22)
                                 4
свободного равновесия имеет вид d S ( x) = 0 . Отсюда следует, что между каж-                                     сразу можно найти все коэффициенты ai. Далее из (1.25),(1.26) получим:
                                                 dx 4
                                                                                                                                       c i +1 − c i                                   cn
дой парой соседних узлов интерполяции функция S(x) является многочленом                                                         di =                , i=1,2, ,n-1,           dn =         .                    (1.27)
третьей степени. Запишем его в виде:                                                                                                        3h i                                     3h n
         S ( x ) = a i + bi ( x − x i − 1 ) + c i ( x − x i − 1 ) 2 + d i ( x − x i − 1 ) 3 ,                        Подставим эти соотношения, а также значения a i = yi -1 в (1.23) и найдем
                                                                                                                  отсюда коэффициенты:
                                         xi −1 ≤ x ≤ xi .                                            (1.21)
                                                                                                                                      y − y i − 1 hi
    Для определения коэффициентов ai, bi, ci, di на всех n элементарных отрез-                                                  bi = i           − ( c i + 1 + 2 c i ) , i=1,2, ,n-1,
                                                                                                                                         hi       3
ках необходимо получить 4n уравнений. Часть из них вытекает из условий
                                                                                                                                                              y n − y n −1 2
прохождения графика функции S(x) через заданные точки, то есть S(xi-1)=yi-1,                                                                          bn =                − hn c n .                           (1.28)
S(xi)=yi. Эти условия можно записать следующим образом:                                                                                                           hn       3
                              S ( x i −1 ) = a i = y i −1 ,             (1.22)                                       Учитывая выражения (1.27) и (1.28) исключим из уравнения (1.24) коэф-
                                                    2        3                                                    фициенты di и bi. Окончательно получим следующую систему уравнений
        S ( xi ) = S ( xi + h ) = ai + bi hi + ci hi + d i hi = yi , i=1,2, ,n.                      (1.23)
                                                                                                                  только для коэффициентов ci:
   Эта система содержит 2n уравнений. Для получения недостающих урав-                                                                            c1 = 0 , c n +1 = 0 ,
нений зададим условия непрерывности первых и вторых производных в уз-
лах интерполяции.                                                                                                                                                    y i − y i −1 y i −1 − y i − 2
                                                                                                                hi −1 c i −1 + 2( hi −1 + hi )c i + hi c i +1 = 3(               −                 ) , i=2,3, ,n. (1.29)
   Вычислим производные многочлена (1.21):                                                                                                                               hi             hi −1
S ′ ( x ) = b i + 2 c i ( x − x i −1 ) + 3 d i ( x − x i −1 ) 2 , S ′′( x ) = 2 c i + 6 d i ( x − x i − 1 ) .

                                                                                                         21       22