CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM (
-   -   Friction (

callahance May 28, 2012 15:14

Hello all,

i am trying to induce a friction function on one patch of my mesh (exp. lowerWall). I am trying to add a friction term in the UEqn. I thought i can make a surfaceVectorField that acts only on the lower patch of my mesh but im not so good with C++. Anyone would have an idea about how to implement such field ?

Thanks in advance.

callahance May 29, 2012 10:44

Nobody has a clue ?

calim_cfd June 2, 2012 08:50


what type of function are you thinking of?

if you want to set a specific roughness then you have bcs for this. On this lowerwall if choose this rough bc and at the other you may set the standard bcs.

if you want to make a time dependent sort of bcs..then you can try the swak4Foam pack..

explain better what you want to do so we can try to help you;)

callahance June 2, 2012 10:48

ok the problem is : a droplet sliding on an inclined plane. In nature, the droplet pinns till the inclination gets over a critical value (lets say 10 degrees). I tried in interFoam to implement different models of dynamic contact angles but no good results (the droplet starts sliding even at 1 degree inclination). I noticed that there is a friction force between the droplet and the surface which wont be considered by interFoam; F_c = f(theta_A , theta_R).

Now i want to add this force in the UEqn (Navier stokes equations). The problem is i dont know how to add a vector field that acts only on a certain patch (in this case the lowerWall).
Hope the problem is a bit clearer now :)

calim_cfd June 2, 2012 12:44


yeah it is. :)

if i were you i'd try using a roughwall bc to increase the reaction force of the surface.. what keeps the drop still is its surface tension and the normal component of the friction (am i missing sth?).. in this case the roughness of the wall should play an important role.. so i say double check this roughness issue..along with the value for the surface tension ur using... discretization associated with the surface tension value could trigger is phenomenom earlier i guess..large chunks of the water drop baddly refined....not sure thou..

i cant tell atm cuz im not on my desktop/of but have you gone though all the alphaContactAngle*.* files?

i guess you problem can be solved by implement at the worst case a new boundary condition instead of modifying a solver.. thw swak4foam could be an option.. idk.. im not an expert in multiphase flow :p

im kinda interested in your case now... if you could send ur mesh file with the 0 folder files it would be nice :D

callahance June 2, 2012 13:45

Thanks for ur response ,

the only bcs i know for a wall are wall and slip. Do you know how i can increase the roughness ? by the way i dont know if the parameter "roughness" is implemented in the bc. I think modifying the solver by adding a force is easier than making a new bc. I went through the alpha..angle. but didnt find anything (i think im missing something in it; interesting is with a kistler dynamic contact angle model, the droplet slides a shorter path than with Seeberg dynamic contact angle model.) I attended a Symposium for Openfoam last weekend in Germany and such problems were discussed. The problem ist that on the surface of a droplet, there are two surface tensions of opposite directions. And now when u reach the wall, there is only one surface tension along the interface, while the opposite one wont be considered cz of the mesh (this is just a numerical mistake). This problem was solved by adding an artificial surface tension on the contact line (physically incorrect but the results are beautiful... ).
Anyway i dont have the case right now on this laptop. Ill upload it when i can. Ill keep u posted of any news or improvements :D

calim_cfd June 2, 2012 15:18


slip and wall? check the folder with the bcs.. i dont recall the path right now but it's somewhere in /src/finitevolume/*fvpatchfields*/derived/ .. search for "uniformfixedvalue" bc inside src/finitevolume and you find the folder with all derived bcs.. you should find the ones for multiphase flow there as well.. you can set different alpha contact angle per patch or make it time dependent.. you should find the rough wall bcs there too.. search for rough inside the same folder.. when you use this bc you'll have to set an additional paramenter which is related to the average height/depth of the surface imperfections.. hence do know how to search for parameter and their definitions in openfoam right? cuz the user guide and the programmer guide tell you a lot but sometimes you need to dig deeper hehe

l8r and gl again

callahance June 2, 2012 17:39

i couldnt find rough bc. in /src/finiteVolume/fields/fvPatchFields/derived/

im usin OF 2.0.

EDIT: ok i found the roughwallfunction in src/turbulenceModels/compressible/RAS/derivedFvPatchFields/wallFunctions/mutWallFunctions/ ... but does this work for interFoam ?

calim_cfd June 2, 2012 20:08

yeah.. all bcs work with all solvers in of.. as long as they are consistent physically.. the one you pointed is meant for turbulent flows.. and your case is laminar.. but i guess you can use one of those.. as i told you i dont have of atm... tomorrow night i might point you sth more specific and point you the bc i think better suit ur case.. if you odnt find it earlier :)

mebinitap July 25, 2013 06:46

I am trying to model a droplet on an oscillating surface. But the drop seems to slip out with time even for a fixed wall (not oscillating). I used zeroGradient BC for alpha1 and p_rgh and fixedValue (0 0 0) for U at the wall (fixed). The rest of domain are atmosphere.
As in previous posts, is it related to some kind of surface roughness, which is to be implemented to prevent the slipping in this case also. If so can anybody please tell me how to do that..


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