return to home
next up previous contents

Шаг 5: Граничные условия

Для этой задачи нет необходимости устанавливать граничные условия для внешних границ. В задаче имеются 3 зоны течения: зона изначально заполненная песком, зона мешалки и оставшаяся часть резервуара. Необходимо будет установить условия только для зоны мешалки.

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

$variable = A_{1} + A_{2}r + A_{3}r^{2} + A_{4}r^{3} + ...$

Порядок полинома зависит от поведения функции. Для этой задачи коэффициенты полинома представлены в таблице 19.1 используются в UDF (функции определённой пользователем) fix.c.

Table 19.1: Задание профиля мешалкиImpeller Profile Specifications
Variable $A_1$ $A_2$ $A_3$ $A_4$ $A_5$ $A_6$
$u$ velocity -7.1357e-2 54.304 -3.1345e+3 4.5578e+4-1.9664e+5-
$v$ velocity 3.1131e-2 -10.313 9.5558e+2 -2.0051e+41.1856e+5-
kinetic energy 2.2723e-2 6.7989 -424.18 9.4615e+3-7.7251e+41.8410e+5
dissipation -6.5819e-2 88.845 -5.3731e+3 1.1643e+5-9.1202e+51.9567e+6

Смотрите также UDF Manual (Руководство по UDF) о UDF использующих макрос DEFINE_PROFILE. Хотя этот макрос в основном применяется для задания граничных условий, он применяется в fix.c для определение условий в области течения. Аргументы макроса были соответственно изменены.

1.

Откомпелируйте UDF fix.c, используя панель Interpreted UDFs (Интерпретация UDF).

Define $\rightarrow$ User-Defined $\rightarrow$ Functions $\rightarrow$ Interpreted...

\begin{figure}\psfig{file=figures/tank-udf.ps} \end{figure}

(a)

Введите fix.c под надписью Source File Name (Имя файла источника).

!
Файл с источником C кода должен находиться в рабочей директории. Если это не так вы должны указать полный путь к файлу с источником, вместо одного имени.

(b)

Оставьте по умолчанию Stack Size (Размер Стека) равным 10000.

(c)

Включите опцию Display Assembly Listing.

Включение опции Display Assembly Listing (Отобразить протокол ассемблирования) приведёт к отображению кода на языке ассемблера в консоли, когда функция откомпелируется.

(d)

Нажмите Compile для компелирования UDF.

Замечание:

Имя и содержание UDF будет сохранено в файле настроек при его записи.

2.

Установите параметры для зоны жидкости в области мешалки (fix-zone).

Необходимо будет указать отдельно условия для воды и песка. Для смеси не нужно устанавливать условий (т. е. условий применяемых для обеих фаз), подойдут настройки для смеси по умолчанию.

Define $\rightarrow$ Boundary Conditions...

(a)

Установите условия в fix-zone для воды.

Все условия для воды будут определены UDF.

i.

В панели Boundary Conditions (Граничные условия) выберите water (вода) из списка Phase (Фазы) и нажмите Set....

\begin{figure}\psfig{file=figures/tank-water-bound.ps} \end{figure}

ii.

Включите опцию Fixed Values (Постоянные значения).

Панель расширится.

iii.

Выберите udf fixed_u из выпадающего списка справа от Axial Velocity (Осевая скорость).

iv.

Выберите udf fixed_v для Radial Velocity (Радиальная скорость).

v.

Выберите udf fixed_ke для Turbulence Kinetic Energy (Кинетическая энергия турбулентности).

vi.

Выберите udf fixed_diss для Turbulence Dissipation Rate (Степень турбулентной диссипации).

(b)

Установите условия в fix-zone для песка.

Все условия для песка будут определены UDF.

i.

В панели Boundary Conditions (Граничные условия) выберите sand из списка Phase (Фазы) и нажмите Set....

\begin{figure}\psfig{file=figures/tank-sand-bound.ps} \end{figure}

ii.

Включите опцию Fixed Values (Постоянные значения).

Панель расширится.

iii.

Выберите udf fixed_u для Axial Velocity (Осевая скорость).

iv.

Выберите udf fixed_v для Radial Velocity (Радиальная скорость).


next up previous contents Назад: Шаг 4: Фазы
Вверх: Использование многофазной модели Эйлера для сыпучих сред
Вперёд: Шаг 6: Решение

Translated by Bezobrazov Pavel (bpv7@rambler.ru)