Viscosity layer failure for hex mesh

Hi everyone!

Following my post from here I was able to generate a hexahedral mesh. The problem is when I try to add viscosity layers. The mesh, although computed, generates strange volumes.

I attach some pictures and also the python script. I tried in Salome from 9.9.0 to 9.13.0 with the same results.

Thank you for your help!

cyl_box.py (4.2 KB)

So I did some more work. I did checked the compound of blocks and it found an extra edge. I did a repair which eliminated the small box I used for partitioning, and I went going on trying to see if the viscosity layers are generated. They were but not the way it is supposed to as you can see in the attached images.

Is there something wrong in my approach (geometry, partitioning)?

Any help is appreciated.

The collapsing on the internal corners when there is a block that only shares an edge over the surface (and no surface of that block) is an issue in the layer addition hypothesis when doing block decomposed geometries for structured meshes. Related to this issue/missing feature I made an issue in the github. [feature request] free nodes hypothesis (ie., detach node from specific internal surface) · Issue #5 · SalomePlatform/smesh · GitHub

@franco.ota Thank you for the answer. The issue you’ve mentioned is about the second case, after repairing. I still don’t understand why I get errors in compound after first partitioning. And the conclusion is that I can’t get viscosity layers on this mesh?

the issue I mentionned is the last image you post it where you have collapsing layers. this up to what I know it can not be solved directly from the mesh part (that’s why my feature request on the git.) from geometry part of it you could do the layers with blocks.

@franco.ota Can you please explain more about the blocks part?

Have a look at the image in the github. You have the block blue that on the side faces only shares an edge over the two surfaces. Therefore when the boundary layer is extruded there are nodes that “do not understand where to go” as they are attached to the internal faces that are shared between the blue block and the other two therefore the algorithm fails to move them as the nodes are attached to this surfaces the algorithm for the bl will fail to move this nodes as they are not “free” nodes. I leave @cbourcier correct me if I am wrong in this hole reasoning but when you have a blocking with a concave angle on the surfaces the bl will collapse over the edge. My example is way more simpler than your geometry but was to gave the example where it fails. Sadly this up to my knowledge (and I am not a Salome expert can not be worked around) your only solution is addind another layer of blocks for only the bl but that is not automatic at all.
Hope it helps

@franco.ota Thank you so much for your help! I will try and hope to get something, although it seems very complicated.