CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM Meshing & Mesh Conversion (
-   -   Cannot refine iteratively (

buffi November 22, 2011 08:32

Cannot refine iteratively

I have a hex mesh which I want to refine iteratively. I start with an initial mesh and then
- solve
- create cellSet from result
- refine according to cellSet
- map fields
- go back to solve

I have two cyclics in my mesh, one in x and one in y direction. When a cellSet for refinement is created, cells on the cyclics are selected in such a way that the opposite cell is selected as well, resulting in matching faces.

In the first iteration, refineMesh happily does its job and refines my mesh. In the second iteration, I am getting errors like this:

--> FOAM Serious Error :
From function cyclicPolyPatch::order(const primitivePatch&, labelList&, labelList&) const
in file meshes/polyMesh/polyPatches/constraint/cyclic/cyclicPolyPatch.C at line 1566
Patch:inOutY : Cannot match vectors to faces on both sides of patch
Perhaps your faces do not match? The obj files written contain the current match.
Continuing with incorrect face ordering from now on!

face 0 area does not match neighbour 637 by 176.471% -- possible face ordering problem.
patch:inOutY my area:0.000432692 neighbour area:0.00692308 matching tolerance:0.001
Mesh face:166577 vertices:4((0 -1 -1) (0 -1 -0.980769) (-0.0225 -1 -0.980769) (-0.0225 -1 -1))
Neighbour face:167214 vertices:4((0 1 -0.538462) (-0.09 1 -0.538462) (-0.09 1 -0.461538) (0 1 -0.461538))
Rerun with cyclic debug flag set for more information.

First of all - where can I enable that cyclic debug flag?

My refineMeshDict settings are
coordinateSystem global;
tan1 (1 0 0);
tan2 (0 1 0);
useHexTopology true;
geometricCut false;
writeMesh false;

I have tried other settings which again resulted in errors.

I have tried running createPatch, but I'm not sure if (and when exactly) I should run it.

I am using OF 1.7.1. If necessary, I can upload a mesh and a cellSet for refinement.

Thanks for your help!

buffi November 24, 2011 11:59

My current workaround started with using dynamicRefineFvMesh in the solver, and then moving that out into a seperate tool. I can now solve - refine - map in a loop.

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