找回密码
 注册
查看: 2357|回复: 1

冷凝能用这个UDF?

[复制链接]
发表于 2009-11-12 15:44:59 | 显示全部楼层 |阅读模式

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

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

x
现在我这有一段UDF程序,是师姐留下的,现在想用来模拟冷凝,可是别人都说这是网上流传的蒸发程序,有哪位高手有时间可以帮忙看看吗?
#include "udf.h"
#include "sg_mphase.h"  //‘包括体积分数宏CVOF(C,T)//
#define T_SAT 373.15    //‘定义蒸发温度100℃//
#define LAT_HT 2.257e6   //‘定义蒸发潜热J/Kg你可以根据需要自己改 //
DEFINE_SOURCE(liq_src, cell, pri_th, dS, eqn) // 液相质量源项UDF
{
Thread *mix_th, *sec_th;  
real m_dot_l;

mix_th = THREAD_SUPER_THREAD(pri_th);  //‘指向混合区的主相即液相的指针
sec_th = THREAD_SUB_THREAD(mix_th, 1);//指向单相控制区的气相的指针,气相为第二相_
if(C_T(cell, mix_th)>=T_SAT)  //如果液相单元的温度高于蒸发温度,液相向气相的质量质量转移
{
   m_dot_l = -0.1*C_VOF(cell, pri_th)*C_R(cell, pri_th)*   
               fabs(C_T(cell, mix_th) - T_SAT)/T_SAT;

   dS[eqn] = -0.1*C_R(cell, pri_th)*fabs(C_T(cell, mix_th) - T_SAT)/T_SAT;
             ///‘ 定义源项对质量转移偏导 , 
}
else
{
   m_dot_l = 0.1*C_VOF(cell, sec_th)*C_R(cell, sec_th)*
               fabs(T_SAT-C_T(cell,mix_th))/T_SAT;
//‘如果指向混合区液相的单元温度小于蒸发温度,气相向液相的质量转移,液相得

   dS[eqn] = 0.; // ‘由于是气相向液相转移,所以液相的质量源项对质量转移的偏导为零_;
}
   
return m_dot_l;
}
DEFINE_SOURCE(vap_src, cell, sec_th, dS, eqn) //‘气相质量源项UDF
{
Thread * mix_th, *pri_th;
real m_dot_v;

mix_th = THREAD_SUPER_THREAD(sec_th); //‘指向混合区的第二相即气相的指针

pri_th = THREAD_SUB_THREAD(mix_th, 0); //指向单相控制区的液相的指针,液相为主相

if(C_T(cell, mix_th)>=T_SAT) //‘如果混合区单元的温度高于蒸发温度,液相向气相的质量质量转移
{
   m_dot_v = 0.1*C_VOF(cell, pri_th)*C_R(cell, pri_th)*
               fabs(C_T(cell, mix_th) - T_SAT)/T_SAT;
   dS[eqn] = 0.; //‘由于是液相向气相转移,所以气相的质量源项对来自液相的质量转移的偏导为零?b
}
else
{
   m_dot_v = -0.1*C_VOF(cell, sec_th)*C_R(cell, sec_th)*
               fabs(T_SAT-C_T(cell,mix_th))/T_SAT;
//‘如果指向混合区的单元温度小于蒸发温度,气相向液相的质量转移,气相失

   dS[eqn] = -0.1*C_R(cell, sec_th)* fabs(C_T(cell, mix_th) - T_SAT)/T_SAT;
//由于是气相向液相转移,所以气相的质量源项对自身的质量转移的偏导不为零

}
   
return m_dot_v;
}

DEFINE_SOURCE(enrg_src, cell, mix_th, dS, eqn) //‘混合模型能量源项UDF
{
Thread *pri_th, *sec_th;
real m_dot;
pri_th = THREAD_SUB_THREAD(mix_th, 0);//‘指向混合区的液相的指针
sec_th = THREAD_SUB_THREAD(mix_th, 1); //‘指向混合区的气相的指针

if(C_T(cell, mix_th)>=T_SAT) //‘如果混合区的单元温度高于蒸发温度。质量转移由液相向气相转移,吸热,质量转移量前有负号
{
   m_dot = -0.1*C_VOF(cell, pri_th)*C_R(cell, pri_th)*
               fabs(C_T(cell, mix_th) - T_SAT)/T_SAT;

   dS[eqn] = -0.1*C_VOF(cell, pri_th)*C_R(cell, pri_th)/T_SAT;
}

else
{                                              // 相反,气相向液相转移则放热
   m_dot = 0.1*C_VOF(cell, sec_th)*C_R(cell, sec_th)*
               fabs(T_SAT-C_T(cell,mix_th))/T_SAT;

   dS[eqn] = 0.1*C_VOF(cell, sec_th)*C_R(cell, sec_th)/T_SAT;
}

return LAT_HT*m_dot;  //气化潜热与质量转移率相乘得能量源项W/m3
}
发表于 2017-4-14 19:34:02 | 显示全部楼层
这个能做冷凝么?

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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