7.3: Метод Ейлера
- Що таке метод Ейлера і як ми можемо використовувати його для наближення розв'язку до початкової задачі?
- Наскільки точний метод Ейлера?
У розділі 7.2 ми побачили, як поле нахилу можна використовувати для ескізу розв'язків диференціального рівняння. Зокрема, поле нахилу - це ділянка великої колекції дотичних ліній до великої кількості розв'язків диференціального рівняння, і ми накидаємо єдине рішення, просто слідуючи цим дотичним лініям. Трохи більше роздумів, ми можемо використовувати цю саму ідею для наближення чисельно розв'язків диференціального рівняння.
Розглянемо початкову задачу значення
dydt=12(y+1), y(0)=0.
a Використовуйте диференціальне рівняння, щоб знайти нахил дотичної прямої до розв'язкуy(t) наt=0. Тоді використовуйте задане початкове значення, щоб знайти рівняння дотичної прямої приt=0.
б. намалюйте дотичну лінію по осях, передбачених на малюнку 7.3.1, на інтервалі0≤t≤2 і використовуйте її дляy(2), наближення величини розчину приt=2.
c Припускаючи, що ваше наближення дляy(2) є фактичним значеннямy(2), використання диференціального рівняння, щоб знайти нахил дотичної прямої доy(t) att=2. Тоді, запишіть рівняння дотичної прямої наt=2.
d Додайте ескіз цієї дотичної лінії на інтервалі2≤t≤4 до вашого графіка Рисунок 7.3.1; використовуйте цю нову дотичну лінію дляy(4), наближення значення розв'язку приt=4.
е Повторіть той же крок, щоб знайти наближення дляy(6).
7.3.1 Метод Ейлера
Preview Activity 7.3.1 демонструє алгоритм, відомий як метод Ейлера 1, який генерує числове наближення до розв'язання задачі початкового значення. У цьому алгоритмі ми наблизимо рішення, взявши горизонтальні кроки фіксованого розміру, які позначимоΔt.
Перш ніж детально пояснити алгоритм, згадаємо, як ми обчислюємо нахил лінії: нахил - це відношення зміни вертикалі до зміни горизонталі, як показано на малюнку 7.3.2.
Іншими словами,m=ΔyΔt. Рішення дляΔy, ми бачимо, що вертикальна зміна є добутком нахилу та зміни горизонталі, або
Тепер припустимо, що ми хотіли б вирішити початкову задачу
Існує алгоритм, за допомогою якого ми можемо знайти алгебраїчну формулу для вирішення цієї початкової задачі значення, і ми можемо перевірити, що це рішенняy(t)=t−1+2e−t. Але ми замість цього зацікавлені в генеруванні приблизного рішення шляхом створення послідовності точок(ti,yi), деyi≈y(ti). Для цього спочатку приклад, вибираємоΔt=0.2.
Оскільки ми знаємо, щоy(0)=1, ми будемо приймати початкову точку бути(t0,y0)=(0,1) і рухатися по горизонталіΔt=0.2 до точки(t1,y1). Таким чином,t1=t0+Δt=0.2. Тепер диференціальне рівняння говорить нам, що нахил дотичної лінії в цій точці
тому, щоб рухатися вздовж дотичної лінії, взявши горизонтальний крок розміру,Δt=0.2, ми також повинні рухатися вертикально
Потім ми маємо наближенняy(0.2)≈y1=y0+Δy=1−0.2=0.8. У цьому пункті ми виконали один крок методу Ейлера, як показано графічно на малюнку 7.3.3.
Тепер повторюємо цей процес: при(t1,y1)=(0.2,0.8), диференціальному рівнянні говорить нам, що нахил
Якщо ми рухаємося вперед по горизонталіΔt, тоt2=t1+Δ=0.4, ми повинні рухатися вертикально
Отже, миy2=y1+Δy=0.8−0.12=0.68, приходимо до якого даєy(0.2)≈0.68. Тепер ми завершили другий крок методу Ейлера, як показано на малюнку 7.3.4.
Якщо ми продовжимо таким чином, ми можемо генерувати точки,(ti,yi) показані на малюнку 7.3.5. Оскільки ми можемо знайти формулу фактичногоy(t) розв'язку цього диференціального рівняння, ми можемо зробити графікy(t) і порівняти його з точками, породженими методом Ейлера, як показано на малюнку 7.3.6.
Оскільки нам потрібно генерувати велику кількість точок,(ti,yi), зручно організувати реалізацію методу Ейлера в таблиці, як показано на малюнку. Починаємо з заданих вихідних даних.
ti | yi | dy/dt | Δy |
0.0000 | 1.0000 |
Звідси обчислюємо нахил дотичної прямої,m=dy/dt використовуючи формулу дляdy/dt з диференціального рівняння, а потім знаходимоΔy, зміну уy, використанні правилаΔy=mΔt.
ti | yi | dy/dt | Δy |
0.0000 | 1.0000 | −1.0000 | −0.2000 |
Далі ми збільшуємоti наΔt іyi на,Δy щоб отримати
ti | yi | dy/dt | Δy |
0.0000 | 1.0000 | −1.0000 | −0.2000 |
0.2000 | 0.8000 |
Ми продовжуємо процес протягом багатьох кроків, які ми вирішуємо, врешті-решт генеруючи таблицю, як Таблиця 7.3.7.
ti | yi | dy/dt | Δy |
0.0000 | 1.0000 | −1.0000 | −0.2000 |
0.2000 | 0.8000 | −0.6000 | −0.1200 |
0.4000 | 0.6800 | −0.2800 | −0.0560 |
0.6000 | 0.6240 | −0.0240 | −0.0048 |
0.8000 | 0.6192 | 0.1808 | 0.0362 |
1.0000 | 0.6554 | 0.3446 | 0.0689 |
1.2000 | 0.7243 | 0.4757 | 0.0951 |
Розглянемо початкову задачу значення
- Використовуйте метод Ейлера з,Δt=0.2 щоб наблизити рішення наti=0.2,0.4,0.6,0.8, і1.0. Запишіть свою роботу в наступній таблиці та намалюйте точки(ti,yi) на наведених осях.
Таблиця 7.3.8. Таблиця для запису результатів методу Ейлера. ti yi dy/dt Δy 0.0000 0.0000 0.2000 0.4000 0.6000 0.8000 1.0000 Малюнок 7.3.9. Сітка для побудови точок, створених методом Ейлера. - Знайдіть точний розв'язок початкової задачі про початкове значення та скористайтеся цією функцією, щоб знайти помилку у вашому наближенні в кожній з точокti.
- Поясніть, чому значення,y5 створене методом Ейлера для цієї початкової задачі, дає таке ж значення, що і ліва сума Рімана для визначеного інтеграла∫10(2t−1) dt.
- Як би відрізнялися ваші обчислення, якби початкове значення булоy(0)=1? Що це означає про різні розв'язки цього диференціального рівняння?
Розглянемо диференціальне рівнянняdydt=6y−y2.
- Намалюйте поле нахилу для цього диференціального рівняння на осях, передбачених на малюнку 7.3.10.
Малюнок 7.3.10. Сітка для побудови поля нахилу заданого диференціального рівняння.
- Визначте будь-які рівноважні рішення та визначте, стабільні вони чи нестабільні.
- Яке довгострокова поведінка рішення, яке задовольняє початковому значеннюy(0)=1?
- Використовуючи початкове значення,y(0)=1, використовуйте метод Ейлера зΔt=0.2 для наближення рішення вti=0.2,0.4,0.6,0.8, і1.0. Запишіть свої результати в таблиці 7.3.11 і намалюйте відповідні точки(ti,yi) на осях, наведених на малюнку 7.3.12. Зверніть увагу на різну горизонтальну шкалу на осях на малюнку 7.3.12 порівняно з малюнком 7.3.10.
Таблиця 7.3.11. Таблиця для запису результатів методу Ейлера зΔt=0.2. ti yi dy/dt Δy 0.0 1.0000 0.2 0.4 0.6 0.8 1.0 Малюнок 7.3.12. Осі для побудови результатів методу Ейлера. - Що станеться, якщо ми застосуємо метод Ейлера для наближення рішенняy(0)=6?
7.3.2 Помилка в методі Ейлера
Оскільки ми наближаємо розв'язки до задачі початкового значення за допомогою дотичних ліній, слід очікувати, що похибка в наближенні буде меншою, коли розмір кроку менший. Розглянемо початкову задачу значення
рішення якого ми можемо легко знайти.
Питання, поставлене цією початковою задачею значення, полягає в тому, «яку функцію ми знаємо, що така ж, як і її власна похідна і має значення 1, колиt=0?» Не важко побачити, що рішення єy(t)=et. Ми тепер застосовуємо метод Ейлера для наближення,y(1)=e використовуючи кілька значеньΔt. цих наближення будутьEΔt, позначені, і ми будемо використовувати їх, щоб побачити, наскільки точним є метод Ейлера.
Для початку ми застосовуємо метод Ейлера з розміром крокуΔt=0.2. У цьому випадку ми виявимо, щоy(1)≈E0.2=2.4883. Помилка, отже,
Повторне халвінгΔt дає наступні результати, виражені як в табличному, так і в графічному вигляді.
Δt | EΔt | Помилка |
0.200 | 2.4883 | 0.2300 |
0.100 | 2.5937 | 0.1245 |
0.050 | 2.6533 | 0.0650 |
0.025 | 2.6851 | 0.0332 |
Зверніть увагу, як чисельно, так і графічно, що помилка зменшується приблизно вдвічі, колиΔt зменшується вдвічі. Цей приклад ілюструє наступний загальний принцип.
Якщо метод Ейлера використовується для наближення розв'язку до задачі початкового значення в точці,¯t, то похибка пропорційнаΔt. Тобто
для деякої константи пропорційностіK.
7.3.3 Резюме
- Метод Ейлера - це алгоритм наближення розв'язку до задачі початкового значення, слідуючи за дотичними лініями, поки ми робимо горизонтальні кроки поперекt -осі.
- Якщо ми хочемо наблизитиy(¯t) для деяких¯t фіксованих, взявши горизонтальні кроки розміру,Δt, то похибка в нашому наближенні пропорційнаΔt.