МЕТОДИ ЧИСЕЛЬНОГО ІНТЕГРУВАННЯ ДИФЕРЕНЦІАЛЬНИХ РІВНЯНЬ.

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Системи автоматизованого проектуваня

Інформація про роботу

Рік:
2008
Тип роботи:
Лабораторна робота
Предмет:
Чисельні методи в інформатиці
Група:
КН-3

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти і науки України Національний університет «Львівська політехніка» кафедра САПР  Лабораторна робота №6 з курсу "Чисельні методи в інформатиці" на тему: МЕТОДИ ЧИСЕЛЬНОГО ІНТЕГРУВАННЯ ДИФЕРЕНЦІАЛЬНИХ РІВНЯНЬ Виконав: cт. гр. КН-3 Львів-2008 1. МЕТА РОБОТИ Мета роботи - ознайомлення з методами чисельного інтегрування диференціальних рівнянь та їх практичним застосуванням. 2. ТЕОРЕТИЧНА ЧАСТИНА 2.1. Задача Коші для звичайних диференціальних рівнянь та методи її розв'язування. Задача Коші ставиться так - необхідно знайти на відрізку  розв'язок  диференціальнного рівняння:  (1) який задовільняє початкову умову:  (2) Знайти точний розв'язок задачі (1)-(2), тобто виразити його через елементарні чи спеціальні функції, або подати через квадратури від елемен-тарних чи спеціальних функцій вдається лише в небагатьох практичнних задачах. Інколи, якщо навіть і вдається знайти точний розв'язок, він має досить складний вигляд і користуватись ним практично неможливо. Тому для розв'язування задачі доводиться застосовувати наближені методи. Наближені методи можна поділити на два типи: аналітичні (які дають наближений розв'язок диференціального рівняння у вигляді аналітичного виразу) і чисельні (які дають наближений розв'язок у вигляді таблиці значень). До аналітичних наближених методів відносяться: ітераційний метод Пікара, метод, який грунтується на розкладі розв'язку задачі Коші в ряд Тейлора. Відомі й інші аналітичні методи розв'язування задачі, наприклад, асимптотичні, (1)-(2), але ми не розглядатимемо їх. Для розв'язування задачі Коші широко застосовуються чисельні методи. Вони дають можливість знаходити наближені значення (а інколи й точні) шуканого розв'язку  в деяких фіксованих точках (вузлах):  Слід пам'ятати, що чисельні методи можна застосовувати лише для конкретно поставлених задач. Причому для успішного застосування чи-сельних методів задача має бути не тільки формально стійкою, а й добре обумовленою. Інакше незначні похибки в початкових умовах чи в проміж-них обчисленннях можуть призвести до великої похибки результату. Звичайно для розв'язування задачі Коші треба брати стійкі чисельні методи (алгоритми). 2.1.1. Методи типу Ейлера. Побудуємо формули, які дають можливість знайти наближене значення шуканого розв'язку  задачі Коші в точці , якщо значення цього розв'язку відоме в попередній точці  . Оскільки розв'язок в початковій точці відомий з початкових умов задачі, то за цими формулами послідовно можна обчислити значення розв'язку в точках  Проінтегруємо рівняння (1) від  до , де .  (3) де: . Для наближеного обчислення інтегралу в (2) можна використати квадратурні формули. Використавши ту чи іншу квадратурну структуру, можна дістати різні формули чисельного інтегрування задачі Коші. Якщо, наприклад, інтеграл в (3) обчислити за формулою лівих прямокутників, то матимемо:  (4) Відкинувши член порядку , з останьої рівності дістанемо:  (5) де через  позначено наближене значення розв'язку . Формула (5) називається формулою Ейлера. Починаючи з , за формулою (5) можна знайти послідовно в точках , , і т.д. наближені значення розв'язку y(x) задачі (1)-(2). Похибка методу Ейлера на кожному кроці має порядок . Метод Ейлера не застосовується в обчислювальній практиці, оскіль-ки має невелику точність, і, крім того, досить часто виявляється нестійким (приводить до систематичного нагромадження похибок). Якщо для обчислення інтегралу в (3) використати формулу середніх прямокутників, то для чисельного інтегрування задачі Коші можна побу-дувати формули, похибка яких на кожному кроці матиме порядок . За формулою середніх прямокутників:  (6) З формули (6) після деяких перетворень отримаємо:  (7) Формула (7) визначає модифікований метод Ейлера. За цим методом значення розв'язку в точці  знаходять двома кроками: спочатку методом Ейлера з кроком  обчислюють проміжне значення  , а потім вже знаходять значення . Якщо для обчислення інтегралу в (3) використати формулу трапе-цій, то можна отримати ще один метод для чисельного розв'язування задачі Коші (удосконалений метод Ейлера-Коші), похибка якого на кожному кроці має також порядок :  (8) 2.1.2. Метод Рунге-Кутта. Метод Рунге-Кутта дає набір формул для розрахунку внутрішніх точок. Оскільки існує ряд способів знаходження цих точок, то метод Рунге-Кута об'єднує сімейство методів для розв'язування диференціальних рів-нянь першого порядку. Найчастіше використовується класичний метод - метод Рунге-Кутта четвертого порядку:  (9) де:     (10) Метод Ейлера і його модифікації по суті є методами Рунге-Кутта першого і другого порядків. Метод Рунге-Кутта має значно більшу точ-ність, дозволяє збільшити крок інтегрування. Його максимальну величину визначає допустима похибка. Такий вибір часто здійснюється автоматично і включається як складова частина в алгоритм, побудований по методу Рунге-Кутта. Кожну із формул Рунге-Кутта можна використати для розв'язування диференціальних рівнянь більш високих порядків, а тому і для розв'язуван-ня систем диференціальних рівнянь, оскільки рівняння більш високого по-рядку (n) можна звести до n диференціальних рівнянь першого порядку. 2.2. ”Жорсткі” задачі. Існують звичайні диференціальні рівняння, для яких важко одер-жати задовільні розв'язки із використанням раніше розглянутих методів. Визначення таких задач пов'язане із поняттям постійної часу диферен-ціального рівняння, яке вводиться стосовно до аналітичного розв'язку. Для рівнянь першого порядку - це проміжок часу, коли змінна частина розв'язку зменшується в e раз. Рівняння порядку n має n постійних часу; якщо довіль-ні із них дуже (на практиці в сто і більше разів) відрізняються по величині або яка-небудь із них достатньо мала у порівнянні з інтервалом часу, на якому шукається розв'язок, то задача незивається ”жорсткою” і її практич-но неможливо розв'язувати звичайними методами. Коефіцієнти в таких рівняннях відрізняються один від одного на декілька порядків. Наприклад, жорсткими є системи диференціальних рівнянь, що описують керований рух робота-маніпулятора, оскільки перехідні процеси в системі керування при-водом затухають швидше, ніж перехідні процеси в механічній частині робота. При розв'язуванні ”жорстких” задач звичайними методами крок повинен бути достатньо малим, щоб можна було б враховувати приріст складових розв'язку, що найшвидше змінюються навіть після того, коли їхній внесок стане практично непомітним. Але зменшення кроку приводить до збільшення затрат часу ЕОМ, накопичення похибок заокруглення і дискретизації. ”Жорсткі” задачі часто зустрічаються в теорії автоматичного керування, наприклад при аналізі перехідних процесів у системі, що містить ланки високих порядків, коефіцієнти яких значно відрізняються один від одного. 2.2.1. Неявні методи чисельного розв'язування задачі Коші. Найпростішим шляхом розв'язування ”жорстких” задач є так званий неявний метод Ейлера, в якому розв'язок знаходиться із такого рівняння, що вміщує  в неявному вигляді:  (11) Для розв'язування задач Коші, що мають властивості “жорсткості” більш доцільними є неявні схеми методу Рунге-Кутта. Ці схеми будуються як і явні, але у даному випадку коефіцієнти kn визначаються із системи r неявних рівнянь, в загальному випадку нелінійних. Використовуються неявні методи Рунге-Кутта другого порядку [7]:  (12)  або  (13)   третього порядку:  (14)    четвертого порядку:  (15)     Лабораторне завдання (Варіант №11) ===== Метод Ейлера ===== 1.1) Диференційне рівняння: dY/dX=2.*Y/(X*ALOG(X*X)) ПРИ ПОЧАТКОВІЙ УМОВІ : Y(X0)= .81093 ДЛЯ 2 ТОЧОК ОДЕРЖАНО: ЗНАЧЕННЯ X РОЗВ. ПО МЕТОДУ ЕЙЛЕРА : ТОЧНЕ ЗНАЧЕННЯ : ВІДН. ПОХИБКА(%) : 1.5000 .81093 .81093 .00000 1.7500 1.1443 1.1192 2.2365 2.0000 1.4364 1.3863 3.6120  1.2) Диференційне рівняння: dY/dX=2.*Y/(X*ALOG(X*X)) ПРИ ПОЧАТКОВІЙ УМОВІ : Y(X0)= .81093 ДЛЯ 4 ТОЧОК ОДЕРЖАНО : ЗНАЧЕННЯ X РОЗВ. ПО МЕТОДУ ЕЙЛЕРА : ТОЧНЕ ЗНАЧЕННЯ : ВІДН. ПОХИБКА(%) : 1.5000 .81093 .81093 .00000 1.6250 .97760 .97102 .67777 1.7500 1.1325 1.1192 1.1842 1.8750 1.2770 1.2572 1.5763 2.0000 1.4125 1.3863 1.8881  1.3) Диференційне рівняння: dY/dX=2.*Y/(X*ALOG(X*X)) ПРИ ПОЧАТКОВІЙ УМОВІ : Y(X0)= .81093 ДЛЯ 8 ТОЧОК ОДЕРЖАНО : ЗНАЧЕННЯ X РОЗВ. ПО МЕТОДУ ЕЙЛЕРА : ТОЧНЕ ЗНАЧЕННЯ : ВІДН. ПОХИБКА(%) : 1.5000 .81093 .81093 .00000 1.5625 .89426 .89257 .18926 1.6250 .97441 .97102 .35008 1.6875 1.0516 1.0465 .48840 1.7500 1.1260 1.1192 .60860 1.8125 1.1979 1.1894 .71398 1.8750 1.2674 1.2572 .80711 1.9375 1.3346 1.3228 .88994 2.0000 1.3997 1.3863 .96408  ===== Модифікований метод Ейлера ===== 2.1) Диференційне рівняння: dY/dX=2.*Y/(X*ALOG(X*X)) ПРИ ПОЧАТКОВІЙ УМОВІ : Y(X0)= .81093 ДЛЯ 2 ТОЧОК ОДЕРЖАНО: ЗНАЧЕННЯ X ПО МОД. МЕТОДУ ЕЙЛЕРА : ТОЧНЕ ЗНАЧЕННЯ : ВІДН. ПОХИБКА(%) : 1.5000 .81093 .81093 .00000 1.7500 1.1207 1.1192 .13191 2.0000 1.3888 1.3863 .17793  2.2) Диференційне рівняння: dY/dX=2.*Y/(X*ALOG(X*X)) ПРИ ПОЧАТКОВІЙ УМОВІ : Y(X0)= .81093 ДЛЯ 4 ТОЧОК ОДЕРЖАНО: ЗНАЧЕННЯ X ПО МОД. МЕТОДУ ЕЙЛЕРА : ТОЧНЕ ЗНАЧЕННЯ : ВІДН. ПОХИБКА(%) : 1.5000 .81093 .81093 .00000 1.6250 .97123 .97102 .22387E-01 1.7500 1.1196 1.1192 .34573E-01 1.8750 1.2577 1.2572 .41721E-01 2.0000 1.3869 1.3863 .46143E-01  2.3) Диференційне рівняння: dY/dX=2.*Y/(X*ALOG(X*X)) ПРИ ПОЧАТКОВІЙ УМОВІ : Y(X0)= .81093 ДЛЯ 8 ТОЧОК ОДЕРЖАНО: ЗНАЧЕННЯ X ПО МОД. МЕТОДУ ЕЙЛЕРА : ТОЧНЕ ЗНАЧЕННЯ : ВІДН. ПОХИБКА(%) : 1.5000 .81093 .81093 .00000 1.5625 .89260 .89257 .33256E-02 1.6250 .97107 .97102 .57087E-02 1.6875 1.0466 1.0465 .74613E-02 1.7500 1.1193 1.1192 .87764E-02 1.8125 1.1895 1.1894 .97820E-02 1.8750 1.2574 1.2572 .10572E-01 1.9375 1.3229 1.3228 .11184E-01 2.0000 1.3865 1.3863 .11669E-01  ===== Метод Рунге-Кутта ===== 3.1) Диференційне рівняння: dY/dX=2.*Y/(X*ALOG(X*X)) ПРИ ПОЧАТКОВІЙ УМОВІ : Y(X0)= .81093 ДЛЯ 2 ТОЧОК ОДЕРЖАНО: ЗНАЧЕННЯ X ПО МЕТОДУ РУНГЕ-КУТТА : ТОЧНЕ ЗНАЧЕННЯ : ВІДН. ПОХИБКА(%) : 1.5000 .81093 .81093 .00000 1.7500 1.1193 1.1192 .46225E-02 2.0000 1.3864 1.3863 .56668E-02  3.2) Диференційне рівняння: dY/dX=2.*Y/(X*ALOG(X*X)) ПРИ ПОЧАТКОВІЙ УМОВІ: Y(X0)= .81093 ДЛЯ 4 ТОЧОК ОДЕРЖАНО: ЗНАЧЕННЯ X ПО МЕТОДУ РУНГЕ-КУТТА : ТОЧНЕ ЗНАЧЕННЯ : ВІДН. ПОХИБКА(%) : 1.5000 .81093 .81093 .00000 1.6250 .97102 .97102 .25167E-03 1.7500 1.1192 1.1192 .35148E-03 1.8750 1.2572 1.2572 .40773E-03 2.0000 1.3863 1.3863 .42996E-03  3.3) Диференційне рівняння: dY/dX=2.*Y/(X*ALOG(X*X)) ПРИ ПОЧАТКОВІЙ УМОВІ: Y(X0)= .81093 ДЛЯ 8 ТОЧОК О Д Е Р Ж А Н О : ЗНАЧЕННЯ X ПО МЕТОДУ РУНГЕ-КУТТА : ТОЧНЕ ЗНАЧЕННЯ : ВІДН. ПОХИБКА(%) : 1.5000 .81093 .81093 .00000 1.5625 .89257 .89257 .66778E-05 1.6250 .97102 .97102 .12277E-04 1.6875 1.0465 1.0465 .22783E-04 1.7500 1.1192 1.1192 .21302E-04 1.8125 1.1894 1.1894 .20045E-04 1.8750 1.2572 1.2572 .28446E-04 1.9375 1.3228 1.3228 .27036E-04 2.0000 1.3863 1.3863 .25797E-04  =====Неявний метод Ейлера ===== Диференційне рівняння: dY/dX=2.*Y/(X*ALOG(X*X)) 4.1.1) ПРИ ПОЧАТКОВІЙ УМОВІ : Y(X0)= .81093 ДЛЯ 2 ТОЧОК ПРИ ТОЧНОСТІ EPS= .10000 ОДЕРЖАНО: X Y ТОЧНЕ ЗНАЧ. ВІДН. ПОХ. MIN КРОК K ІТЕРАЦІЙ 1.50 .811 0.811 .000 .250 0 1.75 1.12 1.12 .395 .250 2 2.00 1.39 1.39 .574 .250 2  4.1.2) ПРИ ПОЧАТКОВІЙ УМОВІ : Y(X0)= .81093 ДЛЯ 4 ТОЧОК ПРИ ТОЧНОСТІ EPS= .10000 ОДЕРЖАНО: X Y ТОЧНЕ ЗНАЧ. ВІДН. ПОХ. MIN КРОК K ІТЕРАЦІЙ 1.50 .811 .811 .000 .125 0 1.63 .972 .971 .713E-01 .125 2 1.75 1.12 1.12 .116 .125 2 1.88 1.26 1.26 .145 .125 2 2.00 1.39 1.39 .165 .125 2  4.1.3) ПРИ ПОЧАТКОВІЙ УМОВІ : Y(X0)= .81093 ДЛЯ 8 ТОЧОК ПРИ ТОЧНОСТЎ EPS= .10000 О Д Е Р Ж А Н О : X Y ТОЧНЕ ЗНАЧ. ВІДН. ПОХ. MIN КРОК K ІТЕРАЦІЙ 1.50 .811 .811 .000 .625E-01 0 1.56 .893 .893 .110E-01 .625E-01 2 1.63 .971 .971 .194E-01 .625E-01 2 1.69 1.05 1.05 .260E-01 .625E-01 2 1.75 1.12 1.12 .313E-01 .625E-01 2 1.81 1.19 1.19 .355E-01 .625E-01 2 1.88 1.26 1.26 .390E-01 .625E-01 2 1.94 1.32 1.32 .419E-01 .625E-01 2 2.00 1.39 1.39 .443E-01 .625E-01 2  4.2.1) ПРИ ПОЧАТКОВІЙ УМОВІ : Y(X0)= .81093 ДЛЯ 2 ТОЧОК ПРИ ТОЧНОСТІ EPS= .10000E-01 ОДЕРЖАНО: X Y ТОЧНЕ ЗНАЧ. ВІДН. ПОХ. MIN КРОК K ІТЕРАЦІЙ 1.50 .811 .811 .000 .250 0 1.75 1.12 1.12 .160 .250 3 2.00 1.39 1.39 .233 .250 3  4.2.2) ПРИ ПОЧАТКОВІЙ УМОВІ : Y(X0)= .81093 ДЛЯ 4 ТОЧОК ПРИ ТОЧНОСТІ EPS= .10000E-01 ОДЕРЖАНО: X Y ТОЧНЕ ЗНАЧ. ВІДН. ПОХ. MIN КРОК K ІТЕРАЦІЙ 1.50 .811 .811 .000 .125 0 1.63 .972 .971 .713E-01 .125 2 1.75 1.12 1.12 .116 .125 2 1.88 1.26 1.26 .145 .125 2 2.00 1.39 1.39 .165 .125 2  4.2.3) ПРИ ПОЧАТКОВІЙ УМОВІ : Y(X0)= .81093 ДЛЯ 8 ТОЧОК ПРИ ТОЧНОСТІ EPS= .10000E-01 ОДЕРЖАНО: X Y ТОЧНЕ ЗНАЧ. ВІДН. ПОХ. MIN КРОК K ІТЕРАЦІЙ 1.50 .811 .811 .000 .625E-01 0 1.56 .893 .893 .110E-01 .625E-01 2 1.63 .971 .971 .194E-01 .625E-01 2 1.69 1.05 1.05 .260E-01 .625E-01 2 1.75 1.12 1.12 .313E-01 .625E-01 2 1.81 1.19 1.19 .355E-01 .625E-01 2 1.88 1.26 1.26 .390E-01 .625E-01 2 1.94 1.32 1.32 .419E-01 .625E-01 2 2.00 1.39 1.39 .443E-01 .625E-01 2  4.3.1) ПРИ ПОЧАТКОВІЙ УМОВІ : Y(X0)= .81093 ДЛЯ 2 ТОЧОК ПРИ ТОЧНОСТІ EPS= .10000E-02 О Д Е Р Ж А Н О : X Y ТОЧНЕ ЗНАЧ. ВІДН. ПОХ. MIN КРОК K ІТЕРАЦІЙ 1.50 .811 .811 .000 .250 0 1.75 1.12 1.12 .130 .250 4 2.00 1.39 1.39 .194 .250 4  4.3.2) ПРИ ПОЧАТКОВІЙ УМОВІ : Y(X0)= .81093 ДЛЯ 4 ТОЧОК ПРИ ТОЧНОСТІ EPS= .10000E-02 ОДЕРЖАНО: X Y ТОЧНЕ ЗНАЧ. ВІДН. ПОХ. MIN КРОК K ІТЕРАЦІЙ 1.50 .811 .811 .000 .125 0 1.63 .971 .971 .233E-01 .125 3 1.75 1.12 1.12 .382E-01 .125 3 1.88 1.26 1.26 .485E-01 .125 3 2.00 1.39 1.39 .559E-01 .125 3  4.3.3) ПРИ ПОЧАТКОВІЙ УМОВІ : Y(X0)= .81093 ДЛЯ 2 ТОЧОК ПРИ ТОЧНОСТІ EPS= .10000E-02 ОДЕРЖАНО: X Y ТОЧНЕ ЗНАЧ. ВІДН. ПОХ. MIN КРОК K ІТЕРАЦІЙ 1.50 .811 .811 .000 .625E-01 0 1.56 .893 .893 .303E-02 .625E-01 3 1.63 .971 .971 .543E-02 .625E-01 3 1.69 1.05 1.05 .738E-02 .625E-01 3 1.75 1.12 1.12 .898E-02 .625E-01 3 1.81 1.19 1.19 .103E-01 .625E-01 3 1.88 1.26 1.26 .114E-01 .625E-01 3 1.94 1.32 1.32 .124E-01 .625E-01 3 2.00 1.39 1.39 .148E-01 .625E-01 2  Висновок На даній лабораторній роботі, ми ознайомились з методами чисельного інтегрування диференціальних рівнянь та їх практичним застосуванням.
Антиботан аватар за замовчуванням

01.01.1970 03:01-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!