代码如下,请朋友们帮我看看到底是什么问题。
第一步是要用DEFINE_ADJUST计算边界上的平均温度avg_temp,然后用平均温度来计算边界上的对流换热系数,可是我在模拟的时候发现,在DEFINE_PROFILE宏中,avg_temp的值并没有读取上面的结果,而一直是0.这是为什么呢?毕业论文的关键步骤,拜托啦!!!
#include "udf.h"
#include"math.h"
real avg_temp;
real NV_VEC(A);
real sum_T_A=0.0;
real sum_A=0.0;
real T;
Thread *thread_out;
face_t f;
Domain *domain;
DEFINE_ADJUST(adjust,d)
{
domain=Get_Domain(1);
thread_out=Lookup_Thread(domain,13);
begin_f_loop(f,thread_out)
{
F_AREA(A,f,thread_out);
sum_A+=NV_MAG(A);
sum_T_A+=NV_MAG(A)*F_T(f,thread_out);
}
end_f_loop(f,thread_out)
avg_temp=sum_T_A/sum_A;
}
DEFINE_PROFILE(new,t,i)
{
begin_f_loop(f,t)
{
T=avg_temp;
F_PROFILE(f,t,i)=0.0346*(T-295)+5.8969;
}
end_f_loop(f,t) |