找回密码
 注册
查看: 3286|回复: 7

c_face_loop的用法

[复制链接]
发表于 2005-12-24 21:43:38 | 显示全部楼层 |阅读模式

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

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

x
我得udf如下:
其中在不加
c_face_loop(cell, mix_th, n)      
           {
          f = C_FACE(cell,mix_th,n);
          tf = C_FACE_THREAD(cell,mix_th,n);
          if(F_T(f,tf)>t0)
          t0=F_T(f,tf);
          }
这一段在后面程序中把t0设为常数时计算很好。
但是加上这段后歘现
Error: C:\water\m-tran2.c: line 28: non-integer subscript expression: unsigned char
不解应该改正那里?求高手指点迷津!!!
#include "udf.h"
#include "metric.h"
#include "mem.h"
DEFINE_MASS_TRANSFER(liq_gas_source,cell,mix_th,from_index,from_species_index,to_index,t
o_species_index)
{
   real m_lg;
   real Na;
   real freq;
   real xc[ND_ND];
   real t0;
   face_t f;
   Thread *tf;
   int n;
   
   real T_SAT = 273.15;
   real Db=1e-3;
   real area=3.9275e-6;
      
   Thread *liq = THREAD_SUB_THREAD(mix_th, from_index);
   Thread *gas = THREAD_SUB_THREAD(mix_th, to_index);
              
   m_lg=0.;
   C_CENTROID(xc,cell,mix_th);
   if (sqrt(ND_SUM(pow(xc[0]-xc[0],2.),pow(xc[1],2.),pow(xc[2],2.))) >0.0048)
     {
          t0=273.15;
          c_face_loop(cell, mix_th, n)      
           {
          f = C_FACE(cell,mix_th,n);
          tf = C_FACE_THREAD(cell,mix_th,n);
          if(F_T(f,tf)>t0)
          t0=F_T(f,tf);
          }
          Na=pow(210*(t0-T_SAT),1.805);
          freq=113.7;
          if(C_T(cell,mix_th) >= 275.15)
              {      
              m_lg=3.412*Na*freq*pow(Db,3)*area/6;   
              }
          else if(C_VOF(cell,gas)>0.0)
              {
              m_lg=3.412*Na*freq*pow(Db,3)*area/6;
              }
        
      }  
    return (m_lg);
}[USECHGFONTE]
发表于 2005-12-26 13:25:06 | 显示全部楼层

c_face_loop的用法

c_face_loop循环后面好像要加一个结束循环语句end_face_loop
发表于 2005-12-26 13:29:27 | 显示全部楼层

c_face_loop的用法

不好意思,我错了,当我没说
发表于 2005-12-26 20:26:17 | 显示全部楼层

c_face_loop的用法

我也要在cell中寻找各个面,能不能用c_face_loop?请高手指点!
 楼主| 发表于 2005-12-27 11:06:53 | 显示全部楼层

c_face_loop的用法

错误的提示的意思是下标错误,那个量表示这个?请大家给点意见!呵呵!
发表于 2005-12-27 15:44:33 | 显示全部楼层

c_face_loop的用法

请问在cell的宏中能不能用c_face_loop?例如:DEFINE_MASS_TRANSFER( name, c, mixture_thread, from_phase_index, from_species_index,
to_phase_index, to_species_index) 其中c是cell_t c。
在类似这种宏中能不能用c_face_loop?请高手指点!
发表于 2012-12-15 15:46:58 | 显示全部楼层
F_T(f,tf)>t0,这个tf是不是应该指向相的指针而不是面指针?
发表于 2013-4-17 10:12:28 | 显示全部楼层
楼主您好 请问你的这个问题解决了吗?因为我也遇到了类似的问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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