CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM Running, Solving & CFD (
-   -   2 zones mesh morphing (to keep the boundary layer) (

fredo490 May 10, 2013 06:24

2 zones mesh morphing (to keep the boundary layer)
Dear everybody,

I'm working on a simulation where I have a deforming wall. It is actually an airfoil with a deforming leading edge (the law depends of the flow condition).

I would like to know if there is a function / tool in OpenFoam (2.2 if possible) able to keep the boundary layer next to the wall intact and send the deformation in the domain.

I know that Fluent uses a 2 zone definition to do so. The first zone next to the wall follow the deformation while the second zone takes the deep compression / extension deformation.

In my case the boundary layer is quite important and I need to use a y+ < 1. I know use this options for the dynamicMeshDict:

dynamicFvMesh      dynamicMotionSolverFvMesh;

motionSolverLibs ("");

solver            displacementLaplacian;

    diffusivity      inverseDistance (wall);

The problem is that the cells next to the wall are pressed together. The first cell height becomes smaller and smaller and finally it makes a divergence because of negative cells.

Does anybody have experience in this kind of simulation ?

giack May 2, 2016 11:03


I have the same problems that you described and I wonder if you found some reasonable solution for that.

I move a boundary based on a calculated field and then I apply a mesh movement solver. It works nicely without the boundary layer mesh but negative cells appears after few iterations if I build a mesh with y+ around 1. I tried all the available solvers in OpenFOAM-2.3.0 but none of them seems to give nice results.


fredo490 May 11, 2016 03:12


Maybe your boundary motion is too large compared to the first cell height. Try to decrease your time step until the maximum move is less than 20% of the first cell height. You can also try to use other algorithm that sends the deformation further in the domain. For example you can use a strong spring factor.

giack May 11, 2016 17:31


first of all thanks for your reply.

You are right, my boundary motion is certainly larger than the first cell height. The solvers work properly reducing the boundary motion but at a certain moment it crash in any case. Moreover, the boundary motion that I impose to make it works is too small for my application, increasing enormously the computational time. For this reason, I'm looking for a more stable mesh movement solver. The idea to keep a region around the body that follow the boundary deformation (leaving the mesh morphing to the remaining domain) is nice but I didn't manage to make it work (neither with the 6DOF solver).

The other option is the one that you pointed out ("to use other algorithm that sends the deformation further in the domain"). When you speak about the strong spring factor, do you refer to some other solver that has not been implemented in OpenFOAM yet?Or that condition can be forced somehow in the case directories?

I'll also try all the option available in the extended version.

All times are GMT -4. The time now is 23:40.