Как создать двумерную сетку в ANSYS Workbench для ANSYS CFX 17.0

МиниСегодня я расскажу вам о том, как построить «двумерную» сетку для ANSYS CFX в препроцессоре ANSYS Meshing. Как вы хорошо знаете, в CFX отсутствует двумерный решатель, поэтому мы вынуждены всегда использовать трехмерные сетки минимум с одной ячейкой по толщине. Начиная с версии 17.0 мы можем использовать двумерные сетки ANSYS Workbench для плоских задач или осесимметричных задач, поставленных в ANSYS CFX.

Последовательность действий показана на рисунке ниже. Сначала вы разбиваете двумерную сетку в ANSYS Meshing для газодинамического пакета ANSYS Fluent (в котором есть полноценный двумерный решатель).1_1

Затем вам необходимо загрузить отдельный шаблон для Fluent и соединить компоненту A3 (Mesh/Mesh) c компонентой B2 (Fluent/Setup). Не забудьте выполнить операцию Update (обновить) для компоненты Mesh. При этом будет создан файл SYS.msh, который мы позже импортируем в препроцессор CFX-Pre.

Так же не забудьте заранее создать выборки (Named Selections), которые вы будете использовать для задания граничных условий (Inlet, Outlet  и пр.).

2

Читать далее

К вопросу моделирования нестационарного отрывного обтекания элементов летательных аппаратов в Fluent и CFX

Сегодня мы поговорим с вами о задачах внешней аэродинамики, аэроакустики, турбулентности и пр.

За последние несколько месяцев накопилось достаточно много вопросов, поэтому за один раз ответить на них сложно. Кроме того, с момента образования нового R&D Центра SimuLabs4D внутри нашей компании, на мои плечи легли дополнительные обязанности административного и технического характера, что вынуждает меня периодически брать паузы и неделями «выпадать» из медиа-пространства.

Я по-прежнему продолжу поддерживать этот CFD-блог, но рекомендую вам почаще заглядывать и на страницы нашего нового проекта simulabs.ru (который мы запустим в начале ноября 2015 года), где я вместе со своими коллегами буду регулярно делиться с вами информацией, касающейся вопросов автоматизации расчетных процессов, интеграции сторонних кодов (организации взаимодействия между кодами), новостей CAE-рынка и о наших собственных разработок.

Дозвуковое обтекание трехмерного крыла в условиях отрыва и ЛТП

Для начала рассмотрим задачу дозвукового обтекания трехмерного крыла. Поток газа – несжимаемый, внешние воздействия отсутствуют, число Рейнольдса >10e6. Угол атаки – различный.

Первый вопрос будет касаться выбора значения шага по времени (числа Куранта). Определим шаг по времени (ШГВ) как отношение средней длины хорды к скорости набегающего потока. Для ускорения расчета можно увеличить ШГВ в 10 раз, т. е. на порядок. Но решение будет крайне нестабильным, особенно в условиях отрывного течения, которое по своей природе является нестационарным.

Если использовать ШГВ=1, то характер невязок может носить «периодический» характер (с «периодом» 150-200 итераций) при отсутствии периодического режима течения газа.

Если уменьшить значение ШГВ на порядок, то сходимость задачи будет достигнута на 300-400 итерации (количество итераций – относительное, так как зависит от многих факторов). Но при этом необходимо будет использовать дополнительные внутренние итерации.

Наконец, если уменьшить ШГВ еще в 10 раз (или в 100 раз от базового значения, соответственно), то общее количество итераций до сходимости увеличится до 600-900, но при этом не потребуются дополнительные внутренние итерации.

Схематично процесс сходимости при различных значениях ШГВ показан на рисунке ниже.

ШГВ

Читать далее

Как удалить «лишнюю» O-сетку в ICEM CFD

сетки

Что такое О-сетка мы с вами уже знаем. Кроме О-сетки существует еще Y-сетка, H-сетка, С-сетка и т. д. Про это мы тоже догадываемся, особенно пользователи пакетов TurboGrid, Numeca и пр. Поэтому сегодня я покажу вам как за один раз удалить всю O-сетку, которую вы построили в ICEM CFD.

Для этого существует специальная опция, которая называется Merge Vertices. Последовательность действий следующая: открываете одноименную закладку, нажимаете на иконку, которая находится слева. Затем включаете опцию Propagate merge (иначе все ваши потуги ограничатся только двумя узлами). Наконец, выбираете два любых «диагональных» узла О-сетки и нажимаете на кнопку [Confirm].

На этом все!о_сетка С уважением, Денис Хитрых

Директор R&D Центра SimuLabs4D.

Возвратное течение: стабилизация решения и мониторинг

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

Сразу же отметим, что на начальных итерациях на выходной границе может присутствовать возвратное течение, но через несколько десятков итераций оно будет «подавлено» и поток в целом стабилизируется. Если этого не происходит, то возможно два варианта: 1. наличие возвратной зоны обусловлено геометрическими особенностями расчетной модели; 2 связано с некорректными граничными и/или начальными условиями. Во втором случае необходимо просто откорректировать все ГУ. В первом же варианте достаточно изменить положение выходной границы, как показано на рисунке ниже.

