找回密码
 注册
查看: 2876|回复: 2

求助 Error:wrong return type:float udf fucntion expected

[复制链接]
发表于 2010-10-31 19:09:26 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
我在做空化的模拟,编写的UDF如下
DEFINE_CAVITATION_RATE(user_cav_rate, c, t, p, rhov, rhol, mafv, p_v, h_gas, f_gas, m_dot)                             {
                        
                        
Thread **pt=THREAD_SUB_THREADS(t);                     
real vofv=C_VOF(c,pt[1]);                                                      
real vofl=1-vofv;                                                              
real hl=C_H(c,pt[0]);                                                           
real hv=C_H(c,pt[1]);                                                         
real p_vapor=*p_v;                                                            
real T=C_T(c,t);                                                               
real Cp=C_CP(c,t);                                                        
real P=C_P(c,t);
real rho_L= *rhol;                                                           
real rho_V= *rhov;                                                        
real p_operating, dp;                                                         

  p_operating=RP_Get_Real("operating-pressure");                                   
           
  dp=P+p_operating;                                                            
                                         
                        
   

  if(dp>p_vapor)                                                                     
                 
*m_dot = 1000*3*0.597*vofv*sqrt(2*(dp-p_vapor)/(3*958.345))*(2-(sqrt(3/PI)*(rho_L*Cp*fabs(373-T)/((hv-hl)*rho_V)*sqrt(C_UDSI(c,t,0)/0.009)))/(sqrt(2*(dp-p_vapor)/(3*958.345))));
                 

                     
          else
                  
                    
*m_dot = -5.0*3*5.0*100*0.597*vofl*sqrt(2*(p_vapor-dp)/(3*958.345))*(2+(sqrt(3/PI)*(rho_L*Cp*fabs(T-373)/((hv-hl)*rho_V)*sqrt(C_UDSI(c,t,0)/0.009)))/(sqrt(2*(p_vapor-dp)/(3*958.345))));
                 
}

该函数便已没有错误,但是计算的话就会出现错误提示
Error:wrong return type:float udf fucntion expected
如果我直接赋值
*m_dot = 0.1也还是同样的错误


另外,函数名中已经包括很多变量,例如液体密度
如果我想取出液体密度 是应该怎么取啊?

real rho_L= *rhol;
还是
real rho_L= C_R(c,t);

求指教啊
发表于 2011-1-19 15:21:13 | 显示全部楼层
同学,请教一下你的错误最后是怎么解决的,我也出现了同样的错误。不甚感激!
发表于 2014-4-2 13:36:56 | 显示全部楼层
您好,您的问题怎么解决的呀?麻烦能指点一下吗?我现在也是遇到这样问题不知道怎么办。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表