Skip to content
This repository has been archived by the owner on Feb 2, 2022. It is now read-only.

[solve] Blade Machines

Stanislau Stasheuski edited this page Oct 28, 2020 · 18 revisions

Моделирование сжимаемого течения в лопаточных машинах (Обзор моделей интерфейсов ротор-статор в среде OpenFOAM)

Обучающий проект: OpenFOAM-for-new-users/tutorials/bladeMachines/

Целью данной работы является обзор моделей интерфейсов ротор-статор (MRF), имеющихся в среде OpenFOAM. Оценка возможности применения этих моделей для расчёта вязких сжимаемых турбулентных течений в решётках турбомашин на основе тестовой модели. Обзор литературы, проведение тестовых расчётов и анализ результатов. Составление рекомендаций и описание особенностей работы расчёта лопаточных машин в ПК OpenFOAM c использованием интерфейса MRF.

1 Обзор литературы

1.1 Официальная версия OpenFOAM. Несжимаемые течения

Использование среды OpenFOAM для моделирования течения в лопаточных машинах упоминается во многих источниках. Здесь приведён краткий обзор моделей такого типа и их особенностей, описанных в литературе.

Обмен ГУ в месте контакта ротора со статором для подвижной сетки осуществляется проецированием пары скользящих поверхностей друг на друга и заменой исходных граней новыми гранями, таким образом обеспечивая односвязную многогранную сетку (см. рисунок 1.1) [1]. При рассмотрении рисунка 1.1 логично предположить, что связь ячеек слева (master patch) c ячейками справа (shadow patch) зависит от их взаимного расположения. Данный эффект компенсируется схемой интерполяции на основе отношения площади ячеек и уже на основе этого, расчета весовых коэффициентов. В итоге, сохраняется консервативность связи и соблюдение закона сохранение массы на границе раздела до второго порядка точности. Данная схема интерполяции граничных условий получила название Generalized Grid Interface или GGI.

alt_text

Рисунок 1.1 – Соединение двух неконформных патчей с помощью графического интерфейса

При частичном перекрытии поверхностей на стыке ротор-статор используется интерфейс Partial Overlap GGI, в котором моделирование несоответствующих пар интерфейсов ротор-статор, предполагает симметрию вращения. Предполагается, что открытая часть интерфейса соответствует копии существующей геометрии, преобразованной по углу (cyclic angle) [1].

alt_text

Рисунок 1.2 – Partial Overlap GGI в многоступенчатом компрессоре [1]

Моделирование такого типа может быть выполнено как в установившемся режиме с использованием интерфейса MRF (см. рисунок 1.2), так и для движущейся сетки (см. рисунок 1.3).

alt_text

Рисунок 1.3 – Применение Partial Overlap GGI с вращающейся сеткой [1]

Реализована возможность задания граничных условий как в относительной, так и в абсолютной системе координат. Однако, авторы [1] утверждают, что формулировка в абсолютной скорости предпочтительна, так как она не требует преобразования вектора скорости на границе раздела между вращающимися зонами. Данная проблема решена авторами статьи [2], которые, в итоге, разработали собственный решатель для несжимаемых течений simpleMRFTurboFoam на основе simpleFoam_ _(также авторами [6] и [9] для решателей с учётом сжимаемости потока). Также присутствует возможность циклического задания граничных условий вида GGIcyclicGGI.

В OpenFOAM реализован интерфейс mixingPlane с возможностью окружного усреднения параметров на границе ротор-статор в стационарной постановке для осреднения нестационарности потока в решётке лопаточной машины. Основным компонентом интерфейса mixingPlane является круговой усредняющий интерполятор (см. рисунок 1.4, поверхность G), который вычисляет и передает средние значения поля. Интерполятор работает с использованием промежуточной цилиндрической накладной поверхности, состоящей из набора 360-градусных лент, разделенных между двумя специально созданными интерфейсами GGI [2]. Также, текущий вариант интерфейса mixingPlane требует выбора между радиальным или осевым профилем дискретизации [2], что позволяет применять его как для осевых, так и для радиально осевых машин.

alt_text

Рисунок 1.4 – Интерполятор mixingPlane [2]

1.2 Расширенная ветка OpenFOAM. Сжимаемые течения

