Поместите свою задачу в правильную форму для решателей Partial Differential Equation Toolbox™ производными. Для получения дополнительной информации смотрите Уравнения, которые вы можете решить используя PDE Toolbox. Если вам нужно преобразовать вашу задачу в форму расхождения, см. «Поместите уравнения в форму расхождения».
Создайте PDEModel
контейнер модели. Для скалярных PDE, используйте createpde
без аргументов.
model = createpde();
Если N - количество уравнений в вашей системе, используйте createpde
с входным параметром N
.
model = createpde(N);
Импортируйте или создайте геометрию. Для получения дополнительной информации см. раздел «Геометрия и Mesh».
importGeometry(model,'geometry.stl'); % importGeometry for 3-D geometryFromEdges(model,g); % geometryFromEdges for 2-D
Просмотрите геометрию так, чтобы вы знали метки контуров.
pdegplot(model,'FaceLabels','on') % 'FaceLabels' for 3-D pdegplot(model,'EdgeLabels','on') % 'EdgeLabels' for 2-D
Чтобы увидеть метки модели 3-D, вам может потребоваться повернуть модель, или сделать ее прозрачной, или увеличить ее. См. раздел «Импорт файлов STL».
Создайте граничные условия. Для получения дополнительной информации см. раздел «Задание граничных условий».
% 'face' for 3-D applyBoundaryCondition(model,'dirichlet','face',[2,3,5],'u',[0,0]); % 'edge' for 2-D applyBoundaryCondition(model,'neumann','edge',[1,4],'g',1,'q',eye(2));
Создайте коэффициенты УЧП.
f = [1;2]; a = 0; c = [1;3;5]; specifyCoefficients(model,'m',0,'d',0,'c',c,'a',a,'f',f);
Можно задать коэффициенты как числовые, так и как функции.
Каждый коэффициент m
, d
, c
, a
, и f
, имеет определенный формат. См. F Coefficent для sefectCofficients, c Ceefficent для sefectCoefficients и m, d или Cefficent для sefetCoefficients.
Для зависящих от времени уравнений или, опционально, для нелинейных стационарных уравнений создайте начальное условие. См. Раздел «Установка начальных условий»
Создайте mesh.
generateMesh(model);
Вызовите соответствующий решатель. Для всех проблем, кроме проблем с собственным значением, звоните solvepde
.
result = solvepde(model); % for stationary problems result = solvepde(model,tlist); % for time-dependent problems
Для собственных задач используйте solvepdeeig
:
result = solvepdeeig(model);
Исследуйте решение. Смотрите графики решения и градиента с pdeplot и pdeplot3D, 2-D графики решения и градиента с функциями MATLAB ® и 3-D графики решения и градиента с функциями MATLAB ®.
applyBoundaryCondition
| createpde
| generateMesh
| geometryFromEdges
| importGeometry
| pdegplot
| pdeplot
| pdeplot3D