Fedorenko-RP-Vvedenie-v-vychislitelnuyu-fiziku (810773), страница 69
Текст из файла (страница 69)
Напомним, что в разностные уравнения входят уже известные величины (с и-го слоя и с (1 — 1)-й итерации). Искомые величины на 1-й итерации мы условились обозначать без верхнего индекса. Для разработки метода решения уравнений на верхнем слое нам прежде всего важна структура уравнений. Поэтому займемся именно структурой, т.е.
выяснением того, какие именно неизвестные входят в то или иное уравнение (напомним, что и тех, и других очень много). Начнем с уравнения (4) для ю. Оно явно разрешается относительно н +„, и мы в дальнейшем будем использовать формулу ем,д —— У „д(и, и,„,), т =О, 1, ..., М вЂ” 1. (10) При этом мы будем описывать уравнения именно в такой форме, указывая явно только неизвестные величины; наличие известных величин мы будем отмечать индексом т+ 1/2. Конечно, конкретные формы зависимостей должны быть однозначно и безошибочно запрограммированы, но в данный момент мы этого технического вопроса не рассматриваем. В (10) мы получили не все «уравнения длЯ е». Величина ни+из пока не имеет «своего» УРавнениЯ.
Таковым является краевое условие. Мы приняли заданными значения Тм»нз, Рм»нз. УРавнение состоЯниЯ позволЯет вычислить и ни+из. Рассмотрим уравнения (2) для и«е Они записываются для т = 1, 2, ..., М вЂ” 1, т.е. в системе пока не хватает двух уравнений. Представим эти уравнения в общей форме: 1/ (и ы и, и,„«н Р,„»нз, Р,„1д) = 0 (величины и н и,„+, вошли в 1/ через формулы для а ам»пз). Это пока предварительная формула.
Уравнение состояния позволяет исключить р „через Т и н и, которое, в свою очередь, исключается через и,, и (по формуле (10)). Аналогичным образом р +, исключается через Т»„, и, и г Легко проверить (и зто нужно сделать обязательно), что при т = 1, м — 1 мы не выходим за пределы действия формулы (10). Заметим еще, что упомянутое «исключение» не следует трактовать буквально как подстановку в конкретные формулы вместо аргументов соответствующих, часто громоздких, формул. Современ- 335 Ре«2!иъщия РАзиостной схемы й 331 ная техника программирования позволяет оперировать с описаниями таких сложных функциональных зависимостей в виде суперпозиции относительно простых. Итак, запипгем стандартные уравнения для и„в виде 1/ (и „и,и «„Т !22,Т,222)=О,' »2=1,2,...,М вЂ” 1. Уравнение для заданного и» представим в общей форме, позволяющей использовать схему вычислений и для иных краевых условий, например У»(и», и„Тпг) = О.
Наконец, уравнение для им можно получить, полагая !гм+222 = О. Это по существу есть дополнительное краевое условие, Необходимость в нем возникает из-за введения искусственной вязкости. Она не является физически обоснованным фактором, но проводит к повышению порядка дифференцирования по х (член 22„, грубо говоря, аналогичен члену и „). Псотому первичная (физическая) постановка задачи не содержит требуемою краевого условия и оно вводится искусственно.
Конечно, эта «произвольная» операция требует осторожности: она не должна оказывать заметного влияния на численное решение. В данном слУчае, посколькУ а есть величина О(лг), Условие ом«нг — — 0 достаточно естественно. Таким образом, уравнение (2) для им можно представить в виде 12'м(и „и, Р пг, Р пг) = О. УчитываЯ, что Рм«пг задано кРаевым Условием, запишем его в окончательной форме: «Гм(им „им, Тм-пг, Тм+пг) = О (Тм«222 добавлено «для общности»).
Теперь все значения и обеспечены «своими» уравнениями. Перейдем к уравнениям для Т: е — е" «2П «2!2, и и ю+! ю + (Р+ Ч)~«222 А " +2а »«!/2 ! ! Тм+3!2 т«иг т««2 т-!/2 м а„„~ +! л„ 'и Эти уравнения можно использовать при лг= 1, 2, „М вЂ” 1, т.е. в системе пока не хватает двух уравнений. Исключая е пг через т„,+22, о «пг (УРавнение состоЯниЯ) и 22 «пг чеРез и, и +„пРидадим уравнениям форму Е«!+2!2(Т!«2пи Т«,+!22 Т„,+2!2, и,„, и„,+!) = О.
ПРИБЛИЖЕННЫЕ МЕТОДЫ НЫЧИСЛИТЕЛЬНОй ФИЗИКИ 1Ч. И 336 Уравнение для Тцг получаем, используя краевое условие (задан поток НТ„= Ц при х = 0): е — е" и — и Г Т вЂ” Т +ш»+цг,,-, -ь з о ! - зп иг,з1 Это уравнение можно представить в виде Е Гг(1 цг 1 зди ио и~) = О (ио включено тоже Фдля общности»), Включив в уравнение для е Фцг аппроксимационный источник, г +цг (вычисляемый по значениям и, а не й ), получим уравнение Е» цг = 0 точно такой же структуры. Уравнение для Т „иг в рассматриваемом случае тривиально— эта величина просто задана. Запишем это уравнение в общей форме, имея в виду и более сложные краевые условия: ем~из(тм цг, тмРиз, им) =О. Подведем итог, выписав все уравнения, которые предстоит решатке 1го(ио из Тиг) =О (11) йI (и и ищ, ит»и Тт-цг Тт+цг) =О, им(им — з им Тм-цг Тм+цг) = О' Еиг(1'|ы Туг ио и~) =О, Еттцг(Тщ цг, ТщР цг Тщ» зтг ищ, ищ+,) = О, (12) Еи+цг(Тм-иг, Тч»цг, им) = О, где т = 1, 2, ..., М вЂ” 1.
Перейдем к алгоритму их решения. Метод раздельной прогонки В атом методе сначала величины Т фиксируются как Т (т.е. как уже найденные приближения к Т" +'), затем решаются уравнения (11) относительно и (линеаризацией по Ньютону). В результате получается линейная система уравнений относртельно и, имеющая ту же структуру, т.е. система с трехдиагональной матрнцей.
Она легко решается методом прогонки (см. 5 10). Фиксируя ио»'>, можно линеаризовать вторую группу уравнений относительно Т. Линейная система с такой же трех- диагональной матрицей решается прогонкой, Далее эти процедуры повторяются до достижения требуемой точности.
337 РехлизАиии РАзностной схемы 5 221 Метод векторной нрогонки. В методике, которая описывается в этом параграфе, система уравнений на верхнем слое (11), (12) решалась методом векторной прогонки. (Раздельная прогонка была предложена позднее.) В методе векторной прогонки одновременно линеаризуются обе системы уравнений. Эта операция приводит к следуюшим линейным уравнениям: 4оио + -4ои1 + АО Тцг = .4о 4~2Т112+ Вц,Туг+ Вцг ио+ В,12 и, = Во; 1 -ц2 1гг А и +А и+Аи++,+ о 1 А-цгТ -1- АцгТ = .4 Вт+цгТт-т+ В ьцгТ„,ицг+ В,'„+цгТ,згг+ -цг Ц2 +В +ц и +В цги +1=В +ц ', А 1им-1+ Аомим+ АмцгТм- г+ А~м~гТм.
= Ам -1 по и-цг В +ц*т -т+"м+.Т + г+В + и =В +цг где нг = 1, 2, ..., М вЂ” 1. Вводя вектор г = (и„, Т +1~), запишем эти уравнения в матричной форме (т = 1, 2, ..., М вЂ” 1)1 .Вого+ Во21 ~о (13) Ф г~ 1+Я 2 +$' 2 „1=Я Л'мгм — 1 + ~мгм Рм. Здесь использованы обозначения Формулы вычисления элементов этих матриц через значения функций У, В и их производных очевидны, но громоздки. Нет неооходим1кти их воспроизводить. Система уравнений (13) имеет «трехднагональную» форму и решается несложным обобщением алгоритма прогонки. Вывод формул алгоритма отличается от вывода, изложенного в 3 10, только тем, что теперь мы работаем с матрицами (некоммутативная алгебра) и надо аккуратно следить за порядком множителей.
Решение ищется в форме ( в в'„„)' А1 0 цг 40 Ац2 -цг В ьцг в, ьцг (в „). ПРИБЛИЖЕННЫЕ МЕТОДЫ ВЫЧИСЛИТЕЛЬНОЙ ФИЗИКИ 1ч. И зза г, = Х г + У, где Х вЂ” матрица 2х 2, г — вектор. Опуская простые выкладки, приведем результат (т = 1, 2, ..., М вЂ” 1): Х1 ~0 йо' Х +Б ('® +Л~ Х ) ~о ~о Теперь последнее уравнение (13) и прогоночное соотношение гм, = Хмгм + Ум можно РазРешить относительно гы. Эта величина вычисляется н позволяет начать «обратную прогонку» — вычисление справа-налево искомых величин г„. Мы не будем здесь обсуждать проблем разрешимости всех встречающихся в алгоритме задач (существования обратных матриц) и сходимости итерационного процесса, Укажем лишь, что легко угадать тривиальный результат: прн достаточно малом т все обстоит благополучно.
Это естественное следствие вырождения в пределе т- О всех уравнений в тривиальные. Теоретические оценки того малого т, начиная с которого герантнруется успех вычислений, в практике расчетов не используются — зто привело бы к неоправданно заниженному шагу по времени. Однако сам факт зависимости, например, скорости сходимостн итераций от т (она тем выше, чем меньше т) используется в режиме обратной связи.
Считается, что требуемая точность должна достигаться за три-пять итераций. Если итераций потребовалось больше, следующий шаг интегрирования уравнений выполняется с уменьшенным шагом т. Если точность достигается за меньшее число итераций, т увеличивается в пределах, определяемых другими критериями выбора шага. Что касается сопоставления скорости сходимости методов раздельной и векторной прогонок, то преимущество имеет последняя. Это естественно: оба метода являются комбинацией метода лннеаризации (Ньютона) и метода простой итерации (Пикара).