День добрый.
Такое дело: взялся проверить статьи по расчету числа Нуссельта для разных моделей радиаторов и столкнулся с одной сильно усложняющей мне жизнь проблемой; конкретно - корректность той или иной модели турбулентности и настроек домена с условием вязкости.
Например, сейчас я считаю вертикальный пластинчатый радиатор с шахматным расположением пластин; сам радиатор очевидно задаю твердым телом, вокруг него делаю домен с газом (воздухом) и вектор ускорения свободного падения задаю через Buoyancy Model в настройках домена. И вот здесь начинаются сложности:
1. Вопрос выбора Air Ideal Gas или Air at 25 C.
Я провел множество расчетов и при Air Ideal Gas c задаваемой референсной плотностью результат меняется незначительно. Чего не скажешь о Air at 25 C - каждый градус оказывает значительное влияние на расчет. И да - я изначально старался задавать референсную температуру как среднюю ожидаемую. Что же все-таки есть смысл выбирать?
2. Вопрос выбора модели турбулентности.
Опять же, много проведенных тестов, прочитанный-перечитанный хелп CFX'a и пособие Гарбарука меня ни к чему не привели. SST и ламинарный (который, по сути, и расчитывался в аналитическом расчете, который я и проверяю) режимы турбулентности оказываются почти одинаковыми, но k-e почти во всех расчетах дает результат, отличающийся на 20-30 градусов, при и без того малых температурных напорах (около 40 градусов). Но что характерно - именно k-e дает результат, наиболее близкий к аналитическому. На какую же модель ориентироваться? Есть ли смысл делать нестационарный расчет (честно говоря, я уже - SAS SST сходится с ламинарным и стационарным SST, LES Smagorincky еще меньше)?
Что характерно - здесь у SST и ламинарного режима нагретая часть находится снизу (g: y=9.81), хотя казалось бы должна находиться вверху.
При более плотной сетке результат SST не сильно отличается от менее плотной:
3. Корректность сетки.
Я так подозреваю, что большинство моих проблем идет от некорректной сетки. Честно говоря - так и не понял, какая в этом случае будет корректнее всего, стараюсь придерживаться четырехугольных ячеек.
4. Корректность заданных теплофизических характеристик домена.
Тут что касается свойств газа - есть ли смысл задавать свои свойства воздуха по справочным данным, если он отличается от 25 градусов? Можно ли задать табличной функцией?
Сам расчет тут, с результатами поэтому немного жирноват:
https://yadi.sk/d/oQuTMRTHxvhS2
Заранее спасибо за любую помощь.
---
P.s.
Может заодно подскажете, почему CFX Pre может долго - вплоть до нескольких часов - подгружать модель, у которой много выступов или тел? Игольчатый радиатор с парой сотен штырей на графической станции умудряется грузиться ОЧЕНЬ долго, и так же отзываться на каждое действие.
Здравствуйте!
У вас расчётная область совершенно неадекватных размеров. Если длинная сторона радиатора A, короткая B, а высота H, то я бы сделал в первом приближении 1,5A вниз, 4А вверх, 2B влево и вправо, 3H вверх. С такой расчётной областью судить о какой-то адекватности результатов бессмысленно. Предлагаю вам пересчитать с нормальными размерами, с идеальным газом, Thermal Energy вместо Total и зависимой от температуры вязкостью. Также при построении сетки лучше не использовать hex dominant, т.к. он для прочности. На такой прямоугольной модели проще всего использовать айспак (экспортировать во флюент, потом в CFX), либо айсем. Не забудьте также про погранслой с соответствующими модели значениями y+.
Честно говоря - я думал размер области не влияет на результат. Казалось бы, опенинги должны были решить эту проблему.
Принято.
По-моему, результаты стали еще неадекватнее :/
С SST.
Вот вопрос - как её задать. В настройках газа, через Expressions?
Айспак - штука капризная. Или я не умею его готовить. :)
Или вы предлагаете использовать сеточный генератор айспака?
Вот тут, честно говоря, вообще ничего не понял.
--
А что с моделями турбулентности? Есть какие-то общепринятые, которые применимы к большинству моделей в определенном диапазоне точности?
(Насколько я понял, те что основаны на IDDES самое-самое, но в CFX их вроде как пока нет.)
И все еще непонятно насчет нестационара. Опять же - думал что он нужен только для расчета переходных процессов, но может считать нужно в нем? Даже если меня интересует только устоявшийся режим.
И да - спасибо за ответы :)
Вроде понял: создается пользовательская функция, а потом из неё Expression с функцией от температуры?
1. С вязкостью поняли правильно.
2. Я предлагал строить сетку в айспаке, но в принципе в нём можно и считать - тот же флюент, просто не все настройки видны. Опять же можно модель открыть флюентом и допилить.
3. Картинки по неадекватности результатов не совсем понятны. Если течение сверху вниз, то проверьте опорную плотность.
4. Расписывать про погранслой не буду, т.к. это базовые вещи. Просто поищите на форуме (тут, например), или на cfd-online, или в хелпе, или в гугле. Информации тьма.
5. По поводу моделей - ориентируйтесь на SST. IDDES и другие вихреразрешающие модели будут неподъёмными для вашей задачи, т.к. предполагают нестационар с очень мелким шагом. Вообще не факт даже, что у вас все режимы будут турбулентными.
6. Нестационар иногда приходится включать даже в тех случаях, когда интересует установившийся режим. Особенно это характерно для естественной конвекции - стационарное решение почти всегда неустойчиво, и приходится считать в нестационаре с последующим осреднением во времени.
Во флюенте ни сном, ни духом. Лишь немного тыркался, не понравилось, остался на CFX. Он как-то... интуитивнее. А вот айспаком пользовался, но он тоже иногда такое выдает в узлах, особенно почему-то на простых моделях, что только офигевать остается. Опять же - возможно я просто не умею им пользоваться, хотя казалось бы и так урезанный донельзя флюент.
Что понимается под опорной? Референсная? Если так, то брал среднюю ожидаемую, как для 60 градусов. В k-e моделях оно же нормально отображается, а SST чудит. Вон и скорость течения там 2.5 метра в секунду. Откуда такие числа он берет...
Хмм, кажется понял о чем речь, вот только что есть y+ в настройках модели. Ну да ладно, завтра покопаюсь, авось найду.
У меня вообще все должно быть сугубо ламинарным. Ну, если исходить из аналитического расчета. Там критерий Грасгофа не превышает 105
Эка, ладно, завтра почитаю насчет нестационара и какой шаг по времени там нужен.
--
Очередные благодарности.
да
а сетку как строите? пробовали secondary gradients отключать?
По умолчанию отключен у меня.
В общем, пару дней тут тыркался, читал про yplus, в том числе и вашу статью, построил сетку заново:
Толища первой ячейки - 0.1 мм (бралась с запасом для yplus<1), пять слоев (inflation). Минимальная величина треугольных - 0.25 мм, максимальная - 5 мм, рост последующих 10%.
Две таких сетки на две модели - одна большая, согласно вашим рекомендациям, другая в десять раз меньше для сравнения.
Настройки жидкого домена (Air Ideal Gas) для крупной модели:
Для малой все то же самое, только расчет проводился в стационарном режиме с моделью турбулентности SST.
Динамическую вязкость задавал в настройках Air Ideal Gas через Expression:
Настройки переходных процессов:
Наконец, расчетная модель для крупной:
Сходимость я отслеживаю через User Points, на данный момент более-менее сошлась только малая, большая грузит до отказа шестнадцатиядерник и обещает занять еще пару дней, хотя казалось бы - простая модель:
И результаты для неё же:
А это, в свою очередь, для большой, пока не сошедшейся.
Итак, что меня на данный момент больше всего настораживает: градиент температур вокруг малой, "перевернутый" градиент температур и скоростей (тепло же должно идти вверх?) и что самое важное - средняя скорость в районе 0.8 м/c при естественной конвекции. И именно скорость я склонен подозревать в том, что температура у меня на 27 с лишним градусов меньше чем должна быть. Мне откровенно не понятно откуда она берется: на выходах домена кроме опенингов никаких условий. Температурный напор тоже такую создавать не должен. User Points для скорости хоть и показывает, что она падает, но на тысячные за несколько итераций. Можно предположить что дело в размере расчетной области, но... рисунок выше показывает что и там есть схожие проблемы, а User Points - что результат будет не сильно иным.
Вновь надеюсь на вашу подсказку, куда ткнуться дальше. Ибо идей уже нет :/
можно большую модель глянуть?
Если вы имеете ввиду весь расчетный файл, то могу сделать архив ближе к вечеру (он очень долго запускается и также долго останавливается, а у меня возможность использовать компьютер только в рабочее время), но весить он будет прилично даже если оттуда потереть промежуточные результаты.
Я пока попробую с малой еще поиграться, может найду в чем проблема.
так вы def'ник скиньте, он не должен много весить. С маленькой модлью не вижу смысла ковыряться, т.к. она заведомо неправильная. Если не верите мне, погуглите по моделированию естественной конвекции и посмотрите на типичный размер расчётной области.
Добавить комментарий