Рефетека.ру / Математика

Контрольная работа: Застосування сплайн-функцій до розв’язування задач інтерполяції

Міністерство освіти і науки України

Черкаський національний університет Імені Богдана Хмельницького

Кафедра математики та методики навчання математики


Кваліфікаційна робота з математики

Застосування сплайн-функцій до розв’язування задач інтерполяції


Автор:

Вишемірська Тетяна Володимирівна

Четвертий курс, денна форма навчання, математичний факультет

Науковий керівник:

Доктор фізико-математичних наук, професор

Стеблянко Павло Олексійович


Черкаси 2010

Зміст


Вступ

В-сплайни

Базис із В-сплайнів

В-сплайни нульового степеня та рекурентна форма запису В-сплайнів вищих порядків

Лінійні В-сплайни

Квадратичні В-сплайни

2. Кубічні В-сплайни

2.1Формули задання кубічних B-сплайнів

2.2 Базис у просторі кубічних сплайнів

2.3 Задачі інтерполяції з граничними умовами першого та другого роду

2.4.Апроксимація кубічними В-сплайнами

2.5 Практичність вивчення кубічних В-сплайнів у вищих навчальних закладах

3. Практична частина

3.1Задача №1

3.2Задача №2

Висновки

Список використаних джерел


Вступ


Сплайн-інтерполяція на сьогоднішній день є одним із найточніших методів наближення. В теорію наближень сплайни ввійшли зовсім недавно і відразу ж зайняли в ній досить важливе місце. Буквально протягом кількох років для сплайнів були розв’язані апроксимаційні задачі, на розв’язання яких для поліномів були потрачені десятиліття. З подальшим вивченням і застосуванням сплайн-функцій, знадобилося їх певне спрощення, для полегшення розрахунків. Саме тоді і з’явилися В-сплайни, які як виявилося не тільки є простішими для обчислень, але й дають більшу точність наближення, що є дуже важливим при розв’язуванні практичних задач.

Актуальність: Сьогодні сплайн-функції відіграють дуже важливу роль, вони входять в курс «Чисельні методи», як додатковий метод інтерполяції, а також використовуються в курсі «Рівняння математичної фізики» для розв’язування нерозв’язних диференціальних рівнянь; з допомогою сплайнів і В-сплайнів (в основному кубічних) розв’язуються (з великою точністю) ті задачі, які не можна розв’язати іншими, відомими, методами.

В-сплайн – це крива з неперервними старшими похідними до n-ої, де n – порядок сплайна.

Мета курсової роботи: Розглянути кубічні В-сплайни, а також лінійні та квадратичні В-сплайни, форми їх запису та формули для розрахунків інтерполяційних задач, рекурентні формули для представлення В-сплайнів 1-го, 2-го, 3-го та вищих порядків. З’ясувати практичність застосування Кубічних В-сплайнів у ВНЗ при розв’язуванні задач інтерполяції. Застосувати на практиці отримані знання.

Для досягнення мети були поставлені такі завдання:

– знайти і опрацювати літературу із даної теми;

– систематизувати опрацьований матеріал;

– отримати формули для розрахунків інтерполяційних задач;

визначити практичність кубічних В-сплайнів в порівнянні з іншими сплайнами і В-сплайнами;


1 B-сплайни


1.1 Базис із В-сплайнів


Одним з найширше використовуваних представлень кривих в комп'ютерному баченні є представлення у вигляді В-сплайну. Важливо розрізняти сплайни і В-сплайни. В-сплайни є поліноміальними функціями. Сплайни є лінійною комбінацією В-сплайнів. У літературі сплайни зазвичай визначаються як різні види степеневої функції. Для обчислень зручніше визначати сплайни рекурсивними функціями.

Приймемо без доведення наступну лему, яку буде використано для доведення важливої теореми:

Лема 1. Нехай Застосування сплайн-функцій до розв’язування задач інтерполяції - множина сплайнів порядку m дефекту 1 по розбиттю Застосування сплайн-функцій до розв’язування задач інтерполяції. Якщо Застосування сплайн-функцій до розв’язування задач інтерполяції і сплайн Застосування сплайн-функцій до розв’язування задач інтерполяції із Застосування сплайн-функцій до розв’язування задач інтерполяції задовольняє умови Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції то Застосування сплайн-функцій до розв’язування задач інтерполяції на Застосування сплайн-функцій до розв’язування задач інтерполяції.

Теорема 1. Система із Застосування сплайн-функцій до розв’язування задач інтерполяції В-сплайнів


Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції (1) порядку Застосування сплайн-функцій до розв’язування задач інтерполяції за розбитям Застосування сплайн-функцій до розв’язування задач інтерполяції з носіями Застосування сплайн-функцій до розв’язування задач інтерполяції є базисом в Застосування сплайн-функцій до розв’язування задач інтерполяції.


Доведення. Нехай


Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції; (2) потрібно довести, що Застосування сплайн-функцій до розв’язування задач інтерполяції (Застосування сплайн-функцій до розв’язування задач інтерполяції). Безпосередньо із визначення В-сплайнів (1) виплива, що Застосування сплайн-функцій до розв’язування задач інтерполяції при Застосування сплайн-функцій до розв’язування задач інтерполяції; але тоді з урахуванням (2)

Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції і в силу леми 1 Застосування сплайн-функцій до розв’язування задач інтерполяції для Застосування сплайн-функцій до розв’язування задач інтерполяції. Таким чином,


Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції.(3)


