Fletcher-1-rus (1185917), страница 14
Текст из файла (страница 14)
Согласно интуитивному представлению, решение 'должно плавно изменяться в промежутках между узловыми точками. В принципе решение в некоторой точке (х,, 1с), не совпадающей с узлом, может быть построено путем интерполяции значений, соответствующих решению для окружающих узловых точек. Как мы ::НЗ !=яд 1ег 1=3 гь~щ п=! и= О Дх гйх (1-!)йх [1-1)бм Рис. 3.2. Дискретная сетка. увидим в дальнейшем (см.
$ 5.3), этот интерполяциониый процесс является автоматически встроенной частью метода конечных элементов. Ясно, что если уравнение (3.1) является дифференциальным уравнением в частных производных, то уравнение (3.4) алгебраическое. Если посмотреть на рис. 3.2, то с помощью уравнения (3.4) можно получить формулу (или алгоритм) для определения неизвестного значения Т~+~ в зависимости от известных значений Т! на п-м временном слое, т.
е. найти выражение Т~+' = Т"; + и, (Т~, — 2Т~ + Тр,1). (3.5) Чтобы построить полное численное решение на временнбм слое (и+ 1), следует применить формулу (3.5) ко всем узлам 1 = 2, ..., У вЂ” 1, предполагая при этом, что граничные условия Дирихле обеспечивают данные о значениях Т~~+' и Тт+ . 3.1.2. Производные по пространству Мы уже имели возможность видеть, как конечно-разиостный метод дискретизирует производные по пространству, например как величина д'Т/дх' в уравнении (3.1) превращается $3.!. Дискретизация 73 в выражение (Т! ! — 2Т";+ Т";+!))/ах, входящее в уравнение (3.4).
Метод конечных элементов (см. 3 5.3) позволяет достичь дискретизации за счет первоначального предположения о том, что локальное решение для Т допускает интерполяцию. Далее это локальное решение подставляется во взятый с соответствующим весом интеграл от всех членов исходного уравнения.
Типичный результат такого действия при использовании линейных элементов на равномерной сетке имеет следующий вид: (Лх/Б) (7"'»»! — Т/и !) (2дх/3)(Т"+! — Т") (Ьх/Б)(Т".+»! — Т",) Ы Ы + Ы а (Т", — 2ТЯ! + Т~~+!) Ьх (3.8) 3./.3. Производные по времени При замене дТ/д/ в уравнении (3.1) на одностороннее разностное выражение (Т";~' — Т";))/а/ используется информация только с временных слоев и и и+ 1. В силу того что время из- Если разделить обе части уравнения (3.6) на Лх, то результат получится аналогичным по своей структуре выражению (3.4).
Вывод уравнения (3.6) приводится в п. 5.5.!. В спектральном методе (см. $5.6) используются предположения, аналогичные предположениям метода конечных элементов, за исключением того, что предполагаемая форма решения для Т имеет вид 1 Т = ~ а;(Г) ф;(х), (3.7) / ! где аг(/) — неизвестные коэффициенты, определяемые в процессе построения решения, а фг(х) — известные функции х (см.
2 5.6). Окончательная форма дискретного представления уравнения прн использовании спектрального метода может быть записана как я+! я ! — ~Х~' р аа ! ! где р; — известные алгебраические коэффициенты. Какой бы метод ни применялся для осуществления дискретизации, процесс последующего решения уравнений, например с использованием выражения (3.5), применяется непосредственно к алгебраическим уравнениям и является в некотором смысле не зависящим от способа дискретизации.
76 Гл. 3. Предварительные сведения о приемах вычислений меняется только в положительном направлении, информация с временных слоев с номерами и + 2 и больше нам недоступна. В уравнении (3.4) пространственная производная д'Т/дх' аппрокснмировалась на временном слое и, в силу чего получился явный алгоритм для определения Т~+~. Если бы пространственные члены аппроксимировались на временнбм слое п + 1, то получился бы следующий неявный алгоритм: — зТ,"+~ ~+ (1+ 2з) Т~+ — зТД~ ~= Т~ (3.9) Алгоритм (3.10) является более точным, чем формула (3.5), однако и более сложным, так как охватывает данные не с двух слоев, а с трех: и — 1, и, и+ 1. Этот частный вариант алгоритма оказывается непрактичным, так как он неустойчив (см.
п. 7.1.2). Однако в применении к другим уравнениям, например к уравнению конвекции (см. $ 9.1), использование центральных разностей по времени приводит к устойчивым алгоритмам. Существует некоторый альтернативный подход к дискретизации производных по времени, построенный на связи с обыкновенными дифференциальными уравнениями. Уравнение (3.1) можно записать в виде оТ вЂ” =ЛТ, ш (3.! !) где /, — дифференциальный оператор ад'/дха.
После дискретизации по пространству уравнение (3.11) принимает вид дТ7 — /.аТп где /., — алгебраический оператор, полученный в результате пространственной дискретизации. Совокупность уравнений (3.12), записанных для каждого из узлов, представляет собой систему обыкновенных дифференциальных уравнений по времени.
Отсюда следует, что к уравнениям (3.12) может быть в где з = ссЛ!/Лх'. Уравнение (3.9) можно решить, если рассматривать его как часть системы уравнений, полученной из (3.9) путем записи данного уравнения для всех узлов 1' = 2, ... ..., 1 — 1 (см. $ 7.2). Если в уравнение (3.1) подставить формулу с центральной разностью (Т/~ — Т7 )2 Лг, то можно построить следуюший явный алгоритм для определения Т";+: Т~+' — — Т," ' + (2а Л//Лх ) (Т"; 1 — 2Т; + Т~.ь|). (3.10) 4 зтд Аппроксимация производных 77 принципе применена любая методика интегрирования обыкновенных дифференциальных уравнений (см, [сзеаг, 19711).
Вообще говоря, результат интегрирования можно записать в форме (3.13) Вычисление интеграла в (3.13) по схеме Эйлера дает выражение т,"" = т,"+ ((..т,1" Д1, (3.14) тождественное выражению (3.5), если 7, — конечно-разностный оператор, фигурирующий в уравнении (3.4). Вследствие ошибок, связанных с введением оператора пространственной дискретизации Е„использование формулы интегрирования очень высокого порядка для подстановки в (3.13) обычно не дает каких-либо преимушеств. Некоторые из наиболее эффективных алгоритмов решения подобных задач рассматриваются в $ 7.4. $3.2. Аппроксимация производных В ф 3.1 были приведены типичные алгебраические формулы, позволяющие проиллюстрировать технику дискретизации производных, подобных д'Т/дх'.
Здесь демонстрируется процесс построения таких алгебраических формул, сначала при помощи разложения в ряд Тейлора, а потом — при помощи некоторой общей процедуры. В каждом случае нетрудно оценить ошибку, обусловленную процессом дискретизации. 8.2.1. Разложение в ряд Тейлора В качестве первого шага по пути к разработке алгоритма расчета тех значений Т, которые могут фигурировать в уравнении (3.1), выразим производные 7 по пространству и времени в узле (1, и) через значения Т в близлежащих узлах. Для реализации этого процесса воспользуемся разложениями в ряды Тейлора типа (3.15) м 0 (3.16) ы О 7В Гл.
3. Предварительные сведения о приемах вычислений Эти ряды могут быть оборваны после любого числа членов, причем возникающая в результате ошибка (ошибка аппроксимации) определяется в основном следующим членом разложения, если только Лх « 1 в разложении (3.15) или если Л(«1 в разложении (3.16). Следовательно, можно написать Тте|=Т;+ Лх[ — 1 + — [ —,~ + 0(Лха). (3.!7) Интерпретация остаточного члена 0(Лх') сводится к тому, что, как предполагается, существует некоторая положительная постоянная К, зависящая от Т, такая, что разность между значением Т в узле (1 + 1, а) и первыми тремя членами правой части (3.17), рассчитанными в узле (1, н) оказывается численно меньше величины КЛх' для любых достаточно малых Лх.
Ясно, что связанная с такой аппроксимацией ошибка будет быстро уменьшаться по величине по мере уменьшения Лх. Обращаясь к выражению (3.17), нетрудно видеть, что конечно-разностное представление дТ/дх можно получить непосредственно. Действительно, перегруппировка членов в (3.17) дает ~ =(Тт;~ — Т)))Лх — 05Лх[д '1 + '... (3.18) Очевидно, что использование конечно-разностной подстановки (3.19) обеспечивает точность 0(Лх). Дополнительные члены, фигурирующие в правой части (3.18), называются в дальнейшем ошибкой аппроксимации.
Выражение в правой части формулы (3.19) называется аппроксимацией с разностью вперед. Если разложить величину Т~", в ряд Тейлора в узле (1, и) и перегруппировать члены, то можно построить аппроксимацию с разностью назад: ~дТ1 Тг — Т~ (3.20) Как и (3.19), эта аппроксимация вносит ошибку 0(Лх). Геометрическая интерпретация выражений (3.19) и (3.20) дается на рис. 3.3. Формула (3.19) оценивает (дТ/дх)ч через наклон линии ВС, тогда как формула (3.20) дает ту же оценку посредством наклона АВ.