exponenta event banner

Решите проблемы Используя устаревшие объекты PDEModel

Примечание

ЭТОТ ПЭЙДЖ ОПИСЫВАЕТ УСТАРЕВШИЙ РАБОЧИЙ ПРОЦЕСС. Новые возможности не могут быть совместимы с устаревшим рабочим процессом. Для соответствующего шага в рекомендуемом рабочем процессе смотрите, Решают проблемы Используя Объекты PDEModel.

  1. Поместите свою проблему в правильную форму для решателей Partial Differential Equation Toolbox™. Для получения дополнительной информации смотрите уравнения, которые Можно Решить Используя Устаревшие Функции. Если необходимо преобразовать проблему в форму расхождения, смотрите Помещенные уравнения в Форме Расхождения.

  2. Создайте контейнер модели PDEModel. Для скалярных УЧП используйте createpde без аргументов.

    model = createpde;

    Если N является количеством уравнений в вашей системе, используйте createpde с входным параметром N.

    model = createpde(N);
  3. Импортируйте геометрию в model. Для получения дополнительной информации смотрите Импорт Файла STL или Три Способа Создать 2D Геометрию. Например:

    importGeometry(model,'geometry.stl'); % importGeometry for 3-D
    geometryFromEdges(model,g); % geometryFromEdges for 2-D
  4. Просмотрите геометрию так, чтобы вы знали метки поверхностей. Чтобы видеть метки 3-D модели, вы можете должны быть вращать модель, или сделать ее прозрачной, или увеличить масштаб ее. Смотрите Импорт Файла STL. Для 2D примера смотрите, Идентифицируют Граничные Метки. Например:

    pdegplot(model,'FaceLabels','on') % 'FaceLabels' for 3-D
    pdegplot(model,'EdgeLabels','on') % 'EdgeLabels' for 2-D
  5. Создайте граничные условия. Для получения дополнительной информации смотрите, Задают Граничные условия. Например:

    % 'Face' for 3-D
    applyBoundaryCondition(model,'Face',[2,3,5],'u',[0,0]);
    
    % 'Edge' for 2-D
    applyBoundaryCondition(model,'Edge',[1,4],'g',1,'q',eye(2));

    Для получения дополнительной информации о граничных условиях смотрите Граничные условия.

  6. Создайте коэффициенты УЧП. Например:

    f = [1;2];
    a = 0;
    c = [1;3;5];

    Дополнительные сведения о коэффициентах см. в Коэффициентах УЧП.

  7. Для гиперболических или параболических уравнений создайте начальное условие. Для нелинейных эллиптических проблем создайте исходное предположение. Смотрите Решают УЧП с Начальными условиями.

  8. Создайте mesh. Чтобы получить mesh не по умолчанию, используйте пары "имя-значение" generateMesh. Например:

    generateMesh(model);
  9. Вызовите соответствующий решатель. Например:

    u = assempde(model,c,a,f);
    • Для эллиптических проблем, коэффициенты которых не зависят от решения u, используйте assempde.

    • Для эллиптических проблем, коэффициенты которых зависят от решения u, используйте pdenonlin.

    • Для параболических проблем используйте parabolic.

    • Для гиперболических проблем используйте hyperbolic.

    • Для задач о собственных значениях используйте pdeeig.

    Для определений проблем, которые решают эти решатели, смотрите уравнения, которые Можно Решить Используя Устаревшие Функции.

  10. Исследуйте решение. См. График 3-D Решения и Их Градиенты или pdeplot.

Смотрите также

| | | | | | |