ЧМ (ЭКТ-3) / Лабы / Всякие сделанные варианты / еще / Лаба 7 (ДЗ) / lab07(var7) / Lab07
.docЛабораторная работа №7
(Домашнее задание)
Решение дифференциального уравнения эллиптического типа.
Найти с помощью разностных методов решение дифференциального уравнения в частных производных:
![]()
,
.
Графически
отобразить полученное решение
.
7.
![]()

Данное уравнение относится к уравнениям эллиптического типа.
Исследование стационарных процессов различной физической природы часто приводит к необходимости решать уравнения эллиптического типа. Простейшим и наиболее распространенным уравнением эллиптического типа является уравнение Пуассона:
Однородное уравнение Пуассона (при f(x,y)=0) называется уравнением Лапласа. Таким уравнением описываются явления электростатики и магнитостатики. В частности, подобным уравнением описывается потенциал U(x,y) электрического поля, образованного объемным зарядом частиц плотностью f(x,y).
Подобной же установке удовлетворяет задача стационарного двумерного распределения температуры в пластине конечной толщины, если внутри пластины распределены по заданному закону источники (стоки) тепла, описываемые функцией f(x,y) , a на границах поддерживается заданная температура.
Данное уравнение можно интерпретировать как описание распределения температуры в пластине конечной толщины, на всех краях которой поддерживается постоянная во времени температура.
Применение метода сеток при решении уравнения Пуассона.
Метод сеток состоит в сведении решения краевой задачи к решению системы алгебраических уравнений для так называемой сеточной функции. Для этого область непрерывного изменения аргумента заменяется областью дискретного его изменения. Дифференциальный оператор заменяется некоторым разностным оператором. Краевые и начальные условия заменяются на соответствующие разностные аналоги. Выберем в области, где ищется решение дифференциального уравнения, некоторое конечное множество точек, в которых мы будем искать решение уравнения. Ясно, что чем больше мы возьмем таких точек, тем точнее решим уравнение. Множество таких точек называется сеткой, отдельные точки - узлами сетки. Функция, определенная в узлах сетки, называется сеточной функцией.
Аппроксимируем данное уравнение, используя пятиточечный шаблон "крест:
( i, j+1)
|
(i-1,j)--- (i,j) ---(i+1,j)
|
(i,j-1)
Если известна искомая функция U(x,y) в точках :
(i-1,j) ; (i+1,j) ; (i,j+1) ; (i,j-1),то значение U(x,y) в точке (i,j) может быть приближенно найдено следующим образом:
где
![]()
Для случая квадратного разбиения. Это уравнение должно выполняться для всех внутренних узлов сетки. Для того, чтобы система стала полностью определенной надо дополнить ее уравнениями, полученными при аппроксимации начальных и граничных условий.
Текст программы:
clear;
clc;
%---------- Входные данные
V1=0;
V2=10;
a=2;
b=1;
%---------- Сетка
h=0.01;
x=0:h:1;
y=0:h:1;
%---------- Задание f(i,j)
for i=1:101
for j=1:101
f(i,j)=10*exp(-1*((x(i)-0.75).^2+(y(j)-0.75).^2)/0.01);
end;
end;
%----------- Решение при помощи шаблона типа креста
u=zeros(101,101);
u(1,:)=V2;
u(:,1)=V2;
for i=1:51
u(101,i)=V2;
end;
for k=1:100000
for i=2:100
for j=2:100
u(i,j)=(a*(u(i+1,j)+u(i-1,j))+b*(u(i,j+1)+u(i,j-1))-h*h*f(i,j))/(2*(a+b));
end;
end;
end;
mesh(x,y,u');
Результат выполнения программы:
