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

Edge/face ordering of high order geometries seem inconsistent with corresponding 1D ordering #9422

Closed
Vahid-Galavi opened this issue Dec 3, 2021 · 12 comments

Comments

@Vahid-Galavi
Copy link
Member

Vahid-Galavi commented Dec 3, 2021

Introduction
If we consider a high order 2D geometry, for example quadrilateral2D8 or quadirlateral2D9, the nodal ordering is as follows:

Quadrilateral2D8/       Quadrilateral2D9/
Quadrilateral3D8:       Quadrilateral3D9:

3-----6-----2           3-----6-----2 
|           |           |           | 
|           |           |           | 
7           5           7     8     5 
|           |           |           | 
|           |           |           | 
0-----4-----1           0-----4-----1 

If we consider a high order 1D geometry, i.e. Line2D3 or Line3D3, the ordering is as follows:

Line2D3/
Line3D3:

0-----2----1

So, (in all geometries) we get first the corner nodes and then the middle nodes which are consistent.

Problem
Now if we look at GenerateEdges() functions which return edge or face node numbers, I found that the node numbers that I get in these elements: Triangle2D6/Triangle3D6, Quadrilateral2D8/Quadrilateral3D8 and Quadrilateral2D9/Quadrilateral3D9 are inconsistent with node numbering of Line2D3/Line3D3. These functions return the first, the middle and the last nodes instead of the first, the last and the middle. This implies that in order to check if a line belongs to a face, we need to do a redundant sorting.

This also the case in GenerateEdges of Hexahedron3D20 Hexahedron3D27, Prism3D15.

Questions

  • Why do we use a different node numbering for edges?
  • Can we modify the node numbering of edges to make them consistent with 1D geometries?
@Vahid-Galavi Vahid-Galavi changed the title Edge/face ordering of high order 2D elements seem inconsistent with corresponding 1D ordering Edge/face ordering of high order geometries seem inconsistent with corresponding 1D ordering Dec 3, 2021
@philbucher
Copy link
Member

This is an important observation, I agree that this is a problem!
However I don't think it is possible to change the ordering, as this is sort of imposed by the meshers we use
Would changing the GenerateEdges function work? I think this might be possible as it is used less

@Vahid-Galavi
Copy link
Member Author

In my opinion, we only need to change GenerateEdges.

@philbucher
Copy link
Member

that makes sense to me
did you also check if the same problem exists with GenerateFaces?

@Vahid-Galavi
Copy link
Member Author

that makes sense to me did you also check if the same problem exists with GenerateFaces?

@philbucher I am checking now.

@Vahid-Galavi
Copy link
Member Author

@philbucher What is the ordering number for surface loads in 3D? Is there a documentation?

@philbucher
Copy link
Member

hm not sure
@loumalouomega @AlejandroCornejo do you know?

@loumalouomega
Copy link
Member

hm not sure
@loumalouomega @AlejandroCornejo do you know?

We consider gid criteria...

@Vahid-Galavi
Copy link
Member Author

Then the ordering that I get from GenerateFaces of 3D geometries are not consistent. They are defined in reverse order. So, they have to be changed, I think.

@philbucher
Copy link
Member

Then the ordering that I get from GenerateFaces of 3D geometries are not consistent. They are defined in reverse order. So, they have to be changed, I think.

makes sense to me. No more comments from my side

@KratosMultiphysics/technical-committee ?

@RiccardoRossi
Copy link
Member

@KratosMultiphysics/technical-committee also agrees ... just we are a little afraid of things that can get broken.

In any case if you have a PR please go ahead and see if it passes the tests. Is so...green light on our side

@Vahid-Galavi
Copy link
Member Author

Thanks @RiccardoRossi! At the moment, I do not have a PR for this issue but I will make it as soon as I find some time.

@ddiezrod
Copy link
Contributor

Issue shoud be solved after #10668

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: ✅ Done
Development

No branches or pull requests

5 participants