Содержание
Основные понятия метода конечных разностей.
Построение сетки. Сеточные функции и сеточные аналоги норм.
Построение разностных схем. Порядок аппроксимации.
Метод прогонки.
Методы расщепления.
Методы конструирования граничных условий
Список использованной литературы
Основные понятия метода конечных разностей.
Для приближённого решения краевых задач теплопроводности широко применяется метод конечных разностей (метод сеток). Идея метода состоит в следующем.
Область непрерывного изменения аргументов заменяется расчетной сеткой – дискретным множеством точек (узлов). Вместо функции непрерывных аргументов вводятся функции дискретных аргументов – сеточные функции, определяемые в узлах сетки. Частные производные, входящие в дифференциальное уравнение и граничные условия, заменяются (аппроксимируются) разностными соотношениями.
Если рассматривать функцию целочисленного аргумента , где то можно образовать разности в точке первого порядка:
правую:
левую:
Обозначив получим , .
Тогда для разности второго порядка имеем:
Аналогично определяется разность го порядка:
В результате такой замены краевая задача в частных производных сводится к системе разностных уравнений, называемых ещё разностной схемой.
Если решение системы разностных уравнений существует и при измельчении сетки стремится к решению поставленной задачи (т.е. сходится), то это решение и является искомым приближённым решением краевой задачи. Несмотря на то что число неизвестных в этой системе алгебраических уравнений весьма значительно, решение её с точки зрения математических трудностей более просто, чем исходной задачи.
Построение сетки. Сеточные функции и сеточные аналоги норм.
Итак, заменим область непрерывного изменения аргументов искомой функции некоторым конечным множеством точек, лежащих в этой области. Это множество назовём разностной сеткой, сами точки – узлами сетки, а функции, определённые тем или иным способом на этой сетке, - сеточными функциями.
Расположение узлов сетки в области может быть произвольным и определяется спецификой решаемой задачи.
Рассмотрим примеры сеток:
1. В простейшем случае одномерной задачи можно ввести равномерную сетку. Для этого отрезок разобьём на равных частей точками , (рис. 1.1). Расстояние между узлами называется шагом сетки. Так как в рассматриваемом случае , то множество узлов представляет собой равномерную сетку на отрезке и обозначается Если отрезок разбит на частей произвольно взятыми точками, то получим неравномерную сетку с шагом , зависящим от номера и .
2. Сетка на плоскости. Пусть - прямоугольник. Отрезки и разобьём соответственно на и частей и через точки , , , проведём прямые, параллельные координатным осям. Множество точек образует сетку в прямоугольнике . Полученная сетка равномерна по каждой переменной. Если , тот сетка называется прямоугольной, в противном случае – квадратной. Если построить сетку неравномерной хотя бы по одной координате, то полученная сетка будет называться неравномерной. На рис. (1.2) дан пример прямоугольной сетки.
3. Приведём пример неравномерной изометрической сетки на плоскости. Область представляющую собой кольцо, покроем окружностями
где
и лучами где Множество узлов
и представляет собой сетку в рассматриваемой области
По аналогии с разностной сеткой для пространственных областей вводится сетка по временной переменной . В общем случае эта сетка может быть неравномерной и тогда - шаг сетки - зависит от номера шага. Узлы сетки определяются точками
Для решения, например, одномерной по пространственным координатам нестационарной задачи используют произведение сеток
представляющее собой пространственно-временную разностную сетку. Совокупность узлов сетки, лежащих на линии , называют -м слоем. Для простых областей, рассмотренных ранее, всегда можно ввести такую сетку, чтобы «крайние» естественные узлы сетки попадали на границу области. Эти узлы называются граничными, а остальные – внутренними. Граничные условия задачи следует задавать именно в этих граничных узлах. Однако для областей более сложной формы, например когда граница двумерной области криволинейна, «крайние» естественные узлы сетки далеко не все попадут на границу области. Тогда следует рассматривать два возможных подхода к заданию граничных условий: 1) ввести дополнительные узлы в точках пересечения линии сетки с границей и в них задать граничные условия; 2) границу области аппроксимировать ломаной, проходящей через ближайшие к границе естественные узлы и перенести каким-то образом заданные граничные условия на эту ломаную.
Вопрос оптимального выбора шага сетки и те самым количества её узлов является не простым. С одной стороны, чем большая требуется точность, с которой необходимо получить решение, тем более мелкий шаг желателен. С другой стороны, слишком мелкий шаг значительно увеличивает число неизвестных, что повышает требования к быстродействию и объёму памяти ЭВМ. Очевидно, должны существовать некоторые «оптимальные» сетки со сравнительно небольшим числом узлов. Такие сетки принято называть грубыми или реальными.
Построение разностной схемы проводится таким образом, чтобы получаемая в результате решения сеточная функция была как можно ближе к решению соответствующей краевой задачи теплопроводности. Так как функция есть функция дискретного аргумента, а функция - непрерывного, то они принадлежат разным функциональным пространствам.
Для определения степени близости этих функций обычно поступают так. Осуществляется переход от непрерывных функций к сеточным по правилу: значение сеточной функции в узле равно значению непрерывной функции в этой же точке. Например, в узле сетки одномерной нестационарной задачи
,
причём пространственные узлы сетки обозначают подстрочными индексами, а временные – надстрочными. В этом случае говорят. Что сеточная функция является проекцией функции на пространство сеточных функций.
Существуют и другие способы проектирования решения на пространство сеточных функций. Например, если функция имеет разрыв первого рода или только интегрируемая по , то полагают
Для оценки близости функции и рассматривается величина , где некоторая норма в пространстве сеточных функций. Нормы в сеточных пространствах вводят так, чтобы при стремлении шага сетки к нулю они переходили в нормы в обычных функциональных пространствах. Наиболее часто используются: сеточный аналог чебышевской нормы в пространстве непрерывных функций
;
сеточный аналог гильбертовой нормы в
,
где в одномерном случае; в двухмерном случае.
Тогда если при бесконечном дроблении сетки величина , то можно говорить о близости решений разностной задачи и краевой задачи .
Построение разностных схем. Порядок аппроксимации.
Решение исходной краевой задачи сводится, таким образом, к нахождению таблицы числовых значений функции в точках сетки на соответствующей области. Для приближённого вычисления этой таблицы необходимо дифференциальный оператор краевой задачи , заданный в классе непрерывного аргумента, приближённо заменить (аппроксимировать) разностным оператором , заданным на множестве сеточных функций. Разностный аналог, аппроксимирующий исходную краевую задачу, можно построить различными способами. Обычно требуют, чтобы построенная разностная схема на сравнительно грубых сетках обеспечивала необходимый уровень точности для получаемого приближённого решения. Поэтому при построении разностных схем важнейшее свойство исходных операторных уравнений должны сохраняться и у их аналогов.
Среди множества возможных конструктивных подходов к построению разностных аналогов для дифференциальных операторов выделим основные: 1) метод формальной замены производных конечно-разностными выражениями; 2) метод интегральных тождеств; 3) вариационные методы построения разностных схем; 4) метод неопределённых коэффициентов. Рассмотрим более подробно первый из вышеперечисленных методов.
Метод конструирования разностных схем с помощью замены производных конечно-разностными выражениями основан на использовании разложения в ряд Тейлора достаточно гладких функций, что, как правило, позволяет сохранить локальные свойства дифференциальных уравнений. Заменим каждую из производных, входящих в краевую задачу, разностным отношением, содержащим значение функции в нескольких узлах сетки, образующих некоторую конфигурацию. Такая совокупность узлов называется шаблоном. Узлы, в которых разностная схема записана на шаблоне, называют регулярными, а остальные узлы – нерегулярными. Рассмотрим возможные способы аппроксимации дифференциального оператора вида
,
определённого на множестве непрерывных в области функций, имеющих ограниченные производные до третьего порядка включительно. Пусть - равномерная сетка на отрезке . Тогда наиболее естественный способ замены производной основывается на определении производной как предела
.
Если зафиксировать в этом равенстве, то получим приближённую формулу для первой производной через конечные разности
.
Или в - м узле имеем правое разностное отношение
. (1)
Аналогично вводится левое разностное отношение
. (2)
Можно рассматривать и линейную комбинацию левого и правого разностных отношений
, (3)
где - любое вещественное число. При получим центральное разностное отношение
. (4)
При замене оператора разностными выражениями (1) – (4) допускается погрешность , называемая погрешностью аппроксимации оператора разностными оператором в точке .
Разностный оператор аппроксимирует дифференциальный оператор с порядком в точке , если
Факт аппроксимации в точке называют часто локальной аппроксимацией.
При решении задач теплопроводности необходимо уметь аппроксимировать и вторую производную
.
В отличие от первой производной, для аппроксимации которой достаточно двухточечного шаблона, для второй производной выберем трёх точечный шаблон . Тогда в - м узле получим разностный оператор
.
Пользуясь разложением в ряд Тейлора функции , получим, что порядок аппроксимации в этом случае равен двум.
В соответствии с этим можно рассмотреть две различные аппроксимации оператора в области (5)
; (6)
(7)
на шаблонах. Погрешность локальной аппроксимации оператора (5) разностными операторами (6) и (7) будет соответственно равна
.
Разностная схема называется явной (а) если в каждом уравнении системы содержится только одно значение функции на следующем слое. Это значение явно выражено через известные значения функции на данном слое.
Разностная схема называется неявной (б) если в каждом уравнении системы содержится несколько неизвестных значений функции на новом слое.
Метод прогонки.
Системе уравнений для определения разностного решения на - слое решается обычно методом прогонки. Рассмотрим метод прогонки на примере решения краевой задачи
, , , (8)
, , (9) .
Неявная разностная схема может быть представлена в виде:
; (10)
; ;
(11)
. (12)
При заданном начальном условии (12) для нахождения решения разностной схемы (10) – (12) на следующем слое нужно решить систему трёх точечных разностных уравнений (10) при граничном условии (11) и фиксированном значении параметра .
Специфика системы уравнений (10) заключается в том, что каждое -е уравнение содержит только три неизвестных: . Это и даёт возможность провести последовательное исключение следующим образом. Значение задано граничным условием (11). Поэтому уравнение (10) при содержит фактически лишь два неизвестных и . С помощью этого уравнения, при , исключаем и получаем соотношение между и и т. д. Пусть связь между и известна:
. (14)
Подставляя это выражение в - е уравнение (10), разрешим его относительно и получим
.
Запишем это соотношение в виде (14), положив
, (15)
Формулы (15) позволяют перейти от , к , при любом . Так как , то соответствии с (14) следует положить , и по рекурентным формулам (15) вычислить все , до , включительно. Поскольку нам известно из граничного условия (11) и равно , по формуле (14) находим все от до .
Таким образом, процесс решения системы линейных уравнений (10), (12) сводится к прямой «прогонке» коэффициентов и обратной прогонке по формуле (14) при заданном граничном условии (12) значении . Главное достоинство метода – его высокая экономичность. Рассмотренный метод является методом скалярной прогонки. При решении много мерных задач неявные схемы приводят к методу матричной прогонки. В этом методе в уравнении (14) , , - векторы, - матрица. Метод матричной прогонки используется крайне редко из-за его колоссальной трудоёмкости.
Методы расщепления.
Для решения многомерных задач теплопроводности пользуются локально-одномерными схемами или, что то же самое, методами расщепления. Рассмотрим - мерное уравнение анизотропной теплопроводности:
; ; . (16)
Если ввести промежуточных слоёв и на каждом слое составить схему, неявную по одному из направлений и явную по остальных, то окажется, что построенная схема обладает двумя нежелательными свойствами. Во-первых, схема условно устойчива и, следовательно, неэкономична. Во-вторых, она в силу своей несимметричности имеет лишь первый порядок аппроксимации по времени. Можно непосредственно построить симметричную неявную схему для уравнения (16)
, (17)
где разностные операторы можно аппроксимировать формулами типа
, (18)
. (19)
имеющими второй порядок аппроксимации по пространственным координатам. Несмотря на то что схема (17) в этом случае имеет погрешность аппроксимации , применение этой схемы нецелесообразно, так как она неэкономична.
Изложим идею метода расщепления. Пусть требуется найти решение задачи Коши для уравнения (16) на интервале времени . Предположим, что значения температуры известны на слое и надо определить функцию температуры на временном слое . Введём число промежуточных временных слоёв, равное размерности уравнения (17) по пространству. На каждом слое заменим в правой части уравнения (17) на и в левой части выберем шаг . Решение соответствующих разностных задач на промежуточных слоях обозначим через . Тогда вместо решения задачи (17) приходим к последовательному решению системы уравнений вида
; (20)
. (21)
Разностные уравнения (20) – одномерные, так как операторы одномерны. Поэтому схему (20), (21) называют ещё локально-одномерной. Каждое разностное уравнение представляет собой неявную симметричную схему. Значит, учитывая устойчивость схемы, можно заключить, что схема (20), (21) безусловно устойчива, так как ошибка начальных данных не будет возрастать при переходе со слоя на слой. Для решения уравнений (20) применяется метод прогонки, причём выполняются условия устойчивости прогонки, поэтому разностное решение существует и единственно.
Локально-одномерную схему можно построить и для уравнения с переменными коэффициентами
(22)
где
. (23)
Однако операторы , задаваемые формулой (23), не обладают свойствами коммутативности, поэтому схема типа (20), (21) для уравнения (22) будет иметь порядок аппроксимации . При этом разностные операторы должны строиться по образцу наилучшей одномерной схемы (21), (22). Такой же порядок аппроксимации будет иметь и чисто неявная локально-одномерная схема
; (24)
здесь , (25)
с разностными граничными условиями I рода
. (26)
Схему более высокого порядка аппроксимации можно построить, применяя симметричный алгоритм по времени. Для этой цели на интервале вводится полуцелый слой . С помощью симметричной схемы типа (20), (21) вычисляем значения приближённого решения на полу целом слое, затем по этой же схеме, только в обратном порядке, , перейдём на целый слой . Построенная таким образом схема имеет порядок аппроксимации . Схема (24) может быть использована при решении квазилинейных уравнений теплопроводности.
Методы конструирования граничных условий
Проанализируем вопросы, связанные с построением разностных схем в нерегулярных узлах сетки (на границе или вблизи нее).
Рассмотрим смешанную краевую задачу для одномерного уравнения теплопроводности с граничными условиями второго рода:
;
Граничные условия можно аппроксимировать односторонней разностью. Например, первое граничное условие (1.75) запишем в виде
(1.76)
(второе граничное условие (1.75) представляется аналогично и потому не рассматривается). Из (1.76) получим
. (1.77)
Однако невязка этого разностного уравнения равна
,
т.е. имеет меньший порядок малости, чем невязка разностной схемы (1.57) в регулярной точке, равная 0(t+h2).
Задача состоит в том, чтобы построить разностную схему в нерегулярных (граничных) узлах нормальной точности 0(h2).
Рассмотрим методы конструирования разностных граничных условий нормальной точности 0(h2) на примере краевой задачи (1.73) - (1.75).
Метод фиктивных точек. Этот метод очень нагляден, Введем вне отрезка 0 xl фиктивную точку х-1 = х0 - h и будем считать исходное уравнение (1.73) справедливым при х-1 (здесь рассматривается левое граничное условие, правое может быть записано аналогично). Тогда разностное уравнение можно записать и для п =0:
.
В левом граничном условии (1.75) производную заменим симметричной разностью
.
Из последних двух уравнений значение искомой функции исключаем фиктивной точке - y-1. Получаем разностное граничное условие
,
откуда
(1.78)
Невязка этого последнего разностного уравнения равна 0(h2), т.е. имеет более высокий порядок малости по сравнению с уравнением (1.77).
Метод уменьшение невязки. Этот метод менее нагляден, но более универсален. Рассмотрим построение по этому методу разностной схемы в граничной точке (левого граничного условия (1.75)). Представим U(х,t) с использованием формулы Тейлора:
(1.79)
На основании граничного условия (1.75) имеем ux(х0, t) = m1(t), а из уравнения теплопроводности uxx= ut . Подставляя эти в величины в формулу Тейлора (1.79), найдем
а заменив
,
получим формулу (1.78).
Учитывая большее число членов ряда Тейлора, можно сконструировать с помощью метода уменьшения невязки граничные условия не только нормальной, но и повышенной точности.
Список использованной литературы
1. Самарский А.А. Теория разностных схем. М., 1983.
2. Вазов В., Форсайт Дж. Разностные методы решения дифференциальных уравнений в частных производных. М., 1963.
3. Калиткин Н.Н. Численные методы. М., 1978.
4. Годунов С.К., Рябенький В.С. Разностные схемы. Введение в теорию. М., 1977.