Оскільки на проміжку Застосування сплайн-функцій до розв’язування задач інтерполяції Застосування сплайн-функцій до розв’язування задач інтерполяції, а при Застосування сплайн-функцій до розв’язування задач інтерполяції Застосування сплайн-функцій до розв’язування задач інтерполяції, то із (3) слідує, що Застосування сплайн-функцій до розв’язування задач інтерполяції, так що


Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції.


Для Застосування сплайн-функцій до розв’язування задач інтерполяції Застосування сплайн-функцій до розв’язування задач інтерполяції при Застосування сплайн-функцій до розв’язування задач інтерполяції і Застосування сплайн-функцій до розв’язування задач інтерполяції при Застосування сплайн-функцій до розв’язування задач інтерполяції, а тому Застосування сплайн-функцій до розв’язування задач інтерполяції і


Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції.


Розмірковуючи аналогічно, далі прийдемо до рівності


Застосування сплайн-функцій до розв’язування задач інтерполяції що й треба було довести.


Наслідок 1. Будь-який сплайн Застосування сплайн-функцій до розв’язування задач інтерполяції із Застосування сплайн-функцій до розв’язування задач інтерполяції єдиним чином представляється у вигляді


Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції.(4)


Якщо сплайн Застосування сплайн-функцій до розв’язування задач інтерполяції із Застосування сплайн-функцій до розв’язування задач інтерполяції однозначно визначається деяким набором із Застосування сплайн-функцій до розв’язування задач інтерполяції інтерполяційних умов, то, підставляючи в ці умови замість Застосування сплайн-функцій до розв’язування задач інтерполяції суму (4), отримаємо систему лінійних рівнянь для визначення коефіцієнтів Застосування сплайн-функцій до розв’язування задач інтерполяції. Усилу скінченності носіїв сплайнів Застосування сплайн-функцій до розв’язування задач інтерполяції в кожному рядочку визначника цієї системи, не дорівнюватимуть нулю лише Застосування сплайн-функцій до розв’язування задач інтерполяції елементів - значення сплайнів Застосування сплайн-функцій до розв’язування задач інтерполяції (або їх похідних) в одній із точок Застосування сплайн-функцій до розв’язування задач інтерполяції розбиття Застосування сплайн-функцій до розв’язування задач інтерполяції. При цьому не нульові елементи, які відповідають внутрішнім умовам інтерполяції, будуть розміщені вздовж головної діагоналі визначника. Саме це і забезпечує, принаймні для малих Застосування сплайн-функцій до розв’язування задач інтерполяції, простоту обчислення коефіцієнтів лінійної комбінації (4) [1].


1.2 В-сплайн нульового степеня та рекурентна форма запису В-сплайнів вищих порядків


В-сплайном нульового степеня, побудованим на числовій прямій по розбиттю Застосування сплайн-функцій до розв’язування задач інтерполяції, називається функція вигляду:


Застосування сплайн-функцій до розв’язування задач інтерполяції , Застосування сплайн-функцій до розв’язування задач інтерполяції (5)


Єдине обмеження полягає в тому, що В-сплайни повинні відповідати умові:


Застосування сплайн-функцій до розв’язування задач інтерполяції


Зокрема, якщо Застосування сплайн-функцій до розв’язування задач інтерполяції, то Застосування сплайн-функцій до розв’язування задач інтерполяції [2].

В-сплайн степеня Застосування сплайн-функцій до розв’язування задач інтерполяції, побудований на числовій прямій по розбиттю Застосування сплайн-функцій до розв’язування задач інтерполяції, визначається наступною рекурентною формулою:


Застосування сплайн-функцій до розв’язування задач інтерполяції Застосування сплайн-функцій до розв’язування задач інтерполяції, (6)

де Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції. (7)


При однаковій відстані між сусідніми вузлами В-сплайни називаються однорідними, в протилежному випадку неоднорідними. Для однорідних B-сплайнів, базисні B-сплайни однакового степеня є зміщеними екземплярами однієї функції [3].

Нерекурсивним визначенням базисних B-сплайнів є


Застосування сплайн-функцій до розв’язування задач інтерполяції, (8)

де Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції [3]. (9)


1.3 Лінійні B-сплайни


Лінійні B-сплайни є неперервними, але не диференційованими.

Скориставшись рекурентною формулою (6), отримаємо формулу для лінійного В-сплайна:


Застосування сплайн-функцій до розв’язування задач інтерполяції Застосування сплайн-функцій до розв’язування задач інтерполяції (10)


Підставивши у (10) формулу (5) маємо:


Застосування сплайн-функцій до розв’язування задач інтерполяції Застосування сплайн-функцій до розв’язування задач інтерполяції (11)

Або у випадку рівномірної сітки з кроком Застосування сплайн-функцій до розв’язування задач інтерполяції (Застосування сплайн-функцій до розв’язування задач інтерполяції) отримаємо:


Застосування сплайн-функцій до розв’язування задач інтерполяціїЗастосування сплайн-функцій до розв’язування задач інтерполяції(11’)


Нижче на малюнку 1 представлено графік В-сплайна 1-го порядку:


Застосування сплайн-функцій до розв’язування задач інтерполяції

Мал. 1 - Графік В-сплайна


1.4 Квадратичні B-сплайни


Із рекурентної формули (6), отримаємо наступну форму запису квадратичного В-сплайна:


Застосування сплайн-функцій до розв’язування задач інтерполяціїЗастосування сплайн-функцій до розв’язування задач інтерполяції Застосування сплайн-функцій до розв’язування задач інтерполяції (12)


