|
[Sponsors] |
March 16, 2009, 12:05 |
VOF & Variable Surface Tension in FLUENT
|
#1 |
New Member
Seamus
Join Date: Mar 2009
Posts: 1
Rep Power: 0 |
Hi all,
I have been reading through many posts on the forum about the VOF model used in FLUENT and it's capabilities. I am however still slightly confused about one matter: Is it possible to use the VOF model while also incorporating a surface tension that varies with temperature along and interface? If so, how is this accomplished? Perhaps through a UDF or define/phases/interaction...? I would like to model Marangoni or thermocapillary flow as air bubble grows in a liquid silicone oil layer. Any help anybody can offer will be greatly appreciated. P.S. I am using FLUENT 6.2.16 and also have access to 6.3 if necessary! |
|
March 18, 2009, 22:22 |
|
#2 | |
New Member
Jane
Join Date: Mar 2009
Posts: 18
Rep Power: 17 |
Quote:
|
||
July 5, 2016, 11:00 |
Through udf
|
#3 |
New Member
Apiano Morais
Join Date: Apr 2016
Posts: 10
Rep Power: 10 |
This indeed is quite simple and it is posted in the fluent UDF manual.
You may modify this /************************************************** ************* Surface Tension Coefficient UDF for the VOF Multiphase Model ************************************************** *************/ #include "udf.h" DEFINE_PROPERTY(sfc, c, t) { real T = C_T(c,t); return 1.35 - 0.004*T + 5.0e-6*T*T; } |
|
December 7, 2016, 22:49 |
|
#4 |
New Member
Omar E. Godinez
Join Date: May 2016
Posts: 8
Rep Power: 10 |
I did try to do this in a couple months ago when I was exploring options for a new project. When I finally managed to come up with a UDF that would make sense to Fluent, it turned out that it will not allow a variable surface tension in the entire domain automatically; it will only modify the property in a specific thread and it did not allow me to control it by default because it won't guide you in any way with the thread pointers.In my case, it only allowed modified surface tension along the boundaries of the domain. My intention was to make surface tension a function of a mass fraction of a secondary component that existed only in one of the two phases.
I am disenchanted with fluent UDF's for this reason, either the usage is limited or the documentation is poor... and they don't provide support for UDF's. A colleague eventually found a way to do it in OpenFOAM... If you need to write UDF's you are probably better off using something more flexible to begin with. I am pretty sure there should be a way to do something like this, but in many ways you are left in the dark with UDF's if you are a new user. |
|
December 12, 2016, 12:02 |
|
#5 |
New Member
anonymous
Join Date: Dec 2015
Posts: 14
Rep Power: 11 |
Hi Omar EGB, may you please be so kind and post the code of your UDF for the concentration depending surface tension.
I also created a UDF for it and it works, but the surface tension does not influence the flow along the interface. Do you have any idea why it does not show me a flow from lower to higher surface tension? Thanks for your help |
|
December 12, 2016, 13:14 |
|
#6 | |
New Member
Omar E. Godinez
Join Date: May 2016
Posts: 8
Rep Power: 10 |
Quote:
#include "udf.h" DEFINE_PROPERTY(surface_tension,c,t) { real sigma; Thread *liq = THREAD_SUB_THREAD(t,1); sigma = ((sin(C_YI(c,liq,2)))); return sigma; } in there, the sin function is just a placeholder for whatever the behaviour of surface tension would be. I also remember doing something like #include "udf.h" DEFINE_PROPERTY(Custom_Surface_Tension,c,t) { real sigma,xm; Thread *Mix=THREAD_SUPER_THREAD(t); Thread *Phase1=THREAD_SUB_THREAD(Mix, 3); /*t=Phase1;*/ xm=C_YI(c,t,0); sigma=-.02428*(xm)*(xm)*(xm)+.3759*(xm)*xm)-.0415(xm)+.0073; return sigma; } in an attempt to address the modification to a specific phase, in case that was what the thread pointer meant. As I said, the result was a modified surface tension only along the boundaries of the mesh, and not along the interfaces. As far as I understand, fluent uses the CSF model made by Brackbill et al. (1991?) with this, surface tension is calculated for the entire domain, but it null when a phase's volume fraction is 1, so surface tension should only have a positive value in the interface, and that's where it should have an effect, however, I do not know if the surface tension will have an effect on the velocity field by itself, since with VOF, the momentum equation does not "see" the interface and momentum goes through it by caring only about the change in fluid properties/boundary conditions. Maybe this is dependent on the solving sequence used by fluent? possibly the surface tension model will only have an effect on the volume fractions. Have you tried modeling it with Maragoni stress in some way? |
||
December 14, 2016, 10:44 |
|
#7 |
New Member
anonymous
Join Date: Dec 2015
Posts: 14
Rep Power: 11 |
thanks for your answer.
if you mean the build function of marangoni stress - I didn't use it, as it is temperature depending - and I only need a change caused by different concentration of a species in a mixture. So far if I test it I get the same result with a fixed and a variable surface tension. So it looks like fluent calculates the right surface tension at the interface of air to mixture, but does not use it for further calculations. |
|
December 20, 2016, 18:37 |
|
#8 | |
New Member
Aaronaiy
Join Date: Dec 2016
Posts: 7
Rep Power: 9 |
Quote:
|
||
December 21, 2016, 02:43 |
|
#9 |
New Member
anonymous
Join Date: Dec 2015
Posts: 14
Rep Power: 11 |
I'm quite sure that fluent can use calculated surface tension, but I think that I use or not use a right setting - maybe I just need to select or unselect a button or function in fluent.
Another reason might be that I have nearly no flow/velocity in my calculation - only diffusion. |
|
December 21, 2016, 11:57 |
|
#10 | |
New Member
Aaronaiy
Join Date: Dec 2016
Posts: 7
Rep Power: 9 |
Quote:
|
||
December 22, 2016, 02:30 |
|
#11 |
New Member
anonymous
Join Date: Dec 2015
Posts: 14
Rep Power: 11 |
I haven't solved it until now, but I will post a comment if I do so. Please let me know if you solve it thanks
|
|
December 23, 2016, 23:58 |
|
#12 |
New Member
Aaronaiy
Join Date: Dec 2016
Posts: 7
Rep Power: 9 |
I have not solve it yet. I can only get the reasonable velocity field at the primary several steps. But, after that, the velocity is not correct. I don't know what happend.
|
|
December 24, 2016, 07:43 |
|
#13 |
New Member
Join Date: Dec 2016
Posts: 2
Rep Power: 0 |
What I know so far,
Working with Surface Tension: • In standard VOF methods, the curvature calculations are based on volume fraction fields • Interface sharpening schemes provide discontinuous or sharply changing volume fractions close to interface • Calculation of curvature based on volume fractions can be inaccurate and cause convergence issues in problems dominated by surface tension. One option can be used to address them − Use Coupled Level set + VOF method |
|
June 18, 2022, 02:51 |
|
#14 |
New Member
Brian Huffman
Join Date: Jun 2022
Posts: 4
Rep Power: 4 |
Hey there anyone it may help. I know this reply is late, but this post helped me on my journey and I would like to answer.
I have the same objective as this post states, to write a UDF that controls the surface tension coefficient by analyzing the mixture species fraction. The following code seems to be the answer: DEFINE_PROPERTY(Custom_Surface_Tension, c, t) { Domain *mix; mix = Get_Domain(1); Thread *mix_thread = Lookup_Thread(mix, 2); Thread *sec_phase = THREAD_SUB_THREAD(mix_thread,1); real sigma, xm; xm = C_YI(c,sec_phase,1); sigma = 0.043*xm*xm - 0.1081*xm + 0.0702; return sigma; } The key part being the first 4 lines of code: Lines 1-2. grab the mixture domain pointer (domain ID=1 for mixture domain) & assign variable *mix. Line 3. Find the relevant thread (domain ID=1 for mixture, Zone ID=2 for fluid), assign the lookup to a variable *mix_thread (this is a mixture level thread) Line 4. Assign a phase level pointer (*sec_phase) to secondary phase thread *sec_phase now has the required data to proceed with mass fraction function C_YI |
|
Tags |
bubble, marangoni, thermocapillary, vof |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
two-phase flow with variable surface tension | yf | Main CFD Forum | 1 | May 19, 2006 10:58 |
two-phase flow with variable surface tension | fatt128@hotmail.com | Main CFD Forum | 0 | May 18, 2006 23:00 |
surface tension gradient on a free surface | Abrem | FLUENT | 1 | April 30, 2006 04:41 |
Surface tension - Continuum Surface Force model | Robert | Main CFD Forum | 0 | May 2, 2002 08:34 |
[surface tension effect at free-surface ?] | name | Main CFD Forum | 1 | September 21, 2001 10:54 |