Moving contact line in OpenFOAM
Hi everyone,
I'm trying to understand how OpenFOAM, and interFoam in particular, deals with a moving contact line, e. g. a drop spreading over a surface. I've seen how the contact angle is imposed calculating the interface normal vector in the interfaceProperties.C file, but I haven't been able to find how OpenFOAM "makes the magic". I thought that maybe it would apply some external force, but in the UEqn.H file there is nothing like that. I'm starting to think that it would be related to the surface tension force, but I'm not sure. I hope you can help me to figure this out. Regards, Adolfo |
Hi dolfus,
As I know there are to two numerical method to simulate moving contact line in Navier Stokes equations: 1. Modify the slip velocity by the contact line velocity. 2. Add the external force to surface tension tension force at the vicinity of the contact line. You can read this article "VOF simulations of the contact angle dynamics during the drop spreading: Standard models and a new wetting force model" for the 2nd method. I do not use OpenFOAM for moving contact line model so I can not help you this part. |
Thank you for your reply. I know about this paper but the point is that I haven't been able to find anything like that inside the OpenFOAM code, probably because I haven't looked at the right files yet.
Regards |
dolfus, have you found the scripts that deal with the contact line?
|
I always thought that in interfoam the "dynamic contact angle" is a result of the momentum equation. One con only specify the gradient of alpha at the wall. How the interphase evolves is that a result of the momentum equation.
|
Quote:
|
What do you mean with true no slip condition? Did you try a zero gradient condition for alpha?: you will not have an influence of the wall since you interpolate from the inner domain
|
Quote:
Quote:
|
If you want the interphase to be at a fixed position you can use a fixed value boundary condition for alpha at the wall. Where initially it is zero you set it to zero and where it is one you set it to one
|
Quote:
In the alphaContactAngleFvPatchScalarField.C file, there are several cases defined depending on your keyword "limit" in the alpha.water file. |
Quote:
|
Hm If you want the interphase not to move at the wall you have to fix the value at the wall.
|
Quote:
|
|
Quote:
However, it seems we are missing some crucial information about the contact line, specifically the static contact angle. In real life, a liquid is always given an static contact angle. Any idea how to enforce this while also pinning the contact line? |
Hey there,
May be you should take a look at "alphaContactAngle". for dev version : https://github.com/OpenFOAM/OpenFOAM...hScalarField.H |
interface height along a slant wall
Hello Everyone,
I am working to obtain contact line motion in a container. I am thinking of obtaining interface height along a wall and then for velocity, I will take the difference of the location of 2 subsequent timestep divided by time difference. But I am unable to get the location of interface along the slant wall. It would be helpful if anyone can provide any suggestion regarding it. I have used this code in controldict functions { #includeFunc residuals #includeFunc interfaceHeight interfaceHeight1 { type interfaceHeight; libs ("libfieldFunctionObjects.so"); alpha alpha.water; locations ((0 0 0)); direction (0.0064 0.024 0); } } direction in this I assumed it to be ray from ( 0 0 0) to (0.0064 0.024 0). That's my slant wall direction. Thanks Regards |
Quote:
|
Contact line models
Quote:
I have another query regarding the implementation of dynamic contact angle. I am trying to investigate different contact line models. I am unable to understand how dynamic angle values are obtained in openFOAM. Do I need to implement different contact angle models in interfaceproperties source code or I just simple obtain the results for given input in alpha sets of theta(equilibrium), theta(adv), and theta(receding) and plot dynamic angle vs velocity? Sincere apologize for flaws in my physics, maybe I am not reading the right materials. Thanks! |
All times are GMT -4. The time now is 15:24. |