Тепер ми можемо, або скористатись лише формулою (11), підставивши її у (12) отримаємо:

Застосування сплайн-функцій до розв’язування задач інтерполяціїЗастосування сплайн-функцій до розв’язування задач інтерполяції (13)


А у випадку рівномірної сітки з кроком h матимемо:


Застосування сплайн-функцій до розв’язування задач інтерполяції(13’)


Або спершу в (12) підставимо (10) і, зробивши відповідні перетворення, отримаємо квадратичний В-сплайн в вигляді:

Застосування сплайн-функцій до розв’язування задач інтерполяції, (14)


а потім в (14) підставимо (5) і отримаємо ту ж саму формулу (13) [4].

Графік В-сплайна 2-го - Застосування сплайн-функцій до розв’язування задач інтерполяції - степеня представлено на малюнку 2:


Застосування сплайн-функцій до розв’язування задач інтерполяції

Мал. 2 - Графік В-сплайна

В-сплайн довільного степеня Застосування сплайн-функцій до розв’язування задач інтерполяції може бути відмінним від нуля лише на деякому відрізку (визначеному Застосування сплайн-функцій до розв’язування задач інтерполяції вузлами) [4].


2 Кубічні B-сплайни


2.1 Формули задання кубічних B-сплайнів


Зробивши аналогічні дії, що й при квадратичному В-сплайні, ми отримаємо формулу (15) для кубічного В-сплайна:


Застосування сплайн-функцій до розв’язування задач інтерполяції


Зауваження. Кубічні В-сплайни зручніше нумерувати так, щоб сплайнЗастосування сплайн-функцій до розв’язування задач інтерполяції був відмінний від нуля на відрізку Застосування сплайн-функцій до розв’язування задач інтерполяції [5]. Запишемо тепер Застосування сплайн-функцій до розв’язування задач інтерполяції у випадку рівномірної сітки (з кроком Застосування сплайн-функцій до розв’язування задач інтерполяції) його:


Застосування сплайн-функцій до розв’язування задач інтерполяції (15’)


Типічний графік кубічного В-сплайну показано на мал. 3:


Застосування сплайн-функцій до розв’язування задач інтерполяції

Мал. 3 - Типічний графік кубічного В-сплайну


2.2 Базис у просторі кубічних сплайнів


Функція Застосування сплайн-функцій до розв’язування задач інтерполяції:

а) двічі неперервно диференційовна на відрізку Застосування сплайн-функцій до розв’язування задач інтерполяції;

б)відмінна від нуля тільки на чотирьох відрізках Застосування сплайн-функцій до розв’язування задач інтерполяції

Відрізок Застосування сплайн-функцій до розв’язування задач інтерполяції називають носієм функції Застосування сплайн-функцій до розв’язування задач інтерполяції [6].

Доповнимо розбиття Застосування сплайн-функцій до розв’язування задач інтерполяції допоміжними вузлами:


Застосування сплайн-функцій до розв’язування задач інтерполяціїЗастосування сплайн-функцій до розв’язування задач інтерполяції


Застосування сплайн-функцій до розв’язування задач інтерполяції ,взятими довільно.

За розширеною сіткою:

Застосування сплайн-функцій до розв’язування задач інтерполяції:Застосування сплайн-функцій до розв’язування задач інтерполяціїЗастосування сплайн-функцій до розв’язування задач інтерполяціїможна побудувати сім’ю з Застосування сплайн-функцій до розв’язування задач інтерполяції кубічних В-сплайнів:

Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції

Ця сім’я утворює базис в просторі кубічних сплайнів на відрізку Застосування сплайн-функцій до розв’язування задач інтерполяції. Тим самим довільний кубічний сплайн Застосування сплайн-функцій до розв’язування задач інтерполяції, побудований по розбиттю Застосування сплайн-функцій до розв’язування задач інтерполяції із Застосування сплайн-функцій до розв’язування задач інтерполяції вузла, може бути представлений на цьому відрізку в вигляді лінійної комбінації:


Застосування сплайн-функцій до розв’язування задач інтерполяції


Умовами задачі коефіцієнти Застосування сплайн-функцій до розв’язування задач інтерполяції цього розбиття визначаються однозначно [7].


2.3 Задачі інтерполяції з граничними умовами першого та другого роду


У випадку коли задані значення Застосування сплайн-функцій до розв’язування задач інтерполяції функції в вузлах сітки і значенняЗастосування сплайн-функцій до розв’язування задач інтерполяції і Застосування сплайн-функцій до розв’язування задач інтерполяції першої похідної функції на кінцях сітки (задача інтерполяції з граничними умовами першого роду), коефіцієнти Застосування сплайн-функцій до розв’язування задач інтерполяції обчислюються із системи наступного вигляду:


Застосування сплайн-функцій до розв’язування задач інтерполяції, де Застосування сплайн-функцій до розв’язування задач інтерполяції(16)


Після виключення Застосування сплайн-функцій до розв’язування задач інтерполяції і Застосування сплайн-функцій до розв’язування задач інтерполяції отримується лінійна система з невідомими Застосування сплайн-функцій до розв’язування задач інтерполяції і 3-діагональною матрицею, яку можна розв’язати, як методом Гауса, так і методом прогонки [8].

