
[Sponsors] 
December 25, 2011, 20:26 
dynamic contact angle implementation q

#1 
Senior Member
Join Date: Nov 2009
Location: Michigan
Posts: 135
Rep Power: 7 
The dynamic contact angle implementation in OF is:
const vectorField nf(patch().nf()); // Calculated the component of the velocity parallel to the wall vectorField Uwall(Up.patchInternalField()  Up); Uwall = (nf & Uwall)*nf; // Find the direction of the interface parallel to the wall vectorField nWall(nHat  (nf & nHat)*nf); // Normalise nWall nWall /= (mag(nWall) + SMALL); // Calculate Uwall resolved normal to the interface parallel to // the interface scalarField uwall(nWall & Uwall); return theta0_ + (thetaA_  thetaR_)*tanh(uwall/uTheta_); ///////////////////////////////// 1. What is Up? 2. nf & Uwall is inner product of nf and Uwall. Wont it give component normal instead of parallel to the wall? 

December 27, 2011, 06:26 

#2 
Senior Member
Bernhard
Join Date: Sep 2009
Location: Delft
Posts: 790
Rep Power: 13 
With respect to question 2.
The definition used here is Uwall = (nf & Uwall)*nf; a = b is short for a = a  b So in this case, the normal component is subtracted from the total vector, thus giving you the parallel component. 

December 27, 2011, 18:21 

#3 
Senior Member
Join Date: Nov 2009
Location: Michigan
Posts: 135
Rep Power: 7 
Thank you, Bernhard.
Actually I am trying to implement the famous expression for dynamic contact angle by Bracke et al. The expression is given in equation 12 in the image attached below. In the attached plot for velocity, the velocity near the capillary wall (case I have run is the capillary tutorial of openfoam) and near the interface is not uniform. Even after the meniscus height becomes steady, the velocity near the wall remains nonzero. Ideally, as per the expression for dynamic contact angle, as the meniscus attains steady position, dynamic contact angle should equal static contact angle. But if we are to take the velocity of the cells right next to wall for calculation, dynamic contact angle will never equal static contact angle, even though meniscus height remains constant. Either the velocity field should be zero on attaining equilibrium height, or by some way, the meniscus speed should be captured correctly, else dynamic contact angle simulation in OF will be difficult. Thank you for your response. I really appreciate it. Btw, I am running validation cases for surface tension driven flow. I would really like to give feedback on the results and be in touch with developer to clarify all the why's and how's. 

January 3, 2012, 07:31 

#4 
Senior Member
Join Date: Nov 2010
Posts: 113
Rep Power: 6 
Hi doubtsincfd
i also implemented/used some CA models but for a droplet impact. As you said, there are some issues about the velocity at the contactline. This is not the problem of the CAmodel. Anyhow implementing new models is quite simpel. Just alter the line return theta0_ + (thetaA_  thetaR_)*tanh(uwall/uTheta_); with the equation you want. The needed parameters for the CaNumber can be extracted from the velocity field and the transport properties. Greetings 

January 3, 2012, 13:38 

#5 
Senior Member
Join Date: Nov 2009
Location: Michigan
Posts: 135
Rep Power: 7 
you are right. But the expression for dynamic contact angle is such that at equilibrium, the dynamic contact angle should be equal to static contact angle. But at equilibrium also, if there are spurious velocities near the contact line, the dynamic contact angle will never equal the static contact angle and the equilibrium solution will have some error in it.
I did change the contact angle angle expression and implemented the expression by bracke et al. But the equilibrium height I am getting for capillary is way off than the analytical value. 

January 4, 2012, 04:53 

#6 
Senior Member
Andrea Ferrari
Join Date: Dec 2010
Posts: 280
Rep Power: 7 
Hi,
Spurious currents also affect the solution when static contact angle is used. I did some test time ago and (as suggested in BrackBill et al.) using a smooth filter on the color function before the curvature calculation can improve the solution and reduce the magnitude of these non physical velocities. From my test, the difference from the analytical solution if no smooth filter is used is about 89% and it can be reduced to 23% using a smooth filter (The spurious currents are still present but their magnitude is reduced). Maybe this can help you too. regard andrea 

May 5, 2015, 09:30 

#7  
New Member
MWu
Join Date: Nov 2013
Posts: 9
Rep Power: 3 
Dear lindstroem
To use the dynamic contact angle model in interFoam solver, we only need to specify the boundary conditions at 0 initial time, but we do not need to modify the library source file interphaseProperties.C, right? But I don't see how the dynamic contact angle has been calculate in the interphaseProperties.C. Could you tell me how the dynamic contact angle link to and work in the interphaseProperties.C file? many thanks cheers Ming Quote:


Thread Tools  
Display Modes  


Similar Threads  
Thread  Thread Starter  Forum  Replies  Last Post 
OpenFOAM141dev A new implementation of dynamicKistlerGammaContactAngle  eberberovic  OpenFOAM Running, Solving & CFD  15  August 20, 2015 11:24 
Dynamic contact angle  rmousavibt  Fluent UDF and Scheme Programming  10  March 7, 2014 08:00 
Import netgen mesh to OpenFOAM  hsieh  Open Source Meshers: Gmsh, Netgen, CGNS, ...  32  September 13, 2011 05:50 
Theoretical background of formula for dynamic contact angle in interfoam  sebastian_vogl  OpenFOAM Running, Solving & CFD  3  June 22, 2009 12:25 
Time evolution of dynamic contact angle  asaha  OpenFOAM  0  May 19, 2009 01:15 