|
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
在一個存在的溫度場中我需要再額外的解三條傳輸方程
但是在跑的時候總是第一步就發散
於是我打開solution controls---> advanced... 裡面將uds equations的AMG method 改為selective
verbosity設定為2來看
三條uds的tolerance和殘值在第一步的時候顯示如下
uds-0 equation:
tol. 1.#QOe+000
Cycle Residual
----- ---------
0 1.#QOe+000
1 1.#QOe+000
2 1.#QOe+000
(以下略)
uds-1 uds-2的狀態也相同
想請問一下 tol. 1.#QOe+000 是哪裡出了問題呢?
網路上查到可能是分母有一個非常小的數讓整個運算發散
但不知道要如何更正?
附上UDF請各位先進指教
#include "udf.h"
#define PI (3.1415926)
real x[ND_ND];
face_t f;
real diff;
real Kn, rc, kb, rp, diffuse;
real source, source1, B , As, dp, Tau, c, np, l, g;
real kk,e, lumda;
DEFINE_DIFFUSIVITY(diffusivity,c,t,i) //三條uds的擴散係數
{
C_CENTROID(x,c,t)
rp=3.*C_UDSI(c,t,1)/C_UDSI(c,t,2);
dp=2.*rp;
np=pow(C_UDSI(c,t,2),3)/(36*PI*C_UDSI(c,t,0)*pow(C_UDSI(c,t,1),2));
rc=rp*pow(np,(1./1.8));
lumda=C_MU_EFF(c,t)*sqrt(PI*28.8/(2*8.31*C_T(c,t)));
Kn=lumda/rp;
kb=1.38*pow(10.,-23);
diffuse=(kb*C_T(c,t)/(6.*PI*C_MU_EFF(c,t)*C_R(c,t)*rp))*((5.+4.*Kn+6.*pow(Kn,2)+18.*pow(Kn,3))/(5.-Kn+(8.+PI)*pow(Kn,2)));
//what's the difference between turbulence viscousity C_MU_T(c,t) and Laminar viscousity C_MU_L(c,t) and effective viscousity C_MU_EFF(c,t)
return -diffuse;
}
DEFINE_SOURCE(N_source,c,t,dS,eqn)
{
C_CENTROID(x,c,t)
c=sqrt(8.*kb*C_UDSI(c,t,0)*C_T(c,t)/(PI*C_R(c,t)*C_UDSI(c,t,1)));
l=8.*diffuse/(PI*c);
g=(1./(6.*rc*l))*(pow((2.*rc+l),3.)-pow(4.*pow(rc,2.)+pow(l,2.),1.5))-2.*rc;
B=8.*PI*diffuse*dp*pow((dp/(dp+sqrt(2.)*g))+8.*diffuse/(sqrt(2.)*c*dp),-1.);
source=-0.5*pow(C_R(c,t),2.)*B*pow(C_UDSI(c,t,0),2.);
dS[eqn]=-pow(C_R(c,t),2.)*B*C_UDSI(c,t,0);
return source;
}
DEFINE_SOURCE(V_source,c,t,dS,eqn)
{
C_CENTROID(x,c,t)
return 0.;
}
DEFINE_SOURCE(A_source,c,t,dS,eqn)
{
C_CENTROID(x,c,t)
As=pow(PI*C_UDSI(c,t,0),1/3)*pow(6.*C_UDSI(c,t,1),2/3);
Tau=8.75*pow(10.,19)*pow(6.*C_UDSI(c,t,1)/C_UDSI(c,t,2),4)*exp(3.1*pow(10.,4.)/C_T(c,t));
source1=-(C_UDSI(c,t,2)-As)*C_R(c,t)/Tau;
dS[eqn]=-C_R(c,t)/Tau;
return source1;
}
DEFINE_PROFILE(S0,t,i)//以下為三條uds的邊界條件
{
begin_f_loop(f,t)
{
F_CENTROID(x,f,t);
F_PROFILE(f,t,i)=3.22*pow(10.,24);
}
end_f_loop(f,t)
}
DEFINE_PROFILE(S1,t,i)
{
begin_f_loop(f,t)
{
F_CENTROID(x,f,t);
//F_PROFILE(f,t,i)=F_YI(f,t,5)*6.02*pow(10.,23.)*PI/(77.*4.);
F_PROFILE(f,t,i)=1.686;
}
end_f_loop(f,t)
}
DEFINE_PROFILE(S2,t,i)
{
begin_f_loop(f,t)
{
F_CENTROID(x,f,t);
F_PROFILE(f,t,i)=1.011*pow(10.,9);
}
end_f_loop(f,t)
}
對於耐心看完帖子的人 在這裡先說聲謝謝
希望可以獲得解答 |
|