Стоит отметить, что во многих источниках представляются примеры моделирования только для с несжимаемого течения (с использованием решателей simpleFoam или simpleMRFTurboFoam), которые уже встроены в официальную версию программного комплекса. Случаи же моделирования сжимаемого течения в лопаточных машинах средствами OpenFOAM в литературе встречаются реже, что может быть обусловлено отсутствием необходимого решателя в официальной версии платформы. Однако именно сжимаемые течения представляют наибольший интерес в силу того, что они являются преобладающими в лопаточных машинах.

В расширенной ветке OpenFOAM-extended разработано несколько ядер для моделирования сжимаемого течения в лопаточных машинах. Однако, обязательно стоит сказать, что к решателям выложенным в расширенной ветке возникают вопросы по валидации.

Наиболее часто упоминаемые решатели, разработанные для моделирования сжимаемого течения в лопаточных машинах:

  1. transonicMRFDyMFoam (ветка openfoam-extend-DensityBasedTurbo написанная для OpenFOAM-1.6-ext) — решатель для околозвуковых потоков [6]. Диссертация [7] посвящена вопросу валидации решателя (также там подробно описана методика работы с ним). Автор сравнивает экспериментальные данные с результатом расчёта на ядре и предоставляет обширное количество результатов. В итоге, минимальный индекс соответствия (Concordance Index) составляет 90%. Валидацией данного решателя занимались и авторы статьи [8], которые проводили сравнение результатов эксперимента, данных полученных в PushButtonCFD и некоторых ядер, встроенных в официальную версию OpenFOAM. Валидация проводилась на сходящемся/расходящемся сопле, сравнивались показатели при моделировании скачка уплотнения при переходе на сверхзвуковые течения, также валидация проводилась для осевой турбины (в нескольких вариантах постановки), для радиально-осевого компрессора и радиально осевой турбины. При всех вариантах валидации авторы получили высокую степень сходимости с экспериментальными данными, а где наблюдались расхождения с ними данные были близки к результатам моделирования в PushButtonCFD. Имеющиеся расхождения авторы объясняют не каким-либо конкретным недостатком решателя, а внутренними ограничениями моделей турбулентности, низким разрешением сетки и точностью/интерпретацией экспериментальных данных [8]. Также авторы провели сравнение времени расчёта и обнаружили, что время расчёта в OpenFOAM было значительно больше, чем для PushbuttonCFD или любого другого сопоставимого коммерческого решателя. И была найдена причина: в решателе не реализованы два метода ускорения, которые присутствовали у сравниваемого софта: неявное остаточное сглаживание (implicit residual smoothing) и multigrid.

  2. steadyCompressibleMRFFoam (ветка OpenFOAM-extend-4.0) – решатель для сжимаего течения со встроенным интерфейсом MRF. Особенностью решателя является реализация уравнения ротальпии, а также реализация соответствующих граничных условий и интерфейсов ротор-статор для обработки этой физической величины [9]. Автор решателя проводит валидацию [9] в статической постановке, моделируя вращение с помощью интерфейса MRF. Проводит расчёт на полутора ступенях турбины при 3501 об/мин и скорости на впуске 60 м/с и проводит сравнение данных полученных в OpenFOAM-extend и коммерческим софтом как при использовании интерфейса mixingPlane, так и GGI. В итоге, при сравнении по изоэнтропной эффективности максимальная погрешность результатов составила менее 2 %, при сравнении же по крутящему моменту разница вовсе была менее половины процента. Однако, стоит сказать, что при валидации не было проведено сравнение результатов с экспериментальными данными, также в статье не указано с каким именно коммерческим софтом было проведено сравнение. В магистерской работе [10] под руководством автора данного решателя проведено моделирование 3,5 ступени компрессора, валидация им не проводилась, но присутствует подробное математическое описание решателя и методика работы с ним.

