Ортега Дж., Пул У. Введение в численные методы решения дифференциальных уравнений. Под ред. А.А.Абрамова (1986) (1095855), страница 18
Текст из файла (страница 18)
Если бы мы вместо (3.2.4) воспользовались центральной аппроксимацией и(х + Ь) — и(х — Ь) и(х) = (3.2.9) 2й то, как легко видеть (упражнение 3.2.2), погрешность была бы также про- порциональна Ь~ . хп-1 Рис. З.г. Узлы сетки Теперь разделим отрезок [0,11 на несколько равных частей длины Ь. Как и в гл. 2, точки х; будем называть точками сетки или узлами, а й— шагом сетки; точки хе и х„, ~ называются граничными узлами, а х,, ..., х„— внутренними узлами.
В каждом внутреннем узле сетки аппроксимируем производные от решения и выражениями (3.2.9) и (3.2.5): о(х;+1) — о(х; 1) и(х~) = 2й (3.2.10) и(хю+1) — 2и(х;) + о(хс 1) и (х;)ж й2 Если теперь подставим эти приближения в. уравнение (3.2.1) и обозначим 72 откуда видно, что при малых Ь погрешность аппроксимации (3.2.4) пропорциональна Ь и и (х) . Чтобы определить погрешность аппроксимации (3.2.5), нам придется выписать еще два члена в разложении (3.2.6), предполагая при этом, что функция о четырежды дифференцируема, а затем воспользоваться аналогичным разложением для о(х — й). Проделав это, после несложных алгебраических выкладок, которые предлагается выполнить в упражнении 3.2.1, получим [о(х + й) — 2и(х) + и(х — и)] 1 о (х) 12 (4)(.))1 ~о()4) (328) значения функций а, Ь, с и а в точке х! через а;, Ь|, с! и Н!, то полу:им [и(хе~!) — 2и(х;)+ и(х;,)] [и(х;,) — и(х;,)] + с!и(х;) = с1!.
/2 26 (3.2.11) Итак, мы показали, что если заменить первую и вторую производные решения и с помощью конечно-разностных аппроксимаций и подставить эти аппроксимации в дифференциальное уравнение, то получим приближеннь!е равенства (3.2.11), которым должно удовлетворять решение. Рассмотрим теперь обратную процедуру.
Предположим, что мы можем найти числа и!, ..., и„, которые точно удовлетворяют соотношениям (3.2.11), т.е. удовлетворяют уравнениям а; Ь! —, (и!+ ! — 2и, + иг, ) + — (и;+, — и; ! ) + с!и! = 4, (3.2.12) 2Ь г=1,...,л, илн как г!и; ! +Р,.и;+а!и!+! = — 6 а!;, /=1,...,и, 2 где р; = 2а; — с;Ь', !1; = — а; — Ь;Ь/2, г; = — а; + Ь;Ь/2. (3.2.13) Теперь можем записать эти уравнения в матричной форме: Р! Ч! и! !1! + г,о/~И г2 Р2 Ч2 а!т О О Ъ !1„ га Рв (3.2 14) Таким образом, задача сводится к решению этой системы линейных уравнений.
Методы решения таких систем будут рассмотрены в последующих разделах этой главы. В особенно простом частном случае (3.2.3) имеем а; = 1, Ь; = О, с! = О, так что р; = ', г! = ц! = — 1 и матрица коэффициентов в (3.2.14) 73 с ио= а и и„„= !3. Тогда можем рассматривать ие, и!,..., и„+, как приближенные значения решения и краевой задачи (3.2.1) — (3.2.2) в точках сетки хо, х!, ..., х„+,. Мы вскоре вернемся к вопросу о том, насколько эти приближения хороши.
Уравнения (3.2.12) представляют собой систему и линейных уравнений относительно и неизвестных и,,..., и„. Если собрать вместе коэффициенты при и;, то (3.2.12) можно переписать как ( — а; + Ь; Ь/2) и;, + (2 а; — с; Ь ) и; + ( — а; — Ь;6/2) и;+, = — Ь~ с(;„ принимает вид г — г (3.2.15) г — 1 — 1 2 В качестве несколько более сложного примера рассмотрим уравнение (х' + 1) и" (х) + 2хп '(х) + (з1п х) о(х) = соз х, О < х ~ 1, с граничными условиями о(О) = Они(1) =1. Здесьа(х) =х + 1, Ь(х) =2х, с(х)=з1пх и И(х)=созх, такчто ау=(уй) +1, Ьу=2уй, су=з!пуй, сну= = созе, у = 1,...,и.
Следовательно, р. = 2(УЬ)т Ьыз1пф+ 2, ду = — (ф)~ -указ — 2, т. = — (уй)2 +уЬ2 — 2, и у'-е уравнение системы (3.2.14) при 2 <у' <п — 1 имеет вид ~ — (уй)' +уй — 2] оу ) + 12Я)' — УРз1пуй+ 2] цу+ + [ — (уй) — уйт — 2]ьу, = — Ьтсозуй. Первое же и последнее уравнения системы, которые содержат граничные условия, записываются как (2Ь~ — йтз1п й + 2) о, — (26т + 2)от Азсоз й ~ — (пй)~ +пй' — 2] о„, + ~2(пп)~ — /Рз1п пй+ 2]о„= = — ь з соз пь + ((пй)' + от + 2] Вернемся теперь к важному вопросу об ошибке приближенных значений ь|, ..., о„. Так как линейная система (3.2.14), из которой определяются эти величины, решается численно, вычисленные значения оу содержат погрешность, обусловленную ошибками округления.
Однако этот вопрос будет более подробно рассмотрен в двух последующих разделах, а сейчас будем предполагать, что значения иу вычисляются без ошибок округления, т.е. и~, .: ., о„— точное решение системы (3.2.14) . Пусть и(х~) — значение точного решения краевой задачи в точке х~. Тогда, аналогично случаю задачи Коши из гл. 2; назовем глобальной ошибкой дискретизации величину шах ! о; — о(хр:11, (3.2.16) 1 <(<и т.е. ошибку, обусловленную заменой непрерывной краевой задачи ее дискретным аналогом (3.2.14) . Подробный и строгий анализ ошибки дискретизации выходит за рамки настоящей книги, и мы только кратко покажем, как такой анализ обычно проводится. Из оценок погрешностей (3.2.7) и (3.2.8) видно, что чем меньше шаг й, тем лучше разностные отношения аппроксимируют производные, так что интуитивно естественно ожидать, что то же самое будет справедливо и для ошибки дискретизации.
Вопрос заключается в том, как связать эти погрешности с (3.2,16). Покажем„как это можно было бы сделать, на примере очень простой задачи (3.2.3). В этом случае разностные уравне- 74 ния (3.2.12) принимают вид 1 г ("~' ~ 1 2'4 '4 — 1) 4 й где ц, =а, и„,, =Д. Введем сначала, аналогично случаю задачи Коши, локальную оишбку <)пгкретнзацпи 1 ~-(х, й) =, (и(х+ 61 — 2и(х)+ и(х — 6)] — сУ(х), (3.2.17) й где с — точное решение дифференциального уравнения.
Так как д(х) = = с (х), можем сделать такую подстановку в (3.2.17) и затем, считая функцию и достаточное число раз дифференцируемой, воспользоваться формулой (3.2.8), что приводит к соотношению 1 Е. (х, Ь) = — ~и(х + й) -- 2и(х) + ц(х — й)1 — и (х) = 0(йг ). 1 г Вычислим теперь значения Л(х, й) в точках сетки.
Полагая а; = г.(х;, и) и используя, что й'й; = и;, ~ — 2и; + и; ~, получаем равенства [и(хн1) — 2У(х ) + с(х;, Ч вЂ” (и;„— 2Ц;+ ц;,) = Игц, 1= 1,, и, которые, если положить е; = о(х;) — п;, можно переписать в виде е;~, — 2с;+ е;, = йго „~'= 1,...,и, (3.2.18) где ео = е„,, = О. Если обозначить матрицу (3.2.15) через А и ввести векторы е и я с координатами е „..., е„и о ~,..., о„, то (3.2.18) можно записать как гп (3.2.19) или, если предположить, что А ' существует, как е = — и'А 'е.
(3.2.20) Последнее соотношение и дает основную связь между глобальной и локальной ошибками дискретизации. Техническая проблема, которая выходит за рамки настоящей книги, состоит в изучении поведения матрицы А ' при 6 — О. Этот вопрос осложняется тем, что порядок и матрицы А пропорционален 1/й, так что ив при и — О. Тем не менее можно показать, что при стремлении й к нулю ошибки дискретизации е; также стремятся к нулю, что является существенно необходимым свойством хорошей схемы аппроксимации.
Более того, при довольно мягких предположениях о решении величины ег стремятся к нулю как О(6~),что служит признаком соответствующей скорости сходи мости. Тот же самый подход к анализу ошибки дискретизации при определенных предположениях относительно коэффициентов а, К с и с1 может быть применен и к более общей задаче (3.2.1) . Для аппроксимации задачи (3.2.1) может быть использован целый ряд других разностных схем, Рассмотрим две из них, которые иногда оказываются весьма важными для решения практических задач.
75 Если предположить, что а~ > О и с~ <О (как увидим позднее, такие ограни- чения на коэффициенты а и с являются вполне естественными), то условие (3.2.22) будет заведомо выполняться при достаточно малом Ь, в частности, если ! Ь; !Ь <2а;. (3.2.23) Такое ограничение на шаг Ь является весьма жестким, но его можно обойти, если для аппроксимации первой производной вместо центральной разности (3.29) использовать односторонние разности. Более точно, будем использовать аппроксимацию ( и;+ ~ — и~)/Л, и(х~) = (с; — с;,)/Ь, если Ь; >О, если Ь;(О, (3.2.24) так что направление односторонних разностей будет определяться знаком Ь~.
Такие разности широко используются в задачах динамики жидкостей и газов, где их называют разностями против ветра (или против потока) . При аппроксимации (3.2.24) 1-я строка матрицы коэффициентов (3.2 14) принимает вид — й~, 2а~ — с~й~ + Ь~Ь, — (а;+ Ьгй), Ь; > О, (3.2.25) 2и~ — с;Ь вЂ” Ь|Ь, — а~, 2 — (а; — М), Ь;(О, и если по-прежнему считать, что а~ > О и с~ < О, то, как легко проверить, условия диагонального доминирования будут .выполняться независимо от величины шага Ь. Отметим, однако, что если аппроксимапия центральными разностями (3.2.9) имеет второй порядок точности, то аппроксимация ошюсторонними разностями (3.2.24) имеет только первый порядок, так что приходится оценивать выигрыш в связи с лучшими свойствами матрицы коэффициентов по сравнению с потерями от увеличения ошибки дискретизации.