ВУЗ:
Составители:
Рубрика:
Зачастую при решении дифференциальных уравнений в качестве областей решения используются не пло-
ские, а объемные 3
D-объекты. При решении таких задач с использованием FlexPDE каких-либо существенных
трудностей не возникает. Общая постановка задачи – задание переменных и констант, решаемых уравнений,
граничных и начальных условий, осуществляется как и в случае с 2
D-объектом. Различия наблюдаются при
задании области решения. В качестве первого отличия необходимо указать необходимость записи
cartesian3 в
разделе
COORDINATES.
Второе отличие касается разности в способах задания расчетных областей. Во
FlexPDE нет графических
команд, позволяющих непосредственно создавать трехмерные объекты. Поэтому создание любого 3
D-объекта
осуществляется в два этапа:
• задаются расположения верха и низа объекта с использованием команды SURFACE в разделе сценария
EXTRUSION;
•
создаются поверхности в разделе BOUNDARIES с использованием стандартных графических примити-
вов.
В случае если основание объекта не может быть создано посредством простейших примитивов, например
объект в виде сферы, прибегают к заданию формы объекта в аналитическом виде. В качестве примера задания
такого рода расчетных областей и постановки нестационарной задачи распространения температурного фронта
рассмотрим сферу, верхняя полусфера которой охлаждается до 0, а нижняя нагревается до температуры
T
0
. Ре-
шение подобной задачи реализуется в виде следующего сценария:
TITLE '3D Sphere'
COORDINATES
cartesian3 {Указываем, что используем трехмерное пространство}
VARIABLES
u(threshold=0.1)
DEFINITIONS
K = 1e-7*(u^2)
{Коэффициент теплопроводности}
R0 = 1
{Радиус сферы}
T0=100
INITIAL VALUES
u=0
EQUATIONS
u: div(K*grad(u)) = dt(u)
EXTRUSION
surface z = -sqrt(R0^2 – (x^2+y^2)) {Задаем нижнюю полусферу}
surface z = sqrt(R0^2 -(x^2+y^2))
{Задаем верхнюю полусферу}
BOUNDARIES
surface 1 value(u) = T0 {Задаем граничное условие для нижней полусферы}
surface 2 value(u) = 0 {Задаем граничное условие для верхней полусферы}
REGION 1
start (R0,0)
arc(center=0,0) angle=360 to finish
TIME 0 TO 300
PLOTS
For cycle=10
contour(u) on x=0
{Выводим распределение температурного фронта в плоскости ZY}
HISTORIES
history(vol_Integral(u/((4/3)*pi*(R0^3)))) {Выводим кинетику нагрева}
END
Результаты расчета по данному сценарию иллюстрирует рис. 15.
Страницы
- « первая
- ‹ предыдущая
- …
- 25
- 26
- 27
- 28
- 29
- …
- следующая ›
- последняя »