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

 hsieh May 23, 2005 19: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 19: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 14: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 14: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 07: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

(or even more complex) are used.

 henry June 28, 2005 08: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 09: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.

Sergei

 henry June 28, 2005 10: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)
{

// 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 12: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 13: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 17:12

Thanks Sergei!

Pei

 farhagim August 3, 2010 18: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 06: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 04:10

Dynamic contact angle

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

Ata

 ajamy June 15, 2011 06: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 04:58

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 01: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;
}

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;
}

I think that uTheta will be in m/s, and thetaA, R and 0 are in degrees?

 laurent98 January 6, 2014 20: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 11: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 18: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 01:10.