
- •Розділ 5 Апроксимація функцій
- •5.1 Поняття про наближення функцій
- •5.2 Iнтерполювання функції
- •5.2.1 Інтерполювання за Лагранжем
- •1 Лінійна інтерполяція
- •2 Квадратична інтерполяція
- •5.2.2. Інтерполювання за Ньютоном
- •5.2.3 Інтерполювання за Ермітом
- •5.2.4 Похибка інтерполяції та способи її зменшення
- •5.2.5 Збіжність процесу інтерполяції
- •5.2.6 Інтерполяція за допомогою сплайнів
- •Лінійний інтерполяційний сплайн
- •Кубічний інтерполяційний сплайн
- •Випадки використання кубічного сплайна
- •Приклад реалізації алгоритмів інтерполяції функцій на псевдокоді
- •Апроксимаційні властивості кубічного сплайна
- •5.2.7 Застосування інтерполяції для складання таблиць
- •5.3 Метод найменших квадратів
- •Приклад реалізації методу найменших квадратів на псевдокоді.
- •Питання і завдання до розділу 5
Кубічний інтерполяційний сплайн
Кубічні сплайн-функції моделюють дуже старий механічний пристрій, яким користувалися креслярі. Вони брали гнучкі рейки, виготовлені з досить пружного матеріалу, наприклад з дерева. Ці рейки закріплювали, підвішуючи важки в точках інтерполяції, що відповідають інтерполяційним вузлам. Рейка або механічний сплайн набирали форму з найменшою потенційною енергією. Остання умова має свій математичний вираз f(IV)(x) 0. Якщо при цьому сплайн не руйнується, то тоді функція та її похідні повинні бути неперервними на [х0,хn] . З теорії балок відомо, що функція f(х) між кожною парою заданих точок може бути представлена поліномом 3-го степеня
f(x) = ai + bi(x - xi) + ci(x - xi)2 + di(x - xi)3,
де хi-1<х<хi. При цьому між кожною парою сусідніх вузлів поліноми з'єднуються неперервно (так само, як їх перші та другі похідні).
Інтерполяція кубічними сплайнами - це швидкий, ефективний і стійкий спосіб інтерполяції функцій, що є основним конкурентом поліноміальної інтерполяції. У його основу покладена така ідея - інтервал інтерполяції розбивається на невеликі відрізки, на кожному з яких функція задається поліномом третього степеня. Коефіцієнти полінома підбираються так, що на границях інтервалів забезпечується неперервність функції, її першої та другої похідних. Також є можливість задати граничні умови - значення першої або другої похідних на границях інтервалу. Якщо значення однієї з похідних на границі відомі, то задавши їх, ми одержуємо вкрай точну інтерполяційну схему. Якщо значення невідомі, то можна задати другу похідну на границі, що дорівнює нулю, й одержати досить гарні результати.
Кубічну сплайн-функцію, що задовольняє умови f"(х1)=f"(хn)=0, називають природним кубічним сплайном. З математичної точки зору було доведено [Алберг, 1972], що вона є єдиною функцією з мінімальною кривизною серед усіх функцій, що інтерполюють функцію в заданих точках та мають квадратично інтегровану другу похідну. У цьому змісті кубічний сплайн буде самою гладкою функцією, що інтерполює задані точки.
Побудова кубічного сплайна
- простий і чисельно стійкий процес. Для
треба визначити 4
коефіцієнти для кожного проміжку
,
тобто 4n
параметрів. Вимагається щоб у внутрішніх
вузлах сплайн і його похідні до 2-го
порядку були неперервними
,
i=1,…,n-1; r=0,1,2.
Це дає 3n-3
умови для визначення параметрів, ще
n+1 умова
міститься у вимозі S3(xi)
= yi,
i=0,1,…,n.. Разом маємо
4n-2
умови. Ще 2 умови, необхідні для однозначного
визначення коефіцієнтів сплайна, як
правило, задаються у вигляді граничних
умов, тобто умов у точках a
й b.
Розглянемо природні граничні умови
.
Позначивши
та враховуючи її лінійність, одержуємо
,
.
(5.27)
Двічі інтегруючи (5.27), одержуємо
,
(5.28)
,
(5.29)
де А та B- постійні інтегрування. Вищезгадані умови дають
(5.30)
З них одержуємо
Підставляючи A та B в (5.29), одержуємо
(5.31)
.
(5.32)
З (5.28) знаходимо значення однобічних похідних для вузла xi, i=1,2,…,n-1
(5.33)
Вимагаючи неперервності
у
вузлі xi
одержуємо
,
де i=1,…,n-1.
(5.34)
Отже, отримуємо систему рівнянь відносно Mi вигляду
(5.35)
із квадратною матрицею A
і квадратною матрицею Н
.
Координатами вектора F є значення y0,y1,…,yn.
Для матриці A
ненульові елементи розміщені на головній
діагоналі й двох сусідніх з нею. Такі
матриці називаються тридіагональними.
Для невиродженої матриці A
виконана умова діагональної переваги
.
Отже, система (5.35) однозначно
розв'язувана, тобто існує єдиний кубічний
інтерполяційний сплайн.
Вигляд граничних умов змінює деякі елементи матриці A, але в кожному разі вона залишається матрицею з діагональною перевагою. Розв’язок системи (5.35) із тридіагональною матрицею A може бути знайдений методом прогонки.