conformal multi-region meshing and feature capturing
5 Attachment(s)
Hi there,
I have a multi-region case which consists of three regions, two solid and one fluid part. In the first picture attached, the top solid part is green, the fluid part red and the bottom part is grey. The meshing process itself works fine, I pre-processed the surface files with Salome where they match exactly. I created the background mesh with salome, too. As you can see in pictures 2, the top solid part has a fin, which is cooled by the fluid. Now I have multiple problems regarding SHM: 1. especially around the fin I would like to get a conformal mesh between the solid and the fluid. Both surface triangulations match exactly (as I can see in Salome), both refinement levels match and the background mesh is the same, so what could be the reason for this? Moreover, if you take a closer look at the mesh the surface looks really strange (red circles in picture 3). I guess it is just a display error by paraview (those lines are the edges of the cells of the other region, picture 4) but still I would like to have a conformal mesh or at least nearly-conformal. 2. The cells are sometimes quite 'wobbly'. By that I mean SHM sometimes doesn't use a perfect hex cell even though it could and should (you can see that e.g. in the second picture) 3. Last but not least I would like to use an even coarser grid to test grid convergence etc. And this fin is only one of 100, so the total domain is much bigger. But if I use a coarser background mesh at some points the feature edges aren't snapped to at all. Any help would be appreciated (picture 5) Thank you all! snappyHexMeshDict (only part of it) Code:
geometry |
1 Attachment(s)
Just to add another picture .. In white are the feature edges
|
Hello Henning,
For the feature snapping problem, I suggest you try a tolerance set to 1. What you have circled in red in picture 3 could very well still be a hexahedron but with a point moved in such a way that two edges are collinear. That's what snappyHexMesh does, it moves points of cells to be on the snapping surface and changes cells into wedges, polyhedra etc. if needed. I'm not quite sure what you need snappyHexMesh for, if the input geometry is already the way you want. If you just need to refine the fin (diamond shaped object?) and add the patches, you could do the same with refineMesh and createPatch but with less mesh distortion I believe. The way I see it, the geometry is so simple that it could be created with blockMesh alone, without need for snapping. With cell grading you could refine the mesh where needed or even add very precise boundary layers. Cheers, Claudio |
4 Attachment(s)
Hey Claudio,
thank you for replying! In the meantime I played a little bit with snappyHexMesh parameter and I came with a mediocre solution, but better than before. The most important parameter I changed were - tolerance to 1.0 (as you also suggested, thanks!) - raised nSolveIter back to 300 - set nSmoothPatch to 0 because there is nothing to smooth in this example - raised featureSnapIterations to 20, though a larger number made things worse again With these settings the geometry was captured okay, but the mesh looks a little strange in the corners (picture 1). That's what I don't understand about snappyHexMesh.. Why doesn't it leave the background mesh 'as is' where there either isn't anything to snap to or where it should just keep the straight line to capture things accurately? With implicit feature edge capturing the mesh looks a lot worse (picture 2). What helped was the parameter stringFeatures set to false. With that the mesh looks actually quite good, except for those "edges" at the diamond shape. It's really starting to get on my nerves. The problem is, that the geometry is actually larger and more complex, especially at the in- and outlet. This was just a testcase to figure out the best settings and use them to mesh the overall geometry later. So blockMesh is not a suitable way. But since I set nSmoothPatch to zero, I don't know whether those shapes will be captured okay. With smoothing iterations set to 5 the feature edges aren't fully captured and mesh looks strange (picture 4, same settings as in picture 1 otherwise). Why? :mad::confused: By the way, I have to use snappyHexMesh |
Hello Henning,
I had a similar issue once and, if I remember correctly, the solution was to set implicitFeatureSnap to true. That setting is used in the shellAndTubeHeatExchanger and pimpleFoam/propeller tutorials. I hope that helps. |
All times are GMT -4. The time now is 21:46. |