2 Рекомендации

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

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

  • cyclicGGI – периодическое граничное условия GGI {официальная версия, расширенная версии}.
  • GGI (Generalized Grid Interface) – граничное условие, позволяющее отображать одну границу на другую {официальная версия}.
  • mixingPlane – интерфейс, реализующий окружное усреднение параметров на границе ротор-статор {официальная версия}.
  • MRF (Multiple Reference Frame) – интерфейс моделирующий вращение {официальная версия}.
  • Partial Overlap GGI – интерфейс, обеспечивающий консервативность при несоответствии площадей на стыке ротор-статор (pitch change интерфейс в OpenFOAM).
  • simpleFoam – ядро, для расчёта несжимаемых течений без возможности учёта вращения {официальная версия}.
  • simpleMRFTurboFoam – ядро на базе simpleFoam, для возможности расчёта несжимаемых течений с учётом вращения {официальная версия}.
  • transonicMRFDyMFoam – ядро, для расчёта сжимаемых течений (в том числе и сверхзвуковых) в лопаточных машинах с учётом вращения {дополнение к расширенной версии}.
  • steadyCompressibleMRFFoam – ядро, для расчёта сжимаемых течений в лопаточных машинах с учётом вращения {расширенная версия}.

Рекомендации в дальнейшем будут уточнены и детализированы после проведения тестовых расчётов и возможной валидации инструментов OpenFOAM.

Для теста сжимаемых решателей предполагается использование сеток из обучающих кейсов, вложенных в DensityBasedTurbo/AxialStageMRFRotating (см. главу 3.1) и extend-4.0/steadyCompressibleMRFFoam/axialTurbineMixingPlane (см. главу 3.2).

Таким образом, планируется проведение расчёта с использованием ядер transonicMRFDyMFoam и steadyCompressibleMRFFoam разработанных для учёта сжимаемости течения, промежуточное сравнение полученных результатов и выявление особенностей данных решателей обнаруженных уже при непосредственной работе с ними.

Для запуска решателя steadyCompressibleMRFFoam требуется установка OpenFOAM-extend-4.0. Стоит обратить внимание, что при каждом включении нового терминала для доступа к OpenFOAM-утилитам четвёртой расширенной версии необходимо написать:

$ fe40

Расчётная модель обучающего проекта axialTurbineMixingPlane представлена ниже (см.рисунок 3.1), где SHROUD-поверхности убраны и добавлена осевая симметрия.

alt_text

Рисунок 3.1 – Расчётная модель axialTurbineMixingPlane

Конечно-элементная модель (см. рисунок 3.2) обучающего проекта, содержит 4300 элементов.

alt_text

Рисунок 3.2 – Разбивка модели axialTurbineMixingPlane на контрольные объемы

Стоит обратить внимание, что в данной моделируется течение в межлопаточном канале (см. рисунок 3.2)

В данной модели реализован интерфейс mixingPlane (см. рисунок 3.3).

alt_text

Рисунок 3.3 – Интерфейс mixingPlane в решателе steadyCompressibleMRFFoam

В обучающем проекте axialTurbineMixingPlane заданы начальные условия: alphat, epsilon, i, k, mut, p, T, U:

  • alphat – турбулентная температуропроводность [кг/(м・с) = Па・с], , где – плотность, – теплоёмкость, – турбулентная теплопроводность;
  • lambdat – турбулентная теплопроводность;
  • epsilon – скорость диссипации турбулентной кинетической энергии [м^2/с^3];
  • i – энтальпия* [м^2/с^2];
  • k – кинетическая энергия турбулентности [м^2/с^2];
  • mut – турбулентная вязкость [кг/(м・с) = Па・с];
  • p, T, U – термодинамические параметры.

*Файл энтальпии i не является задаваемым начальным условием. В папку записывается результат начального пересчёта параметров (произведения теплоёмкости на заданную в файле Т температуру).

Для патчей задаётся тип граничного условия в соответствии с типами задаваемыми в файлах самих граничных условий. Это делается либо в словаре blockMeshDict, либо в файле boundary если используется сетка созданная не в OpenFOAM.

Области MRF задаются в файле MRFZones путём задания имени вращающего блока.

    rotor // имя блока
    {
        nonRotatingPatches ( RUSHROUD );

        origin    origin [0 1 0 0 0 0 0]  (0 0 0);
        axis      axis   [0 0 0 0 0 0 0]  (0 0 1);
        omega     omega  [0 0 -1 0 0 0 0] -10;
    }

