logo desc

После того, как решение задачи с Ahmed Body было получено во FlowVision (этому поиску посвящены первые две части трилогии "Ahmed body: моделируем вместе"), мы решили не останавливаться на достигнутом и повторить эксперимент ещё и в KompasFlow. KompasFlow - это встроенный в ПК Kompas 3D (от компании АСКОН) модуль для проведения гидро- газодинамических расчётов во всех диапазонах чисел Маха и Рейнольдса.

Модуль KompasFlow создавался разработчиками FlowVision, поэтому эти два продукта имеют схожий функционал, но разную направленность. KompasFlow - это программное решение в первую очередь для моделирования течения жидкости/газа и теплообмена, а FlowVision в дополнение к этому позволяет моделировать другие, болеее сложные физические процессы: произвольное движение тел, течение в пористой среде, горение, химия, излучение, обледенение, многофазные течения и т.п.

Задача Ahmed Body - это исследование внешнего обтекания неподвижного тела без учёта теплообмена поверхности, и ожидается, что KompasFlow с ней справится на ура. Посмотрим?

Исследование сходимости по сетке 

Перед проведением расчётов в новом вычислительном комплексе (и тем более на новой сетке!), необходимо провести исследование сходимости решения по сетке. В качестве контролируемого параметра опять использовалась величина продольной силы, Fх. У вас может возникнуть вопрос: Почему нельзя использовать сетку, для которой уже проведено исследование сходимости во FlowVision? Дело в том, что в KompasFlow нет возможности задать неравномерную расчётную сетку со сгущениями, как это делается в редакторе начальной сетки FlowVision.

Я начала исследование сходимости с равномерной начальной сетки с размером ячейки 0,02 м, всего в 2 раза большим, чем размер пристеночной ячейки начальной сетки во FlowVision. Количество ячеек расчётной сетки получилось внушительным - 1,7 млн. И в процессе расчёта на столь тяжёлой сетке я поняла, что это предел для моего компьютера (8 реальных ядер и 64 Гб оперативки). К сожалению, у КompasFlow нет возможности распараллеливать расчёт по процессорам и, следовательно, запускаться на кластерах, поэтому пришлось считать на локальном компьютере.

Результаты расчёта на сетке с размером ячейки = 0,02 м (mesh 1) представлены на рисунке ниже.

1Сравнение экспериментальных данных коэффициента продольной силы (Сх) для модели с углом скоса φ = 0 град. и результатов расчёта на сетке mesh 1

mesh1

После первого опыта расчёта в KompasFlow я решила упростить начальную сетку и увеличила размер ячейки в 2 раза - задала размер 0,04 м. (в 4 раза больше, чем был во FlowVision). Количество ячеек начальной сетки составило 220 тыс., что позволило комфортно использовать адаптацию сетки в дальнейших расчётах. Однако уже при использовании 4 уровня адаптации количество ячеек составило 1,4 млн, и расчётных ресурсов компьютера стало не хватать. На рисунке ниже отражены результаты расчёта в этом случае. Сетка mesh 2 - начальная сетка с размером ячейки 0,04 м, которая последовательно адаптировалась с 1 - 4 уровнем.

2 Сравнение экспериментальных данных коэффициента продольной силы (Сх) для модели с углом скоса φ = 0 град. и результатов расчёта на сетках mesh 1 и mesh 2

mesh2

По данным из графика и таблицы можно заключить, что 5 расчётов на сетке mesh 2 с использованием 0-4 уровней адаптации оказалось достаточно, чтобы добиться сходимости по сетке: разница между результатами последних двух расчётов составляет всего 1%. И нельзя не отметить, что для расчётного случая с углом скоса модели φ = 0° на сетке с адаптацией 3 и 4 уровней результаты расчёта близки к экспериментальным данным.

Дальнейшие расчёты проводились на сетке mesh 2 с заданием 3 уровня адаптации по поверхности модели.

Расчёты в зависимости от угла скоса модели   

Напомним, что мы моделируем обтекание тела Ахмеда - модели, геометрически близкой к корпусу автомобиля. Ахмед в своём эксперименте исследовал влияние угла скоса модели на величину продольной силы сопротивления набегающему потоку, движущемуся со скоростью V = 60 м/с.

