CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Meshing & Mesh Conversion (https://www.cfd-online.com/Forums/openfoam-meshing/)
-   -   [snappyHexMesh] snappyHexMesh on slice of cylinder (https://www.cfd-online.com/Forums/openfoam-meshing/211147-snappyhexmesh-slice-cylinder.html)

Loekatoni November 13, 2018 10:46

snappyHexMesh on slice of cylinder
 
Dear users of cfd-online.com


Here I m again, with a different question. So I want to make a bubble inside a channel. I succeeded in making the channel in blockMesh (bM) and I have manually made a bubble.stl file. Now it is axisymmetric, so my slices goes from -2.5 until 2.5 degrees (for my stl file, the angle is exactly the same) to make the system not have many cells.
_______________________________________________

The line I do are as follows:


surfaceFeatureExtract
blockMesh
decomposePar
mpirun -np 4 snappyHexMesh -parallel
reconstructParMesh -constant
reconstructPar -latestTime
_______________________________________________


But it stops during the parallel run of snappyHexMesh (sHM). the error I get is as follows:


Marked for refinement due to explicit features : 106 cells.
Determined cells to refine in = 0.02 s
Selected for feature refinement : 106 cells (out of 1920)
[0] hexRef8 : Dumping cell as obj to "/home/s164072/OpenFOAM/s164072-v1806/run/tutorials/Loek/graduation/scaleR0005/processor0/cell_114.obj"
[0]
[0]
[0] --> FOAM FATAL ERROR:
[0] cell 114 of level 0 does not seem to have 8 points of equal or lower level
cellPoints:6(268 269 284 237 238 253)
pointLevels:6{0}
[0]
[0]
[0] From function Foam::labelListList Foam::hexRef8::setRefinement(const labelList&, Foam::polyTopoChange&)
[0] in file polyTopoChange/polyTopoChange/hexRef8/hexRef8.C at line 3679.
[0]
FOAM parallel run aborting
[0]
[0] #0 Foam::error::printStack(Foam::Ostream&) at ??:?
[0] #1 Foam::error::abort() at ??:?
[0] #2 Foam::hexRef8::setRefinement(Foam::List<int> const&, Foam::polyTopoChange&) at ??:?
[0] #3 Foam::meshRefinement::refine(Foam::List<int> const&) at ??:?
[0] #4 Foam::meshRefinement::refineAndBalance(Foam::strin g const&, Foam::decompositionMethod&, Foam::fvMeshDistribute&, Foam::List<int> const&, double) at ??:?
[0] #5 Foam::snappyRefineDriver::featureEdgeRefine(Foam:: refinementParameters const&, int, int) at ??:?
[0] #6 Foam::snappyRefineDriver::doRefine(Foam::dictionar y const&, Foam::refinementParameters const&, Foam::snapParameters const&, bool, bool, Foam::dictionary const&) at ??:?
[0] #7 ? at ??:?
[0] #8 __libc_start_main in /lib/x86_64-linux-gnu/libc.so.6
[0] #9 ? at ??:?
--------------------------------------------------------------------------
MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD
with errorcode 1.

NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
You may or may not see output from other processes, depending on
exactly when Open MPI kills them.


__________________________________________________ __________


To me it seems that the error is about my wedge mesh. I have points overlapping in my bM, so to get a triangular mesh, or slice of the channel. These cells have an input of 8 vertices, but 2 overlap, which could result in openFOAM seeing it as a cell with 6 vertices.


My question: what can I do against this problem?


Sincerely,
Loek

yambanshee November 14, 2018 03:20

1 Attachment(s)
I would avoid the problem by reconstructing your blockmesh with a diamond shape at the wedge (see attached image)

Loekatoni November 14, 2018 05:53

1 Attachment(s)
Dear yambanshee,


Thanks for the reply.


I applied your strategy, but slightly different. Your idea gives two gridcells in the direction where I want just one. So i did it as shown in the picture. Now lets see if sHM will work!


EDIT: so this seems to work fine for this kind of Mesh


All times are GMT -4. The time now is 04:17.