
5. Сплайны
Сейчас широкое распространение для интерполирования получило использование специальным образом построенных многочленов третьей степени – кубических сплайн-функций.
Пусть интерполируемая функция fзадана своими значениямив узлах
(i= 0, 1, 2, …,n). Тогдакубический
сплайнна каждом отрезке [
,
]
можно представить в следующем виде:
S(x)
=+
(x –
)
+
+
,
(16)
где
,
,
,
– четверка неизвестных коэффициентов
(всего их 4n).
Таким образом, задача нахождения
значения функции
в каждом интервале [
;
]
сводится к вычислению значений
,
,
,
.
Длину отрезка [,
]
обозначим
=
–
,
гдеi= 1, 2, …,n.
Потребуем совпадения значений S(x) в узлах с табличными значениями функцииf:
S()
=
=
,
(17)
S()
=
=
+
+
+
.
(18)
6. Алгоритм вычисления ,,и
1. Из условия (17)
=
=
находим все
.
2. Вычисление
.
Используя выражения
;
;
(19)
;
,
(20)
систему (18) преобразуем относительно
неизвестных
:
=
0,
=
0, (21)
+
+
= 3
.
(22)
Обозначив
=
;
=
;
=
;
=
;
= 3
,
вместо (21)–( 22) получаем следующую систему
относительно
:
=
0,
=
0, (23)
+
+
=
,
(i=2, 3, …,n).
(24)
Матрица системы (24) трехдиагональная,
и из данной системы неизвестные=
(i= 2, 3, …,n)
определяютсяметодом прогонки(смотри лабораторную работу).
3. Из выражений (19) и (20) находим
,и
.
6. Задания
Задание 1.
Найти ошибку в табличном значении
(табл.3) и в таблице заменить ошибочное
значение исправленным; составить таблицу
конечных разностей с исправленным
значением.
Т а б л и ц а 3
|
Варианты № | ||
|
1–10 |
11–20 |
21–30 |
i |
|
|
|
1 |
48440 |
|
13,260 |
2 |
50898 |
|
14,144 |
3 |
53355 |
|
15,028 |
4 |
55800 |
|
15,912 |
5 |
58268 |
|
16,792 |
6 |
60724 |
|
17,680 |
7 |
63179 |
|
18,564 |
8 |
65634 |
|
19,448 |
9 |
68089 |
|
20,332 |
Задание 2.
Для варианта (,
)
(табл.4, столбец 1) построить
график функции(табл.4, столбец 3) на
отрезке ее определения [a;b] с шагом, не большимh(табл.4, столбец 2).
Задание 3.Необходимо построить таблицу разностей и вычислить внетабличные значения функции, применяя формулы Ньютона и Бесселя, с точностью 0,000001:
а) нечетные номера
вычисления проводят на отрезке [a;
(a+ +b)/2]
для значения
=
;
б) четные номера вычисления проводят на отрезке [(a+b)/2;b]
для значения
=
.
Задание 4.
а); для четырех
интервалов [;
]
=h+№/(100i)
построить сплайн функции (точку
выбрать произвольно, но так, что один
из интервалов должен заключать точку
(или
));
б) вычислить значения функции в узловых точках и сравнить результаты, полученные смежными сплайн-функциями;
в) вычислить значение функции в точке
(или
)
с применением сплайн-функции и сравнить
с результатом задания 3.
Т а б л и ц а.4
|
[a; b]; h |
Функции |
1 |
2 |
3 |
1, 2 |
[0,9; 28,1]; 0,1 |
|
3, 4 |
[50,0; 58,7]; 0,3 |
|
5, 6 |
[1,1; 4,0]; 0,1 |
|
7, 8 |
[1,0; 1,9]; 0,1 |
|
9, 10 |
[3,2; 0,3]; 0,1 |
|
11, 12 |
[0,7; 3,6]; 0,1 |
|
13, 14 |
[1,0; 3,9]; 0,1 |
|
15, 16 |
[3,5; 0,6]; 0,1 |
|
17, 18 |
[1,6; 1,3]; 0,1 |
|
19, 20 |
[3,0; 2,8]; 0,2 |
|
21, 22 |
[1,0; 3,9]; 0,1 |
|
23, 24 |
[0,5; 3,4]; 0,1 |
|
25, 26 |
[0,5; 3,4]; 0,1 |
|
27, 28 |
[0,0; 5,8]; 0,2 |
|
29, 30 |
[0,0; 2,9]; 0,1 |
|