
[Sponsors] 
March 24, 2015, 19:29 
evapVOFHardt discussion! Come join!

#1 
Member
james wilson
Join Date: Aug 2014
Location: Orlando, Fl
Posts: 38
Rep Power: 10 
Hello all!
You will find some fantastic work submitted: http://www.ttd.tudarmstadt.de/forsc...vofhard.en.jsp that makes reference to the work of Dr. Kumklemann (http://tuprints.ulb.tudarmstadt.de/...Kunkelmann.pdf) based on the theory presented by Hardt and Wondra in 2008. I've been developing my own phase change model for some time and dealing with an unpredictable temperature field. The conservative form of my equation yielded great results in the absence of phase change but would barf due to the presence of the divergence in the velocity field. The formulation of the temperature equation provided in the above link is as follows: Code:
volScalarField k = alpha1*k1+(scalar(1)alpha1)*k2; // turbulent heat transfer is to be added some time volScalarField rhoCp = alpha1*rho1*cp1+(scalar(1)alpha1)*rho2*cp2; rhoCp.oldTime() = alpha1.oldTime()*rho1*cp1+(scalar(1)alpha1.oldTime())*rho2*cp2; surfaceScalarField alphaPhi = (rhoPhiphi*rho2)/(rho1rho2); surfaceScalarField rhoCpPhi = alphaPhi*(rho1*cp1rho2*cp2)+phi*rho2*cp2; // source terms due to mass sources (due to non divergencefree velocity field) hCSource = fvc::ddt(rhoCp) + fvc::div(rhoCpPhi); // energy equation fvScalarMatrix TEqn ( fvm::ddt(rhoCp,T) + fvm::div(rhoCpPhi,T)  fvm::laplacian(k,T)  fvm::Sp(hESource,T)  fvm::Sp(hCSource,T) == hESource*Tsat ); TEqn.solve(); I know there are some OF buffs out there who love to educate and this is why im posting here. Ive struggled with finding the approporiate form of this source term and here it is; however, I hope some of you will help in delineating what is happening here so im not blindly following a functioning piece of code. Lets look at: Code:
hCSource = fvc::ddt(rhoCp) + fvc::div(rhoCpPhi); Code:
rhoCp.oldTime() = alpha1.oldTime()*rho1*cp1+(scalar(1)alpha1.oldTime())*rho2*cp2; 1) convection of the quantity by phi and 2) the regression of the interface due to phase change This isnt very clear to me since the change seems to undermine the purpose of including these terms to begin with but clearly I am not correct in assuming this.. Now for the term: Code:
fvc::div(rhoCpPhi) The combination of these two terms form hCSource and is the interfacial boundary condition accounting for the destruction of liquid and creation of vapor in the presence of phase change. This condition appears as a correction in this solver but is more realistically a physical interfacial boundary condition and can be seen in the analytical solution of 1D Stefan type freezing/melting problems. I have attached a plot verifying the validity of the source terms. NOTE that this plot is my solver with the addition of the source term hcSource. Without this source term, my results had ~3% error where I now have <<1% error where grid refinement/and temporal resolution only improves the results, i.e. im converging on the solution and not past it. The theory supporting my claim that this hcSource term is a coupling boundary condition at the interface can be seen in eq. 1.3.6 of : https://www.dropbox.com/s/p424otswg5...GUPTA.pdf?dl=0 Also note the corrections i made to the solution provided. I made a matlab file for those interested in my validation (See attached and please forgive the programming etiquette. my openfoam code is much cleaner : ) ) This is also the source for the analytical solution seen in the attachment. One important note, this validation is for constant density. If the density is constant and you use the solver provided in the links, the term: surfaceScalarField alphaPhi = (rhoPhiphi*rho2)/(rho1rho2); will result in divide by zero error. For those who would like to use the solver provided, wyldcat has ported the referenced solver to work with various versions of OF: https://github.com/wyldckat/evapVOFHardt i look forward to your responses! 

May 6, 2015, 11:45 
EvapVODHArdt

#2 
Member
Anastasios
Join Date: Mar 2009
Posts: 34
Rep Power: 15 
Dear James
I am working in a user defined code using almost the same approach as Kunkelmann in EvapVOFHard. The only difference is that i am using a slightly different approach for smoothing the alpha field and dampen out spurious currents (from the hydrodynamic adiabatic point of view). Then I added heat transfer and phase change following the same procedure as evapVOFHard from the work of Hardt and Wondra. I have so far validated the solver with experimental results on pool boiling. I am trying now to validate for cases of convective boiling but I notice very fast evaporation with respect to experimental results. What is your field of application? Maybe we can cooperate on this. Thanks in advance ageorg 

