CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   FLUENT (http://www.cfd-online.com/Forums/fluent/)
-   -   Pls Help on DPM BC Partial Evaporation (http://www.cfd-online.com/Forums/fluent/39239-pls-help-dpm-bc-partial-evaporation.html)

xc January 13, 2006 13:30

Pls Help on DPM BC Partial Evaporation
 
DEar All,

I tried to use a UDF to make the droplet evaporate partially on the wall and rebounce back as a smaller droplet. There is no problem to set the droplet to a smaller one. However, it looks like that the latent heat does not go to the air flow. Anybody knows how to do this? Thanks.

xc

RoM January 15, 2006 04:02

Re: Pls Help on DPM BC Partial Evaporation
 
If you change the particle diameter in your bc-udf you will have to do write an additional dpm_source udf which will add the mass source and the energy source to the continuous phase. In the udf manual chpater 4.6.12 (description of dpm_switch macro) is a sample that will be helpful.

Good luck, RoM

xc January 16, 2006 12:34

Re: Pls Help on DPM BC Partial Evaporation
 
Thanks, RoM. I am trying it although it does not work so far.

What I don't understand is that DEFINE_DPM_SOURCE should be for the whole field rather than the wall boundary. In addition, the existing function in Fluent should already take care of the latent heat from droplet to the continuous phase. Is there any conflict to add extra source term?

I checked the example in Fluent UDF manual 4.6.12. However, it looks like this function does not work for my case. Should I pay attention to any special issue?

Thanks

xc

#define C_DPMS_ENERGY(c,t)C_STORAGE_R(c,t,SV_DPMS_ENERGY)

DEFINE_DPM_SOURCE(dpm_source,c,t,S,strength,p) { real mp_dot; Material *sp = P_MATERIAL(p);

/* mp_dot is the (positive) mass source to the continuous phase */ /* (Difference in mass between entry and exit from cell) */ /* multiplied by strength (Number of particles/s in stream) */

mp_dot = (P_MASS0(p) - P_MASS(p)) * strength;

C_DPMS_YI(c,t,0) += mp_dot; C_DPMS_ENERGY(c,t) -= mp_dot* MATERIAL_PROP(sp,PROP_Cp)*(C_T(c,t)-298.15); C_DPMS_ENERGY(c,t) -= mp_dot* MATERIAL_PROP(sp,PROP_latent_heat); }


RoM January 17, 2006 09:41

Re: Pls Help on DPM BC Partial Evaporation
 
You are right that the standard law takes care of all mass and heat exchange. Maybe the error is in you bc udf. You can use the small udf below as a template. The mass change of the particle (dmdt) is set to zero, you will have to add your source here. Unit of dmdt is kg/s.


#include "udf.h"

DEFINE_DPM_BC(udf_reflect,p,t,f,f_normal,dim)
{
real dmdt;
/* call standard reflection law */
Reflect_Particle(p,f_normal,dim,f,t);

if(P_CURRENT_LAW(p) == DPM_LAW_VAPORIZATION)
{
dmdt =0.;
P_MASS(p) -= dmdt*P_DT(p);
P_DIAM(p) = pow(P_MASS(p)*6./(P_RHO(p)*M_PI),1./3.);
}
return PATH_ACTIVE;
}


Hope it helps, RoM

Allan Walsh January 18, 2006 15:53

Re: Pls Help on DPM BC Partial Evaporation
 
There are several ways to do this. I assume that you are using a variation of the Define_DPM_BC macro for changing the drop to a "smaller" one?

If you are keeping track of the drop mass, and the mass of the second phase represented the drop, you can use this variable to represent a heat sink. What I have been doing is defining the product of evaporation to be a liquid - if it is water, then have a species for water vapor and one for liquid water. You can directly add the mass of liquid evaporated to the cell storage variable C_Storage_R(thread, cell,...etc. Then in the species transport model, have the liquid species go to the gasesous species with minimal mixing or kinetic limations. Specifying the correct HOF for species will allow Fluent to take care of enthalpy.

Alternatively, I have directly added the latent heat of vaporization to the storage variable for sensible enthalpy. Look in the dpm.h header file for these variables.

I had planned to use the define source macro at one time, but things seem to work out fine with the more direct approach.

Plan on spending lots of time looking at the sum of volume sources and mass&energy balances as you debug you udf's.



All times are GMT -4. The time now is 09:03.