|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
我计算的模型为二维流场计算,给定进出口压力,源项在水平和竖直方向都存在,不知道应该怎么调用UDF,请高手帮帮忙,小弟跪谢了…………
我编写的UDF函数为:
#include "udf.h"
DEFINE_SOURCE(xmom_source, c, t, dS, eqn)
{
real mu = 7.14e-5;
real rho = 1.225;
real an = 4.22e11;
real as = an/60;
real bn = 1.32e6;
real bs = 0;
real sita = 45/180*M_PI;
real arr = as*SQR(sin(sita))+an*SQR(cos(sita));
real arc = (an-as)*sin(sita)*cos(sita);
real acr = arc;
real acc = as*SQR(cos(sita))+an*SQR(sin(sita));
real brr = bs*SQR(sin(sita))+bn*SQR(cos(sita));
real brc = (bn-bs)*sin(sita)*cos(sita);
real bcr = brc;
real bcc = bs*SQR(cos(sita))+bn*SQR(sin(sita));
real x[ND_ND];
real con, source;
real temp = SQR(C_U(c, t))+SQR(C_V(c, t));
source = -mu*(arr*C_U(c, t)+arc*C_V(c, t))-rho*sqrt(temp)*(brr*C_U(c, t)+brc*C_V(c, t));
dS[eqn] = -mu*arr-brr*rho*sqrt(temp)-rho*C_U(c, t)*(brr*C_U(c, t)+brc*C_V(c, t))/sqrt(temp);
return source;
}
DEFINE_SOURCE(ymom_source, c, t, dS, eqn)
{
real mu = 7.14e-5;
real rho = 1.225;
real an = 4.22e11;
real as = an/60;
real bn = 1.32e5;
real bs = 0;
real sita = 45/180*M_PI;
real arr = as*SQR(sin(sita))+an*SQR(cos(sita));
real arc = (an-as)*sin(sita)*cos(sita);
real acr = arc;
real acc = as*SQR(cos(sita))+an*SQR(sin(sita));
real brr = bs*SQR(sin(sita))+bn*SQR(cos(sita));
real brc = (bn-bs)*sin(sita)*cos(sita);
real bcr = brc;
real bcc = bs*SQR(cos(sita))+bn*SQR(sin(sita));
real x[ND_ND];
real con, source;
real temp = SQR(C_U(c, t))+SQR(C_V(c, t));
source = -mu*(acr*C_U(c, t)+acc*C_V(c, t))-rho*sqrt(temp)*(brc*C_U(c, t)+bcc*C_V(c, t));
dS[eqn] = -mu*acc-bcc*rho*sqrt(temp)-rho*C_V(c, t)*(brc*C_U(c, t)+bcc*C_V(c, t))/sqrt(temp);
return source;
}
|
|