August 14, 2015, 12:48 

#3  
Senior Member
Przemek
Join Date: Jun 2011
Posts: 245
Rep Power: 14 
Quote:
Can you upload your solver? I checked evapVOFHardt solver and it seems it does not work well. I created thread on it here: http://www.cfdonline.com/Forums/ope...pvofhardt.html and see also here http://www.cfdonline.com/Forums/ope...tml#post559592 Maybe you know the answer? Any help is really appreciated.
__________________
best regards pblasiak Last edited by wyldckat; August 14, 2015 at 18:23. Reason: merged posts that were a few minutes apart and that quote the same post 

January 13, 2020, 17:30 
evapVOFHardt OFV6

#4 
Senior Member
Lasse Brams Vinther
Join Date: Oct 2015
Posts: 110
Rep Power: 8 
Hello everyone interested,
I have updated the evapVOFHardt solver to openFOAM v6 and inserted a link it in this post. Let me know if you have any issues or comments. I will finish testing and comparing the solver with the results of the 2.3.x variant to validate the update in the following days. Best regards, Lasse https://github.com/Swagga5aur/evapVOFHardt Last edited by Swagga5aur; January 17, 2020 at 03:20. 

March 30, 2020, 03:52 
evapVOFHardt

#5 
New Member
Muyiwa
Join Date: Feb 2020
Posts: 11
Rep Power: 4 
I'm a new user of openfoam and I'm working on boiling. I'm using OpenFoam v1812. I downloaded your evapVOFHardt from https://github.com/Swagga5aur/evapVOFHardt but I don't know how to go about running it in my openfoam version. Can you explain to me how to run it.


March 30, 2020, 04:17 

#6 
Senior Member
Lasse Brams Vinther
Join Date: Oct 2015
Posts: 110
Rep Power: 8 
I haven't used openFOAM by esi in quite some time, but I believe the differences are only minor. What compilation errors do you get?
Regards, Lasse 

March 30, 2020, 20:58 
evapVOFHardt

#7 
New Member
Muyiwa
Join Date: Feb 2020
Posts: 11
Rep Power: 4 
Attached are compilation errors from wmake of evapVOFHardt.


April 1, 2020, 06:26 

#8 
Senior Member
Lasse Brams Vinther
Join Date: Oct 2015
Posts: 110
Rep Power: 8 
Hello Muyiwa,
I'm currently quite busy in life outside of openFOAM but I'll try to assist you when I have the time, no need to PM me. I would prefer all correspondence and support regarded material, that aren't confidential, to be here in the forum for helping future users having similar issues. I will try to get time to look at it tonight, but I would suggest you try compiling openFOAM v6 from the foundation (for comparison) or just look in the source code to see where the differences are between the standard solver the evapVOFHardt is based upon, I believe it was interDyMFoam. Regards, Lasse 

April 16, 2020, 23:01 
evapVOFHardt

#9 
New Member
Muyiwa
Join Date: Feb 2020
Posts: 11
Rep Power: 4 
Hi Swagga5aur
The evapVOFHardt code works fine on ofv6. I use setFields dict for my new case with 2D rectangular domain instead of using initFieldVOFHardt but the simulation stopped after running for a while. Is it possible to introduce setFields dict into the evapVOFHardt code and if yes, how? Regards Muyiwa 

April 17, 2020, 03:03 

#10 
Senior Member
Lasse Brams Vinther
Join Date: Oct 2015
Posts: 110
Rep Power: 8 
What do you means by introducing setFields dict into the evapVOFHardt code? Are you currently unable to use the setFields command in the case?
Regards, Lasse 

April 18, 2020, 00:57 
evapVOFHardt

#11 
New Member
Muyiwa
Join Date: Feb 2020
Posts: 11
Rep Power: 4 
Hi Swagga5aur
Actually, I'm able to use the "initFieldVOFHardt" setField command for the example case provided with the solver. But, I want use the solver to simulate a film boiling according to Welch and Wilson, 2000 in "A Volume of Fluid Based Method for Fluid Flows with Phase Change" and I don't know how to incorporate the setField since the initialization of alpha.phase1 is different from the example case. Regards, Muyiwa 

