Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix element ordering only for invalid element volumes #35

Open
alexbenedicto opened this issue Aug 9, 2024 · 0 comments · May be fixed by #40
Open

Fix element ordering only for invalid element volumes #35

alexbenedicto opened this issue Aug 9, 2024 · 0 comments · May be fixed by #40
Assignees

Comments

@alexbenedicto
Copy link
Contributor

alexbenedicto commented Aug 9, 2024

Currently, the feature fix_elements_orderings applies the new ordering of nodes for all elements of the same type given by the user.
So, if you identified that your Tetrahedrons have 2 inverted nodes, you can change the ordering of these 2 nodes for all Tetrahedrons in the mesh. This supposes then that every Tetrahedrons was badly ordered.

Now let's imagine that only a certain amount of Tetrahedrons is badly ordered. Using fix_elements_orderings would not solve the issue because invalid Tetrahedrons will become valid and vice versa.

Solution:

Have the possibility to use a grid parameter that would identify which cells have invalid nodes ordering.
This parameter should be the element volume.

Therefore, the new feature would implement a new parser argument --volume_to_reorder that would either take "all", "positive" or "negative" as parameter.

  1. If --Tetrahedron 2,0,3,1 --volume_to_reorder all, all Tetrahedrons of the mesh will use the new ordering.
  2. If --Tetrahedron 2,0,3,1 --volume_to_reorder negative is used, all Tetrahedrons that have a negative volume will use the new ordering.
  3. If --Tetrahedron 2,0,3,1 --volume_to_reorder positive is used, all Tetrahedrons that have a positive volume will use the new ordering.

EDIT:

This feature will no longer require to have the user enter the correct node ordering.
Taking that into consideration, the correct way would be to only specify the cell types to check and reorder if invalid volume:

  1. If --cell_names Tetrahedron --volume_to_reorder all, all Tetrahedrons of the mesh will use the new ordering.
  2. If --cell_names Tetrahedron --volume_to_reorder negative is used, all Tetrahedrons that have a negative volume will use the new ordering.
  3. If --cell_names Tetrahedron --volume_to_reorder positive is used, all Tetrahedrons that have a positive volume will use the new ordering.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant