CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Running, Solving & CFD

Dynamic contact angle

Register Blogs Community New Posts Updated Threads Search

Like Tree6Likes

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   May 23, 2005, 19:14
Default Hi, In OpenFoam, one can en
  #1
Senior Member
 
Pei-Ying Hsieh
Join Date: Mar 2009
Posts: 317
Rep Power: 18
hsieh is on a distinguished road
Hi,

In OpenFoam, one can enter the effect of velocity on the wall contact angles (receeding contact angle and advancing contact angle). What will be the appropriate values (uTheta, thetaR, thetaA) for water. Is there any generic formula for liquids? Thanks!

Pei
Znoel_7520 likes this.
hsieh is offline   Reply With Quote

Old   May 23, 2005, 19:24
Default The formula I have implemented
  #2
Senior Member
 
Join Date: Mar 2009
Posts: 854
Rep Power: 22
henry is on a distinguished road
The formula I have implemented for dynamic contact angles is purely heuristic but has the correct limiting behaviour and is general enough to enable the simulation of meandering rivulet flow for which I created it. However, I do not have any rules or formulae for setting the parameters and in any case contact angles are not simply a property of the liquid but of the surface as well.

If dynamic contact angle is important in your simulations it would be best if you obtain measurements for the limiting values of the receeding and advancing contact angles (thetaR, thetaA) and some estimate for the speed scale uTheta controlling the approach to these limiting values for your liquid-surface system.
Znoel_7520 likes this.
henry is offline   Reply With Quote

Old   June 27, 2005, 14:09
Default Hi, A short question related
  #3
Member
 
sergei shulepov
Join Date: Mar 2009
Posts: 37
Rep Power: 17
sergei is on a distinguished road
Hi,
A short question related to the dynamic contact angle implementation.
Is it a kind of Voinov-Tanner law, and wat actually means the speed scale: d (theta)/d (Ca) at Ca->0?

(Ca - capillary number, theta - contact angle)

Thank you
Sergei
sergei is offline   Reply With Quote

Old   June 27, 2005, 14:40
Default I developed and implemented th
  #4
Senior Member
 
Join Date: Mar 2009
Posts: 854
Rep Power: 22
henry is on a distinguished road
I developed and implemented the dynamic contact-angle function based on very limited information and no background knowledge in the subject. The purpose was to simulate the meandering of rivulet flow which we demonstrated well with this function and were able to set the parameters based on the limited available measured data. I guessed the function based purely on sensible choices for the limiting behaviour and included the minumum number of paramerters to reproduce the effect. I am not sure what the physical meaning of the speed-scale is, or how it should be evaluated from other information.

If you have a better knowledge of the subject and can propose a more physical function it should be easy to replace the one I implemented with your proposal.
henry is offline   Reply With Quote

Old   June 28, 2005, 07:57
Default Henry, What I know from the l
  #5
Member
 
sergei shulepov
Join Date: Mar 2009
Posts: 37
Rep Power: 17
sergei is on a distinguished road
Henry,
What I know from the literature (I am not sure is it a more physical function or not, as compared to the implementation in Foam), people are using

theta(dynamic)^3-theta(equilibrium)^3=Const*Ca

where
Ca = mu*V/sigma, with mu - dynamic viscosity,V - velocity of the contact line, and sigma - surface tension, theta - contact angle (rad).
Const is found from fitting this expression to the experimental data for a given range of the from velocities.
As you can probably see, the expression works well for Ca<1 (typically up to Ca = 0.1).
For higher velocities and larger contact angles (let say approaching Pi), in the literature phenomenological expressions like

theta(advancing) = A+[B/(1+1/(1+C*Ca)^alpha)]

(or even more complex) are used.
sergei is offline   Reply With Quote

Old   June 28, 2005, 08:21
Default It would quite easy to impleme
  #6
Senior Member
 