При розв’язанні задачі інтерполяції другого роду використовують значення похідних другого порядку на кінцях сітки: Застосування сплайн-функцій до розв’язування задач інтерполяції і Застосування сплайн-функцій до розв’язування задач інтерполяції. І коефіцієнти Застосування сплайн-функцій до розв’язування задач інтерполяції вже обчислюються із системи:

Застосування сплайн-функцій до розв’язування задач інтерполяціїЗастосування сплайн-функцій до розв’язування задач інтерполяції(16’)


таким самим чином, як і під час розв’язування задачі інтерполяції першого роду.


2.4 Апроксимація кубічними В-сплайнами


Нехай задана таблиця чисел Застосування сплайн-функцій до розв’язування задач інтерполяції і Застосування сплайн-функцій до розв’язування задач інтерполяції, котрі є значеннями функції Застосування сплайн-функцій до розв’язування задач інтерполяції і її першої похідної Застосування сплайн-функцій до розв’язування задач інтерполяції у вузлах ai, i =0,1, ..., N. Необхідна апроксимувати функцію W(a) з допомогою цих даних.

Розглянемо апроксимацію кубічними В-сплайнами. Конструкція нормованого


Застосування сплайн-функцій до розв’язування задач інтерполяції


кубічного В-сплайна зазвичай задається так:


Застосування сплайн-функцій до розв’язування задач інтерполяції (17)


В правій частині (17) стоять многочлени третього степеня виду:


Застосування сплайн-функцій до розв’язування задач інтерполяціїЗастосування сплайн-функцій до розв’язування задач інтерполяції (18)

Коефіцієнти ai , bi , ci , di визначаються із системи чотирьох рівнянь, отриманих при умовах: Застосування сплайн-функцій до розв’язування задач інтерполяції Застосування сплайн-функцій до розв’язування задач інтерполяції Застосування сплайн-функцій до розв’язування задач інтерполяції и Застосування сплайн-функцій до розв’язування задач інтерполяції. В результаті її розв’язку можна записати:


Застосування сплайн-функцій до розв’язування задач інтерполяції

Застосування сплайн-функцій до розв’язування задач інтерполяції (19)

Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції , Застосування сплайн-функцій до розв’язування задач інтерполяції


При конкретизації виразу (18) використовуються формули (19), що задовольняють умови стику у вузлах ai-2, ai-1, ai , ai+1 для сплайнів:


Застосування сплайн-функцій до розв’язування задач інтерполяції (20)


Та їх похідних по a, позначених штрихом:


Застосування сплайн-функцій до розв’язування задач інтерполяції (21)


В роботі Б.Зав’ялова [6] для рівномірної сітки Застосування сплайн-функцій до розв’язування задач інтерполяції i=0,1, ... , N, задовольняючи наступні умови (20), (21), отримано такий вираз для Застосування сплайн-функцій до розв’язування задач інтерполяції


Застосування сплайн-функцій до розв’язування задач інтерполяції

Тут Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції а також з’ясовано, що S0=2/3, S*=1/6, S**=1/2h.

Загальний інтерполяційний вираз, в якому використовуються нормовані кубічні В-сплайни (22), записуються так:


Застосування сплайн-функцій до розв’язування задач інтерполяції, (23)


де Застосування сплайн-функцій до розв’язування задач інтерполяції, а Застосування сплайн-функцій до розв’язування задач інтерполяції. Коефіцієнти Застосування сплайн-функцій до розв’язування задач інтерполяціїbi+1,bi+2 визначаються із умов, що задовольняють значення функції W(a), відомих в деяких вузлах Застосування сплайн-функцій до розв’язування задач інтерполяції Застосування сплайн-функцій до розв’язування задач інтерполяції. Зазвичай вибирають Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції, а Застосування сплайн-функцій до розв’язування задач інтерполяції задовольняють нерівність: Застосування сплайн-функцій до розв’язування задач інтерполяції.

Запишемо (23) в розгорнутому вигляді. Для цього, використавши (22) отримаємо всі вирази для Застосування сплайн-функцій до розв’язування задач інтерполяції. Сплайн Застосування сплайн-функцій до розв’язування задач інтерполяції отримаємо із четвертої рівності (22), якщо там формально замінити x на 1+ x . Тоді


Застосування сплайн-функцій до розв’язування задач інтерполяції (24)

Вираз для Застосування сплайн-функцій до розв’язування задач інтерполяції береться безпосередньо із (22)


Застосування сплайн-функцій до розв’язування задач інтерполяції (25)


Сплайн Застосування сплайн-функцій до розв’язування задач інтерполяції записується на основі другої рівності (22) шляхом формальної заміни x на x-1


Застосування сплайн-функцій до розв’язування задач інтерполяції (26)

І, нарешті із першого виразу (22), замінюючи x на x-2, отримаємо:


Застосування сплайн-функцій до розв’язування задач інтерполяції. (27)


Тоді остаточний варіант інтерполяційного виразу, основаного на застосуванні нормованих кубічних В-сплайнів, отримаємо шляхом підстановки виразів (24)-(27) в (23)


Застосування сплайн-функцій до розв’язування задач інтерполяції (28)

Застосування сплайн-функцій до розв’язування задач інтерполяції Застосування сплайн-функцій до розв’язування задач інтерполяції


Вираз (28) дає четвертий порядок апроксимації функції Застосування сплайн-функцій до розв’язування задач інтерполяції по кроку h 0( h4 ) . Якщо в формулі (28) виключити коефіцієнти, виразивши їх через значення апроксимуючої функції у вузлах, то отримаємо:


