diff --git a/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8.C b/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8.C index f117968fe1..4cfba30501 100644 --- a/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8.C +++ b/src/dynamicMesh/polyTopoChange/polyTopoChange/hexRef8.C @@ -2875,6 +2875,8 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement2 } // 2. Extend to 2:1. I don't understand yet why this is not done + // 2. Extend to 2:1. For non-cube cells the scalar distance does not work + // so make sure it at least provides 2:1. PackedList<1> refineCell(mesh_.nCells(), 0); forAll(allCellInfo, cellI) { @@ -2887,6 +2889,25 @@ Foam::labelList Foam::hexRef8::consistentSlowRefinement2 } faceConsistentRefinement(true, refineCell); + while (true) + { + label nChanged = faceConsistentRefinement(true, refineCell); + + reduce(nChanged, sumOp