18

Геометрия модели тела Ахмеда с разным углом скоса φ

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

1. Создание расчётной подобласти 

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

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

2. Вещество и набор решаемых уравнений

Наиболее востребованные вещества можно загрузить из встроенной базы веществ. Так как в KompasFlow используется только для моделирования однофазных течений, то задается только одно вещество. В моём случае это Воздух_газовая (равновесная).

Далее для вещества задаются физические процессы:

  • движение: уравнение в форме Навье - Стокса;
  • турбулентность: модель турбулентности KEFV (модифицированная k - ε модель);
  • теплоперенос: с учётом полной (H) и термодинамической (h) энтальпии.

Для дозвукового обтекания тела Ахмеда задавались движение (с учётом турбулентности) и теплоперенос (с учётом h).

3. Граничные условия

При моделировании, конечно, нас больше будет интересовать течение, чем теплообмен. И в KompasFlow представлен полный набор граничных условий, необходимых для моделирования течения во всем диапазоне скоростей. Для задачи Ahmed Body использовались граничные условия:

BC 2

Схема задания граничных условий 

  • Вход/Выход: фиксированная скорость = (- 60;0;0)
  • Свободный выход: давление = 0
  • Симметрия
  • Стенка (на поверхности модели)
  • Стенка (на нижней грани - моделирование пола)

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

4. Начальные условия

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

Конечно, по возможности крайне рекомендуется задавать и локальные начальные условия, например, параметры торможения у поверхности обтекаемого тела. Но НУ влияют только на быстроту получения результата, а не на его точность. Поэтому для дозвукового обтекания тела Ахмеда достаточно задать начальное распределение скорости (- 60, 0, 0) во всём объёме расчётной области.

5. Расчётная сетка

Расчётная сетка определялась по результатам проведения исследования сходимости решения по сетке. Так как в KompasFlow нельзя адаптировать сетку в объеме объектов, то адаптация применяется только по поверхности модели. Начальная сетка адаптировалась 3 уровнем по 10 слоёв для каждого уровня. Итоговая расчётная сетка состояла из 1 млн. ячеек, и расчёт одного случая занимал на моём рабочем компьютере не больше 12 часов. Здесь я хочу отметить одно моё личное неудобство - в KompasFlow нельзя задавать для каждого уровня адаптации своё количество слоёв. Поэтому при увеличении уровня адаптации (4 уровень, по 10 слоёв) количество ячеек стало около 3 млн.

расчётная сетка в Kompas Flow

Сечение расчётной сетки: применяется 3 уровень адаптации (по 10 слоёв для каждого уровня)

В KompasFlow также можно использовать адаптацию к решению: к значению или градиенту. Это очень актуальный функционал для задач сверхзвукового обтекания с возникновением скачков уплотнения и градиентов параметров.

6. Параметры расчёта 

 В окне свойств параметров расчёта в KompasFlow задаётся:

  • Шаг расчёта, с помощью числа CFL - это аналог конвективного CFL из FlowVision.
    Во FlowVision помимо конвективного CFL есть ещё диффузионный, поверхностный и скользящий. В помощь пользователем мы написали целую статью про шаг по времени в FlowVision. Но в KompasFlow нет подвижных тел, скользящей поверхности и диффузионного переноса вещества, поэтому необходимо задавать только конвективный шаг по времени.

    Для этой задачи CFL = 30, как при исследовании сходимости по шагу, проведённом ещё во Flowvision.

  • Максимальный шаг расчёта;
    Этот ограничитель актуален для задач с резкими градиентами параметров в начале расчёта. Не забывайте: на первой итерации, когда шаг по времени велик, решение может развалиться. Чтобы не допустить этого, ограничьте максимальный шаг. Ещё больше полезных советов о том, что делать, если расчёт разваливается, вы найдете в статье. Для данной задачи максимальный шаг остался без изменений.

  • Моделируемое время;
    Расчёт в KompasFlow останавливается при достижении заданного физического времени. Конечно, это намного проще, чем критерий останова во FlowVision, но всё равно немного сковывает пользователя. 

  • Частота сохранений;
    Для этой задачи я задала частоту сохранений = 100 (но можно больше или меньше - как вам удобнее). Так как KompasFlow не считает процессы во времени, то считается, что и история сохранений расчёта здесь не нужна, но поверьте, это очень полезная вещь!  

