搜档网
当前位置:搜档网 › 气体压缩FLUENT模拟UDF

气体压缩FLUENT模拟UDF

气体压缩FLUENT模拟UDF
气体压缩FLUENT模拟UDF

#include "udf.h"

/* Define which user-defined scalars to use. */

enum

{

p,ads,d_ads,q_ads,H_ad

};

DEFINE_ADJUST(p_absolute, domain) //计算每个单元绝对压力,并存储

{

Thread *t;

cell_t c;

real p_operating;

real p_static;

/* solve the absolute pressure. */

thread_loop_c (t,domain)

{

if (NULL != THREAD_STORAGE(t,SV_UDS_I(p)))

{

begin_c_loop (c,t)

{

p_static=C_P(c,t);

p_operating = RP_Get_Real("operating-pressure");

C_UDSI(c,t,p) = p_static+p_operating;

}

end_c_loop (c,t)

}

}

}

DEFINE_ADJUST(Heat_Adsorption, domain) //计算每个单元绝对压力,并存储{

Thread *t;

cell_t c;

real p_operating;

real p_static;

/* solve the absolute pressure. */

thread_loop_c (t,domain)

{

if (NULL != THREAD_STORAGE(t,SV_UDS_I(H_ad))&&

NULL != T_STORAGE_R_NV(t,SV_UDSI_M1(H_ad)))

{

begin_c_loop (c,t)

{

C_UDSI(c,t,H_ad)=3080*sqrt(log(71.6/C_UDSI_M1(c,t,ads)));

}

end_c_loop (c,t)

}

}

}

DEFINE_ADJUST(adsorption, domain) //通过D_A方程计算每个单元吸附量并存储{

Thread *t;

cell_t c;

real n_o;

real E_t;

real x_p;

real A;

real x_b;

real n;

/* solve the adsorption equation. */

thread_loop_c (t,domain)

{

if (NULL != THREAD_STORAGE(t,SV_UDS_I(ads))&&

NULL != T_STORAGE_R_NV(t,SV_UDSI_M1(ads)))

{

begin_c_loop (c,t) //D_A方程

{

real tem=C_T(c, t);

n_o=71.6;

E_t=3080+18.9*tem;

x_p=1.47E9/C_UDSI(c,t,p);

A=8.31429*tem*log(x_p);

x_b=-A*A/(E_t*E_t);

C_UDSI(c,t,ads)=n_o*exp(x_b);

}

end_c_loop (c,t)

}

}

}

DEFINE_ADJUST(q_adsorption, domain) //计算LDF模型中每个单元的qn

{

Thread *t;

cell_t c;

/* solve the absolute pressure. */

thread_loop_c (t,domain)

{

if (NULL != THREAD_STORAGE(t,SV_UDS_I(q_ads))&&

NULL != T_STORAGE_R_NV(t,SV_UDSI_M1(q_ads)))

{

begin_c_loop (c,t) //LDF模型

{

real physical_dt;

physical_dt = RP_Get_Real("physical-time-step");

C_UDSI(c,t,q_ads)=C_UDSI_M1(c,t,q_ads)+0.15*physical_dt*(C_UDSI_M1(c,t,ads)-C_U DSI_M1(c,t,q_ads));

}

end_c_loop (c,t)

}

}

}

DEFINE_ADJUST(d_adsorption, domain) //计算每个单元的原项

{

Thread *t;

cell_t c;

/* solve the energy source. */

thread_loop_c (t,domain)

{

if (NULL != THREAD_STORAGE(t,SV_UDS_I(d_ads))&&

NULL != T_STORAGE_R_NV(t,SV_UDSI_M1(d_ads)))

{

begin_c_loop (c,t)

{

C_UDSI(c,t,d_ads)=-0.532224*0.15*(C_UDSI(c,t,ads)-C_UDSI(c,t,q_ads));

}

end_c_loop (c,t)

}

}

}

DEFINE_SOURCE(mass_source,c,t,dS,eqn) //定义质量原项

{

real m_source;

m_source=C_UDSI_M1(c,t,d_ads);

dS[eqn] = 0.0;

return m_source;

}

DEFINE_SOURCE(energy_source,c,t,dS,eqn) //定义能量原项

{

real e_source;

e_source=-C_UDSI_M1(c,t,d_ads)*0.496056352e3*3080*sqrt(log(71.6/C_UDSI_M1(c,t,ads))); dS[eqn] = 0.0;

return e_source;

}

相关主题