24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1895  |  回复: 5

clingch

铜虫 (小有名气)

[求助] UDF 编译出现不认识函数名称,显示变量问题

采用FLUENT 6.3 UDF Manual.pdf 中水蒸发的程序,
程序如下:
DEFINE_HET_RXN_RATE(user_evap_condens_react, c, t, hr, mw,
                     yi, rr, rr_t)
{
    Thread **pt = THREAD_SUB_THREADS(t);
    Thread *tp = pt[0];
    Thread *ts = pt[1];
    int i;
    real concentration_evap_primary, accum = 0., mole_frac_evap_prim,
         concentration_sat ;
    real T_prim = C_T(c,tp); /*primary phase (gas) temperature*/
    real T_sec = C_T(c,ts);  /*secondary phase (droplet) temperature*/
    real diam = C_PHASE_DIAMETER(c,ts);  /*secondary phase diameter*/
real D_evap_prim = C_DIFF_EFF(c,tp,index_evap_primary)       - 0.7*C_MU_T(c,tp)/C_R(c,tp);   
        /*primary phase species turbulent diffusivity*/
    real Re, Sc, Nu, urel, urelx,urely,urelz=0., mass_coeff, area_density,
        flux_evap ;

    if(Data_Valid_P())                          
    {
      urelx = C_U(c,tp) - C_U(c,ts);
      urely = C_V(c,tp) - C_V(c,ts);

      #if RP_3D
        urelz = C_W(c,tp) - C_W(c,ts);
      #endif
      
      urel = sqrt(urelx*urelx + urely*urely + urelz*urelz);
        /*relative velocity*/
     
       Re = urel * diam * C_R(c,tp) / C_MU_L(c,tp);
     
       Sc = C_MU_L(c,tp) / C_R(c,tp) / D_evap_prim ;

       Nu =  2. + 0.6 * pow(Re, 0.5)* pow(Sc, 0.333);

       mass_coeff = Nu * D_evap_prim / diam ;

       for (i=0; i < MAX_SPE_EQNS_PRIM ; i++)
         {
           accum = accum + C_YI(c,tp,i)/mw[prim_index];
         }

       mole_frac_evap_prim = C_YI(c,tp,index_evap_primary )
                   / mw[index_evap_primary][prim_index] / accum;

       concentration_evap_primary = mole_frac_evap_prim * P_OPER
                   / UNIVERSAL_GAS_CONSTANT / T_prim ;

       concentration_sat = psat_h2o(T_sec)/UNIVERSAL_GAS_CONSTANT/T_sec ;

       area_density = 6. * C_VOF(c,ts) / diam ;

       flux_evap = mass_coeff *
            (concentration_sat - concentration_evap_primary ) ;

       *rr = area_density * flux_evap ;                                       
       }
}
其中:在调用其它函数的时候没有问题,但调用函数 C_DIFF_EFF(c,tp,index_evap_primary)   时,系统不认这个函数,反而认为是个没有定义的变量,不知道怎么回事。仔细检查了文件中的函数名称,暂时没有发现错误?
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

47425804

木虫 (正式写手)


【答案】应助回帖

clingch(金币+1): 多谢应助,程序中有定义,应为全局变量0。 2011-05-25 08:12:20
index_evap_primary
这玩意有定义没?
2楼2011-05-10 09:46:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

47425804

木虫 (正式写手)


【答案】应助回帖

★ ★
xiegangmai(金币+2): 谢谢应助! 2011-05-10 22:33:26
clingch(金币+1): 多谢参与? 2011-07-17 16:37:11
引用回帖:
Originally posted by 47425804 at 2011-05-10 09:46:27:
index_evap_primary
这玩意有定义没?

UDF手册的原程序有这么一句:
#define  index_evap_primary 0
3楼2011-05-10 09:48:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

clingch

铜虫 (小有名气)

我的程序定义了,另外采用编译型和解释型的结果不同。编译的可通过,但出现了新的错误。有用过且通过的给个解释。是否是软件安装问题?
4楼2011-07-14 21:48:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yulinjun1986

新虫 (小有名气)


xiegangmai: 金币+1, 谢谢参与! 2012-05-07 22:37:54
如果编译没错的话,应该是头文件的问题,有可能是函数宏没被包含在头文件中。
5楼2012-05-07 10:55:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

13386846246

铜虫 (小有名气)

引用回帖:
4楼: Originally posted by clingch at 2011-07-14 21:48:33
我的程序定义了,另外采用编译型和解释型的结果不同。编译的可通过,但出现了新的错误。有用过且通过的给个解释。是否是软件安装问题?

请问楼主问题解决了么
6楼2017-03-10 22:00:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 clingch 的主题更新
信息提示
请填处理意见