- •Міністерство освіти україни
- •1.1. Відділення корней
- •1.2. Уточнення корней
- •1.2.1. Метод ділення відрізка наполовину
- •1.2.2. Метод Ньютона (доточних)
- •1.2.3. Метод хорд (сікучих)
- •1.2.4. Метод ітеграцій (метод послідовніх приближень)
- •2. Численне рішення систем лінійних алгебраічних рівнянь
- •2.1. Метод Крамера.
- •2.2. Метод Гаусса.
- •2.3 Блок-схема програми для рішення систем лінійних рівнянь методом Гаусса
- •2.4. Метод простій ітерації
- •2.5. Метод Зейделя
- •3. Обробка експериментальних даних
- •3.1. Задачі, які виникають при обробці експериментальних даних
- •3.2. Інтерполіровання
- •3.2.1. Інтерполіровання функцій
- •3.2.2 Зворотне інтерполіровання
- •3.3. Апроксимація
- •3.3.1. Вибір емпирічної формули. Метод вирівнювання
- •2) Розраховуваєм нові перемінні X та y та занесемо їх до табл. 3.1.
- •3.3.2.Визначення параметрів емпирічноі формули
- •3.3.2.1. Метод обраних точок
- •3.3.2.2. Метод середніх
- •3.3.2.3. Метод найменьших квадратів
- •4. Методи чиселього інтегрування
- •4.1. Метод трапецій
- •4.2. Метод Сімпсона
- •4.3. Оцінка точності формул чисельного інтегрування. Вибір кроку інтегрування
- •4.3.1. Вибір кроку інтегрування за оцінкою остаточного члена (помилки)
- •4.3.2. Вибір кроку інтегрування за допомогою подвійного перерахунку
- •5. Методи чисельного інтегрування звичайних діференціальних рівнянь
- •5.1. Одноступінчати методи
- •5.1.1. Рішення за допомогою рядів Тейлора
- •5.1.2 Метод Ейлера
- •5.1.3. Модификований метод Ейлера
- •5.1.4. Метод Ейлера-Коши Мал. 5.3. Метод Ейлера- Коші
- •5.2. Багатоступінчати методи
- •6. Методи рішення лінейної крайової задачи
- •6.1. Постановка задачи
- •6.2. Метод кінцевих різностей
- •6.3. Метод прогонки
- •6.4. Алгоритм рішення крайової задачі методом прогонки
5.2. Багатоступінчати методи
5.2.1.Методи прогноза та корекції
Відмінною рисою методів Рунге-Кутта є те, що при обчислюванні слідуючої точки (Xi+1,Yi+1) використовуїться інформація тільки про точки (Xi,Yi). У методах другого порядка і вище доводиться вичисляти значення функції в одній чи кількох проміжних точках. Це не завжди раціонально, оскільки, якщо процес інтегрування вже просунувся на декілька кроків, то маїмо ту додаткову інформацію (про попередні точки рішення), для використання якої не потрібно обчислювати значення функцій.
Методи прогноза та корекції відрізняються тією властивістю, що за їх до- помогою неможливо почати рішення диференційного рівняння, тому що в них необхідно використовувати інформацію про попередні точки рішення. Для початку рішення рівняння, маючи тільки одну точку, визначену первісною умовою, необхіднє використовувати метод типу Рунге-Кутта.
З назви метода зрозуміло, що спочатку "завбачаїться" значення Y(0)i +1, а потім використовуїться той чи інший метод для "коректування" отриманного зна чення.Звичайно, після цього можна використовувати ту ж саму формулу для повторного коректування значення Yi+1. Цей ітераційний процес можна повторювати скільки завгодно разів, але з точки зору єфективності доцільно зменьшувати число ітерацій, вибираючи відповідний крок інтегрування.
Для прогноза значення Yi+1можна використовувати різні формули. Формула другого порядку точності маї вигляд:
Y(0)i +1 =Yi-1+2*h*f(Xi,Yi) (5.16)
де верхній індекс (0) означаї первісне наближення до Yi+1, тобто завбачене значення.
З (5.16) видно, що за її допомогою неможливо обчислити Yi. Тому для обчислення Yi використовуеться метод Рунге-Кутта. Всі послідуючі точки будуть обчислятися з використанням інформації про попередні точки рішення без додаткових обчислень значення функції. Це дозволяї класифікувати методи прогноза та корекції як багатоступінчасти методи рішення диференційних рівнянь.
Мал.
5.4. Метод прогнозу та корекції. Стадія
прогнозу
Алгоритм рішення рівняння методом прогноза та корекції слідуючий. По (5.16) обчислюється завбачене значення Y(0)i+1. Геометрично завбачення зводиться до того, що знаходимо кут нахилу дотичної в точці (Xi,Yi) (пряма L1 на мал. 5.4). Після цього через точку (Xi-1,Yi-1) проводиться пряма L’1, паралельна L1. Завбачене значення Yi+1буде розташоване там, де пряма L’1перетине з ординатою X=Xi+1.
Мал.5.5.
. Метод прогнозу та корекції. Стадія
корекції
Назвемо це наближення зкоректованим значенням Y(1)i +1. Обчислити це зкоректоване значення можливо по формулі:
Y(1)i+1=Yi+h/2*[f(Xi,Yi)+f(Xi+1,Y(0)i+1)] (5.17)
Можна знайти нове, можливо, ще найкраще наближення до Yi+1, використо-вуючи знайдене значення Yi+1і коректуючи знов. В загальному випадку, К-те наближення до Yi+1обчислюється по формулі:
Y(k)i+1=Yi+h/2*[(f(Xi,Yi)+f(Xi+1,Y(k-1)i+1)] (5.18)
для К=1,2,3,... .
Ітераційний процес завершується, коли
|Y(k+1)i+1- Y(k)i+1| < Є (5.19)
Обираючи крок для метода прогноза та корекції необхідно користуватися слідуючим емпірічним правилом : мінімальний об'їм обчислень(і, отже, мінімальні затрати машинного часу) досягаються при числі ітерацій рівним 2. Іншими словами, крок інтегрування потрібно вибирати так, щоб умова (19) виконувалась після двох ітерацій. При більшому числі ітерацій крок h необхід-но зменьшувати, в іншому випадку він може бути збільшений.
ПРИКЛАД.
Використовуючи метод прогноза та корекції, знайти з точністю Е=0.001 значення Y2=Y(2) та Y3=Y(3) рішення Y=Y(X) диференційного рівняння (8) з первісною умовою Y(0)=0. Візьмемо крок h=1.
РІШЕННЯ:Приймаючи за увагу те, що для використання формули (16)необхідна інформація про дві точки, то значення Y1=Y(1) візьмемо з попереднього прикладу, обчисленного за lопомогою метода Ейлера-Коши, Y1=0.0486. Тепер по формулі (16) обчислимо завбачене значення в точці Y(0)2 .
Y(0)2 =Y0+2*h*f(X1,Y1)=0+2*1*0.0473=0.0972
Корекцію оптимального значення виконаїмо по формулі (18). Перше наближення:
Y(1)2 =Y1+h/2*[f(X1,Y1)+f(X2,Y(0)2)]=0.0486 + 1/2*(0.0473+0.0446)=0.0944
Друге наближення:
Y(2)2 =Y1+h/2*[f(X1,Y1)+f(X2,Y(1)2)]=0.0486+1/2*(0.0473+0.0446)=0.0946
Перевірка виконання умови (19)
|Y(2)2 - Y(1)2 | < Є
В зв'язку з тим, що умова (19) виконуїться, то приймаїмо Y2=0.0946. Далі по (16) обчислюємо завбачене значення в точці Y3.
Y(0)3 = Y1 + 2*h*f(X2,Y2)=0.0486 +2*1*0.0446=0.1378
Корекцію отриманного значення виконаїмо по формулі (18). Перше наближення:
Y(1)3 = Y2 + h/2*[f(X2,Y2) + f(X3,Y(0)3)]= 0.0946 + 1/2*(0.0446 +0.0421)=0.1380
Друге наближення:
Y(2)3 = Y2 + h/2*[f(X2,Y2)+f(X3,Y(1)3)]= 0.0946 +1/2*(0.0446 + 0.0421)=0.1380
Перевірка виконання умови (9.19)
|Y(2)3 - Y(1)3 | < Є
В зв'язку з тим, що умова (19) виконуїться, то приймаїмо Y=0.1380
Метод прогноза та корекції ї більш точним,ніж раніш розглянені методи
другого порядку точності.