cells between layers not added when using expansion ratio in blockMesh
4 Attachment(s)
Dear All,
I have tried to reproduce some experiments in a flume of a fish. In this sense, I would like to solve the boundary layer of the walls of the channel and try to reproduce it. But when I used expansion ratio in blockMesh no layers are added to the fish in snappyHexMesh. The refinement in the fish works when I use expnasion ratio 1 in blockMeshDict You can see it in the images attached. I have also attached my snappyHexMeshDict. Code:
/*--------------------------------*- C++ -*----------------------------------*\ Please letme know how to solve this issue, if there is a solution. Kind regards, Marcelo Attachment 91641 Attachment 91642 Attachment 91643 Attachment 91644 |
Try with
Code:
Furthermore, you might want to change finalLayerThickness to something <1. You are using relativeSizes and this is going to give you bad layers if it creates them at all. |
Dear AtoHM
I have changed to Code:
addLayers true; The cellSize furthest away from the fish close to the channel wall, is very small 0.7 when the verage cellsize is 7.5. Is this impacting my meshing? I realized the levels of refinement worked, but not the "nCellsBetweenLevels". Thank you very much, regards, Marcelo |
AFAIK, the relativeSizes switch causes the following. With relativeSizes true,
finalLayerThickness is actually a finalLayerThicknessRatio, same applies for firstLayerThickness which becomes a firstLayerThicknessRatio. That being said - a value of 5 (with relativeSizes = true) means, it tries to add cells of 5 times the thickness of the boundary cell at the wall before layers are applied, so I think it would help, yes.The spacing at the outer walls should not influence layer creation at the fish surface. It looks like you have an aspect ratio around 1 there, which is a good start. Expansion ratio of 1.75 seems a bit high as well, maybe 1.1 ... 1.5 might work better, but in general I think the finalLayerThickness is messing it up. |
2 Attachment(s)
Dear AtoHM
I changed my snappyHexMeshDict to: Code:
/*--------------------------------*- C++ -*----------------------------------*\ I also tried to use cfMesh, but only the last cell splits spliting next to the wall so it can cause problems with my velocity gradients. This is my meshDict: Code:
-------------*- C++ -*----------------------------------*\ Kind regards, Marcelo |
I have no experience with cfMesh, so can't help there, sorry.
Regarding snappy: my best guess is you remove the stuff set in meshQualityControls, at least everything that is non-default: https://github.com/OpenFOAM/OpenFOAM...ppyHexMeshDict With too tight a set of controls, snappy might not perform certain actions at all, because it introduces "bad" cells. Just use the default settings and try to improve from there. A log file of your snappy run might be helpful to troubleshoot further. /edit: have I missed the log initially, or have you added it after my reply? Anyways, it appears the layers are actually added now: Code:
patch faces layers avg thickness[m] |
Possible solutions
2 Attachment(s)
Dear All,
Sorry for the late reply. I have figure out a way to build the mesh and might help you. I have divided the domain which is a hexaedron in 12 zones in my blockMeshDict (see attachment) and then create a master mesh and a slave mesh. The fish is in the centered zone, which I mesh in the slave mesh. The I use de command line as follows: Code:
# Commands to create the fish model I hope you all find it useful. Kind regards, Marcelo |
All times are GMT -4. The time now is 18:23. |