# dynamic contact angle implementation q

 Register Blogs Members List Search Today's Posts Mark Forums Read

 December 25, 2011, 20:26 dynamic contact angle implementation q #1 Senior Member   Join Date: Nov 2009 Location: Michigan Posts: 135 Rep Power: 10 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: 15 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: 10
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 non-zero. 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.
Attached Images
 velocityplot.jpg (11.7 KB, 122 views) expression.jpg (64.3 KB, 155 views) alphaplot.jpg (43.1 KB, 116 views)

 January 3, 2012, 07:31 #4 Senior Member   Join Date: Nov 2010 Posts: 113 Rep Power: 9 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 CA-model. 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 Ca-Number 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: 10 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: 314 Rep Power: 10 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 8-9% and it can be reduced to 2-3% 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: 6
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:
 Originally Posted by lindstroem 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 CA-model. 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 Ca-Number can be extracted from the velocity field and the transport properties. Greetings

November 12, 2015, 09:07
#8
Member

sandy
Join Date: Mar 2013
Location: Cardiff, UK
Posts: 74
Rep Power: 6
Quote:
 Originally Posted by lindstroem 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 CA-model. 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 Ca-Number can be extracted from the velocity field and the transport properties. Greetings
Dear lindstroem,
Could you please give me the steps about changing the method of calculation dynamic contact angle. Actually I created my oun solver from interFoam solver and gave it another name. the dynamic contact angle files does not come with the solver and calls it from the original source with we can not modify and save on it. So could you please show me the to do it?
Regards,
Sandy13,

 Thread Tools Display Modes Linear Mode

 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 OffTrackbacks are On Pingbacks are On Refbacks are On Forum Rules

 Similar Threads Thread Thread Starter Forum Replies Last Post rmousavibt Fluent UDF and Scheme Programming 11 January 6, 2017 16:45 eberberovic OpenFOAM Running, Solving & CFD 23 March 30, 2016 19:57 hsieh Open Source Meshers: Gmsh, Netgen, CGNS, ... 32 September 13, 2011 05:50 sebastian_vogl OpenFOAM Running, Solving & CFD 3 June 22, 2009 12:25 asaha OpenFOAM 0 May 19, 2009 01:15

All times are GMT -4. The time now is 00:55.