April 18, 2020, 01:12 

#12 
Senior Member
Przemek
Join Date: Jun 2011
Posts: 245
Rep Power: 14 
Hi
Just run in terminal Code:
setFields Befor runing it edit setFieldsDict accordingly to your case.
__________________
best regards pblasiak 

May 29, 2020, 09:03 
The last term in the energy equation

#13 
New Member
Join Date: Mar 2020
Posts: 12
Rep Power: 4 
Hello,
I am interested in this model as well, and I read the source codes of the solver. Concerning the implementations of the latent heat source term in the energy equation, I have the following questions. In the evapVOFHardt solver (TEqn.H), they calculated the latent heat term by decomposing 1*(mass source term)*(Enthalpy of vaporization) into hESource*T  hESource*Tsat, and calculate them as implicit and explicit terms respectively. Actually, I know this method works, however, I tried to calculate the latent heat with a direct way, i.e. using the single explicit term ''1*(mass source term)*(Enthalpy of vaporization) ''. But I got something strange there when I validate the solver with 1D stefan problem, and the problem is that I got the minimum temperature around 369.677 K (for the BCs in my case (Left wall temperature : 383.15 K, and the rest is 373.15K )), and the simulation was really slow although we can see the interface was moving. Could you please tell me why I got the strange results? Thank you so much. 

June 23, 2020, 06:44 

#14 
New Member
Yağmur GÜLEÇ
Join Date: May 2014
Posts: 9
Rep Power: 10 
I solved the problem using instead of using
dimensionedScalar k1(phase1.lookup("k")); dimensionedScalar cp1(phase1.lookup("cp")); Instead of dimensionedScalar k1=phase1.lookup("k"); I set up a case with a vapor bubble attached to a wall with contact angle boundary condition, but I have problems with higher temperature gradients, which results in a significantly higher growth rates? Do you have any idea that causes the problem like initial boundary layer surrounding the bubble? Should I prescribe temperature field around the interface of the bubble? Or should it work without this process? 

September 24, 2020, 10:18 
Modeling dorplet evaporation with evapVOFHardt solver

#15 
New Member
Join Date: Mar 2020
Posts: 12
Rep Power: 4 
Hello everyone,
I compiled the evapVOFHardt solver, and try to model 2D static droplet evaporation. Actually, I successfully validated the solver with 1D Stefan problem, however, I failed to validate the solver with 2D static droplet evaporation case. As reported in some literature, this is probably because the nondivergencefree onefiled velocity U in the solver failed to correctly advect the free surface, and in some paper, someone tried to reconstruct the divergencefree liquid velocity field to advect the free surface (e.g. https://arxiv.org/abs/2001.03477). Additionally, I tried to only set the source terms on the interface cells, and rather than removing the source terms from the interface cells implemented in the solver, and I found that the 2D droplet seems expand rather than shrink due to the evaporation. I would like to know does anyone encounter the same problem? and any suggestions will be appreciated. Thanks, Huihui 

September 29, 2020, 15:19 

#16  
New Member
Yağmur GÜLEÇ
Join Date: May 2014
Posts: 9
Rep Power: 10 
Quote:
I use the same code for growing bubbles attached to a surface. I have the same problem as you had, especially with conjugate heat transfer. Did you solve the problem? If so, could you explain what improvements you did? Thanks 

November 29, 2020, 11:54 

#17  
New Member
M Naarendharan
Join Date: Aug 2020
Posts: 19
Rep Power: 3 
Quote:
Hello everyone, I am working on growth of a single bubble. I would like to know if anyone has validated the solver "evapVOFHardt" for simulation of growth and departure of a single bubble attached to the base. I would also like to know whether the solver takes into account the changes in contact angle when the contact angle boundary condition is given for base. Thanking you, M Naarendharan 

Tags 
boiling, interfoam, phase change, source terms, validation 
Thread Tools  Search this Thread 
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
Let us make a skype discussion group for online discussion on Openfoam  13msmemusman  OpenFOAM  4  April 27, 2014 07:52 
Can't Join Connectors  AeroCat  Pointwise & Gridgen  2  January 25, 2014 11:04 
Pointwise join problem  travis.moulding  Pointwise & Gridgen  1  December 11, 2011 16:42 
New Discussion Forum Launched  pete  Site News & Announcements  0  March 15, 2009 14:55 
How to join a news group?  maximus  Main CFD Forum  1  January 15, 2003 19:05 