How to implement production term due to buoyancy for komega equations? Note that this is automatically taken into account for kepsilon models and RSM.
These terms will be automatically taken into account in the future release.
For versions Fluent12.1 (and previous releases), use the following UDF: It works for incompressible ideal gas option and can be easily adapted to boussinesq approximation. /* A source term to the k equation could be invoked through a */ /* DEFINE_SOURCE UDF to include this effect in komega model */ #include "udf.h" #include "sg.h" #include "models.h" /* UDF to compute buoyancy production in TKE equation */ DEFINE_ADJUST(store_tg,domain) { Alloc_Storage_Vars(domain, SV_T_RG, SV_T_G, SV_NULL); T_derivatives(domain); Free_Storage_Vars(domain, SV_T_RG, SV_NULL); } DEFINE_SOURCE(tke_gb, c0, t0, dS, eqn) { real beta, mu_t, temp; real prod1=0.,source; real pr_t = M_keprt; /* Compute Buoyancy Production */ mu_t = C_MU_T(c0,t0); temp = C_T(c0,t0); /* This assumes ideal gas behavior. More general */ /* implementation would query beta from the solver */ beta = 1./temp; if(NNULLP(T_STORAGE_R_NV(t0, SV_T_G))) { prod1 = beta*mu_t/pr_t*NV_DOT(M_gravity,C_T_G(c0,t0)); } else if (c0==0) Message0("Error, temperature gradient not storedn"); source = prod1; return source; } /* option full buoyancy directional */ DEFINE_SOURCE(omega_gb_directional, c0, t0, dS, eqn) { real beta, mu_t, temp; real prod1=0.,source; real pr_t = M_keprt; real C_epsilon3=1.; /* Compute Buoyancy Production */ mu_t = C_MU_T(c0,t0); temp = C_T(c0,t0); /* This assumes ideal gas behavior. More general */ /* implementation would query beta from the solver */ beta = 1./temp; if(NNULLP(T_STORAGE_R_NV(t0, SV_T_G))) { prod1 = beta*mu_t/pr_t*NV_DOT(M_gravity,C_T_G(c0,t0)); } else if (c0==0) Message0("Error, temperature gradient not storedn"); C_epsilon3=compute_keC3(C_U(c0,t0),C_V(c0,t0),C_W(c0,t0)); source=C_epsilon3*M_keC1*MAX(0,prod1)*0.09*C_O(c0,t0); return source; } 

