CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Programming & Development

dynamic contact angle implementation q

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   December 25, 2011, 20:26
Default dynamic contact angle implementation q
  #1
Senior Member
 
Join Date: Nov 2009
Location: Michigan
Posts: 135
Rep Power: 17
doubtsincfd is on a distinguished road
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?
doubtsincfd is offline   Reply With Quote

Old   December 27, 2011, 06:26
Default
  #2
Senior Member
 
Bernhard
Join Date: Sep 2009
Location: Delft
Posts: 790
Rep Power: 22
Bernhard is on a distinguished road
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.
Bernhard is offline   Reply With Quote

Old   December 27, 2011, 18:21
Default
  #3
Senior Member
 
Join Date: Nov 2009
Location: Michigan
Posts: 135
Rep Power: 17
doubtsincfd is on a distinguished road
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
File Type: jpg velocityplot.jpg (11.7 KB, 168 views)
File Type: jpg expression.jpg (64.3 KB, 227 views)
File Type: jpg alphaplot.jpg (43.1 KB, 159 views)
doubtsincfd is offline   Reply With Quote

Old   January 3, 2012, 07:31
Default
  #4
Senior Member
 
Join Date: Nov 2010
Posts: 113
Rep Power: 16
lindstroem is on a distinguished road
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
lindstroem is offline   Reply With Quote

Old   January 3, 2012, 13:38
Default
  #5
Senior Member
 
Join Date: Nov 2009
Location: Michigan
Posts: 135
Rep Power: 17
doubtsincfd is on a distinguished road
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.
doubtsincfd is offline   Reply With Quote

Old   January 4, 2012, 04:53
Default
  #6
Senior Member
 
Andrea Ferrari
Join Date: Dec 2010
Posts: 319
Rep Power: 17
Andrea_85 is on a distinguished road
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
Andrea_85 is offline   Reply With Quote

Old   May 5, 2015, 10:30
Default
  #7
New Member
 
MWu
Join Date: Nov 2013
Posts: 10
Rep Power: 13
gnoyeh525 is on a distinguished road
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 View Post
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
gnoyeh525 is offline   Reply With Quote

Old   November 12, 2015, 09:07
Default
  #8
Member
 
sandy
Join Date: Mar 2013
Location: Cardiff, UK
Posts: 74
Rep Power: 13
sandy13 is on a distinguished road
Quote:
Originally Posted by lindstroem View Post
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,
sandy13 is offline   Reply With Quote

Reply


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 Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Dynamic contact angle rmousavibt Fluent UDF and Scheme Programming 12 October 31, 2021 23:38
OpenFOAM141dev A new implementation of dynamicKistlerGammaContactAngle eberberovic OpenFOAM Running, Solving & CFD 26 June 10, 2021 05:08
[Netgen] Import netgen mesh to OpenFOAM hsieh OpenFOAM Meshing & Mesh Conversion 32 September 13, 2011 06:50
Theoretical background of formula for dynamic contact angle in interfoam sebastian_vogl OpenFOAM Running, Solving & CFD 3 June 22, 2009 13:25
Time evolution of dynamic contact angle asaha OpenFOAM 0 May 19, 2009 02:15


All times are GMT -4. The time now is 15:07.