trying to make the whole procedure understandable

This commit is contained in:
Martin Diehl 2020-01-26 14:18:16 +01:00
parent ffea69955e
commit 0eba4e39cc
1 changed files with 57 additions and 56 deletions

View File

@ -43,38 +43,39 @@ module element
integer, dimension(NELEMTYPE), parameter :: NNODE = &
[ &
3, & ! 2D 3node 1ip
6, & ! 2D 6node 3ip
4, & ! 2D 4node 4ip
8, & ! 2D 8node 9ip
8, & ! 2D 8node 4ip
!--------------------
4, & ! 3D 4node 1ip
5, & ! 3D 5node 4ip
10, & ! 3D 10node 4ip
6, & ! 3D 6node 6ip
8, & ! 3D 8node 1ip
8, & ! 3D 8node 8ip
20, & ! 3D 20node 8ip
20 & ! 3D 20node 27ip
3, & ! 2D, 1 IP
6, & ! 2D, 3 IP
4, & ! 2D, 4 IP
8, & ! 2D, 9 IP
8, & ! 2D, 4 IP
!----------------------
4, & ! 3D, 1 IP
5, & ! 3D, 4 IP
10, & ! 3D, 4 IP
6, & ! 3D, 6 IP
8, & ! 3D, 1 IP
8, & ! 3D, 8 IP
20, & ! 3D, 8 IP
20 & ! 3D, 27 IP
] !< number of nodes that constitute a specific type of element
integer, dimension(NELEMTYPE), parameter :: GEOMTYPE = &
[ &
1, &
2, &
3, &
4, &
3, &
5, &
6, &
6, &
7, &
8, &
9, &
9, &
10 &
] !< geometry type of particular element type
1, & ! 1 triangle
2, & ! 3 quadrilaterals
3, & ! 4 quadrilaterals
4, & ! 9 quadrilaterals
3, & ! 4 quadrilaterals
!----------------------
5, & ! 1 tetrahedron
6, & ! 4 hexahedrons
6, & ! 4 hexahedrons
7, & ! 6 hexahedrons
8, & ! 1 hexahedron
9, & ! 8 hexahedrons
9, & ! 8 hexahedrons
10 & ! 27 hexahedrons
] !< geometry type (same number of cell nodes and IPs)
integer, dimension(maxval(GEOMTYPE)), parameter :: NCELLNODE = &
[ &
@ -88,7 +89,7 @@ module element
8, &
27, &
64 &
] !< number of cell nodes in a specific geometry type
] !< number of cell nodes
integer, dimension(maxval(GEOMTYPE)), parameter :: NIP = &
[ &
@ -102,45 +103,45 @@ module element
1, &
8, &
27 &
] !< number of IPs in a specific geometry type
] !< number of IPs
integer, dimension(maxval(GEOMTYPE)), parameter :: CELLTYPE = &
[ &
1, & ! 2D 3node
2, & ! 2D 4node
2, & ! 2D 4node
2, & ! 2D 4node
3, & ! 3D 4node
4, & ! 3D 8node
4, & ! 3D 8node
4, & ! 3D 8node
4, & ! 3D 8node
4 & ! 3D 8node
] !< cell type that is used by each geometry type
1, & ! 2D, 3 node (Triangle)
2, & ! 2D, 4 node (Quadrilateral)
2, & ! - " -
2, & ! - " -
3, & ! 3D, 4 node (Tetrahedron)
4, & ! 3D, 4 node (Hexahedron)
4, & ! - " -
4, & ! - " -
4, & ! - " -
4 & ! - " -
] !< cell type
integer, dimension(maxval(CELLTYPE)), parameter :: NIPNEIGHBOR = &
[ &
3, & ! 2D 3node
4, & ! 2D 4node
4, & ! 3D 4node
6 & ! 3D 8node
] !< number of ip neighbors / cell faces in a specific cell type
3, &
4, &
4, &
6 &
] !< number of ip neighbors / cell faces
integer, dimension(maxval(CELLTYPE)), parameter :: NCELLNODEPERCELLFACE = &
[ &
2, & ! 2D 3node
2, & ! 2D 4node
3, & ! 3D 4node
4 & ! 3D 8node
] !< number of cell nodes in a specific cell type
2, &
2, &
3, &
4 &
] !< number of cell nodes per face
integer, dimension(maxval(CELLTYPE)), parameter :: NCELLNODEPERCELL = &
[ &
3, & ! 2D 3node
4, & ! 2D 4node
4, & ! 3D 4node
8 & ! 3D 8node
] !< number of cell nodes in a specific cell type
3, &
4, &
4, &
8 &
] !< number of total cell nodes
! *** IPneighbor ***
! list of the neighborhood of each IP.