You are on page 1of 12

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

Національний технічний університет України

«Київський політехнічний інститут ім. І.Сікорського»

Навчально-науковий комплекс

«Інститут прикладного системного аналізу»

Лабораторна робота №5

З курсу «Чисельні методи»

Тема: «Крайові задачі для звичайних диференційних рівнянь»

Варіант №5

Виконав:

Студент 2-го курсу

Групи ДА-51

Бурик Д.О.

Київ 2017
Мета роботи
Придбання практичних навичок в чисельному інтегруванні звичайних диференційних
рівнянь при заданих межових умовах, дослідження впливу значення кроку обчислень
на точність і збіжність рішення. Визначення можливості застосування засобів
стандартних пакетів для отримання результатів.

Порядок виконання роботи

1. Запрограмувати на мові Mathematica розв’язання заданої крайової задачі,


використовуючи загальний розв’язок диференціального рівняння і методом
зведення до задачі Коші.

2. Визначити лімітну довжину кроку для метода скінчених різниць , якщо


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

3. Знайти розв’язки крайової задачі методом колокацій. Порівняти отримані


розв’язки з тими, що були знайдені у п.2. Порівняння провести за допомогою
графіків.

4. Запрограмувати на мові Mathematica розв’язання заданої крайової задачі


методом Гальоркіна.

5. Запрограмувати на мові Mathematica розв’язання заданої крайової задачі


методом кінцевих елементів, скориставшись величиною кроку, заданої в таблиці
для апроксимації. Порівняти покрокові похибки розв’язання у співпадаючих
точках, отриманих в пунктах 2 і 5.

6. Скористатися можливостями пакету і за допомогою оператора NDSolve знайти


шуканий розв’язок. Графічно порівняти з вже отриманими розв’язками.

7. Скласти звіт з отриманих результатів і математичних формул використаних


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

Крайвова задача:

Знайдемо розв’язок за допомогою стандартного оператора, щоб надалі було із чим


порівнювати результати обчислень:

Запрограмуємо на мові Mathematica розв’язання заданої крайової задачі,


використовуючи загальний розв’язок диференціального рівняння і метод зведення до
задачі Коші.

Маємо двоточкову лінійну крайову задачу:

[ ]
Розв’язок задачі будемо шукати у вигляді

Для розв’язання крайової задачі зведенням до задачі Коші необхідно знайти розв’язок
задач:

Для нашого рівняння:

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

Метод прогону є стійким, якщо матриця коефіцієнтів діагонально домінантна. Це


можна забезпечити обранням кроку h. Умови:

[ ]

[ ]
| |

Задані вище умови виконуються для кроку h=0.1

Метод скінченних різниць


2.2 2.4 2.6 2.8 3.0

0.01

0.02

0.03

0.04

0.05

Метод колокацій

Розв’язок шукається у вигляді функції:

В якості φ0 візьмемо лінійну функцію

ак як β0 = 0, то функції φi(t) можна виразити:


2.2 2.4 2.6 2.8 3.0

0.01

0.02

0.03

0.04

0.000014

0.000012

0.00001

8. 10 6

6. 10 6

4. 10 6

2. 10 6

2.2 2.4 2.6 2.8 3.0


Метод Гальоркіна

Додатково зажадаємо, щоб система базисних функцій φi(t), i = 0,1,2,… була

ортогональної на відрізку [a,b] тобто:

∫ ∫

Нев’язок:

[ ] ∑ [ ]

Умова ортогональності:

∫ ̅̅̅̅̅

У WolframMathematica маємо:
2.2 2.4 2.6 2.8 3.0

0.01

0.02

0.03

0.04

1. 10 6

5. 10 7

2.2 2.4 2.6 2.8 3.0

5. 10 7

1. 10 6

Метод кінцевих елементів

Як і у випадку методу колокацій, будемо шукати наближений розв’язок у вигляді:


Додатково зажадаємо, щоб система базисних функцій φi(t), i = 0,1,2,… була

ортогональної на відрізку [a,b] тобто:

∫ ∫

Нев’язок:

[ ] ∑ [ ]

Умова ортогональності:

∫ ̅̅̅̅̅

У WolframMathematica маємо:
Висновок

В ході лабораторної роботи вирішувалась крайова задача диференційного лінійного


рівняння. Такі задачі виникають у багатьох прикладних науках, зокрема в фізиці, теорії
управління та ін.. Для їх вирішення було використано наступні методи:

 Метод зведення до задачі Коші. Полягає у перетворенні крайової задачі на


лінійну систему задач Коші, які багаторазово вирішуються. Недолік методу
полягає у тому, що від точності вирішення саме кожної окремої задачі Коші
залежить точність метода в цілому.
 Метод кінцевих різниць. Полягає у заміні похідних у диференційному рівнянні
та крайових умовах на кінцево-різницеву апроксимацію.
 Метод колокацій. Полягає у розбитті інтервалу рішення на під інтервали, у
вузлах яких, шукається інтерполююча функція. Умова збіжності – мінімізація
нев’язку у вузлах інтерполяції.
 Метод Гальоркіна. Основна ідея, як і в методі колокацій, але умова збіжності
передбачає ортогональність функції нев’язку, та функцій, що входять до
рішення.
 Метод кінцевих елементів. Як і в методі Гальоркіна, але з додатковою умовою
для функцій.

Останні 3 методи складніші для програмування та математично, але дають більш точні
результати.

Також використано стандартний оператор пакету WolframMathematica для


знаходження результату та перевірки правильності роботи програм.

You might also like