Это уравнение описывает некоторое установившееся стационарное состояние в пространстве (x,y) в некоторой области G (16.1):
(x,y)Î G. (16.1)
Если область G является замкнутой и на границе этой области G задается значение искомой функции:
U(x,y) =j (x,y), (x,y) Î G
то такая задача называется задачей Дирихле.
Для замены этой задачи разностной задачей наложим на область G сетку из прямых, параллельных осям координат с шагом h >0. Точки пересечения этих прямых будут образовывать узлы . Узлы, которые вместе со своими четырьмя ближайшими соседями будут принадлежать области G, называются внутренними узлами. Граничные узлы – это совокупность точек, у которых хотя бы одна из ближайших точек лежит вне области G.
Внутренние узлы будут образовывать некоторую сеточную область Gc, а граничные некоторую сеточную область Гс.
Для замены дифференциального уравнения заменим производные центральными конечными разностями:
Тогда вместо уравнения (16.1) будем иметь:
Следовательно, U(x,y) можно выразить в следующем виде:
|
|
Однако, чтобы иметь возможность оценить точность такой замены, следует идти по несколько иному пути, используя для получения конечно-разностного уравнения формулу Тейлора:
При этом можно воспользоваться разными схемами.
Первая схема. Рассмотрим точку A и ближайшие к ней соседние точки B,C,D,E с координатами A=(x,y), B=(x-h,y), C=(x+h,y), D=(x,y+h), E=(x,y-h). Согласно формуле (4) при k =4, s=h получим:
Здесь -значения производных функции U(x,y) в точке (x,y), а - значения производных в некоторых промежуточных точках. Складывая эти значения получаем:
,
где остаточный член R определяется равенством:
т.е. имеет четвертый порядок малости .
Заметим, что выражение является оператором Лапласа:
,
поэтому из выражения можно получить выражение:
,
которое называется первой основной конечно-разностной формой оператора Лапласа. Путем приравнивания этого выражения нулю и отбрасывания члена O (h4) можно получить соотношение.
Вторая схема. Рассмотрим дальние соседние точки около точки:
A=(x,y). Это будут точки B=(x-h,y+h), C = (x+h,y+h),
D=(x+h,y-h), E=(x-h,y-h).
Как и в первой схеме воспользуемся выражением (3) для разложения функции в ряд Тейлора в точках B,C,D,E:
Здесь некоторые промежуточные точки. Сложив эти выражения будем иметь:
,
откуда можно получить вторую конечно-разностную форму оператора Лапласа:
Отбрасывая остаточный член получаем уравнение вида
.
Таким образом, в результате применения двух различных схем установлено, что любая внутренняя точка может быть вычислена как среднеарифметическое своих дальних или ближних соседних точек.
|
|
Соотношение справедливо для каждой точки области G, поэтому оно будет справедливо для любой внутренней точки (xi,yj)Î G c. Введя обозначение и получим систему уравнений:
;
Дополним эту систему уравнениями для граничных точек:
.
Полученная система линейных уравнений, может быть решена любым из методов приведенных в лекции 2, но поскольку эта система имеет достаточно большую размерность (при сетке 105 10 имеем 100 уравнений) и очень разрежена (в каждом из уравнений участвуют не более пяти неизвестных), для решения таких систем рекомендуется использовать итерационные методы, а алгоритм построить так, чтобы не выполнять действий над нулевыми элементами матрицы коэффициентов. Простейшим способом будет задание некоторого начального приближения для внутренних точек и вычисление следующего приближения методом простых итераций:
,
При использовании итерационных методов необходимо задавать начальное приближение для значений всех внутренних узлов. От близости этого приближения к истинному решению задачи зависит время расчета. Для уменьшения этого времени используют подход предложенный Либманом и заключающийся в следующем.
Строится сетка с достаточно большим шагом и решается система уравнений небольшой размерности. В результате находится некоторое грубое приближение к решению задачи в узлах сетки. Для получения более точного решения шаг сетки уменьшается вдвое и решается система вчетверо большей размерности. Для сокращения времени расчета в качестве начального приближения для системы с мелкой сеткой используются значения, полученные в результате решения системы с крупной сеткой, а в тех узлах мелкой сетки, которые не совпадают с узлами крупной сетки используется аппроксимация.. Такой процесс деления шага сетки можно выполнить несколько раз, получая все более точное решение поставленной задачи.