7. Визулизационные слои 

В качестве контролируемых параметров выбраны скорость и давление, как наиболее показательные для данной задачи. С помощью слоя заливка были построены распределения данных параметров по плоскости симметрии. Для интереса сравним результаты с расчётом во FlowVision.

скорость KF

Распределение скорости в KompasFlow (φ = 25 °)

скорость FV

Распределение скорости во FlowVision (φ = 25 °)

давление KF

Распределение давления в KompasFlow (φ = 25 °)

давление FV

Распределение давления во FlowVision (φ = 25°)

Картины течения говорят сами за себя - сходство потрясающее. В целом, на основе данного сравнения уже можно сделать вывод о том, что возможности KompasFlow ничем не хуже FlowVision, но всё-таки посмотрим на результаты расчёта коэффициента продольной силы, Сх = Fx/(qS).

8. Результаты

график расчёта

Сравнение результатов расчётов коэффициента продольной силы (Сх) в KompasFlow и FlowVision с экспериментальными данными

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

Среднее рассогласование между расчётом в KompasFlow и экспериментом - 8%, а между расчётом в FlowVision и экспериментом - 3%

Заключение

В третьей части из серии "моделируем вместе" мы вместе с вами прошли путь от постановки задачи до обработки результатов, в этот раз с использованием модуля KompasFlow, который является гидро- газодинамическим дополнением к ПК Kompas 3D. Чтобы закрепить теорию практикой, вы можете скачать клиентскую часть проекта и самостоятельно погрузиться в эту задачу: посмотреть настройки проекта и запустить расчёт.

Это совершенно бесплатно: при скачивании с официального сайта АСКОН вы получаете 30-дневную лицензию на Kompas 3D и все дополнительные модули.

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

структура cfd расчётаУспехов вам в ваших расчётах! И помните, что техническая поддержка FlowVision всегда поможет, стоит только попросить написать на support@flowvision.ru.

Сравнение KompasFlow и FlowVision

На примере задачи Ahmed Body мы продемонстрировали, что и FlowVision, и KompasFlow справились на ура. Предугадывая вашу озадаченность вопросом: "Какой CFD пакет - KompasFlow или FlowVision - будет более эффективным для решения моих задач?", мы подготовили сравнительную характеристику возможностей и выделили сильные стороны для каждого. Предлагаю начать с достоинств KompasFlow. 

Достоинства KompasFlow 

  1. Попадание в эксперимент с точностью 8% (на примере задачи обтекания тела Ахмеда) с использованием вычислительных возможностей только одного локального компьютера.

    А вот за дополнительные 5% точности во FlowVision пришлось заплатить расчётным временем и ресурсами: проект с расчётной сеткой, обеспечивающей требуемую точность, считался на кластере. 

  2. Очень простой и понятный пользователю интерфейс программы.

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

Достоинства FlowVision

  1. Возможность задания неравномерной расчётной сетки со сгущениями и расширенный функционал использования адаптаций.

    Редактор начальной сетки - специальный модуль FlowVision, которого нет в KompasFlow. Конечно, для получения верного результата можно использовать и однородную  сетку с адаптацией, но сгущение сетки экономит ваше время и вычислительные ресурсы. Если сравнивать возможности адаптаций в KompasFlow и FlowVision, то здесь тоже заметна разница. Во FlowVision есть адаптация - слитие, адаптация острых кромок и кривизны, а также адаптация по условию.

  2. Разнообразие физических процессов.

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

  3. Многопроцессорный запуск расчёта, для того чтобы считать на кластерах.

    При взаимодействии с MPI системой FlowVision может запускать расчёт в параллельном режиме на кластерах или многопроцессорных серверах. Проводить расчёты  в KompasFlow можно только на локальной машине с использованием одного процессора.

Если у вас ещё остались вопросы по возможностям FlowVision, мы свяжемся с вами, чтобы на них ответить. Для этого просто заполните форму обратной связи.

Все статьи из цикла: