Проблема с большими радиальными зазорами в ANSYS TurboGrid

Сегодня мы решим с вами небольшую проблему, связанную с некорректной работой сеточного препроцессора ANSYS TurboGrid при разбиении геометрии лопаточных машин центробежного типа при больших радиальных зазорах. Пример подобной турбины показан на рисунке ниже. Здесь показана проточная часть турбины центростремительного типа с радиальным зазором высотой ~ 10% от высоты лопаток.

1

Попробуем загрузить созданную в BladeGen геометрию в TurboGrid. Как мы и предполагали, препроцессор выдал ошибку. Что надо сделать, чтобы исправить эту ошибку?

2

Перейдите в раздел Machine Data и с помощью правой кнопки мыши откройте выпадающее меню. Далее выберите опцию Edit in Command Editor.

3В редакторе команд отредактируйте параметр Surface Extension Factor. Вместо значения 0.1 укажите 0.5.

4

После этого TurboGrid нормально воспроизведет созданную ранее геометрию, а вы сможете сгенерировать затем качественную структурированную сетку.

На этом все. Удачного Вам моделирования!

С уважением, Денис Хитрых
Директор АО «Симулабс».
2016-11-21_16-58-13

Tips&Tricks: Решение нестационарных задач в ANSYS CFD

timeУ Джефри Чосера — «любимого» поэта английских королей — есть хороший афоризм про время: «Time and tide wait for no man». Тема скоротечности времени всплывает и в речи M, которая дает достойный отпор всем недоброжелателям МИ-6 в зале суда.

Что объединяет корифеев английской поэзии с вычислительной гидродинамикой? Ответ простой. Любая задача, которая решается в нестационарной постановке, т. е. в которой дискретизации подвергаются не только независимые переменные, относящиеся к пространству, но и переменная время. Поэтому сегодня мы рассмотрим с вами различные вопросы, связанные с решением нестационарных задач в газодинамических пакетах ANSYS CFX и ANSYS Fluent. Мы поговорим об обработке результатов нестационарных расчетов, программировании и многом другом. Большая часть материалов данного поста основана на реальных запросах пользователей в службу технической поддержки компаний ANSYS и КАДФЕМ.

quotefancy-357338-3840x2160

Вопрос 1. Как остановить нестационарный расчет в ANSYS Fluent, например, если температура в заданной точке (узле, средняя по объему, поверхности и пр.) достигла пороговой величины? Для этого можно использовать следующий UDF-макрос.

Код UDF (Stop Solver)

# include "udf.h"
/*********************************************************************************************/
/********************************* User input starts *****************************************/
real xmin=0.04, xmax=0.041, ymin=0.01, ymax=0.011, zmin=0.002, zmax=0.003;
real limit=340;
/********************************** User input ends ******************************************/
/*********************************************************************************************/

DEFINE_EXECUTE_AT_END(execute_at_end)
{

Domain *d;
Thread *t;
real sum_tempvol=0., sum_vol=0, vol_avg_temp;
real sum_tempmass=0., sum_mass=0, mass_avg_temp;
cell_t c;
real xc[ND_ND];

d = Get_Domain(1);
#if !RP_HOST /*serial or node*/
thread_loop_c(t,d)
{
if (FLUID_THREAD_P(t))
{
begin_c_loop_int(c,t)
C_CENTROID(xc,c,t);
if (xc[0] > xmin && xc[0] < xmax) { if (xc[1] > ymin && xc[1] < ymax) { if (xc[2] > zmin && xc[2] < zmax)
{
sum_tempvol += C_T(c,t) * C_VOLUME(c,t);
sum_tempmass += C_T(c,t) * C_R(c,t) * C_VOLUME(c,t);
sum_vol += C_VOLUME(c,t);
sum_mass += C_R(c,t) * C_VOLUME(c,t);
}
}
}
end_c_loop_int(c,t)
}
}
#endif

#if !RP_HOST /* not host */
vol_avg_temp = PRF_GRSUM1(sum_tempvol)/PRF_GRSUM1(sum_vol) ;
mass_avg_temp = PRF_GRSUM1(sum_tempmass)/PRF_GRSUM1(sum_mass) ;
#endif

node_to_host_real_2(vol_avg_temp,mass_avg_temp);

#if !RP_NODE
Message("Volume Averaged Temperature (K): %gn", vol_avg_temp);
Message("Mass Averaged Temperature (K): %gn", mass_avg_temp);

if (mass_avg_temp < limit)
{
RP_Set_Integer("converged",1);
Message("Temperature has dropped below limit %g n", limit);
}
#endif

}

Для использования данного макроса вам необходимо его откомпилировать (проверено для версии не ниже 17.0). И определить следующую команду (в строке exceute command): (if (= (%rpgetvar ‘converged) 1) (begin (ti-menu-load-string «/file/wcd low-temp-trig-%t.cas») (ti-menu-load-string «exit»))).

Как работает данный UDF-макрос? В процессе итераций выполняется проверка на достижении выбранной переменной заданного порогового значения. Если условие выполняется, то записываются *.cas и *.dat файлы.  И выполняется команда выхода.

Сегодня я успел рассмотреть только один вопрос. Но это только начало. В следующем году обязательно продолжим.

Всех с наступающим Новым годом и Рождеством!

С уважением, Денис П. Хитрых,
Директор АО «СимуЛабс».
2016-11-21_16-58-13

Доступно бесплатное тестирование ANSYS AIM 17.0 на базе облачных технологий

AIMНовость должна понравится всем, кто хочет приобщиться к новым знаниям и бесплатно протестировать мультифизичный пакет ANSYS AIM версии 17.0.

Начиная с этой недели вы можете удаленно протестировать возможности пакета ANSYS AIM на примере несколько разноплановых задач: гидродинамика, «прочность», электромагнетизм и сопряженная задача теплообмена.

Для этого вам необходимо перейти по ссылке http://www.ansys.com/tryitnowaim и нажать на кнопку START YOUR FREE DEMO.

По результатам удаленной сессии вы cможете составить отчет и отправить его в компанию ANSYS, Inc. (со всеми вашими комментариями и пожеланиями).

Территориально вы работаете в Москве, Ленинграде, Самаре, а ваша задача запускается за несколько тысяч миль (в моем случае — 3381 миль) от вашего дома. Это классический пример демонстрации возможностей современных облачных технологий и средств удаленной визуализации.

miles

С уважением, Денис Хитрых.

CFD-blog.ru: планы на 2016 год (технологии, мастер-классы, Q&A)

KhitrykhDPСегодня я расскажу о планах  CFD-blog.ru на 2016-й високосный год. Проанализировав все запросы, которые поступали в мой адрес и на форму «Как с нами связаться» в текущем году, я пришел к выводу, что уровень информационной поддержки таких направлений как, турбомашиностроение, моделирование многофазных потоков и моделирование процессов теплообмена, следует существенно увеличить. Поэтому в наступающем году я буду больше внимания уделять этим вопросам.

Кроме того, мы приняли решение не ограничиваться только тематикой вычислительной гидрогазодинамики, но с  учетом возросшего интереса пользователей к многодисциплинарным задачам, расширить тематику блога в сторону прочностных задач, т. е. традиционного ANSYS Mechanical.

MFТеперь чуть более подробнее о планах. Во-первых, изучать многофазные потоки следует с самых азов. Поэтому я начну публиковать в открытом доступе свой курс по многофазным потокам, основанный на лекция проф. Алана Бёрнса (Великобритания) и моих собственных методических материалах.

Во-вторых, мы совместно с вами решим несколько задач с использованием самых передовых технологий ANSYS, заложенных в Turbo-линейку (TBR-методы, SBES/SDES модели турбулентности, модели реальных газов и пр.).

r35s37

Наконец, мы приобщимся к миру многокритериальной оптимизации и расширенной кастомизации на основе ACT-технологии (в этом нам помогут специалисты R&D Центра SimuLabs4D).

Год предстоит сложный и насыщенный. Надеюсь, что часть нашего объемного плана реализуется и принесет вам пользу.

С уважением, Денис Хитрых. До встречи в новом году.

Варианты задания объемного источника с переменным размером в ANSYS CFX

Сегодня мы рассмотрит одну небольшую задачу, которая касается вопроса задания объемного источника переменного  размера на основе subdomain в ANSYS CFX.

Как вы знаете, в ANSYS CFX поддомен всегда имеет постоянный размер, но вы можете определить поддомен целиком для расчетной области и использовать CEL-выражения для задания объемного источника.

Предположим, что наш источник имеет форму «шайбы» радиусом 0.3 м и высотой 0.3 м. Соответствующий список выражений будет иметь вид:

z0 = 0.0 [m]
x0 = 0.5 [m]
y0 = 0.5 [m]
sourceRadius = 0.3 [m]
sourceHeight = 0.3 [m]
unitL = 1 [m]
rSource = sqrt((x-x0)^2 + (y-y0)^2)
hSource = z-z0
insideSource = step((sourceRadius-rSource)/unitL)*step((sourceHeight-hSource)unitL)
source = insideSource * 100 [W m^-3]

Соответственно, в пределах «шайбы» объемный источник энергии равен 100 Вт/м3, а за пределами «шайбы» он равен нулю. Эти выражения легко переделать так, чтобы они стали зависимыми от времени.

Читать далее

CFX User Fortran в версии 17.0

intel-logoНовость в преддверии выхода 17-й версии программных продуктов ANSYS. Компания  ANSYS, Inc. информирует всех пользователей гидрогазодинамического пакета ANSYS CFX, что в новой версии будут поддерживаться только компиляторы Intel Fortran (для операционных систем Windows и Linux, соответственно).

В версии ANSYS 17.0 заявлена поддержка Intel Fortran версии 15.0.2.  Компиляторы других фирм снимаются с технической поддержки и не рекомендуются к использованию.

Удачного всем моделирования.

С уважением, Денис Хитрых.

Отвечаем на письма читателей cfd-blog.ru. Ноябрь 2015

Сегодня я отвечу на два вопроса, которые поступили в мою личную почту. Я не буду подробно описывать постановку задач, но рассмотрю ключевые моменты, которые помогут вам затем самостоятельно сформулировать вашу конкретную задачу.

Первый вопрос относился к моделированию гидродинамики пара (влажного газа, парогазовой смеси и пр.) в ANSYS CFX. Рассмотрим эту задачу на примере моделирования течения  в проточной части паровой турбины. Геометрия расчетной области (сетка) показана на рисунке ниже. Моделируем сектор проточной части с условиями периодичности на соответствующих поверхностях.

rotor

Основной вопрос заключался в определении свойств рабочего тела (парогазовой смеси) в CFX. Что надо сделать? Для начала создайте два отдельных материала: условно «жидкость» (вода) и «газ» (водяной пар). Настройки закладки Material показаны на двух следующих рисунках. На первом — для жидкости, на втором — для газа, соответственно.

liquid

gas

Как вы можете заметить, я использовал систему уравнений IAPWS-IF97 (IAPWS — IAPWS Industrial Formulation 1997 for the Thermodynamic Properties of Water and Steam) для вычисления термодинамических свойств воды и водяного пар. Диапазоны температур и давлений, в которых можно использовать данные уравнения:

equБолее подробно об этом «стандарте» вы можете прочитать в этой статье

.

На этом рисунке я показал, как генерировать таблица на основе IAPWS-IF97 для «жидкости» (воды). Аналогично вы можете определить свойства водяного пара.

IAPWS

Теперь самый ключевой момент в этой задаче: определяем бинарную смесь в CFX, состоящую из газа-носителя (equilibrium constraint) и одного анализируемого компонента (equilibrium fraction).

binary

На этом всё. Для подтверждения достоверности указанного материала, привожу фрагменты результатов моделирования в нестационарной постановке роторной ступени в ANSYS CFX (версия 16.0).

results

Завтра мы вместе с вами более подробно рассмотрим второй вопрос, связанный с использованием Rigid Body Solver-a в ANSYS CFX. Запустим совместными усилиями в полет упрощенную геометрию снаряда (подкалиберного, бронебойного и т. п.).

С уважением, Денис Хитрых.