CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > General Forums > Main CFD Forum

hex to tet program or routine...

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   January 4, 2006, 11:18
Default hex to tet program or routine...
  #1
Renato.
Guest
 
Posts: n/a
Does anybody have, or know where to find, a program to convert hexahedra elements in tetrahedra?

Thanks for any help.

Renato.
  Reply With Quote

Old   January 4, 2006, 11:29
Default Re: hex to tet program or routine...
  #2
Myron
Guest
 
Posts: n/a
ICEM CFD has this capability.
  Reply With Quote

Old   January 4, 2006, 11:33
Default Re: hex to tet program or routine...
  #3
Renato.
Guest
 
Posts: n/a
Ok about ICEM-CFD, but I was thinking about some Fortran or C++ routine able to perform this task.

anyway... thanks for your reply.

Renato.
  Reply With Quote

Old   January 4, 2006, 12:07
Default Re: hex to tet program or routine...
  #4
Ben
Guest
 
Posts: n/a
why would you want to do something like that?
  Reply With Quote

Old   January 4, 2006, 12:32
Default Re: hex to tet program or routine...
  #5
Renato.
Guest
 
Posts: n/a
My FEM code works only with linear tetrahedra elements and I'm trying to run a problem with symmetry, so I need to run this problem in a structured mesh in order to avoid problems due the mesh.

The mesh generator that I've been using (Ansys/Prep7) is only capable to build structured meshes (mapped meshes) with hexahedra and I thinking about to turn a hex mesh into a tet mesh through some program or routine.

I've already implemented a simple Ansys macro to perform this task but, unfortunately, my macro only works for some very specific cases.

Renato.
  Reply With Quote

Old   January 5, 2006, 02:35
Default Re: hex to tet program or routine...
  #6
carno
Guest
 
Posts: n/a
your problem is not understood clearly. If you can use external commercial code for meshing; why can not you use another external commercial code (ICEM or hypermesh) to convert that mesh to tetra. Initially I thought you are doing meshing in your code, so you want fortran subroutine to convert hex to tet.
  Reply With Quote

Old   January 5, 2006, 04:04
Default Re: hex to tet program or routine...
  #7
Johan
Guest
 
Posts: n/a
It's quite easy to put together something that puts six tetras in one hex cell, the problem is how your code reads it.

Do you need to know the conectivity between nodes, edges, surfaces or cells? Do you need to have first (P1) or second (P2) order base function in your FEM solver? Can't you use quadilateral base functions (Q1) in stead (in combination with a fractional time step approach in the RANS formulation) to avoid the P2-P1 formulation in standard RANS.

You need to be more specific on what to read and what to write in the mesh file.

Sorry, no solution, just more questions. I used a nice peice of cheese to cut out and visualize the tetras formed by slicing a hex-cell.
  Reply With Quote

Old   January 5, 2006, 05:31
Default Re: hex to tet program or routine...
  #8
Renato.
Guest
 
Posts: n/a
Carno I only have Ansys/Prep7 to build a structured mesh with tetrahedra and the Ansys mesher is only able to produce structured mesh with hexahedra, so "I need a C/C++ or Fortran routine that could subdivide a hexahedra into tetrahedra for me", just it.

Summarizing I'd like to do the following things:

- Generate a structured mesh with hexahedra (remember that I only have Ansys to do this). This mesh could be done inside my program too, it doesn't matter;

- Save this structured mesh (of hexahedra) to a file;

- Read this mesh in a program;

- Subdivide the hexahedra into 5 or 6 tetrahedras;

- Save the new tetrahedra structured mesh;

(*** I should reinforce that I don't have any other commercial program further than Ansys ***)

Regards

Renato.

  Reply With Quote

Old   January 5, 2006, 07:04
Default Re: hex to tet program or routine...
  #9
Renato
Guest
 
Posts: n/a
Hi Johan,

My problem has nothing to do with the solver I'm using. I only need some kind of subroutine that would subdivide a hexahedra mesh into a tetrahedra mesh. It's a mesh problem, just it... split a hexahedra into 5 or 6 tetrahedra keeping the tetrahedra elements compatible.

>> JOHAN SAID: It's quite easy to put together something that puts six tetras in one hex cell, the problem is how your code reads it. <<<

I agree with you! It's quite easy to subdivide ONE (and ONLY ONE) hexahedra into 5 or 6 tetrahedra, but the problem begins to appear when you're dealing with a whole mesh.

There are 2 ways to split a hexahedra into tetrahedra without adding any additional node.

1) Split the hexahedra in 2 prisms and building 3 tetras in each prism;

2) Joining the opposite diagonals that subdivide each quadrilateral face of the hedrahedra (it's hard to explain it with words...)

in both cases you must keep the diagonals of the tetrahedra compatible.

While waiting some answer in this forum I've found a nice paper that teach how to do it efficiently and now I'm starting to implement this algorithm.

Julien Dompierre, Paul Labbé, Marie-Gabrielle Vallet and Ricardo Camarero, "How to Subdivide Pyramids, Prisms and Hexahedra into Tetrahedra". (easily found Googling)

>> JOHAN SAID: You need to be more specific on what to read and what to write in the mesh file <<

I have a file with the hexahedra connectivity and want to write a file with the tetrahedra connectivity.

----

Any further questions to be cleared up... tell me that I'll try to explain better

Regards

Renato.

  Reply With Quote

Old   January 6, 2006, 08:43
Default Re: hex to tet program (PROBLEM SOLVED)
  #10
Renato.
Guest
 
Posts: n/a
I've just finished to implement a Fortran program to convert hexahedra meshes into tetrahedra meshes. For those interested the program is available in:

http://www.nacad.ufrj.br/~rnelias/public/AllToTet.zip

I hope that can be useful for other people besides me.

Regards

Renato.
  Reply With Quote

Old   January 18, 2006, 16:54
Default Re: hex to tet program (PROBLEM SOLVED)
  #11
ben
Guest
 
Posts: n/a
Is there a good web based resource with nice pictures of the hex to tet conversion?
  Reply With Quote

Old   January 18, 2006, 17:12
Default Re: hex to tet program (PROBLEM SOLVED)
  #12
Renato.
Guest
 
Posts: n/a
When I was looking for a program to solve problem I couldn't find any web site where this subject is treated, but, if you're trying to understand better what I'm doing, take a look in the HexToTet.png file that I've put in the following zip file.

http://www.nacad.ufrj.br/~rnelias/public/AllToTet.zip

Cheers

Renato.

  Reply With Quote

Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
This mesh contains patches of type empty but is not 1D or 2D oric OpenFOAM Running, Solving & CFD 36 November 28, 2016 07:12
[blockMesh] Blockmesh error - 2D scramjet ishaninair OpenFOAM Meshing & Mesh Conversion 7 March 18, 2011 00:14
CheckMeshbs errors ivanyao OpenFOAM Running, Solving & CFD 2 March 11, 2009 02:34
user subroutine error CFDUSER CFX 2 December 9, 2006 06:31
user defined function cfduser CFX 0 April 29, 2006 10:58


All times are GMT -4. The time now is 03:57.