Застосування сплайн-функцій до розв’язування задач інтерполяції, де (29)

Застосування сплайн-функцій до розв’язування задач інтерполяції (30)


Більш високий порядок апроксимації можна отримати за допомогою так званих напружених сплайнів, при цьому інтерполяційний вираз (29) зберігає свій вигляд, а функції, які входять до його складу задаються так:

Застосування сплайн-функцій до розв’язування задач інтерполяції, (31) де Застосування сплайн-функцій до розв’язування задач інтерполяції

Застосування сплайн-функцій до розв’язування задач інтерполяції; Застосування сплайн-функцій до розв’язування задач інтерполяції; Застосування сплайн-функцій до розв’язування задач інтерполяції;

Застосування сплайн-функцій до розв’язування задач інтерполяції; Застосування сплайн-функцій до розв’язування задач інтерполяції; Застосування сплайн-функцій до розв’язування задач інтерполяції.


Інтерполяційний вираз виду (29) використовується, як для визначення шуканих величин між вузлами координатної сітки, так і для апроксимації частинних похідних, котрі входять до складу повної системи рівнянь [8].


2.5 Практичність вивчення кубічних В-сплайнів у вищих навчальних закладах


В-сплайни є більш практичні у використанні ніж природні сплайни, оскільки поліноміальні коефіцієнти природних сплайнів вимагають всіх Застосування сплайн-функцій до розв’язування задач інтерполяції вузлових точок. Їх обчислення залучає розв’язання Застосування сплайн-функцій до розв’язування задач інтерполяції вимірних матриць. У цьому є два недоліки: переміщення однієї вузлової точки зачіпає всю криву і під час розв’язування матриці можна зіткнутися з швидкою зміною кривої. З іншого боку, В-сплайни складаються з сегментів кривих, залежних тільки від кількох вузлових точок. Це називається локальним контролем. Таким чином, переміщення вузлової точки зачіпає тільки маленьку частину кривої. B-сплайни мають ту ж саму неперервність, як і природні сплайни, але не інтерполюють їх вузлові точки. Тому, ми говоримо про наближення багатокутника, а не про вставку вузлової точки.

Першим кроком є вибір порядку базису сплайнів, щоб досягати бажану гладкість і полегшити обчислювання.

Як найефективніші, були вибрані кубічні В-сплайни, тобто сплайни третього порядку, через наступні причини:

1. Поліноми нижніх степенів дають дуже низьку гнучкість в управлінні формою кривої. В-сплайни першого порядку (прямі лінії) не дають задовільної гладкості апроксимуючої кривої. В-сплайни другого порядку дають гладку криву, але проблема виникає в точках, де з'єднуються сегменти кривої. Щоб зрозуміти цю проблему, ми введемо нове означення:

Означення. Позначимо Застосування сплайн-функцій до розв’язування задач інтерполяції сегмент кривої. Якщо напрям і величина Застосування сплайн-функцій до розв’язування задач інтерполяції і Застосування сплайн-функцій до розв’язування задач інтерполяції рівні в точці з'єднання, крива, що складається з цих двох сегментів, називається Застосування сплайн-функцій до розв’язування задач інтерполяції неперервною.

В-сплайни другого порядку Застосування сплайн-функцій до розв’язування задач інтерполяції і Застосування сплайн-функцій до розв’язування задач інтерполяції неперервні, що не гарантує задовільну неперервність в об'єднаних точках. Проблема вирішується, використовуючи кубічні В-сплайни, які є Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції і Застосування сплайн-функцій до розв’язування задач інтерполяції і неперервними.

2.Поліноми вищого степеня віднімають багато часу в обчислювальному процесі і можуть нести небажані скачки. Крива може "скакати" назад і вперед важко керованими способами.

3. Кажучи, що кубічні В-сплайни дають "задовільну" неперервність, мається на увазі, що око не може виявити геометричну неоднорідність степеня вище, ніж два і практично досить використовувати В-сплайни третього ступеня [9].

Отже, хоч кубічні В-сплайни і є методом, важчим у розрахунках, ніж інші, відомі методи, які застосовуються у задачах для наближення, але він дає набагато точніший результат, і є просто незамінним при розв’язуванні задач, які неможливо розв’язати іншими методами.


3. Практична частина


3.1 Задача №1


Потрібно інтерполювати (використовуючи задачу першого або другого роду) одну з відомих функцій, з допомогою кубічних В-сплайнів, у випадку рівномірної сітки розбиття.

Розв’язання: Для розв’язання цієї задачі візьмемо функцію Застосування сплайн-функцій до розв’язування задач інтерполяції і будемо її інтерполювати на відрізку Застосування сплайн-функцій до розв’язування задач інтерполяції, розбивши його на 6 рівних частин (Застосування сплайн-функцій до розв’язування задач інтерполяції). Маємо рівномірну сітку, отже будемо користуватися формулою (15’). Знайдемо Застосування сплайн-функцій до розв’язування задач інтерполяції і Застосування сплайн-функцій до розв’язування задач інтерполяції (задача інтерполяції першого роду): Застосування сплайн-функцій до розв’язування задач інтерполяції,


Застосування сплайн-функцій до розв’язування задач інтерполяції(15’’) Виключимо із системи (16) Застосування сплайн-функцій до розв’язування задач інтерполяції і Застосування сплайн-функцій до розв’язування задач інтерполяції: Застосування сплайн-функцій до розв’язування задач інтерполяції , Застосування сплайн-функцій до розв’язування задач інтерполяції, (32)


