| 查看: 493 | 回复: 0 | ||
[求助]
udf中SOx代码
|
|
if (POLLUT_EQN(Pollut_Par) == EQ_SO2) 这是fluent的udf中做SOx,这个表示什么意思?没看懂。下面是完整的 static void so2_so3_rate(cell_t c, Thread* t, Pollut_Cell *Pollut, Pollut_Parameter *Pollut_Par, SOx_Parameter *SOx) {real kf,kr,rf=0,rr=0; real o_eq; real r_volatile,Ys_volatile,fuels_so2_frac; Rate_Const K_F = {1.2e6, 0.0, 39765.575}; Rate_Const K_R = {1.0e4, -1.0, 10464.625}; Rate_Const K_O = {36.64, 0.5, 27123.0}; /* SO3 + O <-> SO2 + O2 */ kf = ARRH(Pollut, K_F); kr = ARRH(Pollut, K_R); o_eq = ARRH(Pollut, K_O)*sqrt(MOLECON(Pollut, O2)); if (POLLUT_EQN(Pollut_Par) == EQ_SO2) { int ifstream; Ys_volatile = 1.e-04; fuels_so2_frac = 1.; for(ifstream=0; ifstream<Pollut_Par->nfstreams; ifstream++) { rf += Pollut->r_fuel_gls[ifstream]*SOx->Ys_fuelvolat[ifstream] *SOx->fuels_so2_frac[ifstream]*1000./Pollut_Par->sp[S].mw; } rf += kf*o_eq*MOLECON(Pollut, IDX(SO3)); rr = -kr*MOLECON(Pollut, O2)*MOLECON(Pollut, IDX(SO2)); } else if (POLLUT_EQN(Pollut_Par) == EQ_SO3) { rf = kr*MOLECON(Pollut, O2)*MOLECON(Pollut, IDX(SO2)); rr = -kf*o_eq*MOLECON(Pollut, IDX(SO3)); } POLLUT_FRATE(Pollut) += rf; POLLUT_RRATE(Pollut) += rr; } |
» 猜你喜欢
为什么nbs上溴 没有产物点出现呢
已经有6人回复
拟解决的关键科学问题还要不要写
已经有8人回复
求推荐博导
已经有4人回复
存款400万可以在学校里躺平吗
已经有34人回复
求助一下有机合成大神
已经有4人回复
最失望的一年
已经有16人回复
求推荐英文EI期刊
已经有5人回复
26申博
已经有3人回复
基金委咋了?2026年的指南还没有出来?
已经有10人回复
疑惑?
已经有5人回复













回复此楼