Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Красников Моделирование физических процессов с исползованием 2012

.pdf
Скачиваний:
172
Добавлен:
12.11.2022
Размер:
12.78 Mб
Скачать

Можно видеть, что рисование здесь доступно только вдоль оси Х, остальная область просто не используется. Логические операции с геометрическими объектами аналогичны операциям в двумерной геометрии. Также доступны такие модификации объектов, как перемещение, отражение относительно некоей заданной точки, масштабирование.

Формы для уравнений и граничных условий Subdomain settings и Boundary conditions выглядят так же, как и в двумерном случае. Заполнив формы, зададим сетку, которая представляет собой набор отрезков. Укажем временной диапазон от 1 до 10 с шагом 0,1 и запустим решение (рис. 3.86).

Рис. 3.86. Одномерный график в Femlab

В одномерном случае проблема отображения величины решается куда более просто, здесь нет необходимости выделять разные участки графика разными цветами. Однако при желании можно выводить цветом какую-либо другую величину, скажем производную по времени. Для этого откроем окно Plot Parameters, которое в случае одномерной геометрии выглядит намного проще, чем в двумерном случае (рис. 3.87). На вкладке Line в панели Line Color указывается цвет линии. Чтобы отобразить цветом какую-нибудь величину, необходимо выбрать пункт Use expression to color lines,

и нажать кнопку Color Expression.

141

Рис. 3.87. Параметры одномерного графика

В появившемся окне можно настроить все параметры графика. Укажем в окне Line Color Expression производную от u по времени (ut). После произведённых действий график будет иметь вид, показанный на рис. 3.88.

Рис. 3.88. Одномерный график с цветной градацией по величине ut

142

Так же, как и в двумерном случае, можно посмотреть изменение профиля с течением времени с помощью видеоролика.

3.12. Решение трёхмерных задач

Решение трёхмерных задач – наиболее сложный и наиболее трудоёмкий процесс в FEMLAB. Количество вычислений задачи увеличивается в геометрической прогрессии с ростом её размерности. Таким образом, даже самые простые трёхмерные модели могут требовать для расчёта в разы больше времени и системных ресурсов, чем некоторые сложные двумерные. Тем не менее, поскольку мы живём в трёхмерном мире, то возможность создания 3Dмоделей является наиболее полезной и востребованной в системе. По этой причине полезно иметь представления о работе с трёхмерной геометрией в FEMLAB.

 

 

 

 

 

 

 

 

 

3.12.1. Задание трёхмерной геометрии

Не будем отступать от традиций и снова рассмотрим уравнение

теплопроводности:

 

 

 

 

 

u

1

 

u = f ;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a

 

 

 

 

 

t

 

 

 

 

 

 

 

 

 

 

u = u(x, y, z);

 

 

 

 

(3.28)

 

 

 

 

 

 

 

 

 

 

 

 

 

x [x ; x

2

]; y [ y ; y

2

]; z [z ; z

2

];t [0;t ];

 

 

 

 

 

1

 

 

1

1

1

 

 

 

= 0.

 

 

 

 

 

 

 

u

 

 

 

 

 

 

 

 

 

 

 

 

∂Ω

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Выбрав в навигаторе моделей прикладной режим уравнения теплопроводности для трёхмерного случая, получим окно для создания геометрии. Оно принципиально отличается от двумерного и одномерного случаев (рис. 3.89). Здесь объёмная среда отображается в виде ортографической проекции на экран. Расположение осей можно видеть в левом нижнем углу. Кнопки в правом столбике позволяют получать разные проекции среды. Рассмотрим их действия подробно.

143

Первые четыре кнопки – это переключатели, определяющие действие мыши.

– при включении перемещение указателя мыши с нажатой левой кнопкой вращает систему координат. Эта опция стоит по умолчанию.

– перемещение системы координат по плоскости экрана.

, – приближение/удаление области. Перемещение указателя мыши вверх приближает область, а вниз – удаляет. К горизонтальным перемещениям система нечувствительна.

Рис. 3.89. Рабочая область трёхмерной геометрии

– опция служит для того, чтобы более наглядно представлять трёхмерную область при выборе проекции. Если включить эту кнопку, то при любых трансформациях (вращение, перемещение, приближение) область будет представляться в виде прямоугольно-

144

го параллелепипеда, ограничивающего все входящие в него фигуры.

– зафиксировать какую-либо ось, либо перемещение мыши. Зафиксированная ось будет смотреть вертикально вверх и сможет вращаться только вдоль плоскости, перпендикулярной экрану. При фиксации мыши по горизонтали, перемещать и вращать область можно только по вертикали. Если зафиксировать мышь по вертикали, то опции приближения и удаления не будут работать.

– эмуляция внешнего источника света для придания фигуре объёмного вида. Имеет смысл использовать, если уже задача решена и имеется профиль решения.

– также придаёт фигуре объёмный вид, но источник света располагается со стороны пользователя.

– откатить положение камеры на предыдущий ракурс.

– возвращает положение камеры в последний ракурс, если производился откат.

– ортографическая проекция области (задана по умолчанию).

– перспективная проекция области.

, , – проекции на соответствующие плоскости.

– проекция, заданная по умолчанию.

, – увеличить/уменьшить прозрачность (для уже построенных решений).