і отримаємо наступну систему:


Застосування сплайн-функцій до розв’язування задач інтерполяції

, Застосування сплайн-функцій до розв’язування задач інтерполяції(33) де

Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції,

Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції,(34)

Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції.


Розв’язавши систему (33), знайдемо коефіцієнти Застосування сплайн-функцій до розв’язування задач інтерполяції, для шуканого сплайна:


Застосування сплайн-функцій до розв’язування задач інтерполяції


(де у нашому випадку Застосування сплайн-функцій до розв’язування задач інтерполяції).

Отже необхідно знайти і підставити відповідні значення та розв’язати матричне рівняння:


Застосування сплайн-функцій до розв’язування задач інтерполяції,


де Застосування сплайн-функцій до розв’язування задач інтерполяції - тридіагональна матриця, а Застосування сплайн-функцій до розв’язування задач інтерполяції - шуканий вектор коефіцієнтів.

Для нашої функції Застосування сплайн-функцій до розв’язування задач інтерполяції маємо наступні дані:


Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції,

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції,

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції,

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції,

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції,

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції,

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції,

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції.


Тоді три діагональна матриця Застосування сплайн-функцій до розв’язування задач інтерполяції і вектор Застосування сплайн-функцій до розв’язування задач інтерполяції відповідно дорівнюватимуть:


Застосування сплайн-функцій до розв’язування задач інтерполяції, Застосування сплайн-функцій до розв’язування задач інтерполяції,


підставивши їх у матричне рівняння, отримаємо вектор Застосування сплайн-функцій до розв’язування задач інтерполяції:


Застосування сплайн-функцій до розв’язування задач інтерполяції ,

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції.

Отже, маємо інтерполяційний сплайн функції Застосування сплайн-функцій до розв’язування задач інтерполяції на проміжку Застосування сплайн-функцій до розв’язування задач інтерполяції:


Застосування сплайн-функцій до розв’язування задач інтерполяції


Побудуємо його графік (в середовищі Matlab):

Застосування сплайн-функцій до розв’язування задач інтерполяції

Мал. 4, 5 – Графіки функції


На малюнку 4 зображено графік функції Застосування сплайн-функцій до розв’язування задач інтерполяції, а на малюнку 5 – графік функції Застосування сплайн-функцій до розв’язування задач інтерполяції(зображено зеленим кольором), яка накладається на графік функції Застосування сплайн-функцій до розв’язування задач інтерполяції. Як бачимо наш інтерполяційний сплайн фактично повністю співпадає з Застосування сплайн-функцій до розв’язування задач інтерполяціїі лише при великому збільшенні можна побачити розбіжності (малюнок 6 і 7), тобто має місце незначна похибка. Знайдемо її.


Застосування сплайн-функцій до розв’язування задач інтерполяції

Мал. 6, 7 – Розбіжності

Для цього будемо шукати максимальну похибку на кожному з відрізків розбиття. Скористаємося наступними формулами:


Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції(35)


Застосування сплайн-функцій до розв’язування задач інтерполяціїОтже на проміжку Застосування сплайн-функцій до розв’язування задач інтерполяції маємо графік зображений на малюнку 8 (побудований в середовищі Mathcad). Неозброєним оком похибки не видно, але вона є, і це показано на малюнку 9, який зображає функцію Застосування сплайн-функцій до розв’язування задач інтерполяції.


Мал. 8 – Графік, побудований в середовищі Mathcad

Застосування сплайн-функцій до розв’язування задач інтерполяції


Мал. 9 – Найбільша похибка відрізку


Як видно з малюнка 9, найбільша похибка на даному відрізку приблизно дорівнює:

Застосування сплайн-функцій до розв’язування задач інтерполяції при Застосування сплайн-функцій до розв’язування задач інтерполяції і відповідно Застосування сплайн-функцій до розв’язування задач інтерполяції.

Аналогічно розглянемо всі проміжки розбиття і знайдемо максимальні значення похибок на кожному з них, які представлені в наступній таблиці:


сегмент

Застосування сплайн-функцій до розв’язування задач інтерполяції

Застосування сплайн-функцій до розв’язування задач інтерполяції

Застосування сплайн-функцій до розв’язування задач інтерполяції

Застосування сплайн-функцій до розв’язування задач інтерполяції

0,27

-2,023Застосування сплайн-функцій до розв’язування задач інтерполяції

0,021%

Застосування сплайн-функцій до розв’язування задач інтерполяції

0,82

-1,472Застосування сплайн-функцій до розв’язування задач інтерполяції

0,022%

Застосування сплайн-функцій до розв’язування задач інтерполяції

1,36

-0,584Застосування сплайн-функцій до розв’язування задач інтерполяції

0,028%

Застосування сплайн-функцій до розв’язування задач інтерполяції

1,78

0,584Застосування сплайн-функцій до розв’язування задач інтерполяції

0,028%

Застосування сплайн-функцій до розв’язування задач інтерполяції

2,34

1,489Застосування сплайн-функцій до розв’язування задач інтерполяції

0,021%

Застосування сплайн-функцій до розв’язування задач інтерполяції

2,88

2,023Застосування сплайн-функцій до розв’язування задач інтерполяції

0,021%

З таблиці видно, що максимальна похибка менша за 0,03%, і, оскільки, задовільною вважається похибка менша чим 5%, то отриману можна вважати практично нульовою.


3.2 Задача №2


