Перед началом работы настоятельно рекомендуем ознакомиться с правилами форума.

Как настроить с помощью UDF зависимость давления на входе от времени.

5 сообщений / 0 новое
Последняя публикация
L-13
Аватар пользователя L-13

Уважаемые профессионалы. Подскажите пожалуйста новичку в UDF, как правильно прописать зависимость давления  (pressure-inlet) от времени. Начальное давление должно быть не менее 80 атм, что бы не было обратного течения, т.к эти же 80 атм. заданы на выходе. На входе должно быть 80 + (46*time). И того за 5 секунд будет  230атм+80 начальные = 310 атм. на входе. 

Данный макрос компилируется без проблем. Программа начинает считать и на 3 шаге (Time Step Size 0.05) расчет останавливается с ошибкой. Правильно ли написан макрос? 

Обязательно ли задавать давление в паскалях в коде макросов, если в units  во вкладке General я переключил на атм. ? Спасибо. 

#include "udf.h"

DEFINE_PROFILE(press_smh, thread, position)
{
    face_t f;
    real pres_outlet = 80;
    real t = CURRENT_TIME;
    
    begin_f_loop(f, thread)
        {
            F_PROFILE(f, thread, position) = pres_outlet + (46*t);
        }
    end_f_loop(f, thread);
}

 

 

 

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

Здравствуйте.

Макрос написан правильно, но лучше в качестве третьего аргумента писать не position, a i или var, так как он задает индекс (целое число), которое определяет переменную, используемую решателем. C position, тоже будет работать, но так просто меньше путаницы.

Давление нужно задавать в паскалях, так в документации сказано «UDFs use and return values specified in SI units».

Что Fluent пишет в консоли при возникновении ошибки?

 

 

L-13
Аватар пользователя L-13

Большое спасибо за подтверждение правильности написания макроса. С ошибкой разобрался. Причина была в не правильной инициализации решения и не правильно настроенной модели турбулентности.  

L-13
Аватар пользователя L-13

Как закрыть тему если вопрос решен? 

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

темы сами блокируются через какое-то время

Тема закрыта