- Введение
- Программа численного решения на равномерной по каждому направлению сетки задачи Дирихле для уравнения конвекции-диффузии
- Численное решение уравнений в частных производных эллиптического типа на примере уравнений Лапласа и Пуассона
- 6.1. Постановка задачи. Простейшая разностная схема «крест». Устойчивость схемы «крест»
- Численный метод решения уравнения пуассона
- 🎦 Видео
Введение
Наиболее распространённым уравнением эллиптического типа является уравнение Пуассона.
К решению этого уравнения сводятся многие задачи математической физики, например задачи о стационарном распределении температуры в твердом теле, задачи диффузии, задачи о распределении электростатического поля в непроводящей среде при наличии электрических зарядов и многие другие.
Для решения эллиптических уравнений в случае нескольких измерений используют численные методы, позволяющие преобразовать дифференциальные уравнения или их системы в системы алгебраических уравнений. Точность решения определяется шагом координатной сетки, количеством итераций и разрядной сеткой компьютера [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). Для сеточного уравнения Пуассона оптимальное значении параметра релаксации находится аналитически, а итерационный метод сходиться при .
- Приведено решение эллиптической задачи на Python с гибкой системой установки граничных условий
- Показано что метод релаксации имеет оптимальный диапазон () параметра релаксации.
Ссылки:
- Рындин Е.А. Методы решения задач математической физики. – Таганрог:
Изд-во ТРТУ, 2003. – 120 с. - Вабищевич П.Н.Численные методы: Вычислительный практикум. — М.: Книжный дом
«ЛИБРОКОМ», 2010. — 320 с.
Видео:Кобельков Г. М. - Численные методы. Часть 2 - Численные методы для эллиптических уравненийСкачать
Численное решение уравнений в частных производных эллиптического типа на примере уравнений Лапласа и Пуассона
Среди всех типов уравнений математической физики эллиптические уравнения с точки зрения вычислителей стоят особняком. С одной стороны, имеется хорошо развитая теория решения эллиптических уравнений и систем. Достаточно легко доказываются теоремы об устойчивости разностных схем для эллиптических уравнений. Во многих случаях получаются априорные оценки точности расчетов и числа итераций при решении возникающих систем сеточных уравнений . С другой стороны, системы сеточных уравнений , возникающие при решении уравнений методами сеток, имеют большую размерность и плохо обусловлены. Для решения таких систем разработаны специальные итерационные методы .
6.1. Постановка задачи. Простейшая разностная схема «крест». Устойчивость схемы «крест»
Будем рассматривать двухмерное уравнение Пуассона
в единичном квадрате с краевыми условиями первого рода на границе расчетной области
( — заданная на границе функция ).
В случае прямоугольной области граничные условия удобно записать в следующем виде:
Для простоты выкладок введем равномерную расчетную сетку с узлами <xm, yl> , m, l = 0, 1, . , M с равным количеством шагов по каждому пространственному направлению, сеточную область D — совокупность всех узлов сетки, включая граничные, и сеточную функцию < uml >. В этом случае шаги по координатам предполагаются равными. В случае неравных шагов по каждому направлению полученные результаты не изменятся, а запись уравнений станет более громоздкой.
Выбираем простейший пятиточечный шаблон разностной схемы «крест» . На этом шаблоне аппроксимирующее разностное уравнение легко выписать. Для этого производные заменим вторыми разностями:
где h — шаг по координатам, или в операторной форме
Эту же разностную схему можно записать в каноническом виде для разностных схем для эллиптических уравнений:
Такую каноническую запись не следует путать с канонической формой записи итерационного метода, которая встретится ниже.
Такая схема обладает вторым порядком аппроксимации по обеим координатам. Это легко показать, применяя разложение в ряд Тейлора функции — проекции точного решения на сетку — вплоть до членов четвертого порядка включительно. Проведем такое разложение для одного из операторов, стоящих в данном разностном уравнении:
Здесь учтено разложение проекции точного решения в ряд Тейлора
и аналогичное разложение для um — 1.
Для рассматриваемого двухмерного уравнения получим выражение для главного члена невязки
Рассмотрим устойчивость полученной схемы. Отметим, что методы исследования на устойчивость , применяемые для эволюционных (зависящих от времени) уравнений, здесь не работают. Действовать приходится на основе определения устойчивости.
Сформулируем и докажем две леммы, которые облегчат процедуру доказательства устойчивости разностной схемы.
Видео:Практическое занятие. Численное решение уравнений Лапласа и ПуассонаСкачать
Численный метод решения уравнения пуассона
Глава 5. Решение дифференциальных уравнений
5.9 Решение эллиптических уравнений (Лапласа и Пуассона)
С помощью двух встроенных функций, multigrid и relax , можно решить простейшие случаи уравнения Пуассона. Это уравнение очень часто используется в технике, например, для описания полей напряжений и деформаций в плоской задаче теории упругости, в задачах теплопроводности, гидроаэродинамики, электростатики. В MathCAD для численного решения уравнения Пуассона используется метод конечных разностей.
Уравнение Пуассона имеет вид
.
Если правая часть уравнения равна нулю, такое уравнение называется уравнением Лапласа
.
На квадратной области уравнение Пуассона представляется в виде
.
Численное решение ищется в MathCAD только на квадратной области, состоящей из ( n +1) ( n +1) точек. Поэтому граничные условия должны быть определены пользователем для всех четырех сторон квадрата. Самый простой ( и наиболее часто используемый) вариант – это нулевые граничные условия (уравнение Лапласа). В таком случае можно использовать функцию multigrid .
Обращение к функции:
Multigrid ( M , n cycle ),
где M – квадратная матрица размером 1 2 n , которая содержит значения правой части уравнения Пуассона в соответствующей точке квадратной области; n cycle – число циклов на каждом уровне итерации функции multigrid . Значение n cycle =2 обычно дает хорошую аппроксимацию решения.
Пример использования функции multigrid приведен на рис. 5.21.
Обнуление предыдущих значений М
Обнуление матрицы правых частей уравнения
Три точечных источника
Значения правой части уравнения Пуассона
Рис. 5. 21 Решения уравнения Лапласа с помощью функции multigrid
Если граничные условия по сторонам квадрата ненулевые, необходимо использовать функцию relax .
Обращение к функции:
relax(a, b, c, d, f, u, rjac),
где a , b , c , d , e – квадратные матрицы одинакового размера, содержащие коэффициенты аппроксимирующего уравнения; f – квадратная матрица, содержащая значения правой части уравнения в каждой точке области, где ищется решение; u – квадратная матрица, содержащая граничные значения решения на границе квадратной области и начальное приближение для решения внутри области; rjac – спектральный радиус итераций Якоби. Это число между 0 и 1, которое управляет сходимостью процесса релаксации.
Использование этой функции требует глубокого знания метода конечных разностей для составления указанных матриц. Пример использования функции relax приведен на рис. 5.22 и 5.23.
Определим размеры сетки
Введем 5 квадратных матриц для коэффициентов a, b, c, d, e ,
входящих в сеточную аппроксимацию уравнения Пуассона
чем больше эти коэффициенты, тем меньше шаг решения,
тем точнее результат. Можно взять
Задает положение и интенсивность источника
Пусть во всех узлах значения правой части одинаковы
Граничные условия
на верхней границе
на нижней границе
по бокам
Поменяйте условия. Включите серые выражения.
Это аналог функции multigrid
Спектральный радиус Якоби r
Решение уравнения Пуассона
Рис. 5. 22 Решение уравнения Пуассона с помощью функции relax
Рис. 5. 23 Результаты решение уравнения Пуассона с помощью функции relax
🎦 Видео
9. Уравнение ПуассонаСкачать
Решение уравнения Пуассона методом верхней релаксацииСкачать
Кобельков Г. М. - Численные методы. Часть 2 - Численные методы для эллиптических уравненийСкачать
29. Адиабатический процесс. Уравнение ПуассонаСкачать
Формула ПуассонаСкачать
ЧК_МИФ_3_1_2_5 (L3) УРАВНЕНИЕ ПУАССОНАСкачать
6.1 Численные методы решения задачи Коши для ОДУСкачать
10 Численные методы решения нелинейных уравненийСкачать
ЧК МИФ 3 1 3 3 5 L4 Уравнение ПуассонаСкачать
Уравнение ПуассонаСкачать
7.2 Задача 1. Краевая задача для уравнения ПуассонаСкачать
14 Метод половинного деления Ручной счет Численные методы решения нелинейного уравненияСкачать
6-5. Алгоритм прогонкиСкачать
Метод Ньютона (метод касательных) Пример РешенияСкачать
Лекция №1.1 Явная и неявная схемы для уравнения теплопроводностиСкачать
6-2. Метод сетокСкачать
Билет №04 "Потенциал электростатического поля"Скачать
УМФ, 01.12, решение задач Лапласа и Пуассона в случае неоднородных граничных условийСкачать