Запорожец  Издания 

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 [ 55 ] 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199

кел [1950]). Предположим, что рассматривается иестациоиар-иое уравиение диффузии для г]) с «источииковым членом» % и с коэффициентом диффузии, равным единице:

4f = V4-S. (3.366)

Физический смысл нестационарного решения здесь не играет роли, но когда решение такого уравнения диффузии приближается к стационарному, оно стремится к интересующему нас решению уравнения Пуассона (3.363).

В некоторых случаях такая аналогия выполняется точно. Для того чтобы продемонстрировать подобную эквивалентность, выведем итерационный метод Ричардсона для эллиптического уравнения Пуассона из нестационарной схемы с разностями вперед по времени и центральными разностями по простраист-вениым переменным для уравнения диффузии параболического типа.

Применяя к уравнению (3.366) разностную схему с разностями вперед по времени и с центральными разностями по пространственным переменным, получаем

-д7-+ (3.367)

Для простоты временно ограничимся случаем, когда Дд; = = Ду = Д и уравнение (3.367) принимает следующий вид:

Г/ = / + /•+ ti, /+ /+1 + i - Xi. ,]•

(3.368)

Покажем сначала, что X>i,i не оказывает влияния на устойчивость уравнения (3.368). Следуя работе Шортли и Уэллера [1938], будем рассматривать граничные условия Дирихле и обозначим через г[)°° точное конечно-разностное решение) конечно-разностного уравнения Пуассона (3.364). Тогда ошибка

значения г]) после итерации k будет составлять

<; = €,-f,r (3-369)

Подставляя полученное отсюда выражение для г])* в уравиение (3.364), будем иметь

) Формальное заключение, что точное решение получается при koo, является скорее предположительным, чем строгим. Предел lim г) будет

отличаться от точного решения уравнения (3.365) из-за ошибок округления.



Так как \°° в точности удовлетворяет уравнению (3.364), уравнение (3.370) сводится к уравнению Лапласа

+ f = 0. (3.371)

Поскольку граничные условия заданы, на всех границах гр* = = г])"", или е =: 0. Тогда аналогично итерационному конечно-разностному уравнению (3.368) можно записать для ошибки е следующее уравнение:

= < f + 4[ti, i + lu + el + К /]• (3-372)

Таким образом, итерационное уравнение (3.368) для г) эквивалентно итерационному уравнению (3.372) для е, причем последнее, очевидно, не зависит от t,.

Условие устойчивости уравнения (3.368) или (3.372) (см. разд. 3.1.5.д) имеет вид d = aAZ/A Д или при а = 1 А/ А2/4. Поскольку желательно достичь асимптотического решения как можно скорее, выберем максимально возможное значение А/= А74. Подстановка этого значения в уравнение (3.368) дает

+ т №+1, / + i-i, / + Ч /+1 +

+ (3.373)

Приводя подобные члены, содержащие г):* , получаем

= т№+1. / + ti, / + Ч /+1 + /-1 - /]• (3.374)

Этот алгоритм представляет собой метод Ричардсона) при Ал: = Ау. В частном случае для уравнения Лапласа = 0) он сводится просто к требованию, чтобы значение г) на новой итерации равнялось среднему арифметическому значению в четырех соседних точках.

Уравнение (3.374) представляет собой тот же результат, который можно получить, разрешая стационарное уравнение (3.365) эллиптического типа относительно г]),-, при условии, что этот член в левой части уравнения берется на итерации k-{-\,

) Этот метод известен также как метод Якоби (Сальвадори и Барон [1961]), как метод «итераций полными этапами» (Кренделл [1956]) и как метод «одновременных смещений» (Янг [1954]); последнее название связано с тем, что каждое значение вычисляется в точке, которую можно брать независимо в любом порядке из последовательности точек (i,/), и поэтому все точки можно в известном смысле рассчитать одновременно. Такое свойство алгоритма очеиь важно при оценке методов для вычислительных машин с параллельными процессорами.



) Более изящные матричные методы описаны в книгах Вазова и Форсайта [1960] и Эймса [1969].

) Этот метод известен также как метод Гаусса - Зейделя (Сальвадори и Барон [1961]), как метод «итераций неполными этапами» (Кренделл [1956]) и как метод «последовательных смещений» (Янг [1954]). Этот метод похож на методы Саульева для нестационарных уравнений (см. разд. 3.1.17), но не идентичен им.

а все члены в правой части берутся на итерации k. Введем величину отношения размеров шагов сетки р - Ах/Ау; тогда

Г/ -YiTTlUi / + / + Ч R. + М. - Ах%, /].

(3.375)

Этот алгоритм представляет собой метод Ричардсона при Ах =7 А(/.

Исследование скорости сходимости методов можно провести так же, как и исследование устойчивости для уравнения переноса вихря, подставляя в уравнение для ошибки (3.372)

(3.376)

или раскладывая оператор Лапласа в дискретизированной форме по его собсгвениым функциям; результаты оказываются идентичными при условии, что граничные условия правильно учтены). Представим здесь полученные таким способом (но в других обозначениях) результаты Франкела [1950].

Компоненты ошибки с наибольшей и наименьшей длинами волн затухают наиболее слабо (т. е. имеют наибольшую величину G(9)). Таким образом, независимо от начального распределения ошибки по 9 данные компоненты будут доминировать при асимптотически больших k. Обе эти компоненты имеют одну и ту же величину G(9) , но коротковолновая компонента ошибки (Л = 2Ах) совершает знакопеременные колебания при G < О, что в некотором смысле оптимально (Франкел [1950]).

Уравнение (3.375) является двухслойным уравнением, и в памяти вычислительной машины необходимо хранить массивы для величин г1)*+ и г];*. Если обход расчетных точек вести в направлении возрастания i и / и в уравнении (3.375) использовать, где это возможно, уже полученные новые значения г1)*+, то получится следующая схема:

IV = YlTfWT [- / + • / + Pt /+ +

+ РЧГ/-1-Аг,,], (3.377)

которая называется методом Либмана). При программировании этого метода достаточно в памяти хранить лишь один мас-



0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 [ 55 ] 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199