Join Date: Mar 2009
Posts: 854
Rep Power: 22
henry is on a distinguished road
It would quite easy to implement either of these expressions in OpenFOAM, in fact any function of theta(equilibrium), mu, sigma, V and alpha should be easy to handle.
henry is offline   Reply With Quote

Old   June 28, 2005, 09:52
Default Henry, Last question in this
  #7
Member
 
sergei shulepov
Join Date: Mar 2009
Posts: 37
Rep Power: 17
sergei is on a distinguished road
Henry,
Last question in this respect. What is your experinece while implementing a dynamic contact angle with VOF. I have programmed a while ago this kind of dynamic behavior in STAR, but didn't know how to incorporate V at the interface. Well there is of course a V for vof-scalar between 0 and 1, but it can be different for different fractions. Interface is running over some 2-3 fv-cells, is itn't?
Anyway, I have not got really nice results, albeit those were better than without dynamic contact angle for my problem.

Thanks for the comments
Sergei
sergei is offline   Reply With Quote

Old   June 28, 2005, 10:10
Default I didn't experience any proble
  #8
Senior Member
 
Join Date: Mar 2009
Posts: 854
Rep Power: 22
henry is on a distinguished road
I didn't experience any problems with the implementation of the dynamic contact angle and the results looked good even though the interface is smeared over 2-3 cells. It would of course be better if the interface were tracked as a sheet and a proper surface force-balance applied but this is much harder to do than VOF particularly for computing break-up and coalesces as in Diesel spray atomisation etc. If you would like to study my impklementation take a look at interfaceProperties::correctContactAngle in interfaceProperties.C which is part of inertFoam, in particular:

// Calculate the dynamic contact angle if required
if (uTheta > SMALL)
{
scalar thetaA = convertToRad*gcap.thetaA();
scalar thetaR = convertToRad*gcap.thetaR();

// Calculated the component of the velocity parallel to the wall
vectorField Uwall =
U_.boundaryField()[patchi].patchInternalField()
- U_.boundaryField()[patchi];
Uwall -= (AfHatPatch & Uwall)*AfHatPatch;

// Find the direction of the interface parallel to the wall
vectorField nWall =
nHatPatch - (AfHatPatch & nHatPatch)*AfHatPatch;

// Normalise nWall
nWall /= (mag(nWall) + SMALL);

// Calculate Uwall resolved normal to the interface parallel to
// the interface
scalarField uwall = nWall & Uwall;

theta += (thetaA - thetaR)*tanh(uwall/uTheta);
}
rasool_soofi likes this.
henry is offline   Reply With Quote

Old   June 28, 2005, 12:18
Default Hi, sergei, Could you pleas
  #9
Senior Member
 
Pei-Ying Hsieh
Join Date: Mar 2009
Posts: 317
Rep Power: 18
hsieh is on a distinguished road
Hi, sergei,

Could you please post the source of the literature on Dynamic Contact angle? I am very interested in reading this paper(s). Thanks!

I am also wondering whether you have come across any data of dynamic contact angle of water (on teflon surface, especially)?

pei
hsieh is offline   Reply With Quote

Old   June 28, 2005, 13:20
Default Hi,Pei, In relation to the li
  #10
Member
 
sergei shulepov
Join Date: Mar 2009
Posts: 37
Rep Power: 17
sergei is on a distinguished road
Hi,Pei,
In relation to the literature - there is really plenty of. Background of the phenomenon you can find in articles by R.G. Cox (there are a few), and, recently, in the papers of Y.D. Shikhmurzaev. Some of them are available on the internet in pdf-format.
However, more practical papers by, for instance, D. Or and M. Tuller "Capillarity"; and GJ Hirasaki and SY Yang "Dynamic Contact line with disjoining pressure ...." is a better place to start (you can also follow the references in these articles). You can find those references on internet using names and titles I mentioned.

Further, there is a book edited by J.C. Berg "Wettability". Look for the chapters by T.D. Blake and S.F. Kistler (latter is concerning with hydrodynamics of wetting).
Finally, some general remarks may be found in P.G. de Gennes, Review Modern Physics v57,p289,1985,"Wetting:statics and dynamics"

