Все ответы об инженерном анализе

Усреднение результатов в ANSYS CFX

Аватар пользователя Kirill Pestov
3 7048

Иногда в инженерной практике возникают ситуации, когда приходится прибегать к операции усреднения по итерациям контролируемых величин. Почему возникает необходимость в усреднении результатов? Задача, решаемая в стационарной постановке, может иметь нестационарную природу, при этом нам приходится иметь дело с естественной неустойчивостью, которую, как правило, достаточно сложно полностью подавить искусственными способами. Как следствие, мониторы интересующих переменных не выходят на горизонталь, и невязки имеют колебательный характер (рис. 1).

             

Рис. 1

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

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

Рис. 2

Далее необходимо создать монитор в Output Control и подключить опцию Monitor Statistics. В этом же окне выбрать из списка Statistics List интересующую статистическую функцию, например, Arithmetic Average (среднее арифметическое), и указать номер итерации, начиная с которой будет происходить вычисление статистической функции. Ниже показан пример создания монитора ClCylinder, который выводит изменение значения коэффициента подъемной силы на поверхности цилиндра (рис. 3).

Рис. 3

После создания монитора необходимо написать еще одно выражение, которому будет передаваться значение ранее созданного монитора, т.е. искомое среднее значение. Его синтаксис выглядит следующим образом (рис. 4):

Рис. 4

Функция probe возвращает среднеарифметическое значение монитора коэффициента подъемной силы ClCylinder. Далее необходимо создать дополнительную переменную (Additional Variables), так как без неё выражение с функцией probe для вывода осредненного значения монитора коэффициента подъемной силы не будет отображаться в CFD-Post.

Порядок создания дополнительной переменной следующий. В дереве проекта раскройте ветку Additional Variables, затем нажмите ПКМ и выберите Insert -> Additional Variable (рис. 5).

 

Рис. 5

В появившемся окне выставьте настройки как показано на рис. 6. Обратите внимание на размерность - в нашем примере осредняемая величина безразмерна, поэтому единицы не указаны. Если осредняемая величина имеет размерность, то эту размерность нужно указать и для дополнительной переменной.

Рис. 6

После этого необходимо зайти в настройки домена и выбрать вкладку Fluid Models, в которой будет отображаться ранее созданная дополнительная переменная. В поле Option нужно выбрать Algebraic Equation и в качестве Add. Var. Value указать выражение с функцией probe (рис. 7).

Рис. 7

На этом этапе все подготовительные действия по усреднению значения коэффициента подъемной силы выполнены. Остается только запустить расчет (рис. 8) и посмотреть получившиеся результаты в CFD-Post.

Рис. 8

Для того, чтобы посмотреть усредненное значение коэффициента подъемной силы, необходимо в CFD-Post во вкладке Variables найти ранее созданную переменную и отобразит ее значение (рис. 9).  

Рис. 9

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

В заключение хотелось бы добавить, что кроме вычисления среднего значения Вы также можете создать дополнительный монитор, на основе которого будет вычисляться, например, стандартное отклонение (Standard Deviation) интересующей переменной (в нашем случае - коэффициента подъемной силы) от среднеарифметического значения . Стандартное отклонение может использоваться в качестве критерия остановки, тем самым сокращая общее количество итераций и потребное время расчета. Подобнее об особенностях остановки решения в ANSYS CFX можете ознакомиться в статье.

PS Используя бета-опцию "Boundary Field Only", можно сэкономить, т.к. дополнительная переменная будет вычисляться только на границах расчётной области.

Комментарии

Аватар пользователя livan

Спасибо за статью! Есть несколько вопросов:

Почему в мониторе число итераций интервала осреденения задано равное 1?

Где, все-таки, задается интервал осреденения, например, последние 50 итераций?

Если в отслеживаемом выражении ( в примере ClCylinderExpression) используются данные из нескольких доменов, в каком настраивать дополнительную переменную?

 

Аватар пользователя dvolkind

Цитата:
Почему в мониторе число итераций интервала осреденения задано равное 1? Где, все-таки, задается интервал осреденения, например, последние 50 итераций?

На рисунке единица взята от фонаря. Интервал задается именно там.

Цитата:
Если в отслеживаемом выражении ( в примере ClCylinderExpression) используются данные из нескольких доменов, в каком настраивать дополнительную переменную?

Без разницы.
 

Аватар пользователя livan

Спасибо!

Добавить комментарий

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