Условие неймана для уравнения пуассона

Численные методы решения уравнений эллиптического типа

Введение

Наиболее распространённым уравнением эллиптического типа является уравнение Пуассона.
К решению этого уравнения сводятся многие задачи математической физики, например задачи о стационарном распределении температуры в твердом теле, задачи диффузии, задачи о распределении электростатического поля в непроводящей среде при наличии электрических зарядов и многие другие.

Для решения эллиптических уравнений в случае нескольких измерений используют численные методы, позволяющие преобразовать дифференциальные уравнения или их системы в системы алгебраических уравнений. Точность решения опреде­ляется шагом координатной сетки, количеством итераций и разрядной сеткой компьютера [1]

Цель публикации получить решение уравнения Пуассона для граничных условий Дирихле и Неймана, исследовать сходимость релаксационного метода решения на примерах.

Уравнение Пуассона относится к уравнениям эллиптического типа и в одномерном случае имеет вид [1]:

(1)

где x – координата; u(x) – искомая функция; A(x), f(x) – некоторые непрерывные функции координаты.

Решим одномерное уравнение Пуассона для случая А = 1, которое при этом принимает вид:

(2)

Зададим на отрезке [xmin, xmax] равномерную координатную сетку с шагом ∆х:

(3)

Граничные условия первого рода (условия Дирихле) для рассматривае­мой задачи могут быть представлены в виде:

(4)

где х1, xn – координаты граничных точек области [xmin, xmax]; g1, g2 – некоторые
константы.

Граничные условия второго рода (условия Неймана) для рассматривае­мой задачи могут быть представлены в виде:

(5)

Проводя дискретизацию граничных условий Дирихле на равномерной координатной сетке (3) с использованием метода конечных разностей, по­лучим:

(6)

где u1, un – значения функции u(x) в точках x1, xn соответственно.

Проводя дискретизацию граничных условий Неймана на сетке (3), по­лучим:

(7)

Проводя дискретизацию уравнения (2) для внутренних точек сетки, по­лучим:

(8)

где ui, fi – значения функций u(x), f(x) в точке сетки с координатой xi.

Таким образом, в результате дискретизации получим систему линейных алгебраических уравнений размерностью n, содержащую n – 2 уравнения вида (8) для внутренних точек области и уравнения (6) и (7) для двух граничных точек [1].

Ниже приведен листинг на Python численного решения уравнения (2) с граничными условиями (4) – (5) на координатной сетке (3).

Разработанная мною на Python программа удобна для анализа граничных условий.Приведенный алгоритм решения на Python использует функцию Numpy — u=linalg.solve(a,b.T).T для решения системы алгебраических уравнений, что повышает быстродействие при квадратной матрице . Однако при росте числа измерений необходимо переходить к использованию трех диагональной матрицы решение для которой усложняется даже для очень простой задачи, вот нашёл на форуме такой пример:

Программа численного решения на равномерной по каждому направлению сетки задачи Дирихле для уравнения конвекции-диффузии

(9)

Используем аппроксимации центральными разностями для конвективного слагаемого и итерационный метод релаксации.для зависимость скорости сходимости от параметра релаксации при численном решении задачи с /(х) = 1 и 6(х) = 0,10. В сеточной задаче:

(10)

Представим матрицу А в виде суммы диагональной, нижней треугольной и верхней треугольных матриц:

(10)

Метод релаксации соответствует использованию итерационного метода:

(11)

При \ говорят о верхней релаксации, при — о нижней релаксации.

На графике показана зависимость числа итераций от параметра релаксации для уравнения Пуассона (b(х) = 0) и уравнения конвекции-диффузии (b(х) = 10). Для сеточного уравнения Пуассона оптимальное значении параметра релаксации находится аналитически, а итерационный метод сходиться при .

  1. Приведено решение эллиптической задачи на Python с гибкой системой установки граничных условий
  2. Показано что метод релаксации имеет оптимальный диапазон () параметра релаксации.

Ссылки:

  1. Рындин Е.А. Методы решения задач математической физики. – Таганрог:
    Изд-во ТРТУ, 2003. – 120 с.
  2. Вабищевич П.Н.Численные методы: Вычислительный практикум. — М.: Книжный дом
    «ЛИБРОКОМ», 2010. — 320 с.

Написание конечно-разностной матрицы уравнения Пуассона с граничными условиями Неймана

Я заинтересован в решении уравнения Пуассона с использованием метода конечных разностей. Я хотел бы лучше понять, как написать матричное уравнение с граничными условиями Неймана. Будет ли кто-то пересмотреть следующее, это правильно?

Конечно-разностная матрица

может быть аппроксимировано конечно-разностным матричным уравнением,

где — матрица а и — (столбец) векторов, п × п у d 1 × N M ‘ role=»presentation»> M n × n ‘ role=»presentation»> N × N u ^ ‘ role=»presentation»> U ^ d ^ ‘ role=»presentation»> d ^ 1 × n ‘ role=»presentation»> 1 × N

Добавление граничного условия Неймана

Граничное условие Неймана обеспечивает известный поток на границе (здесь мы применяем его в левой части, где граница находится в ), x = 0 ‘ role=»presentation»> Икс знак равно 0

NB. Я изначально допустил ошибку здесь, подписал ошибку и не разделил на 2. Следующее было исправлено.

Обратите внимание на введение точки сетки за пределы исходного домена ( ). Этот член можно исключить, введя второе уравнение, u 0 — 2 u 1 + u 2 u 0 ‘ role=»presentation»> U 0

Уравнение возникает из-за наличия большей информации из-за введения новой точки сетки. Это позволяет нам записать двойную производную как границу в терминах используя центральную разность. ты 0 u 1 ‘ role=»presentation»> U 1 u 0 ‘ role=»presentation»> U 0

Часть, в которой я не уверен

Комбинируя эти два уравнения, можно исключить. Чтобы показать работу, давайте сначала перестроим для неизвестного, u 0 ‘ role=»presentation»> U 0

Далее они устанавливаются равными и переставляются в форму,

Я выбрал эту форму, потому что она такая же, как матричное уравнение выше. Обратите внимание, что члены делятся на как здесь, так и в исходном уравнении. Это правильный подход? ( Δ х ) 2 u ‘ role=»presentation»> U ( Δ x ) 2 ‘ role=»presentation»> ( Δ Икс ) 2

Наконец, используя это уравнение в качестве первого ряда матрицы,

Несколько заключительных мыслей,

  1. Является ли эта окончательная матрица правильной?
  2. Мог ли я использовать лучший подход?
  3. Есть ли стандартный способ написания этой матрицы?

Я думаю, что вы на правильном пути. Если вы исправите свои ошибки, это будет очень похоже на http://www.math.toronto.edu/mpugh/Teaching/Mat1062/notes2.pdf .

u 0 ‘ role=»presentation»> U 0

Отойдите назад и подумайте о проблеме на секунду. Определение уравнения Лапласа в основном гласит, что каждая точка является средним числом ее соседей. Это обычно визуализируется как резиновый лист, и помогает мне думать об этих вещах. (Пуассон похож на более или менее эластичные точки)

Когда вы указываете значение поверхности решения на самых внешних краях, вы «закрепляете» лист в пространстве в этих точках. Когда вы указываете лист по его производной по краям, существует любое количество решений, которые удовлетворяют уравнению, которое переводит лист в пространство, сохраняя при этом ту же фактическую форму и, следовательно, производные.

u 0 = 0 ‘ role=»presentation»> U 0 знак равно 0


источники:

http://qastack.ru/scicomp/5355/writing-the-poisson-equation-finite-difference-matrix-with-neumann-boundary-cond