1.6. Інтерполяція сплайнами
Поліноміальна інтерполяція не завжди дає задовільні результати. Зокрема, при представлені поліномами резонансних кривих коливальних систем велика похибка виникає на кінцях цих кривих. Не дивлячись на виконанні умов у вузлах, інтерполяційна функція може мати значні відхилення від функції, яку вона апроксимує між вузлами. При цьому підвищення степеня інтерполяційного полінома не зменшує, а збільшує похибку. Розв’язання цієї проблеми можна здійснити за допомогою сплайни-інтерполяції (від англійського слова spline – рейка, лінійка).
Розглянемо найбільш поширений варіант інтерполяції – інтерполяції кубічними сплайнами. Користуючись законами пружності, можна встановити, що недеформована лінійка між сусідніми вузлами проходить по лінії, яка задовольняє диференціальному рівнянню
						(30)
	Функцію 
будемо використовувати для інтерполяції
функції 
,
яка визначена на відрізку 
,
а у вузлах 
 задана значеннями 
.
Кубічним сплайном, який інтерполює на відрізку задану функції , називають функцію
	
  (31)
яка задовольняє наступним умовам:
	1)  
– умова інтерполяції у вузлах сплайна;
	2)  функція 
два рази неперервно диференційовна на
відрізку 
;
	3)  на кінцях відрізка функція
повинна задовольняти умовам 
,
(крайовим умовам).
	Для побудови сплайна потрібно
знайти 
коефіцієнтів 
.
Із визначення сплайна одержуємо співвідношення вигляду:
;
 
.				(32)
	Із умов гладкого стикування
сусідніх участків сплайна (неперервність
функції, її першої та другої похідних)
одержимо ще 
умови:
	
.				(33)
Із умов на кінцях відрізка одержимо ще 2 умови:
.						(34)
Таким чином, маємо співвідношень для знаходження коефіцієнтів сплайна.
	Із співвідношення (31) знайдемо
співвідношення для першої та другої
похідних функції 
:
				(35)
Підставляючи вирази функції (31) та її похідних (35) в співвідношення (32)-(34) і приймаючи до уваги співвідношення
,					
 (36)
одержимо наступну систему рівнянь:
					(37)
,						(38)
			(39)
				(39)
					(39)
							(40)
								(41)
Таким чином задача інтерполяції
звелась до розв’язання системи (37) –
(41). Із рівняння (38) випливає, що всі
коефіцієнти 
.
Підставивши співвідношення (37), (38) в
(39) і використовуючи фіктивний коефіцієнт
,
одержимо співвідношення між 
і 
:
.
	Звідси знаходимо коефіцієнти
за формулою
.			(42)
Із (39) і (40) виразимо 
через 
( з врахування коефіцієнта 
)
.					(43)
Підставивши (43) в (42), одержимо
.			(44)
Введемо позначення
,					
(45)
після чого співвідношення (42) набуде вигляду:
.				(46)
Підставивши (46) і (43) в співвідношення (39), одержимо систему відносно :
		(47)
.					(48)
Систему (47), (48) можна розв’язати методом прогонки, який в даному випадку зводиться до знаходження прогоночних коефіцієнтів за формулами прямої прогонки:
				(49)
	(50)
після чого, коефіцієнти знаходяться за формулами оберненої прогонки:
			(51)
Після знаходження коефіцієнтів за формулами (51) знаходимо коефіцієнти і за формулами (46) і (43).
Таким чином алгоритм обчислення коефіцієнтів інтерполяційного сплайна складається з наступних кроків:
Крок 1. Обчислюємо (або задаємо)
масиви значень 
,
;
Крок 2. Обчислюємо  масиви
значень 
,
за формулами (36), (45);
Крок 3.  Обчислюємо  масиви
значень прогоночних коефіцієнтів 
,
за формулами (49), (50);
Крок 4. Обчислюємо  масив
значень коефіцієнтів 
за
формулою (44);
Крок 5. Обчислюємо  масив
значень коефіцієнтів 
за
формулою (43).
Після цього можна користуватись формулою (31).
	 
		
