- •Лабораторний практикум
- •58012, Чернівці, вул.Коцюбинського, 2 §1. Числові методи розв’язування задачі Коші для звичайних диференціальних рівнянь
- •1.1. Постановка задачі
- •1.2. Метод Ейлера та його модифікації
- •1.3. Системи диференціальних рівнянь
- •1.4. Методи Рунге-Кутти
- •Формули методу Рунге-Кутти другого порядку
- •Формули методу Ейлера та його модифікацій Порядок
- •1.7. Багатокрокові методи розв’язування задачі Коші звичайних диференціальних рівнянь першого порядку
- •1.5. Про оцінку похибки наближеного розв’язку задачі Коші
- •1.6. Оcновні формули однокрокових методів
- •1.7.1. Методи Адамса
- •1.7.2. Метод Мілна
- •1.7.3. Метод Хеммінга
- •1.7.4. Неявні багатокрокові методи
- •1.7.5. Явні багатокрокові методи
- •1.8. Багатокрокові методи розв’язування систем звичайних диференціальних рівнянь
- •1.9. Розв’язування задачі Коші для систем диференціальних рівнянь першого порядку за допомогою функції rkfixed системи MathCad
- •Лабораторна робота №1
- •Варіанти завдань
- •§2. Лінійні крайові задачі
- •2.1. Постановка задачі
- •2.2. Побудова різницевої схеми
- •2.3. Методи прогонки для системи із тридіагональною матрицею
- •2.3.1. Метод правої прогонки
- •2.3.2. Метод лівої прогонки
- •2.3.3. Метод зустрічної прогонки
- •2.4. Розв’язування крайової задачі для диференціального рівняння n-ого порядку за допомогою функції sbval системи MathCad
- •Лабораторна робота №2
- •Задачі для здр 2-го порядку
- •Варіанти завдань
- •Список літератури
- •§1. Числові методи розв’язування задачі Коші для звичайних диференціальних рівнянь
- •§2. Лінійні крайові задачі
- •58012, Чернівці, вул.Коцюбинського, 2
1.7.2. Метод Мілна
Ще
одним багатокроковим методом розв’язування
задачі Коші (1.1), (1.2) четвертого порядку
є метод Мілна ([1],c.333-342;
[2],c.223-224];
[9],c.15-16).
Нехай відомі значення розв’язку
Значення розв’язку у вузлах
обчислюється за два кроки. Спочатку за
першою формулою Мілна
(1.18)
знаходиться
значення-прогноз. Відтак за другою
формулою Мілна здійснюється корекція
:
(1.19)
де
Отримане значення можна уточнити ще
краще, використавши замість
в (1.19)
і коректуючи знов.
Метод Мілна дозволяє на кожному кроці контролювати точність одержаного результату за формулою
Якщо
, де
- задана гранична похибка розв’язку ,
то можна покласти
і
.
Далі переходять до обчислення найближчого
наступного значення
, повторюючи вказаний вище процес. Якщо
ж
,
то слід удвічі зменшити крок інтегрування
h і перерахувати ,,початковий відрізок’’.
Недоліком цього методу є досить вузька область стійкості.
1.7.3. Метод Хеммінга
Завдяки простій реалізації та стійкості в обчислювальній практиці застосовується також метод Хеммінга [13]. Метод має четвертий порядок точності. Його особливістю є те, що він дозволяє уточнювати як значення прогнозу, так і корекції.
Згідно методу Хеммінга прогноз наближеного значення розв’язку в точці tn за стартовими значеннями yn-4,yn-3,yn-2,yn-1 відбувається за формулою
n=
4, 5,
… ,
(1.20)
де fn-k=f(tn-k, yn-k), k=1,2,3.
Уточнення прогнозу:
(1.21)
Уточнення yn здійснюється методом простої ітерації
i=0,1,
… .
(1.22)
Нижче виписані основні формули багатокрокових явних і неявних методів.
1.7.4. Неявні багатокрокові методи
Формули Адамса. Порядок
2
3
4
Формули Мілна
4
4
Формули Хеммінга
4
4
4
1.7.5. Явні багатокрокові методи
Формули Адамса Порядок
2
3
4
Формули Ністрема
2
3
4
Формули Мілна
4
4
Формули Хеммінга
4
4
4
1.8. Багатокрокові методи розв’язування систем звичайних диференціальних рівнянь
Багатокрокові методи використовуються також для числового розв’язування систем диференціальних рівнянь першого порядку вигляду
з
початковою умовою
.
Як
і раніше, виберемо крок h
і покладемо
де
- шукана вектор-функція.
Одним
із однокрокових методів, описаних вище,
визначають додаткові початкові значення
.
Із системи рівнянь обчислюють відповідні
значення похідної
Тоді
наступні значення
шуканої вектор-функції наближено крок
за кроком можуть бути обчислені,
наприклад, згідно методу Мілна за
формулами
I.
II.
III.
Якщо
де
– задана межова похибка, то покладають
.
Під нормою вектора
розуміють, наприклад, число
. Якщо ж
,
то зменшують крок інтегрування h вдвічі
і обчислюють розв’язки заново. Аналогічно
виписуються екстраполяційна та
інтерполяційна формули Адамса.
1.9. Розв’язування задачі Коші для систем диференціальних рівнянь першого порядку за допомогою функції rkfixed системи MathCad
Для того щоб розв’язати систему диференціальних рівнянь першого порядку в системі MathCAD [11], використовують функцію rkfixed, в якій запрограмовано метод Рунге–Кутти четвертого порядку точності з фіксованим кроком
інтегрування. Звернення до функції має вигляд:
rkfixed ( l, t1, t2, n, D).
Функція повертає матрицю розв’язків системи звичайних диференціальних рівнянь із початковими умовами, які передаються у векторі l, на інтервалі від t1 до t2 при фіксованому числі кроків n. Символьний вектор D містить похідні шуканих функцій (праві частини системи рівнянь).
Функція rkfixed повертає матрицю, перший стовпець якої містить точки, в яких шукається наближений розв’язок, а інші стовпці містять значення знайдених наближених розв’язків у відповідних точках.
Приклад застосування функції rkfixed для системи рівнянь. Розв’язати систему рівнянь
з початковими умовами x(0)=0, y(0)=1.
Задамо
вектор початкових умов у точці t=0:
і параметр m: m:=-2.
Задамо також вектор, який містить значення похідних шуканих функцій:
.
Сформуємо
звернення до функції : z:=rkfixed(l,
0, 10, 100, D),
передавши границі відрізка інтегрування
0 і 10, кількість точок n=100
та вектор-функцію
.
Набравши z= , одержимо матрицю розміру 1003 розв’язків даної системи диференціальних рівнянь першого порядку:
,
де перший стовпець – це значення змінної t, другий та третій – відповідно значення функцій x та y в точках t.
Зауваження. Задача Коші для рівняння також розв’язується за допомогою функції rkfixed, як для системи, що складається з одного рівняння. В останній версії системи MathCad (Mathcad 2001 Professional) є можливість розв’язати задачу Коші для лінійного диференціального рівняння, застосовуючи функцію Odesolve.
Приклад застосування функції rkfixed для рівняння. Розв’язати рівняння
з початковою умовою y(0)=1.
У
цьому випадку вектор початкових умов
складається з одного елемента:
,
вектор похідних шуканих функцій – з
одної функції:
Звернення
до функції має вигляд: z:=rkfixed(y,
0, 10, 100, D).
Тут y
– вектор
початкових значень, який містить один
елемент, 0 і 10 – границі відрізка
інтегрування, 100
– кількість
точок,
–
визначена вище функція. Числовий
розв’язок задачі Коші одержується у
вигляді матриці z,
перший стовпець якої містить значення
незалежної змінної t,
а другий – значення шуканої функції
y.
