Forum Message

 

 

We have moved the forum to https://forum.ngsolve.org . This is an archived version of the topics until 05/05/23. All the topics were moved to the new forum and conversations can be continued there. This forum is just kept as legacy to not invalidate old links. If you want to continue a conversation just look for the topic in the new forum.

Notice

The forum is in read only mode.

reference on adaptive mesh refinement rule

More
3 years 3 months ago #3494 by Guosheng Fu
Hello,

I think the adaptive mesh refinement rule used in ngsolve is the bisection algorithm. I understand how it works in 2D on a triangular mesh, but am having trouble about the algorithm details used in netgen.
Can you point me to the right reference so that I can have a better understanding of the tetrahedral bisection algorithm. One thing was a surprise to me is that in 3D, a newly generated vertex's parent nodes can be two newly generated vertices, which does not happen in 2D.

Best,
Guosheng
More
3 years 3 months ago #3495 by joachim
Hi Guosheng,

The bisection is coded following Arnold + Mukherjee
www-users.math.umn.edu/~arnold/papers/bistetima.pdf

When one tetrahedral element is marked for refinement, it will be bisected 3 times to obtain half the mesh-size.

Also un-marked elements get refined to form the conforming closure.

I also wonder why parent nodes are newly generated vertices on the current level, on tetrahedral meshes.

Can you provide an example ?

Joachim
More
3 years 3 months ago #3496 by Guosheng Fu
Hi Joachim,

Thanks for the quick response. I will take a look at their algorithm.
Attached is a small locally refined mesh. There are two vertices in the last level mesh for which one of there parent vertex is a new vertex in the last level.

Best,
Guosheng
Attachments:
More
3 years 3 months ago #3497 by Guosheng Fu
It seems that we would not expect new vertices being always children of old vertices for tet refinement in theory.

For the previously provided mesh, we fine the vertex V32 in refinement level 2 is the child of V8 and V19 (which is also a new vertex in refinement level 2).
Looking into details of the mesh connectivity, I found the new vertex V32 is needed for mesh conformity, otherwise, V25 will be a hanging node on edge V8/V9 for the tet [V8,V19,V31,V9].
More
3 years 3 months ago - 3 years 3 months ago #3500 by Guosheng Fu
To close this post, I found the reason for new vertices with new parent vertices is the 3 times bisection of a type P_f tet (according to notation of Arnold/Mukherjee).
It generates a face that is bisected three times, as shown in the attached figure (bottom face 012).
Last edit: 3 years 3 months ago by Guosheng Fu.
More
3 years 3 months ago #3501 by Guosheng Fu
the figure....
Time to create page: 0.179 seconds