Function t8_cmesh_set_join

Function Documentation

void t8_cmesh_set_join(t8_cmesh_t cmesh, t8_gloidx_t gtree1, t8_gloidx_t gtree2, int face1, int face2, int orientation)

Insert a face-connection between two trees in a cmesh.

Note

The orientation is defined as: Let my_face and other_face be the two face numbers of the connecting trees. We chose a main_face from them as follows: Either both trees have the same element class, then the face with the lower face number is the main_face or the trees belong to different classes in which case the face belonging to the tree with the lower class according to the ordering triangle < quad, hex < tet < prism < pyramid, is the main_face. Then face corner 0 of the main_face connects to a face corner k in the other face. The face orientation is defined as the number k. If the classes are equal and my_face == other_face, treating either of both faces as the main_face leads to the same result. See https://arxiv.org/pdf/1611.02929.pdf for more details.

Parameters:
  • cmesh[inout] The cmesh to be updated.

  • gtree1[in] The tree id of the first of the two trees.

  • gtree2[in] The tree id of the second of the two trees.

  • face1[in] The face number of the first tree.

  • face2[in] The face number of the second tree.

  • orientation[in] Specify how face1 and face2 are oriented to each other