|
[Sponsors] |
set BC mass-flow-inlet via UDF and via GUI perform different result |
![]() |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
![]() |
![]() |
#1 |
New Member
Moscow
Join Date: Dec 2013
Posts: 4
Rep Power: 0 ![]() |
Hellow,udf experts! Advise, please
(i solving HVAC system-water vapor goes from open water surface in the closed room and suck/inflate ventilation system is working there) i stuck about how to set water evaporating(i did function, obviously it calculate water vapor properly(i spend big time for it), but i did not understand right, how properly hook this to fluent! first of all i mention strange very big difference in mass flow from water surface and from air inlet/out. I start to explore why. this difference was because of setting BC: each BC(air inlet and water vapor in) was mass-flow-inlet; BUT air was set from GUI as fixed value Mass Flow Rate, and water was set as compiled UDF DEFINE_PROFILE. this was my mistake: i thought that as i loop over all faces, i should set mass flow for every face proportionaly to the total summ. (Mass Flow Rate for every face calculated based on area/velocity above face on some distance/difference in d(d is weight of water vapor in air)- usual formula for water evaporation for swimming pool) does not matter how exactly function work, but i need to set different value(of massflow) to every face, not same value.... because conditions for every face is different. BUT to set Mass Flow Rate why does fluent expect loop over all face and set this summ massflowrate to every cell(i mean every face), because i set BC here for water surface to explain what i mean see simple code, that doing things wrong, because FLUENT divide totalmassflow by number of face(Flux report mass flow rate, or surface integrals mass flow rate). in this simple code for air inlet,i just show what i need in the sense of proportionality: DEFINE_PROFILE for air inlet and hook this UDF for air inlet instead fixed value (0.584kg/s): #define vozduhanG 0.584 //summ air massflow from air inlet(kg/s)(in first case that value i set in GUI as Mass Flow Rate) DEFINE_PROFILE(massflow_testvozduhan,t,i) { face_t f; real NV_VEC(farea); real area,sumarea=0; //let get sum area for air in (in my model 4 different air inlet , summ area = 1m2, but they act as one surface with common named selection) begin_f_loop(f,t) {F_AREA(farea,f,t); //get face area area = NV_MAG(farea); //summ every face area to get total area for our air inlet sumarea+=area; } end_f_loop(f,t) //then simply set on each face mass flow proportional to area of this face: real sumflow=0, F_PROFILEvalue=0.; begin_f_loop(f,t) {F_AREA(farea,f,t); area = NV_MAG(farea); F_PROFILEvalue=area*vozduhanG/sumarea; sumflow+=F_PROFILEvalue;//store summ massflow to test finaly F_PROFILE(f,t,i) =F_PROFILEvalue;//set massflow for each face(proportionaly to it area) } end_f_loop(f,t) //diagnostic message show us right summ value: 0.584 kg/s, summarea 1m2 CX_Message("\n sumflowvozduhan= %g kg/s %g kg/h sumarea %g",sumflow,sumflow*3600,sumarea); } but Flux report mass flow rate, or surface integrals mass flow rate show us 0.073 kg/s (total summ divided by number of face) when i set vozduhanG as fixed value from GUI, report is as expected: 0.584 (i use energy on species transport air (o2,n2,h2o) as mixture coupled preasure based solver pseudotransient) Last edited by sawa25; February 16, 2015 at 08:14. |
|
![]() |
![]() |
![]() |
![]() |
#2 |
New Member
Moscow
Join Date: Dec 2013
Posts: 4
Rep Power: 0 ![]() |
to do what i need, i use mass flux instead mass flow rate
|
|
![]() |
![]() |
![]() |
|
|