Потрібно інтерполювати (використовуючи задачу першого або другого роду) одну з відомих функцій, з допомогою кубічних В-сплайнів, у випадку нерівномірної сітки розбиття.

Розв’язання: Для розв’язання цієї задачі візьмемо функцію Застосування сплайн-функцій до розв’язування задач інтерполяції і будемо її інтерполювати на відрізку Застосування сплайн-функцій до розв’язування задач інтерполяції, розбивши його на 5 частин ([0,1], [1,9/5], [9/5,12/5], [12/5,14/5], [14/5,3]). Маємо нерівномірну сітку, отже будемо користуватися формулою (15). Знайдемо Застосування сплайн-функцій до розв’язування задач інтерполяції і Застосування сплайн-функцій до розв’язування задач інтерполяції (задача інтерполяції першого роду). Аналогічно, як і в першій задачі використаємо формули (34) і розв’яжемо систему (33). Для нашої функції Застосування сплайн-функцій до розв’язування задач інтерполяції маємо наступні дані:


Застосування сплайн-функцій до розв’язування задач інтерполяції

Застосування сплайн-функцій до розв’язування задач інтерполяції

Застосування сплайн-функцій до розв’язування задач інтерполяції

Застосування сплайн-функцій до розв’язування задач інтерполяції

-2 -2

Застосування сплайн-функцій до розв’язування задач інтерполяції


-1 -1

Застосування сплайн-функцій до розв’язування задач інтерполяції


0 0 1 1
1 1

Застосування сплайн-функцій до розв’язування задач інтерполяції


2

Застосування сплайн-функцій до розв’язування задач інтерполяції

Застосування сплайн-функцій до розв’язування задач інтерполяції


3

Застосування сплайн-функцій до розв’язування задач інтерполяції

Застосування сплайн-функцій до розв’язування задач інтерполяції


4

Застосування сплайн-функцій до розв’язування задач інтерполяції

Застосування сплайн-функцій до розв’язування задач інтерполяції


5 3

Застосування сплайн-функцій до розв’язування задач інтерполяції

Застосування сплайн-функцій до розв’язування задач інтерполяції

6 3,1

Застосування сплайн-функцій до розв’язування задач інтерполяції


7 3,2

Застосування сплайн-функцій до розв’язування задач інтерполяції



Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції,

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції,

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції,

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції,

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції,

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції,

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції,

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції.


Тоді тридіагональна матриця Застосування сплайн-функцій до розв’язування задач інтерполяції і вектор Застосування сплайн-функцій до розв’язування задач інтерполяції відповідно дорівнюватимуть:


Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції, підставивши


їх у матричне рівняння, отримаємо вектор Застосування сплайн-функцій до розв’язування задач інтерполяції:

Застосування сплайн-функцій до розв’язування задач інтерполяції

Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції. Отже, маємо інтерполяційний сплайн функції Застосування сплайн-функцій до розв’язування задач інтерполяції на проміжку Застосування сплайн-функцій до розв’язування задач інтерполяції: Застосування сплайн-функцій до розв’язування задач інтерполяції

Побудуємо його графік (в середовищі Matlab):


Застосування сплайн-функцій до розв’язування задач інтерполяції

Мал. 10 і 11 – Графік функції

На малюнку 10 зображено графік функції Застосування сплайн-функцій до розв’язування задач інтерполяції, а на малюнку 11 – графік функції Застосування сплайн-функцій до розв’язування задач інтерполяції (зображено синім кольором), яка накладається на графік функції Застосування сплайн-функцій до розв’язування задач інтерполяції. Як бачимо наш інтерполяційний сплайн фактично повністю співпадає з Застосування сплайн-функцій до розв’язування задач інтерполяціїі лише при великому збільшенні можна побачити розбіжності (малюнок 12 і 13), тобто має місце незначна похибка. Знайдемо її.


Застосування сплайн-функцій до розв’язування задач інтерполяції

Мал. 12, 13 – Розбіжності


Для цього будемо шукати максимальну похибку на кожному з відрізків розбиття. Скористаємося наступними формулами:


Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції(36)


Неозброєним оком похибки не видно, але вона є, і це показано на малюнку 14, який зображає функцію Застосування сплайн-функцій до розв’язування задач інтерполяції на кожному проміжку розбиття.

Застосування сплайн-функцій до розв’язування задач інтерполяціїЗастосування сплайн-функцій до розв’язування задач інтерполяціїЗастосування сплайн-функцій до розв’язування задач інтерполяціїЗастосування сплайн-функцій до розв’язування задач інтерполяціїЗастосування сплайн-функцій до розв’язування задач інтерполяції

Мал. 14 – Похибки

Аналогічно, як і в попередній задачі розглядаємо всі проміжки розбиття і знаходимо максимальні значення похибок на кожному з них, які представлені в наступній таблиці:


Таблиця 5. - Всі проміжки розбиття

сегмент

Застосування сплайн-функцій до розв’язування задач інтерполяції

Застосування сплайн-функцій до розв’язування задач інтерполяції

Застосування сплайн-функцій до розв’язування задач інтерполяції

[0,1] 0,5

1,786Застосування сплайн-функцій до розв’язування задач інтерполяції

0,1049%

[1,Застосування сплайн-функцій до розв’язування задач інтерполяції]

1,38

-3,141Застосування сплайн-функцій до розв’язування задач інтерполяції

0,0682%

[Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції]

2,12

-1,431Застосування сплайн-функцій до розв’язування задач інтерполяції

