
Розділ 3. Інтерполяція і наближення функцій
Під час розв’язання багатьох
задач обчислювальної математики часто
доводиться заміняти одну функцію
(відому, невідому або частково відому)
близькою до неї функцією
,
яка має визначені властивості. Таку
заміну однієї функції іншою називають
інтерполюванням функції.
Найпростіша задача
інтерполювання полягає в наступному.
На відрізку
задані
точки
,
які називаються вузлами
інтерполювання, і
значення деякої функції
в цих точках
. (1)
Потрібно побудувати інтерполяційну функцію , яка належить відомому класу і яка у вузлах інтерполювання приймає ті ж самі значення, що і функція :
, (2)
а в інших точках відрізка , що належать області визначення функції , наближено зображувала функцію з тією чи іншою точністю.
У такій загальній постановці
задача може мати нескінчену кількість
розв’язків або не мати їх зовсім. Однак
ця задача стає однозначною, якщо замість
функції
шукати поліном
степеня
,
який задовольняє умовам (2), тобто такий,
що
,
Як правило, інтерполяційну
функцію
використовують для наближеного обчислення
значень заданої функції
у точках, відмінних від вузлів
інтерполювання. При цьому розрізняють
інтерполювання у вузькому
розумінні, або просто
інтерполювання,
коли
,
і екстраполювання,
коли
.
Розглянемо деякі найбільш часто використовувані інтерполяційні поліноми (многочлени).
3.1. Канонічний поліном
Будемо шукати інтерполяційну функцію у вигляді канонічного полінома степені :
, (3)
де
– деякі постійні коефіцієнти, які
потрібно визначити з певних умов. У
випадку побудови канонічного полінома,
коефіцієнти
,
визначаються з умови
,
,
яка зводиться до розв’язання системи
лінійних алгебраїчних рівнянь.
(4)
Визначник системи (4) , який називають визначником Вандермонда,
, (5)
н
Таблиця 1
i
0
1
2
3
1
3
4
6
10
6
8
5
Приклад 1.
Побудувати канонічний поліном третього
степеня для функції
,
заданої табл.1, і знайти наближене
значення в точці
.
Розв’язання.
Для розв’язання поставленої задачі
потрібно сформувати дві таблиці: таблицю
значень аргументу Тх
(значення вузлів інтерполювання) і
таблицю значень функції у вузлах
інтерполювання Ту.
Далі формується матриця коефіцієнтів
системи А. Після цього звертаємось до
процедури-функції lsolve,
за допомогою якої знаходимо коефіцієнти
полінома
(вектор а)
і будуємо графік таблично заданої
функції, графік побудованого многочлена
та відкладаємо значення побудованого
многочлена в точці
.
На лістингу 1 наведено розв’язання
поставленої задачі в пакеті Mathcad.
3.2. Інтерполяційний многочлен Лагранжа
Нехай у точках
,
,
задано значення функції
:
,
.
Треба побудувати многочлен
степені
,
який у вузлах
,
,
набуває тих самих значень, що і функція
,
тобто
,
. (6)
Інтерполяційний многочлен шукатимемо у вигляді:
(7)
де
– многочлен степеня
,
що у вузлах інтерполяції задовольняє
умови:
Даний варіант запису многочлена
називають інтерполяційним многочленом
Лагранжа. Для пошуку
знаходять многочлен степеня
,
що перетворюється в нуль у вузлах
інтерполяції
,
і дорівнює одиниці в точці
.
Многочлен, що задовольняє ці вимоги,
може бути записаний у вигляді:
. (8)
Підставивши вираз для у формулу (7), дістанемо вираз інтерполяційного многочлена
,
(9)
який називається інтерполяційним многочленом Лагранжа, а наближену рівність
(10)
– інтерполяційною формулою Лагранжа.
Розглянемо два окремих випадки інтерполяційної формули Лагранжа (9).
10.
Нехай
,
тобто значення функції
задано
в двох вузлах
і
.
Позначимо ці значення через
і
.
Тоді з формули (9) дістанемо
. (11)
Формулу (11) називають формулою
лінійного інтерполювання.
При лінійному інтерполюванні дуга
кривої
на відрізку
замінюється відрізком прямої (11), що
лежить між точками
і
.
20.
Нехай
.
У цьому випадку функцію
задано в трьох вузлах
,
і
значеннями
,
і
.
Тоді з формули (9) дістанемо
. (12)
Формулу (12) називають формулою
квадратичного інтерполювання.
При квадратичному інтерполюванні дуга
кривої
на відрізку
замінюється дугою параболи (12), що лежить
між точками
,
і
.
Інтерполяційний многочлен Лагранжа можна записати компактніше. Для цього введемо многочлен -го степеня вигляду
. (13)
Виконавши диференціювання
функції (13) по
,
дістанемо
.
Поклавши тут
,
матимемо
. (14)
Підставивши (13) і (14) в (9), знайдемо
. (15)
Вирази
,
що є коефіцієнтами при
у многочлені Лагранжа, називають
коефіцієнтами Лагранжа.
Побудова інтерполяційного многочлена Лагранжа у такому вигляді для кожної конкретної задачі пов’язана зі значними обчислювальними затратами. Для виходу з цієї ситуації можна скористатись засобами пакету Mathcad.
Приклад 2. Для даних, наведених в прикладі 1 знайти коефіцієнти Лагранжа, побудувати відповідний многочлен Лагранжа, знайти наближене значення многочлена Лагранжа в точці та побудувати графіки коефіцієнтів та многочлена Лагранжа.
Розв’язання.
На лістингу 2 наведено функції:
,
та многочлен Лагранжа
у звичайному та розгорнутому вигляді,
а також графіки коефіцієнтів та
многочлена.
Для розв’язання поставленої
задачі можна побудувати спеціальну
процедуру-функцію
.
На лістингу 3 наведено процедуру-функція
,
побудовано її графік та обчислено
значення многочлена в точці
.
Перевага так побудованого многочлена
Лагранжа є його компактність, а недолік
– неможливість із
одержати
звичайний многочлен.