Database Full Index
5. Hybrid Meshing
[ top ] [ previous ] [ next ]
5.1. What is the best way to run tet to hex?
tet_to_hex
The following guidelines may help in converting from Tet to Hex:
-
If you use a uniform mesh size, you usually get the best tet to hex conversion
(most hexas).
-
Typically, the smaller the mesh, the better the conversion
-
If you do not smooth the tetra mesh, you usually get more hex cells, but
it is more difficult to improve the quality afterwards, since the hexas
sometimes trap the tets from being able to be smoothed efficiently after
the tet to hex process.
-
A good solution is to manually try to improve the tet mesh before running
tet to hex, using merge nodes, and split edges, but no node movement.
-
Typically, when using tet to hex, the most tets, and usually the worst
quality cells are on the boundary. Using Prism before running tet
to hex will improve this situation, and move the bad region off the surface.
(In order to run Prism, though, you will most likely have to smooth the
grid, which will reduce the number of cells that can be converted to hexas).
[ top ]
5.2. I want to have hex mesh to resolve my boundary layer and the rest of the region to be filled up by tetras. How do I do that?
The description here assumes that you know the basics of MED, HEXA and TETRA. Also it assumes that you are running 4.2 version of ICEMCFD.
Let us take an example. Let "geometry.tin" be your geometry file.
MED
- Create a material called "FLUID" for your fluid region and let's say "F_BND" for your boundary layer region. Create another material called "SOLID" for the dead region. Put FLUID and SOLID in the appropriate locations while F_BND can be put anywhere on the main body. Save this tetin file let's say as "tetin1",
HEXA
- You should go to Hexa with this tetin file and try to use split etc to get your body modeled up. Put all the blocks coming inside the body into SOLID material and the outside stuff into FLUID,
- Do not worry too much about how the body is connected to the outer domain or the quality of the connectivity. Just plan the blocking in such a way so that you will get good surface mesh on the body,
- Now create an O-grid around the body by selecting the SOLID material,
- Put all the O-grid (i.e. boundary layer) blocks into the material F_BND. Sometimes it's easier to put all FLUID blocks into F_BND and then pull back the outer blocks into the FLUID. Note that all the shared edges between the two material would become white looking for the shared surface between the two,
- Obviously, you do not have the shared surface/interface defined anywhere. To resolve this issue, define a shared wall between FLUID and F_BND for ORFN surface. This menu is in Projection sub-heading,
- Mesh the FLUID and F_BND regions. Now, save the blocking as "bnd.blk",
- Deselect the FLUID region from the volume families and save the unstructured mesh let's say as "hex_bnd.uns",
- Quit out of Hexa,
MED
- Load the tetin1 and hex.unstruct_bnd into MED,
- You will not see the surface mesh (QUAD) for the outer part of the boundary layer since you defined that as a shared wall in HEXA and the edges turned blue there,
- To get the surface mesh there, check for "uncovered faces" under Diagnostics -> Check mesh. Say "FIX" to fix the problem. It would ask for the family name to put the new QUAD faces. Give a name let's say "INTERFACE",
- Save your tetin file as "geometry_new.tin" and domain (mesh) file as "hex_bnd_new.uns",
- At this stage you now need the geometry for the outer part of the boundary layer. Since you now have the surface mesh there, you would try to write that out and read back it as a geometry. To do that, save the domain (mesh) file but this time, use the options called "More save options" in the save domain window. Select the element Types as QUAD and INTERFACE as the required Families. Give the name of the domain (mesh) file as "surf" and say "Accept" to save it,
- Save your tetin file as "tetin1_new".
- Unload your tetin and domain file,
- Load the domain file "surf" as geometry by saying "Import geo > Domain file". It would show you the boundary INTERFACE as "INTERFACE.1" family. In the DISPLAY panel, say Edit for the family name and change it back to "INTERFACE",
- Now you need to extract the curves and points from this INTERFACE family. To do that, extract the curves from the surface at 20 degree. Segment them and delete whatever curves you don't need,
- Similarly extract the points out of curves and delete whatever you don't need,
- Save this tetin file as "tmp.tin".
- Unload this tetin file. Load back "geometry_new.tin" and then "tmp.tin". It would warn you for merging. Just say "MERGE",
- It might create plenty of families like *.1. Just goto Display panel. Say Edit and then Delete Unused to get rid of all the empty families,
- Save the tetin file as "final.tin"
- You should now define the tetra mesh parameters in the geometry. Just define the reference element size, the surface sizes, thin cuts etc the way you do it normally,
- You are all set to run TETRA except that you should now have the correct location of F_BND which you put right on the BODY initially. So, move that so that it lies between the BODY and the INTERFACE. You can do the screen move,
- Save your tetin file same as "final.tin",
TETRA
- Run Tetra Interactive on this "final.tin" and give domain file name as "tetra_mesh.uns".
- Fix leakages etc like you normally do,
- After the domain (mesh) file get loaded into MED, select "Save as > Domain (mesh) File".
- In the window, deselect all the material families except FLUID,
- After giving name of mesh file say "tetra_fluid.uns", press Accept.
MED
- Load the final.tin and the tetra_fluid.uns,
- See for the problems, rectify them, do the smoothing etc just like you normally do on the tetra mesh. Save this domain file as cut_domain,
- Load domain file "hex_bnd_new.uns",
- Say yes for concatenation of the domain file,
- At this point, you have the freedom to have contiguous or non-continguous boundary between the HEXA and TETRA mesh,
Non-contiguous boundary
- Just save the domain file and write the output,
Contiguous boundary
- Select "Edit Mesh > Merge" and the family INTERFACE on which we want to do the merging,
- This may or may not succeed depending on the complexitiy of the INTERFACE boundary and the difference between the QUAD and TRI sizes on that boundary. If it succeeds, you should get pyramids and that locally remeshes the tetra mesh. So, you should do smoothing for TETRA, TRI and PYRA once again. Save your mesh and write the output for this domain file,
Anshul Gupta -- anshul@icemcfd.com
[ top ]
[ top ] [ previous ] [ next ]
created by faq-system 0.3.6 Thomas Linden