Можно "открепить" необходимые патчи от блока с помощью функции nonRotatingPatches.

  • Параметр origin определяет начало координат оси вращения (смещение относительной системы координат)
  • Параметр axis задаёт положение оси вращения (i j k)
  • Параметр omega определяет частоту вращения [размерность] частота;

В файле thermophysicalProperties задаются параметры среды.

Так как решатель не включает в себя энергию / тепло, то в нём включены библиотеки моделей для вязкости ν. Модель связывает вязкость со скоростью деформаций, которая определяется в словаре transportProperties. Подробнее здесь.

Задание шага расчётов и времени расчёта задаётся в controlDict.

В файле fvSolution задаются параметры расчётных схем для каждой переменной (поэтому параметры внутри solvers{}, SIMPLE{}и PIMPLE{} желательно оставлять постоянными), также внутри relaxationFactors{} можно проставить параметры релаксации для каждого из параметров расчёта. В fieldBounds{} выставляются допустимые значения полей.

С помощью файла decomposeParDict задаётся параметры распараллеливания решения.

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

Для запуска решателя transonicSteadySRFFoam требуется установка OpenFOAM-extend-3.0. Стоит обратить внимание, что при каждом включении нового терминала для доступа к OpenFOAM-утилитам четвёртой расширенной версии необходимо написать:

$ fe30

Ниже представлена конечно-элементная модель обучающего проекта axialTurbineMixingPlane, содержащая 42080 элементов.

alt_text

Рисунок 3.3 – Тестовая модель DensityBasedTurbo

Пока запустить данную модель не удалось, так как возникли проблемы при её запуске (и прочих обучающих моделей DensityBasedTurbo). Возникали ошибки связанные с типом patchMassFlow (хотя OpenFOAM и сам DensityBasedTurbo были скомпилированы без ошибок).

  1. OpenFOAM TURBO TOOLS: FROM GENERAL PURPOSE CFD TO TURBOMACHINERY SIMULATIONS H. Jasak, M. Beaudoin, Proceedings of ASME-JSME-KSME Joint Fluids Engineering Conference 2011, AJK2011-FED, July 24-29, 2011, Hamamatsu, Shizuoka, JAPAN
  2. Steady-state capabilities for hydroturbines with OpenFOAM, M. Page, M. Beaudoin, A.-M. Giroux, Internationnal Journal of Fluid Machinery and Systems, 4(1):160–170, Jan-Mar 2011
  3. Development of a General Grid Interface for Turbomachinery simulations with OpenFOAM, M. Beaudoin, H. Jasak, Open Source CFD International Conference, December 2008
  4. The ERCOFTAC centrifugal pump OpenFOAM case-study, O. PETIT, M. PAGE, M. BEAUDOIN, H. NILSSON, 3rd IAHR International Meeting of the Workgroup on Cavitation and Dynamic Problems in Hydraulic Machinery and Systems, October 14-16, 2009
  5. Beaudoin, M, et al. “Evaluation of an Improved Mixing Plane Interface for OpenFOAM.” IOP Conference Series: Earth and Environmental Science, vol. 22, no. 2, 2014, p. 022004., doi:10.1088/1755-1315/22/2/022004.
  6. O. Borm, A. Jemcov, H.P. Kau, Density based navier stokes solver for transonic flows, in: 6th OpenFOAM Workshop, PennState University, USA, 2011. http://www.personal.psu.edu/dab143/OFW6/Abstracts/oliver_borm_ab.pdf
  7. A. Reis, Validation of NASA Rotor 67 with OpenFOAM’s Transonic Density-Based solver
  8. Anderson, Mark R., and Daryl L. Bonhaus. “Validation Results for a Diverse Set of Turbomachinery Cases Using a Density Based OpenFOAM®Solver.” Volume 2B: Turbomachinery, 2014, doi:10.1115/gt2014-25977.
  9. Dominicis, Ilaria De, et al. “Enhanced Turbomachinery Capabilities for Foam-Extend: Development and Validation.” OpenFOAM®, 2019, pp. 145–155., doi:10.1007/978-3-319-60846-4_11.
  10. Bruno Bartolec “Numerical Simulation Of The Flow In A Multi-stage Axial Compressor”, Master’s thesis, 2017

<- К предыдущему разделу

Clone this wiki locally