CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Programming & Development (https://www.cfd-online.com/Forums/openfoam-programming-development/)
-   -   dynamic contact angle implementation q (https://www.cfd-online.com/Forums/openfoam-programming-development/95624-dynamic-contact-angle-implementation-q.html)

 doubtsincfd December 25, 2011 20:26

dynamic contact angle implementation q

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?

 Bernhard December 27, 2011 06:26

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.

 doubtsincfd December 27, 2011 18:21

3 Attachment(s)
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.

 lindstroem January 3, 2012 07:31

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.

http://dl.dropbox.com/u/587565/camodels.png

Greetings

 doubtsincfd January 3, 2012 13:38

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.

 Andrea_85 January 4, 2012 04:53

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).

regard

andrea

 gnoyeh525 May 5, 2015 09:30

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 (Post 337661) 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. http://dl.dropbox.com/u/587565/camodels.png Greetings

 sandy13 November 12, 2015 09:07

Quote:
 Originally Posted by lindstroem (Post 337661) 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. http://dl.dropbox.com/u/587565/camodels.png 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,

 All times are GMT -4. The time now is 18:50.