I don't have experience of water on teflon (teflon , as you probably know, is hydrophobic with theta(eq) around 120-130 degree). Mostly we have worked (experiments and simulations) with water on glass, silicon, metals, and different polymers.

Regards
Sergei
lth and laurent98 like this.
sergei is offline   Reply With Quote

Old   June 28, 2005, 17:12
Default Thanks Sergei! Your info is
  #11
Senior Member
 
Pei-Ying Hsieh
Join Date: Mar 2009
Posts: 317
Rep Power: 18
hsieh is on a distinguished road
Thanks Sergei!

Your info is very helpful.

Pei
hsieh is offline   Reply With Quote

Old   August 3, 2010, 18:34
Default
  #12
Member
 
Join Date: Nov 2009
Posts: 48
Rep Power: 17
farhagim is on a distinguished road
Hello Henry,

I have two question regarding your implemention. First of all, Would you please Tell me if the Uwall is zero ( solid stationary surface), then thetaD=theta0 ???
second, can you explain this formulation Uwall -= (AfHatPatch & Uwall)*AfHatPatch; I am new in Openfoam, I dont know what is AfHatPatch and nHatPatch ???

I would be glad to hear from you.

thanks
Mehran

Quote:
Originally Posted by henry View Post
I didn't experience any problems with the implementation of the dynamic contact angle and the results looked good even though the interface is smeared over 2-3 cells. It would of course be better if the interface were tracked as a sheet and a proper surface force-balance applied but this is much harder to do than VOF particularly for computing break-up and coalesces as in Diesel spray atomisation etc. If you would like to study my impklementation take a look at interfaceProperties::correctContactAngle in interfaceProperties.C which is part of inertFoam, in particular:

// Calculate the dynamic contact angle if required
if (uTheta > SMALL)
{
scalar thetaA = convertToRad*gcap.thetaA();
scalar thetaR = convertToRad*gcap.thetaR();

// Calculated the component of the velocity parallel to the wall
vectorField Uwall =
U_.boundaryField()[patchi].patchInternalField()
- U_.boundaryField()[patchi];
Uwall -= (AfHatPatch & Uwall)*AfHatPatch;

// Find the direction of the interface parallel to the wall
vectorField nWall =
nHatPatch - (AfHatPatch & nHatPatch)*AfHatPatch;

// Normalise nWall
nWall /= (mag(nWall) + SMALL);

// Calculate Uwall resolved normal to the interface parallel to
// the interface
scalarField uwall = nWall & Uwall;

theta += (thetaA - thetaR)*tanh(uwall/uTheta);
}
farhagim is offline   Reply With Quote

Old   June 11, 2011, 06:17
Default slug simulation
  #13
New Member
 
azar
Join Date: Dec 2010
Posts: 5
Rep Power: 16
ajamy is on a distinguished road
Hi foamers, i have some question:
1-which solver is the best for simulating slug flow in vertical pipe?
2-whats the meaning of constantAlphaContactAngle?! would you explain brifly a bout it?
ajamy is offline   Reply With Quote

Old   June 12, 2011, 04:10
Default Dynamic contact angle
  #14
ata
Senior Member
 
ata's Avatar
 
ata kamyabi
Join Date: Aug 2009
Location: Kerman
Posts: 323
Rep Power: 18
ata is on a distinguished road
Hi
I think interFoam is appropriate.
It is for wall contact angle.
Good luck

Ata
ata is offline   Reply With Quote

Old   June 15, 2011, 06:16
Default
  #15
New Member
 
azar
Join Date: Dec 2010
Posts: 5
Rep Power: 16
ajamy is on a distinguished road
Quote:
Originally Posted by ata View Post
Hi
I think interFoam is appropriate.
It is for wall contact angle.
Good luck

Ata


hi Dear ata
thank a lot
ajamy is offline   Reply With Quote

