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

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

на левой границе, Ll=2 - условию второго рода (условие Неймана) на левой границе, L1 =3 - условию третьего рода (смешанное условие Роббина) на левой границе; то же означают аналогичные записи для LM на правой границе. Векторы Е и F являются рабочими и для них должно быть предусмотрено место в памяти, вызывающей программы. Решение засылается в массив W.

Текст подпрограммы

SUBROUTINE GTRI (А, В, С, D, MD, Е, F, W, L1, А1, Q1,

LM, AM, QM)

С GENERAL TRI-DIAGONAL SOLVER

DIMENSION A(MD), В (MD), С (МО), D (МО), Е (МО),

F(MD), W(MO)

IF (Ll.EQ.l) E(1) = 0. IF (Ll.EQ.l) F(1) = A1 С ABOVE OVERWRITTEN IF LM.NE.2 IF (L1.EQ.2) E(l)= 1. IF (L1.EQ.2) F(1) = -A1 IF (L1.EQ.3) E(1) = A1/(A1 - 1.) IF (L1.EQ.3) F(1) = Q1/(1. - Al) MM = MD - 1 DO 1 M = 2, MM OEN = В (M) - С (M)* E (M - 1) E(M) = A(M)/OEN

1 F(M) = (D(M) + C(M)*F(M-1))/0EN IF(LM.EQ.l) W(MD) = AM

IF (LM. EQ. 2) W (MO) = (F (MM) + AM)/(1. ~ E (MM)) IF (LM. EQ. 3) W (MD) == (F (MM)+QM/AM)/((1. -b AM)/AM-

- E (MM))

00 2 MK= 1, MM M = MD - MK

2 W(M)= E(M)*W(M-j-1) + F(M) RETURN



Приложение Б ОБ ИСКУССТВЕННОЙ СХЕМНОЙ ВЯЗКОСТИ)

Введение

Искусственная вязкость представляет собой особый вид ошибок аппроксимации, проявляющихся при представлении уравнений переноса конечными разностями. Впервые этот термин появился в работе фон Неймана и Рихтмайера [1950], которые ввели в явном виде в уравнения течения невязкого газа член, аналогичный члену, описывающему вязкость, для расчета движения ударных волн; в настоящее время этот метод известен как метод «размазывания» ударных волн или метод сквозного счета. В цитированной работе член с явной искусственной вязкостью выбирался иронорциональным Дх для обеспечения анироксимации, т. е. ио существу этот член представлял собой ошибку аппроксимации второго порядка.

Позже было выяснено, что аналогичное искусственной вязкости поведение может быть получено (часто неумышленно) именно из-за ошибок анироксимации уравнений конечными разностями. Нох и Проттер [1963] впервые провели анализ неявной (схемной) искусственной вязкости в схеме с конечными разностями против потока для линейного модельного уравнения конвекции

= (Б.1)

При ы > О схема с конечными разностями против потока, примененная к уравнению (Б.1), дает следующее конечно-разностное уравнение:

Ошибка анироксимации имеет порядок О (At, Ах). Переписывая уравнение (2) с введением числа Куранта С == uAt/Ax, при и = const получаем

= -С (Б.З)

Для С=1 схема дает """ = ?" i, что является точным решением. Условие С = 1 является также границей устойчивости.

) Это приложение основано на работе Роуча [1971в] с некоторыми разъяснениями Уорминга и Хьетта [1974]. Последняя работа является наиболее авторитетным источником по рассматриваемому вопросу.



При С 1 схема ир.о/ип искусственное схемное затухание; при этом анализ \ cioiihubocui но (})()н Нейману дасг, ню собствен-Н1>1С :и1аче1и1Я магрицы нерех(-да \Х\ < 1. Любая схема, для которой 1, иводнг подобн>)е искуссгвенпое схемное затухание. Рг\зложение в ряд TciuTopa, нспольз\емое в анализе устойчивости по Хёргу [1968], ноказынает, что схема (Б.З) соответствует следующему уравнению в частных производных:

= - »L + (и A.t/2) г,, - ЧгЧи + О {l\x\ L\t\ (Б.4)

Величина c,tt, входянтач в уравнение (Б.4), обычно находится при номощп уравнения (Б. 1) и для «== const имеет вид)

Ctt - tlxt - i{lt)x = u\xx. (Б.5)

Подставляя выражение (Б.5) в уравнение (Б.4), получаем

lt=- III, + a.S.x + О (Дх2, Л/2), (Б.6)

а, = иЛх/2-иА 2= 72ггАх(1 - С). (Б.7)

Поскольку здесь вводится не имеющий физического смысла коэффициент ае при д%/дх, мы вправе говорить не только об искусственном затухании, но - более конкретно - об искусственной схемной, пли численной, диффузии либо об схемной, или численной, вязкости схемы. (Хёрт [1968] успешно использует условие «е > О в качестве необходимого условия устойчивости). При С == 1 из соотношения (Б.7) следует, что = 0; этот результат согласуется с тем, что при С = 1 схема (Б.З) дает точное решение.

Нестационарный и стационарный анализ схемы с конечными разностями против потока

Приведенный выше анализ применялся многими авторами для описания искусственной вязкости различных схем, и полученные при этом результаты, как широко признано, могут быть использованы в многомерных задачах и при наличии членов с физической вязкостью, и при нх отсутствии. Однако в многомерных задачах о стационарных течениях вязкой жидкости интерирегация величины ас не так проста, как это может показаться. Это видно уже из соотношения (Б.7), которое показывает, что гАс зависит от Л/ через число Куранта С. Рассмотрим

) Здесь можно применять уравнение (Б, 1), ие опасаясь внести ошибку в коэффп11ие11т искусственной схемной вязкости. Однако более строгим было бы повторное дшрфереицирование уравнения (Б, 3) в прсдположеипи, что между узловыми точками функция С, дифференцируема нужное число раз. Как показали Уорыппг и Хьотт [1974], именно таьая процедура дает правильную ипформаиию о поведении производных высшего порядка.



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