Бабенко - Основы численного анализа (947491), страница 87
Текст из файла (страница 87)
у(х)) + уо(х, у(х))((х, у(х)) ~. Позтому оо )<а<оо «р(У и — а) (а ~ ° — Е~ 1=1 В последней формуле не учтены погрешности, возникающие от того, что при вычислении по формуле (7) могут возникнуть погрешности округления, и от того, что будет браться приближенное значение величины "й Естественно, нужно потребовать, чтобы суммарная погрешность на шаге не превосходила Д,'. Учитывая ото, из последнего неравенства получим ~О Р(! м- а)(! — ! яь)Й, Й вЂ” 1,2,,..., о2) 1=1 1=1 причем мы считаем, что,Ло~ < Ье.
Оценка погрешности на отрезке 'а., Ь), как это видно из последней формулы, существенно зависит от величины о У'и, Пи ~ алаи, 1=1 следует неравенство для ыйо и В самом деле, й й иай >! < Ай ! и й + Вй.ь1 < хо А и.! П А! + Аи.! ~ В! 1=1 1=1 ! йл1 =-'П 1=1 =1О1 й 1 !с ! ~В! П А,. З 1. Ма|пади Эйлера и Рдпге — Кдтапа где |РХ(х) = эпр ~Хк(х, д)~. Итак, метод Эйлера --. метод первого порядай <н ка точности. Поэтому при решении обыкновенных дифференциальных уравнений этот метод не применяется.
2. Модифицированный метод Эйлера. Однако на практике широко используется для решения пелинейнык эволюц|юниык задач модифицированный метод Эйлера, который часто называется методом Эйлера с пересчетом. Суть его состоит в том, что вычисления долаются в два этапа Э т а п 1. Прогнозирование решения при вычислении вспомогательной величины д, по формуле д, = го+ 6|,Х(хо о). Э т а п 2. Состоит из двух шагов; вначале вычисляется вспомогательная величина 7| — — Х(хм д|), а затем —. окончательное скорректированное зна |ение 6, х| =хе-, — (Хе э У|), 2 (13) 1 д| де 26| (Х(хв, .де) -1- Х(хм д|)) — , 'б|, где д| - погрешность квадратуры: 6з еХЯ 2~( ' д( )) 12 го<а<а, е1ха Вычитая из предпоследней формулы равенство (13), полагая д — -.
=Х1 и применяя формулу Ньютона — Лейбница, получим 1 Хзо~ — 10,3Хо|3е тйХпд| д|~1-~ А~, где ЛХ| = япр ~Хг(хы д| -еХ(д| — д|))~. Но величина д| — д| оценивается ее(вд) по формуле (10). У |итывая, что величина ела в (10) при 6 = 1 совпадает с введенной выше, получим 1 1 —. ~Ж|, :< Х1о + — 6|'йдо+ЛХ|(1+6|КХо)] ~1о~+ — ЛХ|6|~о|~ —: б,*~. (14) где Ь =.Х(хо, хо). Мы описали стандартный шаг -- переход от величин (хе, гв) к величинам (х|, г|). Дальнейшие вычисления состоят в переходе от величин (ха |, ы — ) к величинам (хь., хь) по указанным выше формулам при 6 = 2, 3,..., и. Установим локальную погрешность этого метода.
Последняя формула наводит на мысль, что надо отправляться от квадратурной формулы трапеций. Применяя к интегралу (3) формулу трапеций и обозначая д(х,,) через д, получим Глава 7. Ч!ил«иное ро!а«!ли« оодач!л Коши Ясно, что локальная погрешность имеет третий порядок точности, поскольку 1— 6',—, 6', — 31!6!~3! — ~д;. :( — 'ЛХзЛ! — — 'М 2 12 где г(я ~м ! —— шох ((х, у(х)), у = 1, 2, ..., и. х, 1<»<«,,л(хт Записывая неравенство (14) для остальных интервалов и применяя пред- ложение 1, получим (1 ~л,~ ~ ° ~1-, л.л, (лл,, — лл о- ьло,о)« ! ::: 1 6, ~~лО.~З вЂ” '(льл, 7»)~.
з=! Отсюда следует, что нужно потребовать, чтобы лло — 6з и чтобы погрешность вычисления локальных величин в формуле (13) была = 6з. Рассмотренный метод повышения порядка точности метода Эйлера носит универсальный характер. Но этот метод почти не используется в практике решения задачи Коши для обьнсновенных дифференциальных уравнений из-за низкого порядка точности и необходимости дважды вычислять правую часть уравнения (1) на одном шаге. 3.
«Классический» вариант метода Рунге — Кутта. Имеется много вариантов метода Рунге Кутта, и мы остановимся на одном из них., имеющем локальную погрешность порядка 6о. Каждый из вариантов этого метода основан на какой-либо квадратурной формуле, а описываемый вариант на формуле Силаюона, примененной к интегралу (3): 6,.
у! — уо = — (,((хо,, уо) - 4,((хл,!т, ул(з) + ((х!. у!)) + 3л, (15) где хл(т = (ха —, хл),(2, упаря .—.- у(хл(т), б! погрешность формулы Симпсона. Величины ул(т, у! нам не известны, и идея метода Рунге — Кутта состоит в том, что нужно вычислить промежуточные величины, отправляясь от данных величин (хо, го), так, чтобы в итого получилась локальная форллула порядка 6'". Выше мы уже с таким прнемол! встретились при итерационном уточнении метода Эйлера. В данном случае вычисляются величины 6! = У(хо: о), йз =,((о!лдп о+ 6!6!(2), йз -- У(хл(о, .о — 6зЬ„(2), 6« —,((х!.
хо ш 6лйз) и наконец вычисляется с! =хо 6л(6!+2(ко+уз) — , 'й«)/6. (16) З 1. Мвгводм Эйлера и Руигс — Кутта Легко истолковать наши вычисления геометрически, но для того, чтобы понять, как происходит подбор вспомогательных величин, нужно воспользоваться методом неопределенных коэффициентов и подобрать их так, чтобы при разложении по степеням 61 пропали все промежуточные степени 61 вплоть до 601. Мы не будем приводить длинных и неинтересных вычислений по опенке величины 441 = У1 — -1 для этого случая (см., например, 1204, 208 — 211]). Вместо этого мы рассмотрим здесь упрощенный вариант, когда величина Й4 вычисляется по формуле /с4 =- = 2 (х1, 20 + 6162). Это понизит порядок точности схемы, по зато существенно упростит выкладки.
Прежде всего заметим, что ( Ь1 61 У1 '2 20 ь1) У122 УО '"10 61 2 ) 2 61 61 -- У122 УО 1(20~ УО) -'20 1((00~ УО) 1(хе~ 0)). По теореме о среднем 6, 1 г 6, 1 6, 21 †' У122 — ( о - †, 61) =' ( 1 + — УО(то, Уо)) 1~0 0 У112 — Уо . — У(то.
Уо). Аналогично Ьч 61 22 У122 ( О ' 62) ~0 + У1/2 УО 1 (т1~2 У112)+ 2 2 + фт1/2 У122) Х(21~2: 0 61)) = 61 61 = ЛΠ— зр(Х1/2 У1/2)41 У112 — УΠ— —,,'(т1~2, У122). Каждая из разностей У1,2 — уо — -.4 ((т1, У1) (1 = О, 1/2) есть величина порядка 621. Поэтому 2((хц2, У122) — 62 — Ьз = (0(т1~2, у122)(д1 дуя) + В1, где,:п1 ~ < — 1пах~,(00(т1~2, 0,) ~(у1 - Я). Легко видеть, что Л 4 д2 = (20 —,)О(то, Уо) — (0(тц2: У122)(1+, (0(то Уо) ~)гхо+ О(61) Далее, У1 — (20 -' 6162) = У1 — Уа — 210 — 6162 = =-- У1 — Уо — 611(2:1д. У112) + 1-10 — 61(1 (т1/2 У1~2) — к2) =- = й о+ 61.(,(и 22, Уцз)11 "0(ЬЪ = (1 6110(и1~2~ У122)(1 —.
10(~0 УО))]~О 0 0(61)' Гласе 7. Численное ршасиие родер|А Коши Поэтому У(т1: у1) т (ю1 ге ' 1|162) = = Х,(ш|; у1) [1 + 61Хр(т172. у|72) (1 — — Хр(же, уе))] Аде + 0(621). 2 Вычитая из (15) соотношение (16), получим неравенство ~Ж! < гете~ + 61ЛХ1 гете + С| 111+ — 6| и|ах!Урр(т|72, ь) 01 + 1|22). 2 где ЛХ, получается суммированием модулей коэфф|щиентов при Ье в отдельных слагаемых.
ясно, что Я 12 < ЛХгсле — ' С264, где АРХ2 сложным образом зависит от 61.Хр(те, уе) и 6|Ус(т|дн у11 ). Поскольку ~Ье << 1, то 4 ~Ь1! < Ье/ + 6,(ЛХ1 — — и|ах~ Хрр(и|12, 1,) )ЛХ2) (Хре! + Сзб| 2 нли ~Ь1, '< (1- 61ЛХ1)~гле, -, 'С|641. На основании предложения 1 ~А )АА(А )Аг с/,~, |=1 где константа А соответствуюц|им образом вычисляется. Этот вариант метода Рунге — Кутта имеет третий порядок точности. От него выгодно спличается вариант, в которол| кл —.Х(т1, -е — 6|62); он имеет остаточный член на шаге порядка 6" (см., например, (2041). В методах Рунге — Кутта не используется информация, полученная на предыдущих шагах.
Вместе с тем, количество вь|числений правой части в рассмотренньсс вариантах метода равно четырем. Вообще, во всех вариантах метода Рунге -Кутта производится многократное вычисление правой части, и поэтому этот метод трудоемкий, и в практических вычислениях ему предпочита|от разностиые методы. Когда пользу|отса разпостными методами решения задачи Коши для обыкновенных дифференциальных уравнений, в начальный момент требуется знать решение в нескольких узлах.
Для того чтобы его найти, нередко используют метод Рунге — Кутта. В настоящее время программы, основанные на разностных методах,. обычно управляют как агиной шага, так и порядком метода, и поэтому являются самостартующими (204, 216). 3 ад а ч и. 1. Покажите, что вычисления по формуле (16) дают метод локальной точности 0(Ив). 2. Решите методом Эйлера задачу Коши ду/с|т = у, у~ = 1 на отрезке „"О, 1',.
Взяв постоянный шаг 6 =- 1/и, докажите, что ~д(1) — - ~ > е/(2п+2). 3. При решении на компьютере предыдущей задачи определите максимально возможный шаг 6. "8 2. Разностные методы решения задачи Коши й 2. Разностные методы решения задачи Коши 1. Метод Адамса.
В разностных методах или линейных многошаговых методах решения задачи Коши существенным образом используется информация о вычисленных значениях. Мы опишем классический метод построения разностной формулы для решения задачи Коши. Допустим, что нам известно решение в узлах х „81, ..., хо. Обычно предполагается, что х „т 1 — т, „тз — — А (у = 1, 2....., п — 1). Пусть приближенное значение решения в узле тз будет -, и положим х, = 1(х„и ). Построим интерполяциопный мпогочлея Лагранжа р(х; р), принимающий значения 97: в узлах х, О = — п+ 1, — п+ '2, ....
0). Этот интерполяционный многочлен преобразуем согласно формуле Ньютона (3.4.6). Используя формулу (3.4.0) для разделенной разности, получим 'о-1о-1 -1о ('--)=ЕП(х " Ю,"„'." =аз=о где 17„'оператор разности назад, 176 до=920 — 32 — 1, ~78920=л76(л76 970) (и = 2, 3...). В интегрш1ьном уравнении (1.3) заменим подынтегральную функцию многочленом р(х:, 1р), а левую часть на -1 — 20. В результате получим так называемую зкстрапоз лцианную формодз1р Адамса: 31 — .о = / р(х' 97)ах хо Делая замену переменных под знаком интеграла т —.. то + Ы, получим 1 — ЗО = А~ Со1УО770, о=о где т(х + 1) ...(х .~- л' -- 1) с, —...
дх, 1 1 о Первые несколько констант с подсчитаны Дж. Адамсом: с1 = 1, с2 = — '... 12' 3 , 261 96 19087 5267 1070017 , 1082763 сз " 8, са 7101 сз 288~ С6 60480, с7 17280, С8 3628800, С9 " 7257600 Заметим, что если мы по формуле (1) ведем регулярный счет (решена проблемна начала счета), то на каждом шаге нужно всего один раз вычислить правую часть, а именно подсчитать 1(хо, 0) = 1ро, поскольку ло 1„72..