Old   February 20, 2013, 04:58
Red face about contact angles
  #16
New Member
 
vinita
Join Date: Dec 2012
Posts: 6
Rep Power: 14
v_scientist is on a distinguished road
hello friends,

I am studying a phenomenon in which surface tension plays an imp role. so i need to know more abt it . i have known a little bit about constantAlphaContactAngle . but don't know where to put thetaR & thetaA . I mean in which file i need to specify its values. since , I am new to OpenFOAM , please help me.
v_scientist is offline   Reply With Quote

Old   August 26, 2013, 01:25
Default
  #17
Member
 
Christian Butcher
Join Date: Jul 2013
Location: Japan
Posts: 85
Rep Power: 13
chrisb2244 is on a distinguished road
Dear Vinita,

So just for reference if anyone else finds this post, my understanding is that for constantAlphaContactAngle, at least in 2.2.0, only type, theta0, value (irrelevant if I understand correctly) and limit are necessary, and should be specified in the boundary file for the phase volume/condition, typically alpha1(?)

So for example

patch_name
{
type constantAlphaContactAngle;
value uniform 0;
theta0 90;
limit gradient;
}


The values for uTheta, thetaA and thetaR are needed if you specify type dynamicAlphaContactAngle, at which point they should be given in the same dictionary file, eg

sides
{
type dynamicAlphaContactAngle;
value uniform 0;
theta0 90;
uTheta 1;
thetaA 125;
thetaR 85;
limit gradient;
}

I think that uTheta will be in m/s, and thetaA, R and 0 are in degrees?
chrisb2244 is offline   Reply With Quote

Old   January 6, 2014, 20:04
Default
  #18
Member
 
laurentL
Join Date: Oct 2011
Location: new caledonia
Posts: 73
Rep Power: 15
laurent98 is on a distinguished road
hi,
is there anybody how can give us a idea of the realistic dynamic contact angle values thetaA R and thetaU, for water-air-solid contact ???
thanks a lot Laurent
laurent98 is offline   Reply With Quote

Old   January 17, 2014, 11:29
Default
  #19
RBJ
New Member
 
Robin Koldeweij
Join Date: Nov 2009
Posts: 19
Rep Power: 17
RBJ is on a distinguished road
Quote:
Originally Posted by laurent98 View Post
hi,
is there anybody how can give us a idea of the realistic dynamic contact angle values thetaA R and thetaU, for water-air-solid contact ???
thanks a lot Laurent
Dear Laurent,

As noticed above, contact angles depend on the type of solid. Probably you've heard of hydrophillic and hydrophobic. For realistic values, you need to do an experiment with your surface, under the atmospheric conditions that you want to use (RH for instance can be of importance).

Good starting points to read-up on the subject are to search for Cox-Voinov or Voinov-Tanner-Hoffman. Another good reference is:

Snoeijer et al, Annu. Rev. Fluid Mech. 2013. 45:269–92
RBJ is offline   Reply With Quote

Old   July 20, 2014, 18:23
Default
  #20
Member
 
Mahdi
Join Date: Jul 2012
Posts: 53
Rep Power: 14
Mahdi2010 is on a distinguished road
Hi all
I am still trying to understand how ''dynamiccontactangle'' works in OpenFOAM.
Of course thetaA and thetaR are determined based on the material properties of the surface, but ''utheta'' is still the question. What does it mean exactly?
Mahdi2010 is offline   Reply With Quote

Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Moving contact line (dynamic contact angle) Pulli FLUENT 0 March 1, 2007 13:31
UDF for dynamic contact angle Aireen FLUENT 0 August 11, 2006 12:08
Dynamic contact angle Aireen FLUENT 1 August 10, 2006 17:01
Dynamic Contact Angle Maged Main CFD Forum 1 July 25, 2006 21:59
Dynamic contact angle Aireen FLUENT 2 July 5, 2006 14:14


All times are GMT -4. The time now is 23:19.