Очевидно, что двумерность экрана монитора не может позволить вручную рисовать трёхмерные фигуры. Поэтому все геометрические объекты помещаются на область экрана только аналитически, посредством указания координат и базовых размеров.

Итак, в трёхмерном режиме доступны следующие геометрические объекты:

Прямоугольный блок (прямоугольный параллелепипед). Пункт меню Draw->Block, или кнопка .

Конус. Пункт меню Draw->Cone, или кнопка . Цилиндр. Пункт меню Draw->Cylinder, или кнопка .

145

Эллипсоид. Пункт меню Draw->Ellipsoid, или кнопка . Сфера. Пункт меню Draw->Sphere, или кнопка .

Помимо этого доступны прямые линии-отрезки (пункт Draw- >Line) и точки (пункт Draw->Point). Какие-либо более сложные фигуры можно сформировать только посредством соединения различных базовых объектов. Аналога кривых Безье в трёхмерном случае не существует. При необходимости задать область со сложным профилем, следует начертить её проекцию в двумерной геометрии, а потом восстановить в трёхмерную (см. п. 3.10.4).

При выборе какого-либо из вышеперечисленных базовых объектов, появляется форма задания геометрии этого объекта. Например, для фигуры «Прямоугольный блок» будет предложена следующая форма, представленная на рис. 3.90:

Панель Style определяет размерность объекта (Solid – будет построен сам объект, Facе – объект будет представлять собой поверхность блока). Панели Base и Axis base point задают положение объекта в пространстве (см. п.2.4.4). В панели Length задаются линейные размеры блока, а панель Axis direction vector определяет наклон объекта. Данный наклон задаётся с помощью радиусавектора, по умолчанию он равен (0;0;1), что соответствует главной системе координат. Радиус-вектор можно задать, как в декартовых, так и в сферических координатах.

Рис. 3.90. Форма создания прямоугольного блока

146

Если нажать кнопку OK, то полученная фигура будет иметь вид, как на рис. 3.91.

Рис. 3.91. Фигуры в трёхмерной геометрии

Остальные объекты создаются аналогичным способом. Стоит только отметить некоторые особенности при создании конуса. Специфика данной фигуры заключается в том, что для правильного отображения фигуры должны быть точно подобраны значения высоты, радиуса основания и угла в вершине между высотой конуса и касательной к поверхности наклона (рис. 3.92).

Набор трёх параметров позволяет создавать как полные, так и усечённые конусы. При любой паре значений радиуса и высоты существует максимально возможное значение угла, которое соответствует полному конусу. При попытке указать это значение больше допустимого, система выдаст ошибку с указанием максимально возможного значения. По умолчанию в окне содержится значение угла для полного конуса, соответствующее пропорции радиуса к высоте как 1:2.

147

Рис. 3.92. Окно создания конуса

3.12.2. Задание уравнений и генерация сетки

Постановка коэффициентов уравнений и граничных условий в трёхмерной геометрии не сильно отличается от аналогичной постановки в двумерной геометрии. Стоит отметить, что здесь помимо граничных и точечных условий также появляются рёберные условия (Edge settings). Они аналогичны точечным условиям, их постановка возможна только в слабой форме.

Работать с сеткой в трёхмерном случае следует с особой осторожностью. В данном случае количество вычислений пропорционально кубу количества конечных элементов. Объём памяти, отводимый программой на решение задачи, ограничен, поэтому даже на мощных компьютерах она может закончиться, и процесс решения будет остановлен.

Зададим наиболее простой вариант уравнения теплопроводности с коэффициентами da=1; c=1; f=1. На всех границах потребуем обращения величины в 0.

3.12.3. Визуализация результатов

Визуализация результатов в трёхмерном случае также имеет свои особенности. Необходимо иметь информацию о распределении величины вдоль всего объёма, в то время, как на экран можно вывести только двумерное изображение. Проблема решается выводом на экран значений не во всех точках области, а на определённом количестве слоёв, параллельных одной из осей (рис. 3.93).

148

Рис. 3.93. Визуализация величины в трёхмерном пространстве в виде набора уровней

Количество слоёв и их расположение настраивается на вкладке Slice окна Plot Parameters (рис. 3.94). Можно одновременно отображать слои по двум или трём осям, однако в этом случае будет затруднён просмотр некоторых областей фигуры. Количество слоёв по каждому из направлений определяется в полях Number of levels.

В данном случае слои будут распределяться равномерно вдоль всей имеющейся области. Если переключить флажок на поле Vector with coordinates, то можно вручную указать набор координат, для которых необходимо построить слои. Чтобы улучшить видимость внутренней области можно увеличить прозрачность графика кнопкой (рис. 3.95). Понизить прозрачность следует кнопкой .

149

Рис. 3.94. Свойства трёхмерного графика. Частота задания слоёв

Другой способ визуализации трёхмерных данных, это изоповерхности уровней. Данные изоповерхности аналогичны рельефным линиям на топографической карте. Настроить изоповерхности можно во вкладке Isosurface окна Plot Parameters. Можно настроить число уровней в поле Number of levels, в этом случае они будут располагаться равномерно относительно друг друга. Другой способ

– это задать вектор со значениями, для которых должны быть построены уровни (поле Vector with isolevels). На рис. 3.96 построен график величины |grad u| в изолиниях.

150

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]