|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
Ansys 12的udf有个自定义比热的改进,DEFINE_SPECIFIC_HEAT(name,T,Tref,h,yi),可是用这个宏自定义的过程中,我发现没有办法按不同区域的方法定义cp,比如:
DEFINE_SPECIFIC_HEAT(proof,T,Tref,h,yi)
{cell_t c;
Thread *t;
Domain *d;
real cp,x[ND_ND];
d=Get_Domain(1);
thread_loop_c(t,d)
{
begin_c_loop(c,t)
{C_CENTROID(x,c,t);
if(x[1]<0.3)
cp=1000;
else
cp=2000;
}
end_c_loop(c,t)
}
return cp;
}
返回的值只有1000或2000两种答案。
当网格总高度y<0.3时,整个区域的cp=1000;
当网格总高度y>0.3时,整个区域的cp=2000;
那么C_CENTROID(x,c,t);
if(x[1]<0.3)
没有按c,t循环。不知道是怎么回事?望高人指点。 |
|