0,0228%

[Застосування сплайн-функцій до розв’язування задач інтерполяції,Застосування сплайн-функцій до розв’язування задач інтерполяції]

2,63

1,548Застосування сплайн-функцій до розв’язування задач інтерполяції

0,0028%

[Застосування сплайн-функцій до розв’язування задач інтерполяції,3]

2,82

1,813Застосування сплайн-функцій до розв’язування задач інтерполяції

0,0002%

З таблиці видно, що максимальна похибка менша за 0,11%, і, оскільки, задовільною вважається похибка менша чим 5%, то отримана нас повністю задовольняє. Ще можна відзначити, що найменша величина похибки досягається на найменшому із сегментів розбиття, тобто чим менші проміжки розбиття тим більша точність (але розбиття на занадто малі сегменти може значно ускладнити обрахунки).


Висновки


У курсовій роботі було розглянуто лінійні , квадратичні та кубічні В-сплайни. Було отримано форми запису цих сплайнів та виведено деякі формули для розрахунків інтерполяційних задач. А також представлені рекурентні формули для виведення В-сплайнів 1-го, 2-го, 3-го та вищих порядків.

Із розглянутих сплайнів найкращі інтерполяційні якості мають кубічні В-сплайни, тому що саме вони забезпечують задовільну гладкість, на відмінно від лінійних і квадратичних В-сплайнів, а також для кубічних В-сплайнів використовуються порівняно нескладні обчислення, що не скажеш про сплайни вищих порядків, які до того ж можуть мати небажані скачки.

Необхідно відмітити перевагу В-сплайнів над звичайними сплайн-функціями. В-сплайни складаються з сегментів кривих, залежних тільки від кількох вузлових точок, і тому при локальних змінах крива змінюється лише на одному сегменті, ніяк не впливаючи на криві на інших сегментах.

Як було перевірено на практиці кубічні В-сплайни забезпечують дуже високу точність у розрахунках, яка складає менше ніж 0,2%, в той час як задовільною вважається похибка не більше 5%.

Отже, хоч кубічні В-сплайни, і є методом важчим у розрахунках ніж інші відомі методи, які застосовуються у задачах для наближення, але він дає набагато точніший результат, і є просто незамінним при розв’язуванні задач, які неможливо розв’язати іншими методами. Це дуже важливо, і тому В-сплайни доцільно вивчати у ВНЗ, щоб студенти могли розв’язувати, нерозв’язні раніше, задачі, і отримувати результати високої точності.

Кубічні В-сплайни мають численні застосування як в математичній теорії, так і в різноманітних обчислювальних задачах. Сплакни застосовують при вивченні «Чисельних методів», як додатковий метод інтерполяції, та при розв’язуванні рівнянь математичної фізики. Особливо зручно з допомогою сплайн-функцій розв’язувати апроксимаційні та інтерполяційні задачі.

Список використаних джерел


Корнейчук Н. П. Сплайны в теории приближения. / Н. П. Корнейчук. – М. : Наука, 1984. – 352с.

Сплайн – интерполяция. // Електронний ресурс: http://petrsu.karelia.ru/psu/Deps/IMO/Complex/part3/part34_a.htm

Калиткин Н. Н. Численные методы. / Н. Н. Калиткин. – М. : Нака, 1978. – 512с.

Селиванова И. А. Интерполяция сплайнами. / И. А. Селиванова.–Свердловск: УПИ, 1989. – 11с.

Пак Т. В. Лабораторные работы по Численным методам. / Т. В. Пак. Учебно-методическое пособие. – Владивосток: Изд-во Дальневост. ун-та, 2006. – 24с.

Завьялов Ю. С. Методы сплайн-функций. / Ю. С. Завьялов, Б. И. Квасов, В. Л. Мирошниченко. – М. : Наука, 1980. – 280с.

В-сплайн. // Електронний ресурс: http://uk.wikipedia.org/wiki/B-сплайн

Шикин Е. В. Кривые и поверхности на экране компьютера. / Е. В. Шикин, Л. П. Плис. Руководство по сплайнам для пользователей. – М. : ДИАЛОГ-МИФИ, 1996. – 240с.

В-сплайны. // Електронний ресурс: http://www.masters.donntu.edu.ua/2005/kita/tribrat/library/splines.htm

33


Похожие работы:

  1. •  ... та принципу Даламбера до розв'язування задач
  2. • Особливості емоційної регуляції процесу розв"язування ...
  3. • Особливості методики розв"язування фізичних задач у 7 ...
  4. • Загальні питання методики розв"язування складених задач
  5. • Розвиток творчої активності школярів у процесі розв ...
  6. • Формування в учнів умінь розв"язувати задачі на рух
  7. • Розвиток умінь розв"язувати задач на пропорційне ...
  8. • Диференційований підхід у процесі навчання молодших ...
  9. • Формування у молодших школярів уміння розв'язувати ...
  10. • Методика роботи над простими задачами, що ...
  11. • Міжпредметні зв"язки на уроках хімії при розв ...
  12. • Особливості контролю знань з математики
  13. • Розвиток творчих здібностей учнів на уроках ...
  14. • Методика організації і виконання учнями графічних ...
  15. • Методика проведення уроку комбінованого типу з ...
  16. • Методи навчання
  17. • Творчий підхід до вивчення математики
  18. • Особливості вивчення математики в профільних класах ...
  19. • Стандарти автоматизованих систем управління в ...
Рефетека ру refoteka@gmail.com