Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
KONSP_L.DOC
Скачиваний:
16
Добавлен:
10.02.2016
Размер:
1.06 Mб
Скачать

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(0)i+1відома, можна обчислити нахил дотичної в точці (Xi+1, Yi+1). Ця дотична відображена на мал. 5.5 і позначена L’1. Пряма L’1на мал. 5.5 становить собою те ж саме, що й на мал. 5.4, і усреднив тангенси кутів нахилу ліній L'1 і L2, отримуїмо лінію.Через точку (Xi,Yi) проводимо пряму L, паралельну. Точка перетинання цієї лінії з ординатою X=Xi+1дає нове наближення до Yi+1.

Назвемо це наближення зкоректованим значенням 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

Метод прогноза та корекції ї більш точним,ніж раніш розглянені методи

другого порядку точності.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]