CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM (
-   -   Morph mesh given displacement of boundary points (

praveen November 5, 2011 02:12

Morph mesh given displacement of boundary points

Is there anything in openfoam which allows me to morph the interior mesh, given the displacement of the boundary mesh nodes ?


wyldckat November 5, 2011 04:04

Hi Praveen,

Does this tutorial suit your requirements: "tutorials/mesh/moveDynamicMesh/simpleHarmonicMotion"

Best regards,

praveen November 5, 2011 07:05

Thanks. That seems relevant to me. I will check it out. Is it possible to specify the displacement of each individual boundary mesh point ?

ngj November 5, 2011 08:33

Hi Praveen,

Yes, it is possible to specify the displacement on the point level. This type of boundary condition can be put into two categories:

1. You know the motion by an algebraic equation, hence you loop over every boundary point and specify the displacement (Note: Some solvers use the boundary velocity, thus differentiate your algebraric equation with respect to time and evaluate it). Furthermore, if you are using tet-decomposition (available in 1.6-ext), you specify both the motion on the points and in the centers of the boundary faces. On the boundary, they are ordered as [<points> <face centers>].

2. You move the mesh based on results from the state of your simulation. Typically you can compute the motion in the face centers, and then you perform an interpolation to the points on the boundary. Again, be aware when you are using displacement or velocity solvers for the mesh motion.

With respect to the interpolation methods you can either look through the forum, or so-forth you have 1.6-ext installed, you can see an example of the implementation in the file "freeSurface.C" located somewhere in the "applications/solvers" directory.

A final comment: If the boundary you are moving also has a very fine boundary layer resolution, then my experience is that laplaceFaceDecomposition (1.6-ext) is the most robust combined with a very stiff mesh diffusivity next to that boundary. The diffusivity is the \gamma term in the following Laplace equation for the velocity of the mesh motion:

\nabla \gamma\boldsymbol\cdot\nabla\mathbf{u}_m=\boldsymbol{0}

The diffusivity is specified in the dynamicMeshDict in <rootCase>/constant.

Good luck and kind regards,


All times are GMT -4. The time now is 19:48.