Институт системного программирования им. В.П. Иванникова РАН


Программный комплекс DigiTEF

Введение

Отечественный программный комплекс DigiTEF разрабатывается в Институте системного программирования РАН (ИСП РАН) на базе свободно-распространяемого комплекса с открытым исходным кодом. DigiTEF предназначен для проведения компьютерного моделирования и инженерного анализа сложных прикладных и научно-технических задач промышленности. С помощью DigiTEF можно решать следующие классы задач:

  • Внешняя аэродинамика, включая обледенение и учет подвижных(вращающихся) элементов;
  • Газовая динамика, включая течения с частицами, с учетом дробления, испарения и налипания;
  • Гидродинамика, включая задачи численного моделирования аттракторов внутренних волн;
  • Акустика;
  • Перенос теплового излучения в газовых средах;
  • Связанные и сопряженные расчеты.

В программном комплексе DigiTEF используются собственные уникальные разработки ИСП РАН, что позволяет для отдельного класса задач получать решения точность и достоверность которых превышает уровень мировых аналогов. Кроме этого, особое внимание уделяется качеству исходного кода, которое проверяется с помощью различных инструментов, разработанных в Институте системного программирования РАН, например SVACE, BinSide, Klever, AstraVer.

Системные требования

Программный комплекс DigiTEF работает под управлением операционной системы Linux. Данный комплекс также может работать на других операционных системах, которые поддерживают виртуальную машину. На Microsoft Windows 10 - с применением оболочки Bash (приложение Bash on Ubuntu on Windows). Для эффективной работы требуется не менее 16 Гб оперативной памяти. DigiTEF поддерживает параллельные вычисления, что существенно ускоряет его работу.

Состав комплекса

Программный комплекс DigiTEF состоит из двух основных блоков (Рисунок 1).

Рисунок 1. Состав комплекса DigiTEF

Рисунок 1. Состав программного комплекса DigiTEF

Блок OpenDTEF является ядром ПК DigiTEF и содержит основные компоненты (библиотеки, алгоритмы, процедуры и функции), а также набор сторонних библиотек, написанных на языке C++, к которым относятся:

  • Компонент для анализа ветровых энергетических установок (SOWFA);
  • Компонент для параметризации на базе языка программирования Python;
  • Компонент включающий граничные условия и пользовательские исполняемые объекты;
  • Компонент анализа данных для визуализации и извлечении информации.

Компонент для анализа ветровых энергетических установок (SOWFA)

Компонент позволяет проводить исследования работоспособности ветряных турбин и ветроустановок в широком диапазоне атмосферных условий и местности.

Компонент для параметризации на базе Python

Компонент позволяет проводить автоматизацию расчётных случаем, а также осуществлять интеграцию программных комплексов Salome, Paraview, CodeAster в DigiTEF.

Компонент включающий граничные условия и пользовательские исполняемые объекты

Компонент включает в себя граничные условия для выхода потока при произвольном числе Маха; утилиты для оценки интегральных характеристик насоса (подача, напор); модель турбулентности одиночной сверхзвуковой струи А.В.Сафронова; регулятор расхода.

Компонент анализа данных для визуализации и извлечении информации

Компонент предназначен для анализа результатов и построения моделей пониженной размерности с использованием методов обработки данных: FFT, POD, DMD, Hibert transformations.

Представленные компоненты служат фундаментом для других разрабатываемых компонентов. Данный блок находится в открытом доступе и доступен по https://github.com/unicfdlab/OpenDTEF

Второй блок включает в себя компоненты, разработанные в ИСП РАН, на базе блока OpenDTEF:

  1. Компонент для расчета сжимаемых течений на основе КГД уравнений.
  2. Компонент для расчета несжимаемых течений на основе КГиД уравнений.
  3. Компонент для расчета несжимаемых\сжимаемых течений на основе гибридного алгоритма Pimple и Курганова-Тадмора.
  4. Компонент для расчета дозвуковых турбулентных течений с использованием гибридного URANS/LES подхода.
  5. Компонент для проведения акустического анализа.

Все компоненты данного блока основаны на передовых исследованиях, в частности проводимых в ИСП РАН. Любой представленный компонент или их комбинация может быть доработана, а также создана заново (разработка нового компонента) в соответствие планом развития вычислительного комплекса и требованиями ключевых заказчиков.

Компонент для расчета сжимаемых течений на основе КГД уравнений

В компоненте реализованы квазигазодинамические уравнения (КГД) с регуляризационным параметром для сжимаемых вязких течений. Система квазигазодинамических уравнений расширяет возможности модели Навье-Стокса и позволяют строить эффективные численные алгоритмы. Принципиальным и существенным отличием КГД подхода от теории Навье-Стокса является использование процедуры пространственно-временного осреднения для определения основных газодинамических величин -- плотности, скорости и температуры и др. Компонент применим для расчета сверхзвуковых течений в широком диапазоне чисел Маха. Исследования алгоритма проводились для чисел Маха от 0.1 до 50.

Компонент для расчета несжимаемых течений на основе КГиД уравнений

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

Компонент для расчета несжимаемых\сжимаемых течений на основе гибридного алгоритма PIMPLE и Курганова-Тадмора

Данный компонент предназначен для моделирования несжимаемых\сжимаемых течений в широком диапазоне чисел Маха.

Компонент для расчета дозвуковых турбулентных течений с использованием гибридного URANS/LES подхода

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

Компонент для проведения акустического анализа

