Амосов А.А., Дубинский В.А., Копченова Н.В. Вычислительные методы для инженеров (1994) (1095853), страница 89
Текст из файла (страница 89)
495 означающее, что функция и удовлетворяет разностному уравнению (15,35) с точностью до погрешности аппроксимации. Сеточную функцию ф" используют для предварительной оценки того, насколько точно аппроксимируется дифференциальное уравнение его разностным аналогом. Говорят, что разностное уравнение (15.35) аппроксимирует дифференциальное уравнение Я[и] = ~ если птах )т~,~ ~ 0 при Ь ~ О, и аппроксимирует его с т-м порядком (при О< г<Л тп > 0), если справедлива оценка тпах ~ тр;~ < СМ'. О< г<Ж Л е м и а 15.4.
Пусть коэффициентпы о и ~ дважды непрерывно дифференцируемы на отрезке [а, 6]. Тогда разностное уравнение (15.15) аппроксимируетп дифференциальное уравнение А[и] = ~ со втпорьгм порядком, примем справедлива оценка В силу определения погрешности аппроксимации имеем и(х; г) — 2и(х;) + и(хг г) = — и "(х;) + гЛ(х;) + 9 (х;) и (х;) — У(х;) = га(хг), — е"(х,) = и (х;) — и"(х) в узлах сетки аА Будем говорить, что раэностпная схема сходится при Ь ~ О, если шах ~е,~ ~ 0 при Ь ~ О, и сходится с пг — м порядном тпонностпи (при 0~ г~Л~ тп > О), если для погрешности справедлива оценка пгах ~е,) ~ СЬн, О< г<Х где С некоторая постоянная, не зависящая от Ь.
Покажем, что разностная схема (15.15), (15.16) сходится со вторым порядком точности. Т е о р е м а 15.14. Луспгь функции у (х)„~(х) дважды непрерывно дифференцируемы на отпреэхе [а, Ь]. Тогда для погрешностпи раэностпной схемы (15.15), (15.16) справедлива оггенка птах ~ и (х;) — и,~ ~ СЬ2, 04 г~Ю (15.38) 12 где С = — тпах ~и~41(х) ~. [а, Ь] а Введем сеточную функцию и'", значения которой в узлах сетки совпадают с точными значениями решения краевой задачи, т. е.
и*"(х;) = и (х;). Равенство (15.36) означает, что и*" можно рассматривать как решение разностной схемы (15.32), (15.33), где ~" = ~а + г~", и* = и, и* = иь. В силу теоремы 15.13 для И = и" — и*" справедлива оценка 496 где ть(хг) = и'4'(~,)ь2/12 — погрешность аппроксимации производной и"(х) ее разностным аналогом по формуле (15.11). Таким образом, гпах ~ ф,~ = гпах ' Ь2 4 — Ь2, т.
е. справедливость оценки О< г<Л О< г<Х (15.37) установлена. 5 В общем случае дополнительно возникает проблема изучения погрешности аппроксимации краевых условий. Однако для краевых условий (15.10) зта проблема отсутствует, так как сеточная функция удовлетворяет им точно. 9. Сходимость. Пусть и (х) — решение краевой задачи, а и" — решение соответствующей разностной схемы. Назовем погрешностпью раэностпной схе иы сеточную функцию е", принимающую значения е, = 1г гпах )е,) ~ — гпах )4;~.
0< ХЛ О< в<У 8 (15.39) Учитывая теперь неравенство (15.37), из (15.39) получаем оценку (15.38). И 3 а м е ч а н и е. Сходимость разностной схемы (15.15), (15.16) со вторым порядком точности вытекает из того, что схема устойчива и обладает аппроксимацией со вторым порядком относительно Ь. 10. Оценка погрешности по правилу Рунге. Полученная в теореме 15.14 априорная оценка (15.38), как правило, оказывается непригодной для практической оценки погрешности разностной схемы. На практике чаще применяются апостериорные оценки погрешности, использующие расчеты на сгущающихся сетках.
Пусть, например, и" и и2" — решения разностной схемы (15.15), (15.16), соответствующие шагам Ь1 — — Ь и Ь2 — 2Ь. Тогда в соответствии с аравилол Рук1с при определенных условиях справедлива приближенная формула Ь(х) а (х) вЬ(х) ~ ') ~') х б ~дЬ 3 (15.40) Пример 15.1. Используя разностную схему (15.15), (15.16) с шагом Ь = 1/8, найдем приближенное решение краевой задачи х — и (х) + хзв (х) = ( — + хз)сов — х, 0 < х < 1, 4 2 и(0) = 1, и(1) = 0 (15.41) и оценим его погрешность по правилу Рунге.
Вычисления будем вести с шес— тью значащими циФрами. г х В данном случае 9 (х) = х~, ~(х) = ( — + хт)сов — х и система сеточных 4 2 уравнений (15.17), (15.18) примет вид ио = 1, „г Х аь1+ (2+ Ь2х~)а; и 1 — — ( — + х~)сов — х;, 1 ~ 1~ Я-1, ил~ = О. (15.42) 497 Отметим, что она применима только в узлах сетки ы2", т.
е. там, где определены обе сеточные функции и" и и2", При Ь1 = 1/8 приходим к следующей системе уравнений относительно неизвестных и, и и (1Ь) (г = О, 1, ..., 8): ао = 1, — ао + 2 00024и~ — аю = 0 0380518 -щ + 2.00098иг — из = -0.0365207 -иг + 2.00220ав — и» = 0,0338827, -ив + 2,00391и» вЂ” ив = 0.0300233, -и» + 2,00610~ — ае = 0.0248099, -ав + 2.00897ав — ат = 0 0181171 -ав + 2.01196ит — ив = 0.0098552, = о. Решая ее с помощью метода прогонки, находим значения, представленные в 3-и столбце табл.
15.1. Заметим, что в данном случае точное решение задачи 1г известно: и (х) = сов — х. Значения точного решения и вычисленные с их 2 использованием погрешности приведены во 2-м и 4-и столбцах той же табли- Таблица 151 Оценка погреш— и ности по прави- лу Рунге К в '; Ь1= 1/8 Ь и Ь1= 1/8 х и= сов — х 2 -е-10 4 -7 10 4 -4 ° 10 4 Оценим теперь погрешность, используя правило Рунге. Возьмем шаг Ьт = = 2Ь1 = 1/4. Решая соответствующую систему сеточных уравнений: ао = 1, -ао + 2.00391и1 — ит = 0.146083, -и~ + 2.01563и2 — ив = 0 120093 -а2 + 2.03516ив — и» = 0.0724683, и» = О, 498 0.000 0.125 0.250 0.375 0.500 0.625 0.750 0.875 1.000 1.000000 0.980785 0.923880 0.831470 0.707107 0.555570 0.382683 0.195090 0.000000 1.000000 0.981114 0.924413 0.832097 0.707733 0.556116 0.383082 0.195300 0.000000 0 — 3 10 4 -5 10 4 -6 ° 10 4 -6 10» — 5 10 4 -4.10 » — 2 10 » 0 1.000000 0.926080 0.709703 0.384324 0.000000 получаем значения, представленные в 5-м столбце табл.
15.1. В последнем столбце этой таблицы даны приближенные значения погрешности, полученные по формуле (15.40). Заметим, что в данном примере правило Рунге дает весьма хорошие результаты. 11. Влияние вычислительной погрешности При расчетах с достаточно крупными шагами Ь влиянием вычислительной погрешности на решение часто можно пренебречь. Однако все же следует иметь в виду, что при решении системы (15.17), (15.18) методом прогонки происходит накопление вычислительной погрешности. Известно', что при Ь ~ 0 вычислительная погрешность может возрастать здесь пропорционально ем/Ьг, где ем — относительная точность представления чисел в ЭВМ.
Таким образом, при достаточно малых значениях шага Ь возможна катастрофическая потеря точности. Сделанное выше утверждение перестанет казаться неправдоподобным, если мы убедимся в том, что при малых Ь вычислительная погрешность может привести к существенному искажению решения уже на этапе составления системы сеточных уравнений. Пусть, например, для решения краевой задачи (15.9), (15.10) используется разностная схема с шагом Ь = 10 ~, а вычисления ведутся на 6-разрядной десятичной ЭВМ.
Заметим, что длЯ такой ЭВМ ем = 5 ° 10 7. Так как здесь Ухг ( < 10 6 = 2е„, то результатом вычисления коэффициента Ь; = 2 + Ухг после окруГления до 6 значащих цифр мантиссы является число $,* = = 2. Следовательно, даже если остальные вычисления будут производиться точно, то фактически окажется найденным не решение системы (15.42), а решение системы хг -и,*, + 2и,* — и*„= У ( — + хг) сов — х,, 1 ~ 1 ~'У вЂ” 1, им= О, соответствующей краевой задаче х -и "(х) = ( — + хг) сов — х 4 2 и (О) = 1, и (1) = О, Б а х в а л о в Н.С. О накоплении вычислительной погрешности при численном решении дифференциальных уравнений. В сб.: Вычислительные методы и программирование.
М.: Изд — во МГУ, 1962, с. 47 — 68. 499 Поскольку в результате оказалась решенной "не та задача", найденные значения и,'. будут существенно отличаться от искомых иь В данном конкретном случае погрешность будет достигать и 5%. В общем случае погрешность может оказаться значительно больше. 3 15.3.
Метод конечных разностей: аппроксимации специального вида 1. Случай переменного коэффициента Л (х). Вернемся к проблеме численного решения краевой задачи -(Л (х) и'(х)) ' + д (х) и (х) = ~(х), а ( х ( Ь; и(а) = иа и(Ь) = иЬ. (15.43) (15.44) По сравнению со случаем Л и 1, рассмотренным в предыдущем параграфе, единственное видимое отличие состоит в необходимости выбора подходящей аппроксимации для выражения' — (Й (х) и'(х)) ' = и)'(х). Рассмотрим некоторые из возможных подходов к выбору аппроксимации., Введем обозначения х;,1~2 — — (х; + х 1)/2, Ц 1,т — — Л (хвч ~2), 0 < ~ ~ 1 Ф.
Аппроксимируем производную и)'(х) при х = х; следующим образом: 1 и) (хд ))) Л (и) ( Ъ1 д) и) (х -) д)). (15.45) Используя далее приближенные формулы и (хвч) — и (х;) и) (хе1 ~~) = А+1 ~2и (хв! ~т) " Ле! ~2 Л и (х) — и (х; 1) и) (хв-1 д) Ль) /2и (хь) уг) "" ~ь) (2 Л (15.46) (15.47) получаем аппроксимацию В результате приходим к разностной схеме вида (15,15), (15.16), где 1 Напомним, что величина и) (х) = -х(х) и (х) имеет физический смысл потока тепла, если уравнение интерпретируется как уравнение теплопроводности. 500 (15.48) и (г; ~) — 2в (г) + а (х;+~),, а (с+~) — и (ю; ~) и ) ~ м (х;) приводящей к разностной схеме с оператором Х"[иЬ)(х,) = — Ь (хД а' ' „' ~~ — Ь'(т,) "' „' ~ + д;а;.
Заметим, что коэффициенты соответствующей системы сеточных урав- нений д; = — Ь (т;) + — Ь'(т;), Ь, = 2Ь (з;) + Ыдь с; = -Ь (г,) — — Ь'(х,) удовлетворяют условиям (15.23), гарантирующим наличие принципа максимума, только если Л шах — '<2. М )! ы' я (15.49) Таким образом, в случае, когда коэффициент Ь может резко меняться на отрезке [а, Ь~, ограничение (15.49) приводит к необходимости выбора очень мелкого шага Л для получения приемлемых результатов. 2. Случай неравномерной сетки.
Часто возникает необходимость использования кераеяолеряой сетюси Р, т. е. сетки, у которой шаг Ь; = 501 Отметим, что коэффициенты а, = -Ь, ~ ~, 6, = Ь; ~ д + Йь~ ~г + Удь с; = -Ь;,~ ~~ соответствующей системы сеточных уравнений удовлетворяют условиям (15.23). Следовательно, при любом Ь решение разностной схемы существует и единственно. Кроме того, в силу леммы 15.1 для разностной схемы справедлив принцип максимума. Можно показать также, что разностная схема устойчива и сходится со вторым порядком точности, если коэффициенты Ь, у, ~являются дважды непрерывно дифференцируемыми на отрезке [а, 6] функциями.