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

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

Если при / = 1 условие Неймана задано в виде

-

то вместо ei = О и 62 = е будем иметь

61 = 62 = 6,

(3.400)

(3.401)

а уравнение (3.394), описывающее распространение ошибки, заменится следующим;

б/==е + (/-2)СДг/. (3.402)

Поскольку уравнения (3.394) или (3.402), описывающие распространение ошибки, линейны по /, практически можно не

(1,1) h

Грании,а В1 -х-

Рис. 3.17. Расчетная область эталонной двумерной задачи для метода расчета распространения ошибки; Ещ - вектор начальной ошибки, - вектор конечной ошибки.

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

Расчетная область эталонной двумерной задачи представлена на рис. 3.17. Пусть сначала на всех границах заданы условия Дирихле. По аналогии с одномерным случаем, когда мы выбирали одно-единственное предварительное значение if>2, теперь выберем вектор предварительных значений ifj , где i пробегает все целочисленные значения от i = 2 до 1 = 1-1. Этот вектор 1(5 2, определенный на точках, расположенных непосредственно над границей В1 на рис. 3.17, отличается от истинного значения ф/, 2 на вектор единичной ошибки е,-, 2, т. е.

\2=;.2+ем- (3.403)



При выбранном таким образом г5 остальные предварительные значения во внутренних точках до / = / включительно вычисляются при первом обходе при помощи преобразованного уравнения (3.365). Таким образом, при р = Дх/Ду получаем

= У%, 2 (1 + р2) , - р211 + J - г,

(3.404)

В случае необходимости в уравнении (3.404) используются точные граничные значения i,,- на границе ВЗ и г5/, / на границе В 4. Уравнение, описывающее распространение ощибки и соответствующее уравнению (3.393), имеет вид

,„ = 2 (1 + р2)е, . - Ре,,,, / - р2е, ,, - , „ (3.405)

причем на границах В 1, ВЗ и В4 значения ошибок равны

ег,1=е,,/ = е/,/ = 0. (3.406)

После первого обхода, учитывая точные граничные значения фг, /, вычисляют вектор конечной ошибки на границе В 2:

ei.j-\j-i.r (3.407)

Затем определяют вектор начальной ошибки е,-, 2 через е,, / при помощи предварительно установленного линейного соотношения (см. ниже). Правильные значения г5,-, 2 находятся из уравнения (3.403); затем при втором обходе расчетных точек из маршевого уравнения (3.404), заменив в нем Sp на г5, находят окончательное решение.

Теперь для того, чтобы установить линейное соотношение между et, 2 и е,-, /, удобно ввести дополнительные обозначения для этих двух векторов, как показано на рис. 3.17. Вектор конечной ошибки обозначим через Fi = ei,j\ здесь l-i-1 пробегает все целочисленные значения от / = 1 до / = /-2. Вектор начальной ошибки обозначим через = е,-, 2; здесь т = = г - 1 также пробегает значения от m = 1 до т = I - 2. Затем при помощи соотношения

FtCtEm (3.408)

вводится «матрица коэффициентов влияния» С= {С,т}.

В отличие от одномерного случая для нахождения Сщ не существует удобного уравнения. Эта матрица получается до )ешения конкретной задачи с помощью следующего алгоритма. Зыбирается некоторое частное значение rrii величины т, полагается =emi+i.2= 1, а для всех остальных т принимается Ет = 0. Затем при помощи уравнений (3.405) и (3.406) рассчитывается распространение вектора ошибки Е. В результате



получается вектор конечной ошибки Fj = et, i, где 1 = i - 1 пробегает значения от 1 до / - 2. Таким образом определяется столбец т\ матрицы С:

Ci,n.==Fi. (3.409)

Полагая Ет = 1, а все остальные Ет = 0 поочередно для всех гпь меняющихся от 1 до / - 2, заполним всю матрицу коэффициентов влияния С. Чтобы выразить е,-, 2 через е,-, j, разрешим при помощи метода исключения Гаусса уравнение (3.408) относительно Ет, получим

Е,п = С;;г1р1 (3.410)

и, наконец, определим

em+\,2 = Cmiem+\,I- (3.411)

Такой метод в приложениях, очевидно, эффективнее прямого метода исключения Гаусса. Здесь исходная задача решения системы из (/ -2)Х(/ -2) уравнений с блочно-трехдиаго-нальной матрицей сводится к решению / - 2 уравнений) для определения обратной матрицы С- и при этом дополнительно ароделывается работа, эквивалентная / итерациям по методу Ричардсона: два обхода расчетных точек для определения i)) и 1)) из уравнения (3.404) и / - 2 обхода для определения е из уравнения (3.405). Поскольку уравнение (3.405), описывающее распространение ошибки, не зависит от неоднородного члена t,-, / и поскольку граничные условия (3.406) для этого уравнения не зависят от граничных значений , а только от типа граничных условий, являющихся в данном случае условиями Дирихле, расчет е при помощи уравнений (3.405) и (3.406) и обращение матрицы С необходимо проводить только один раз для целого семейства решений, определяемых на одной и той же сетке и при одном и том же типе граничных условий, но с различными граничными значениями ф и различными . Именно так обстоит дело в гидродинамических задачах.

Легко добиться того, чтобы рассмотренный метод сходился примерно в 10100 раз (в зависимости от выбранного шага сетки и выбранного критерия сходимости) быстрее других итерационных методов. Но Этот метод обладает тем недостатком, что требует существенно большего объема памяти и по простоте не может конкурировать с методом последовательной верхней релаксации. Еще важнее то обстоятельство, что из-за свойств распространения ошибки метод применим только в областях ограниченных размеров.

) В нашем описании метода фигурирует обратная матрица С-, но известно, что на практике удобнее не вычислять С- а иепосредствеиио решать систему уравнений, оставляя треугольный вид систе1ы и применяя метод исключения Гауссз,



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