Один из способов повысить характеристики проектируемого изделия - оптимизация конструкции, автоматизированный поиск оптимальной геометрической конфигурации проточной части на основе серии гидродинамических расчетов. В приведенной статье с сайта компании DATADVANCE рассмотрена задача оптимизации конструкции газового коллектора по трем варьируемым геометрическим параметрам с двумя ограничениями по габаритам и потере давления. А в качестве критерия оптимизация выбрана функция, описывающая равномерность расходов в выходных каналах. Газодинамические расчеты выполняются во FlowVision, модификация геометрической модели в КОМПАС-3D, оптимизация и автоматизация всего процесса реализована в программе DT Seven от нашего партнера DATADVANCE. В новой версии DT Seven реализована прямая интеграция с FlowVision, существенно упрощающая настройку оптимизационной задачи.
Проектирование современных изделий требует использования не только всё большего количества различных коммерческих программных продуктов и инструментов собственной разработки, но и тесной связи между ними, особенно если речь идет о решении оптимизационных задач и поиске наилучших конструкторских решений.
Программный продукт DT Seven от компании DATADVANCE поддерживает интеграцию с практически любым инженерным программным обеспечением, что позволяет добавлять в единую расчетную схему не только различные CAD и CAE пакеты, но и программы и скрипты собственной разработки.
Интеграция в DT Seven может быть реализована, используя различные подходы, например, с использованием внешних файлов и командной строки или при помощи блока прямой интеграции. Также есть специализированный инструментарий для разработки пользовательских блоков прямой интеграции.
В отличие от интеграции с помощью внешних файлов и командной строки, блоки прямой интеграции имеют простую настройку и не предполагают написание команд или скриптов. Такие блоки осуществляют прямой обмен входными и выходными параметрами между расчетной схемой DT Seven и интегрируемым ПО.
В рамках работ по расширению библиотеки блоков прямой интеграции с отечественным ПО был создан блок прямой интеграции для ПК FlowVision. В этой статье мы покажем работу блоков прямой интеграции для FlowVision и КОМПАС-3D на примере задачи оптимизации геометрии коллектора.
Задача
Объектом исследования в данной задаче является коллектор, предназначенный для выравнивания параметров потока. При этом, как правило, имеется необходимость не просто выровнять параметры, но и обеспечить это в рамках определенных ограничений, например, на габаритный размер и гидравлическую эффективность.
Таким образом, рассматриваемая оптимизационная задача сводится к нахождению геометрических характеристик коллектора: длины, высоты, угла между сторонами, которые обеспечат наиболее равномерный расход воздуха между тремя выходными сечениями при ограничении по максимальному перепаду давления и по габаритным размерам коллектора.
Задача имеет следующие варьируемые параметры:
- Длина коллектора L от 84 до 280 мм.
- Высота коллектора H от 50 до 170 мм.
- Угол между сторонами α от 70 до 129 град.
Ограничения:
- Перепад давления между входом в коллектор и выходами ΔP не более 0.5 Па.
- Ограничение по габаритам: габаритная площадь S - произведение сторон LxH, не более 20000 мм2.
Последнее ограничение отражает полезный объем коллектора, возможность его размещения в определённую технологическую нишу, при этом выбрано в виде квадратичной связи между параметрами, что будет пояснено ниже.
В качестве критерия оптимизации выберем функцию, оценивающую неравномерность расходов в выходных каналах:
где – расход воздуха в каждом выходном канале, – «идеальный» расход через выходное сечение, представляющий общий расход воздуха, деленный на 3. Общий расход воздуха составляет 30 л/мин.
Отдельно отметим особенности задач оптимизации по параметрам геометрической модели:
- Геометрическая модель должна быть параметризована в CAD (в данном случае в КОМПАС-3D), должна перестраиваться при получении новых значений управляющих параметров.
- Для сложных геометрических моделей, как правило, сложно или вовсе невозможно заранее предугадать области значений геометрических параметров, при которых геометрия окажется вырожденной или в ней появятся другие ошибки.
В вопросах, связанных с последним пунктом, на помощь приходят алгоритмы, способные в автоматическом режиме обработать случаи получения неопределенных откликов, например, по причине невозможности перестроения геометрической модели. В действительности, для данной задачи очень легко аналитически описать случай вырождения геометрии и обойти этот момент на старте, но в демонстрационных целях мы автоматизируем эту задачу.
Интеграция и решение «одиночной задачи»
Для автоматизированного решения задачи течения в коллекторе, имеющем желаемые геометрические размеры (из рассматриваемого диапазона), для начала составим расчетную схему интеграции КОМПАС-3D и FlowVision, которая будет решать «одиночную задачу» (рисунок 1). Подразумевается, что для каждого нового варианта исследования с новыми геометрическими параметрами коллектора необходимо автоматически перестроить CAD-модель в КОМПАС-3D, затем провести трехмерный нестационарный расчет течения воздуха в новой модели коллектора с помощью FlowVision для определения неравномерности расходов и перепада давления.
Рисунок 1 – Расчетная схема, интегрирующая ПО и решающая «одиночную задачу»
Блок Kompas3D обеспечивает интеграцию моделей КОМПАС-3D в расчетные схемы DT Seven. Для автоматизации перестроения геометрии с помощью блока предварительно необходимо подготовить геометрическую модель коллектора, параметризованную с помощью внешних переменных (рисунок 2). Грани модели, соответствующие различным граничным условиям, которые будут заданы в проекте FlowVision, необходимо обозначить различными цветами для автоматического определения граничных условий при замене геометрической модели региона.
Рисунок 2 – Параметризованная геометрическая модель в КОМПАС-3D
В рамках расчетной схемы (рисунок 1) Блок Kompas3D принимает во входные порты новые значения высоты H, длины L и угла α, перестраивает геометрическую модель и экспортирует её в расчетную схему в формате VRML.
Стоит отметить, что геометрическими единицами измерения в КОМПАС 3D, обычно, являются миллиметры, а во FlowVision - метры, поэтому следующий в расчетной схеме блок ScaleGeom(PythonScript) получает во входной порт файл геометрической модели в формате VRML, дописывает в файл строки, отвечающие за масштабирование геометрии, а затем передает путь до файла в формате строки в блок интеграции FlowVision. Помимо решения оптимизационных задач, применение DT Seven позволяет в том числе решать и автоматизировать подобные вопросы взаимной интеграции программных продуктов.
Для настройки блока FlowVision предварительно необходимо подготовить параметризованную расчетную модель FlowVision. Параметризовать модель можно с помощью «внешних параметров» FlowVision, которые будут доступны для изменения из DT Seven. Они создаются при подготовке расчетной модели в ПреПостпроцессоре и отображаются в окне внешних параметров.
В данной задаче в качестве внешних мы выбрали следующие входные параметры:
- значение массового расхода на граничном условии «Вход/Выход» - InletMFR;
- уровень адаптации расчетной сетки, который будет удобно использовать для исследования сходимости по сетке;
- условие остановки расчета – время расчета Time;
- общее количество шагов - Steps.
Для считывания результатов расчета блоком были созданы и вынесены в «Критерии останова»: следующие пользовательские величины:
- deltaP - перепад давлений, равный избыточному давлению на входном граничном условии;
- Irregularity, рассчитывающая значение функции неравномерности расходов по пользовательской формуле.
После того, как все «внешние параметры» и «критерии останова» определены, перед осуществлением интеграции в рамках расчетной схемы (рисунок 1), в ПреПостпроцессоре FlowVision необходимо использовать опцию «Сгенерировать таблицу результатов» (рисунок 3). Для визуального контроля за результатами в проекте FlowVision также создан слой распределения скорости воздуха по сечению расчетной области.
Рисунок 3 – Расчетная модель FlowVision
Подготовленный проект используется блоком в качестве шаблона. Для настройки интеграции в DT Seven необходимы только несколько действий: в интерфейсе настроек блока FlowVision указать путь до файла проекта-шаблона, путь до установочной директории FlowVision и лицензионное имя. Для выбора портов блока необходимо считать дерево проекта, в нем отобразятся все внешние параметры, имеющиеся в проекте FlowVision (рисунок 4).
Блок FlowVision имеет возможность генерировать изображение на основе слоёв Постпроцессора FlowVision с помощью специального приложения FvViewer (из комплекта дистрибутива FlowVision) и передает файл изображения в расчетную схему по порту. Для настроек генерации изображения в дереве представлен раздел FvViewer. С помощью блока можно осуществлять замены геометрической модели региона или импортированного объекта, для этого в дереве предусмотрен раздел Geometry, в котором отобразятся все доступные для замены объекты проекта.
В данной задаче подразумевается, что при каждом запуске блока будет производиться замена региона. Дерево и выбранные порты блока представлены на рисунке 4. В качестве входных данных блок получает массовый расход, уровень адаптации расчетной сетки, общее время расчета, путь до файла новой геометрии региона (сгенерированной в КОМПАС 3D), настройки изображения визуализационного слоя (разрешение, цвет фона, вид, отображение системы координат).
Рисунок 4 – Дерево и настройки блока FlowVision
В расчетную схему блок передает по выходным портам рассчитанное значение функции неравномерности расходов Irregularity, перепад давления, сгенерированный файл изображения – распределение скорости по расчетной области.
Также у пользователя есть возможность управлять режимом запуска (распараллеливания) решателя FlowVision. Для запуска решателя FlowVision в параллельном режиме используются соответствующие опции блока во вкладке Options, устанавливающие количество MPI-процессов и потоков.
Автоматизация и решение оптимизационной задачи
Для автоматизации решения серии одиночных задач можно воспользоваться специализированными блоками DT Seven, организующими циклы. Поскольку конечной целью данного исследования является решение оптимизационной задачи, воспользуемся соответствующим блоком исследования пространства параметров Design Space Exploration (DSE).
Первое применение автоматизации решения серии задач, которое полезно рассматривать инженеру расчетчику – это исследование сходимости получаемого результата по размеру расчетной сетки. Для этих целей используется расчетная схема, представленная на рисунке 5.
Рисунок 5 – Расчетная схема DT Seven для исследования сеточной сходимости
Блок DSE в этой расчетной схеме передает в порт блока FlowVision значение варьируемого параметра AdaptMaxLevel (уровень адаптации расчетной сетки) из назначенного пользователем диапазона [0; 2], получает отклики deltaP и Irregularity. Целевой функции в этом случае нет, отклики имеют тип «Evaluation». Блок DSE организует в данном случае задачу перебора значений единственного параметра.
Для автоматизации множественного циклического запуска одиночных задач (рисунок 1) и решения оптимизационной задачи построим расчетную схему, представленную на рисунке 6.
Рисунок 6 – Расчетная схема DT Seven для решения оптимизационной задачи
Композитный блок «FV» служит «контейнером» для всей расчетной схемы, представленной на рисунке 1. Блок структурирует расчетную схему и обеспечивает возможность запуска вложенной в него схемы в параллельном режиме. Параллельный режим в данном случае - это одновременное исполнение нескольких экземпляров блока «FV».
Блок DSE решает задачу исследования пространства параметров и оптимизации, генерирует новые наборы значений варьируемых параметров и получает отклики расчетной модели – значения целевой функции и ограничения ΔP от композитного блока «FV» и ограничения габаритной площади S от блока QuadConstraint (PythonScript). Блок DSE имеет широкий набор методов планирования экспериментов и оптимизации, в данной задаче используется техника SmartSelection, которая автоматически определяет наиболее подходящий метод.
Блок QuadConstraint (PythonScript) рассчитывает ограничение по габаритам S как произведение высоты H и длины L. Этот отклик представляет собой квадратичную функцию параметров задачи. Для более эффективной обработки линейных и квадратичных ограничений в блоке DSE есть подсказки Linear и Quadratic. Линейные ограничения будут восстановлены до начала серийного исследования, что обеспечивает отсутствие запусков «тяжелых» расчетов (например, блока «FV») в области нарушения линейного ограничения (рисунок 7).
В данной задаче для эффективного ограничения габаритов коллектора используется квадратичное ограничение. Для квадратичного ограничения после исследования пространства параметров, блок DSE восстановит собственную модель квадратичной зависимости, что позволит сэкономить ресурсы на количестве вызовов блока вычисления ограничения QuadConstraint, а также обеспечит минимизацию количества вызовов тяжелого расчета на заключительной (оптимизационной) стадии автоматизированного исследования.
Рисунок 7 – Пространство значений параметров x и y, линейное и квадратичное ограничение
В данной задаче могут быть получены неопределенные отклики (например, по причине невозможности перестроения геометрической модели), которые необходимо обрабатывать в автоматическом режиме. Поэтому мы задали настройки таким образом, что в случае неудачи перестроения геометрической модели (например, её вырождение) блок Kompas3D сообщает об ошибке, блок FlowVision не запустится, а композитный блок «FV» передаст в расчетную схему значения откликов, назначенных пользователем по умолчанию. При этом работа всей расчетной схемы не остановится (по указанию пользователя).
Такое поведение при ошибке перестроения можно выбрать в опциях блока Kompas3D и композитного блока. Значения откликов по умолчанию в композитном блоке мы установили NaN (Not a Number). Получая отклик NaN, оптимизатор будет избегать повторения вычислений в окрестности такой точки (рисунок 8), так как уже получил информацию, что в данной области функция не определена. Другими словами, отклики такого типа формируют неявные ограничения, которые могут кластеризоваться и учитываются на оптимизационной стадии исследования.
Рисунок 8 – Работа с неопределенными откликами
Посмотрим, как это выглядит на практике в нашей задаче. На рисунке 9 представлено пространство геометрических параметров и области, в которых геометрическая модель была успешно и неуспешно перестроена. Как говорилось выше, в данном конкретном случае нам известно даже уравнение этой поверхности раздела:
Слева, в демонстрационных целях показано детальное исследование пространства параметров по технике Латинского Гиперкуба, а справа текущее оптимизационное исследование. Можно увидеть, что во втором случае лишь незначительная часть исследования (6 точек) попала в область неопределенных значений функции. Отдельно следует отметить, что благодаря корректной обработке сообщений от КОМПАС-3D, «тяжёлый» расчет в FlowVision не был запущен ни в одной из этих 6 точках.
Рисунок 9 – Области успешной и вырожденной геометрической модели
Результаты
Исследование сеточной сходимости
Проведены расчеты для уровней адаптации сетки 0, 1, 2 (рисунки 10, 11). В результате для последующих оптимизационных расчетов был выбран уровень адаптации AdaptMaxLevel равный 2.
Рисунок 10 – Перепад давления deltaP в зависимости от уровня адаптации расчетной сетки
Рисунок 11 – Распределение скорости по сечению расчетной области при разных уровнях адаптации расчетной сетки (уровни 0, 1, 2)
Оптимизация коллектора
В ходе решения оптимизационной задачи в параллельном режиме (по 3 одновременно) были исследованы 87 вариантов геометрической модели коллектора, из которых 6 вариантов оказались вырожденными по геометрии (рисунок 9). На рисунке 12 представлена история откликов с раскраской маркеров по ограничениям: в ходе оптимизации получено 55 откликов, прошедших ограничения по перепаду давления и габаритам.
Оптимальный вариант имеет индекс 84 и следующие параметры: α = 71.7 град., L = 265.8 мм, H = 54.8 мм, перепад давления получен ΔP = 0.358 Па, габаритная площадь S = 14579.4 мм2 значение функции неравномерности расходов F = 0.875.
Рисунок 12 - История откликов
Распределение скорости по сечению расчетной области для оптимального варианта геометрии можно увидеть на рисунке 13. Субоптимальные варианты можно увидеть на графике в параллельных координатах (рисунок 14). Можно видеть, что наилучшие варианты появлялись на заключительной (оптимизационной) части исследования.
Рисунок 13 – Распределение скорости по сечению расчетной области для оптимального варианта (м/с)
Рисунок 14 – История оптимизации в параллельных координатах
Выводы
- Использование расчетной схемы DT Seven позволило автоматизировать циклический запуск КОМПАС-3D и FlowVision
- С помощью DT Seven проведено исследование сеточной сходимости для выбора уровня адаптации расчетной сетки.
- С помощью алгоритмов DT Seven найдено решение задачи – оптимальный вариант геометрии коллектора, обеспечивающий наиболее равномерные расходы при выполнении ограничений.
- Использованы 2 блока прямой интеграции, которые просты в настройке и не требуют знания командного интерфейса, интегрируемого ПО, а их использование ускоряет и упрощает интеграцию ПО в расчетные схемы DT Seven
- Библиотека блоков для отечественного инженерного ПО в DT Seven пополнена новым блоком FlowVision, позволяющим: управлять внешними параметрами модели, заменять геометрию региона и импортированных объектов, генерировать и экспортировать изображения на основе слоев, запускать решатель на расчет в параллельном режиме, запускать решатель на расчет в режимах «с начала» и «на продолжение» и многое другое.
Статья подготовлена и опубликована компанией DATADVANCE, оригинал доступен по ссылке:
https://www.datadvance.ru/ru/blog/use-cases/flowvision-kompas3d-integration.html