CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   Dynamic contact angle (https://www.cfd-online.com/Forums/openfoam-solving/60564-dynamic-contact-angle.html)

hsieh May 23, 2005 18:14

Hi, In OpenFoam, one can en
 
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

henry May 23, 2005 18:24

The formula I have implemented
 
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.

sergei June 27, 2005 13:09

Hi, A short question related
 
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

henry June 27, 2005 13:40

I developed and implemented th
 
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.

sergei June 28, 2005 06:57

Henry, What I know from the l
 
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.

henry June 28, 2005 07:21

It would quite easy to impleme
 
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.

sergei June 28, 2005 08:52

Henry, Last question in this
 
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

henry June 28, 2005 09:10

I didn't experience any proble
 
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);
}

hsieh June 28, 2005 11:18

Hi, sergei, Could you pleas
 
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

sergei June 28, 2005 12:20

Hi,Pei, In relation to the li
 
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

hsieh June 28, 2005 16:12

Thanks Sergei! Your info is
 
Thanks Sergei!

Your info is very helpful.

Pei

farhagim August 3, 2010 17:34

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 (Post 196142)
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);
}


ajamy June 11, 2011 05:17

slug simulation
 
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?

ata June 12, 2011 03:10

Dynamic contact angle
 
Hi
I think interFoam is appropriate.
It is for wall contact angle.
Good luck

Ata

ajamy June 15, 2011 05:16

Quote:

Originally Posted by ata (Post 311640)
Hi
I think interFoam is appropriate.
It is for wall contact angle.
Good luck

Ata



hi Dear ata
thank a lot
:)

v_scientist February 20, 2013 03:58

about contact angles
 
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.:D:(:)

chrisb2244 August 26, 2013 00:25

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?

laurent98 January 6, 2014 19:04

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

RBJ January 17, 2014 10:29

Quote:

Originally Posted by laurent98 (Post 468890)
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

Mahdi2010 July 20, 2014 17:23

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?


All times are GMT -4. The time now is 08:45.