UDF编写问题
问题描述:
UDF编写问题
本人刚刚接触fluent自定义函数,对函数的编写理解还很浅显,写了以下一段程序作为速度入口边界条件,原风速廓线方程为u=Uref*(z/Zref)^0.22,其中Uref=5m/s,Zref=0.5m,但是导入fluent以后,第一步迭代就出现divergence detected in AMG solver:x-momentum的错误提示,之前不用自定义函数时,计算是可以收敛的,请问这是什么原因?程序编写有错误吗?小弟先谢过了.
#include "udf.h"
#define a 0.22
#define Uref 5
#define Zref 0.5
DEFINE_PROFILE(x_velocity,thread,position)
{
real z,u,x[ND_ND];
face_t f;
begin_f_loop(f,thread)
{
F_CENTROID(x,f,thread);
z=x[1];
u=Uref*pow(z/Zref,a);
F_PROFILE(f,thread,position)=u;
}
end_f_loop(f,thread)
}
答
x[1]表示y坐标,确保你的高度方向是y方向请问我的高度方向是z,要如何表示呢?x[2]