Can Netgen shape healing not handle degeneracies?

 Can Netgen shape healing not handle degeneracies?

   

Netgen mesh generator

Netgen is a high-performance multiphysics finite 

element software that is commonly used in unstructured mesh generations. Solid mechanics, fluid dynamics, and also electromagnetic simulations are done using Netgen with accuracy. Anyone interested in this application can try it because it is FREE!

You can download Netgen using this link.
If you want to get a source of it, you can grab that from GitHub.

Netgen shape healing

The Netgen shape generation method is based on OpenCASCADE. When the user import shape to Netgen to generate mesh, geometry operations are done through Open CASCADE functions.

If the geometry is not clean enough, the mesh cannot be generated correctly, or quality mesh cannot be produced. Hence, shapes need to be healed prior to mesh generation. Netgen provides a set of tools for that. You can find that as follows.

Enable shape healing operation in Netgen

You can select different parameters and those are dedicated to different operations. If you click “Heal geometry” by removing all the checkboxes, the faces of the shape are healed. Here is a brief explanation of each operation.

  • Fix small edges — try to remove/repair small edges of the shape and create continuously connected edges of the shape
  • Fix spot/strip faces — faces that contain strips due to impurities and generation failures will be fixed with that.
  • Sew faces — try to sew faces together
  • Make solids — try to make a solid shape out of a given shape.

Issue in shape healing

The shape healing function is working fine for most of the shapes but in several cases, it changes the final shape. The reason is “Degeneracies”. If you are not much familiar with degeneracies in 3D shapes, you can quickly go through this article.

Netgen tries to remove degenerated edges after each shape healing operation and rebuild the shape. At that time, edges with zero length and edges with small finite lengths will be removed and rebuilt the shape. If the resultant cannot recreate the shape correctly, the shape is getting distorted.

Before and after shape healing applied

What can we do to avoid that?

We cannot use shape-healing operations for this kind of shape. Because original geometry cannot be preserved after shape healing is applied. The reason is original geometry contains several degenerated edges. After removing them during shape healing operations, geometry cannot be rebuilt again as the original shape. I found that through experiments by digging into the source.
If you need to deal with these kinds of shapes, you have two options.

  1. You can avoid applying shape healing operations to the shape.
  1. Try to change the source by yourself and create your own workflow to apply shape healing operation.

ps: The faces which are distorted after this operation has a negative surface area. That was found through experimental data. It was 100% accurate result that we had a negative surface area of these faces when the faces are getting distorted after the shape healing process. So you can simply avoid that by checking the surface area of the resultant shape after the shape healing operation.

Summary

There is an issue with the Netgen shape healing algorithm when degenerated edges are found in the shape. You have to be careful when you are using that.

Post a Comment

Previous Post Next Post