labmec / neopz

An object oriented finite element programming environment
http://www.labmec.org.br
33 stars 11 forks source link

TPZGeoElement + new refinement pattern for Tetrahedra [develop branch] #165

Closed orlandini closed 1 year ago

orlandini commented 2 years ago

In 73b55b6b1e1229a1c2e8625a411b17cf1d13cfc0, the uniform refinement pattern of the Tetrahedral element was changed as to avoid pyramidal elements.

However, TPZGeoElement<TGEO,TREF> was not updated accordingly. Therefore, I am facing issues while printing 3D meshes with tetrahedral elements using TPZVTKGenerator with subdivisions, for the refinement patterns in TPZRefPatternDataBase and in TPZRefTetrahedra do not match.

jefersondossa commented 2 years ago

I don't know exactly what is the best option here.

If we return to the previous refinement pattern with pyramidal elements (which is just commented) I'm sure some unit tests will not pass, especially the new ones (TestHangingNodes, for instance) because we are testing all H(div) spaces with this refinement and pyramidal elements are not supported in the current H(div)-constant implementations.

Changing TPZRefTetrahedra to the new refinement pattern would take a lot of coding time, at least for me. For example, all neighbor information needs to be set manually for the ref pattern, etc...

Is there any way to have two ref patterns for tetrahedra and use the one with pyramids only for printing and the other one as "Standard"?