Турчак Л.И. Основы численных методов. Под ред. В.В.Щенникова (1987) (1095857), страница 47
Текст из файла (страница 47)
Простейшей является явная трехслойная схема крест (шаблон показан на рис, 64) . Заменим в уравнении (8.75) вторые производные искомой М л. и. Турчак Для поперечных колебаний струны искомая функция 11(х, ~) оп11сывает положение струны в момент Г, В атом случае а'=Тlр, где Т вЂ” натяжение струны, р — ее линейная (погонная) плотность. Колебания предполагаются малыми, т. е. амплитуда мала по сравнению с длиной струны. Кроме того, уравнение (8.75) записано для случая свободных колебаний. В случае вынужденпых колебаний в правой части уравнения добавляется некоторая функция 7'(х, ~), характеризующая внешние воздействия.
Сопротивление среды колебательному процессу не учитывается. Простейшей задачей для уравнения (8.75)' является задача Коши: в начальный момент времени задаются два условия (количество условий равно порядку входящей в.уравнение производной по 1): 01~=о = С7(х, О) = (р(х), дЕУ/д~1с=о = 1~(х). (8.76) 274 Гл. 8. уРАВнения с чАстными пРОизВОдными функции Г по 1 и х конечно-разпостными соотношениями с помощью значений сеточной функции и; в узлах сетки (х;, 1;): и~ ' 1 — 2и~+ и~ 1 и~ — 2и~ + и1 1 1 г' 2 1~1 1 1-1 =а 2 ~2 1=1,2, ...,1 — 1. 1=1, 2, ...,1 — 1, Отсюда можно найти явное выражение для значения сеточной функции на у+1-м слое: и',+~ = 2 (1 — Х) и,' + Х (и';+1 + и;',) — и', ', Х = а2Т2/й2 (8.78) Здесь, как обычно в трехслойных схемах, для определения неизвестных значений па 1'+1-м слое нужно знать решения на у-м и 1 — 1-м сло- ~,у+1 ях.
Поэтому начать счет по формулам (8.78) можно лишь 1-1,/' для второго слоя, а решения на нулевом и первом слоях должны быть известны, Они находятся с помощью начальных условий (8.76). ~,/-1 На нулевом слое имеем Рис. 64. Шаблон явной схемы (8.79) Для получения решения на первом слое воспользуемся вторым начальным условием (8.76). Производную дЕПдй заменим конечно-разностной аппроксимацией. В простейшем случае полагают иа (8.80) „! Из этого соотношения можно найти значения сеточной функции на первом временном слое: й =- и,'+ т~(х;), ~ = О, 1,..., Х.
(8.81) Отметим, что аппроксимация начального условия в виде (8.80) ухудшает аппроксимацшо исходной дифференциальной задачи: погрешность аппроксимации становится порядка 0(й'+ т), т. е, первого порядка по т, хотя сама 5 э. уРлвнения ВтОРОРО пОРядкА 275 схема (8.78) имеет второй порядок аппроксимации по Ь и т, Положение можно исправить, если вместо (8.81) взять более точное представление и~=и~+ т —, + —. 1 о з~7 т~ д~~'? (8.82) ~~,0 2й (.
Разностная схема (8.78) с учетом (8.83) обладает погрешностью аппроксимации порядка 0(Ь'+ т'). При решении смешанной задачи с граничными условиями вида (8.77), т. е. когда на концах рассматриваемого отрезка заданы значения самой функции, второй порядок аппроксимации сохраняется.
В этом случае для удобства крайние узлы сетки располагают в граничных точках (х, = О, х, = 1) . Однако граничные условия могут задаваться и для производной. Например, в случае свободных продольных колебаний стержня на его незакрепленном конце задается условие д1//дх1.=~ = О. (8.84) Если это условие записать в разностном виде с первым порядком аппроксимации, то погрешность аппроксимации схемы станет порядка 0(Ь+ т'). Поэтому для сохранения второго порядка данной схемы по Ь необходимо граничное условие (8.84) аппроксимировать со вторым порядком. Рассмотренная разностная схема (8.78) решения задачи (8.75) — (8.77) условно устойчива. Необходимое и достаточное условие устойчивости имеет вид ат/Ь ( 1.
(8.85)' Следовательно, при выполнении этого условия и с учетом аппроксимации схема (8.78) сходится к исходной задаче со скоростью 0(Ь'+ т'). Данная схема часто используется в практических расчетах. Она обеспечивает 18" Вместо дУ/д~ нужно взять $(х), Л выражение для второй производной можно найти с использованием уравнения (8.75) и первого начального условия (8.76). Получим Тогда (8.82) принимает вид 2 2 и', = и'; + тф(х;) 1- '— , ~р" (х;), ~ = О, 1,..., 1, (8,83) я6 Гл. з.
уРАВнения с чАстныъп1 пРОизВОдными ,/-1 ~ — 1 ~' ь+1 Рис, 66. Шаблон неявной схемы Рис. 65. Блок-схема решения волнового уравнения Построим простейшую неявную схему. Вторую производную по ~ в уравнении ~8.75) аппроксимируем, как и Ранее, по трехточечному шаблону с помощью значений приемлемую точность получения решения У(х, ~), которое имеет непрерывные производные четвертого порядка. Блок-схема решения задачи (8.75) — (8.77) с помощью данной явной разностной схемы приведена на рис. 65, Здесь приведен простейший алгоритм, когда все значения сеточной функции, образующие двумерный массив, по мере вычисления хранятся в памяти ЭВМ, а после решения задачи происходит вывод результатов.
Можно было бы предусмотреть хранение решения лишь на трех слоях, что сэкономило бы память. Вывод результатов в таком случае можно производить в про. цессе счета (см. рис. 56). Существуют и другие разностные схемы решения волнового уравнения, В частности, иногда удобнее использовать неявные схемы, чтобы избавиться от ограничений на величину шага, налагаемых условием (8.85), Эти схемы обычно абсолютно устойчивы, однако алгоритм решения задачи и программа на ЭВМ усложняются. /+1 Я 3. УРАВНЕНИЯ ВТОРОГО ПОРЯДКА 277 сеточной функции па слоях 7' — 1, у, 7'+ 1.
Производную по т заменяем полусуммой ее аппроксимации на 7+1-м и у — 1-м слоях (рис. 66): и~+~ — 2и~ + и~ 1 ~ и~+1 — 2и~+~+и 7+ и~ 1 — 2и~ 1+ и ~+1 "1 + "~ — 1 "1+1 "1 1 ~-1 (8.86) Из этого разностного соотношения можно получить систему уравнений относительно неизвестных значений сеточной функции на у+1-м слое (у = 1, 2, ...): Х.и,'~1 — (1+ 2Х)и'„~'+ Хи';+1~ = (1+ 2Ци', 1— — Х ~и';+', + и,' ~1) — 2и';, (8.87) Х = а'т'!У, ~ = 1, 2, ..., 1 — 1, Полученная неявная схема устойчива и сходится со скоростью О (Ь' + т') .
Систему линейных алгебраических уравнений (8.87) можно, в частности, решать методом прогонки. К этой системе следует добавить разпостные начальные и граничные условия. В частности, выражения (8.79), (8.81) или (8.83) могут быть использованы для вычисления значений сеточной функции на нулевом и первом слоях по времени.
При наличии двух или трех независимых пространственных переменных волновые уравнения соответственно имеют вид д'-'~Т (д т! д2~7 д2~1 1 д1 ~ дл~ ду2 дг Для них также могут быть построены разностные схемы по аналогии с одномерным волновым уравнением. Разница состоит в том, что нужно аппроксимировать производные по двум илп трем пространственным переменным, что, естественно, усложняет алгоритм и требует значительно больтпих объемов памяти и времени счета. Подробнее двумерные задачи будут рассмотрены ниже для уравнения теплопроводностп.
2. Уравнение теплопроводности. Ранее (см. $ 1, и. 2) Уже были построены разностные схемы решения смешан- я78 гл. з. уРлвнепия с члстньп1и пРоизводными ной задачи для одномерного уравнения теплопроводностп: — = а —,, 0(х(1, ~) О, (8.88) дх Г(х, О) = ср(х), Е/(О, Х) = Ф (Е), 1/(1, Е) = Ф (Е). (8.89) (8.90) Были получены две двухслойные схемы — явная и неяв1+1 ная.
В явной схеме значения сеточнои функции и, = и(х;, ~;+1) на верхнем 7'+ 1-м слое вычислялись с помощью решения на нижнем слое: и',+1 = Хи',+1 + (1 — 2Х) и', + Хи;' Х = ат/й2, 1 = 1, 2, „ 1 — 1. Данная схема сходится к решению исходной задачи со скоростью О (6' + т) . Она устойчива при выполнении условия Х = ат/й' = 1/2. (8.92) При Х =1/2 получается особенно простой впд рекуррентных соотношений (8.91): и';'' = (и'; „+ и,' 1)/2, (8.93) Условие устойчивости (8.92) накладывает ограничение на шаг по ~ при выбранном значении а, что характерно для явных схем.
Построим простейшую неявную схему. Производную д'-СЧдх' аппроксимируем на ~+ 1-м слое: фу и1+ — 2и1+~ + и1+ 1+1 1 1 — 1 дх ~2 В этом случае получается трехдиагональная система линейных алгебраических уравнений относительно значений сеточной функции в узлах верхнего слоя, которая имеет вид Хи'1~1~ — (1 + 2Х) й~~ + Хи~~~1~ — — — ип 1 = 1, 2,...-, Х вЂ” 1. (8.94) Эта система мо'кет быть решена методом прогонки. При атом разностное решение сходится к точному со вторым порядком по 6 и с первым порядком по т, Схема (8.94) безусловно устойчива.
5 3. УРАВнениЯ втОРОГО пОРЯДкА 279 Выражения (8.91) и (8.94) определяют значения сеточной функции во внутренних узлах, а решение па границе находится из граничных условий, которые зависят от конкретной постановки задачи. В частности, если граничные условия имеют вид (8.90), то на каждом слое и~= ф,Я, и~=~,.(~,).