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 |
|