rec1

В препроцессоре CFX такая возможность отсутствует, поэтому придется заново перестроить расчетную модели и сгенерировать новую сетку. А в препроцессоре Fluent положение выходной границы можно изменить с помощью соответствующей команды TUI:

mesh modify-zones extrude-face-zone-delta
specify the face zone id/name
delta 1 0.2

Еще одна проблема, которая может быть интересна пользователям, связана с оценкой абсолютных величин расходов среды, «покидающей» расчетную область(поток со знаком «+») и возвращающейся в расчетную область (поток со знаком «-«). В Fluent это можно сделать с помощью небольшого UDF-макроса, который «маркирует» ячейки сетки с положительным и отрицательным потоком массы. В CFX для этого потребуется создать два простых выражения вида:

Положительный расход (через поверхность Surface):
areaInt(max(0.0[m/s],Velocity u * Normal X + Velocity v * Normal Y + Velocity w * Normal Z)*Density)@Surface
Отрицательный расход:
areaInt(min(0.0[m/s],Velocity u * Normal X + Velocity v * Normal Y + Velocity w * Normal Z)*Density)@Surface

Читать далее

К вопросу о выборе значения константы Смагоринского

Модель Смагоринского (Smagorinsky model) является одно из наиболее популярной подсеточной моделью для LES. В этой модели константа Cs (константа Смагоринского), входящая в уравнение для подсеточной турбулентной вязкости, определяется заранее.

constant

Строго говоря, выбор значения этой константы зависит, как от класса моделируемого течения, так и от используемого численного метода, в том числе и схемы аппроксимации невязких потоков.

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

Кроме того, для неизотермических течений значение константы Смагоринского обычно меньше, чем для изотермических течений.

Такую калибровку обычно проводят на задаче о затухании однородной и изотропной турбулентности. Для неё существуют теоретические оценки закона затухания турбулентных пульсаций со временем (см., например, работу https://mipt.ru/upload/medialibrary/b76/105-113.pdf).

DITx

В первом приближении можно рекомендовать использовать следующие значения константы Cs*:

table

*Акира Ёсидзава (A. Yoshizawa). Hydrodynamic and Magnetohydrodynamic Turbulent Flows: Modelling and Statistical Theory. Kluwer Academic Pub, 2011.

Для оценки значения константы Смагоринского также можно использовать закон Обухова-Колмогорова, который после соответствующих преобразований и подстановок приводит к выражению вида:

kolmogorov

Здесь Сk — постоянная Колмогорова (Сk = 1,4-2,2).

Модель Смагоринского позволяет учесть взаимодействие молекулярного и молярного обмена вблизи стенки в вязком подслое и в переходной области течения.  Для этого используются т. н. демпфирующие функций, которые позволяют рассчитать изменение коэффициента турбулентного обмена или длины пути смешения поперек потока около стенки. В ANSYS CFX доступно две демпфирующие функции: Ван Дриеста (Van Driest, 1956) и функция Пиомелли (Piomelli, 1987).

Удачного Вам моделирования!

С уважением, Денис Хитрых.

Заблуждения и предрассудки, связанные с качеством сетки

Сегодня известно немало CFD и FEA кодов, в которых используются бессеточные методы решения задач гидродинамики, задач конечного деформирования и пр. Тем не менее, вопрос генерация качественной сетки остается актуальным для большинства пользователей CAE пакетов.

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

Заблуждение №1. Хорошая сетка должна точно соответствовать геометрии CAD-модели.

Этим заблуждением страдают некоторые инженеры, полагающие, что геометрия расчетной модели должна полностью повторять геометрию конструкционной модели. Они считают, что детальная модель дает более точные результаты расчетов, чем упрощенная модель. Такие инженеры редко используют инструмент defeaturing для упрощения модели.

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

Заблуждение №2. Хорошая сетка – хороша везде и всегда!

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

Но стоит изменить угол атаки или режимные параметры при моделировании аэродинамики крыла — хорошая сетка мгновенно перестанет быть таковой. И миф об универсальности сетки будет полностью разрушен.

С сайта www.ara.co.uk.

С сайта www.ara.co.uk.

Читать далее

Вырождение призматических слоев (stair stepping) в ANSYS Meshing

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

Разберем проблему, с которой довольно часто сталкиваются начинающие пользователи, выполняя комфорное разбиение двух или нескольких тел с генерацией призматических слоев.

ss

Если выполнять разбиение по-умолчанию, то мы получим вырожденные призматические слои в месте сопряжения двух тел.

Существует несколько вариантов решения данной проблемы. Самый простой вариант — объединить два тела. Но этот вариант обладает некоторыми ограничениями, поэтому мы не рекомендуем вам его использовать.

Второй путь — это выполнить декомпозицию расчетной модели по схеме, показанной на а рисунке ниже. Плоскость сечения должна располагаться от места сопряжения на расстоянии ~ 3-5 характерных размеров тетраэдра.

split

 

Наконец, в третьем варианте вы можете создать «внутренние» призматические слои, связанные с interior-поверхностями.

iter

 

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

iter_1

С уважением, Денис Хитрых.