Компонент предназначен для проведения анализа и определения акустического шума в дальнем поле с применением акустических аналогий. В настоящее время в компоненте реализованы аналогии Керла и Фокс Уильямса – Хокинга, использующая формулировки GT, предложенная Garrick Triangle и 1А, предложенная F. Farassat.

Решение тестовой задачи

Для ознакомления с возможностями программного комплекса DigiTEF пользователю предлагается решить задача обтекания прямого уступа с применением компонента для расчета сжимаемых течений на основе КГД уравнений. На рисунке 2 показана постановка решаемой задачи и расчетная сетка. Предполагается, что сжимаемый невязкий газ с заданными параметрами на левой границе (Inlet) входит в расчетную область. Расчетная область ограничена сверху и снизу непроницаемыми стенками (LowerUpper, Walls), на которых установлено условие проскальзывания для скорости. Через правую границу (Outlet) поток покидает расчетную область. В целях демонстрации в данной версии DigiTEF количество ячеек ограничено величиной 100 000.

Рисунок 2. Постановка решаемой задачи обтекания прямого уступа

Рисунок 2. Постановка решаемой задачи обтекания прямого уступа

Для решения данной тестовой задачи необходимо:

  1. Перейти в папку с расчетным случаем: «DigiTEF/tutorials /compressible/QGDFoam/forwardStep/». В данной папке находится 3 каталога. Каталог «0/» содержит файлы для физических переменных (давление p, скорость U и температура T) с начальными и граничными условиями. Каталог «constant/» содержит файлы, которые хранят постоянные физические свойства и константы (thermophysicalProperties), необходимые для использования математических моделей и для решения определённого класса задач, а также свойства модели турбулентности (turbulenceProperties) и расчётную сетку. Каталог «system/» содержит файлы, содержащие информацию о процессе решения задачи, численных схемах и методах расчета.
  2. Запустить решение задачи выполнив в командой строке команду «./Allrun». Данный скрипт осуществляет последовательный запуск необходимых компонентов:

    a. сначала выполняется построение блочной сетки (компонент для построения сетки blockMesh);
    b. затем осуществляется запуск компонента для расчета сжимаемых течений на основе КГД уравнений (QGDFoam); в процессе решения задачи в корневом каталоге будут созданы директории, в которых хранятся данные расчета.

  3. Для просмотра полученных результатов в командной строке необходимо выполнить команду «foamToVTK». В результате будет создан каталог VTK. В нем находятся файлы, которые можно открыть и визуализировать в пакете Paraview (данный пакет не входит в состав программного комплекса DigiTEF его можно скачать с сайта https://www.paraview.org/). На рисунке 3 представлены некоторые результаты, полученные в ходе решения задачи и визуализированные в пакете Paraview.

Рисунок 3а. Результаты решения задачи: поле давления

а)

Рисунок 3б. Результаты решения задачи: поле давления

б)

Рисунок 3. Результаты решения задачи: а) поле давления; б) поле скорости

Связь с разработчиками

Демонстрация большинства возможностей, указанных компонентов представлена на сайте https://unicfd.ru. Подробнее об алгоритмах и методах, реализованных в соответствующих компонентах можно узнать в следующих статьях:

  1. Kraposhin, M. V., Elizarova, T. G., Istomina, M. A., Ryazanov, D. A., & Vatutin, K. A. (2018). Numerical simulation of compressible gas flows using regularized gas dynamic equations solver QGDFoam. Paper presented at the AIP Conference Proceedings, 2027, doi:10.1063/1.5065199.
  2. Kraposhin, M. V., Banholzer, M., Pfitzner, M., & Marchevsky, I. K. (2018). A hybrid pressure-based solver for nonideal single-phase fluid flows at all speeds. International Journal for Numerical Methods in Fluids, 88(2), 79-99. doi:10.1002/fld.4512.
  3. Kraposhin, M. V., Smirnova, E. V., Elizarova, T. G., & Istomina, M. A. (2018). Development of a new OpenFOAM solver using regularized gas dynamic equations. Computers and Fluids, 166, 163-175. doi:10.1016/j.compfluid.2018.02.010.
  4. Kraposhin, M. V., Ryazanov, D. A., Smirnova, E. V., Elizarova, T. G., & Istomina, M. A. (2018). Development of OpenFOAM solver for compressible viscous flows simulation using quasi-gas dynamic equations. Paper presented at the Proceedings - 2017 Ivannikov ISPRAS Open Conference, ISPRAS 2017, 2018-January 117-123. doi:10.1109/ISPRAS.2017.00026.
  5. Kraposhin, M., Bovtrikova, A., & Strijhak, S. (2015). Adaptation of kurganov-tadmor numerical scheme for applying in combination with the PISO method in numerical simulation of flows in a wide range of mach numbers. Paper presented at the Procedia Computer Science, 66, 43-52. doi:10.1016/j.procs.2015.11.007.
  6. Epikhin, A., Evdokimov, I., Kraposhin, M., Kalugin, M., & Strijhak, S. (2015). Development of a dynamic library for computational aeroacoustics applications using the OpenFOAM open source package. Paper presented at the Procedia Computer Science, 66, 150-157. doi:10.1016/j.procs.2015.11.018.
  7. Крапошин М.В. Возможности гибридного метода аппроксимации конвективных потоков при моделировании течений сжимаемых сред // Труды Института системного программирования РАН. 2016. Т. 28. № 3. С. 267-326.

С вопросами, пожеланиями и сообщениями об ошибках просим обращаться по электронной почте unicfd@ispras.ru.