not needed

This commit is contained in:
Martin Diehl 2019-06-15 15:43:43 +02:00
parent 85e6885ea7
commit 9f35267470
1 changed files with 13 additions and 136 deletions

View File

@ -10,7 +10,7 @@ module element
private
!---------------------------------------------------------------------------------------------------
!> Properties of a single element (the element used in the mesh)
!> Properties of a single element
!---------------------------------------------------------------------------------------------------
type, public :: tElement
integer :: &
@ -21,11 +21,9 @@ module element
Ncellnodes, &
NcellnodesPerCell, &
nIPs, &
nIPneighbors, & ! ToDo: MD: Do all IPs in one element type have the same number of neighbors?
maxNnodeAtIP
nIPneighbors
integer, dimension(:,:), allocatable :: &
Cell, & !< intra-element (cell) nodes that constitute a cell
NnodeAtIP, &
IPneighbor, &
cellFace
integer, dimension(:,:), allocatable :: &
@ -163,114 +161,6 @@ module element
8 & ! 3D 8node
] !< number of cell nodes in a specific cell type
! --------------------------------------------------------------------------------------------------
! MD: probably not needed START
integer, dimension(maxNnodeAtIP(1),nIP(1)), parameter, private :: NnodeAtIP1 = &
reshape([&
1,2,3 &
],[maxNnodeAtIP(1),nIP(1)])
integer, dimension(maxNnodeAtIP(2),nIP(2)), parameter, private :: NnodeAtIP2 = &
reshape([&
1, &
2, &
3 &
],[maxNnodeAtIP(2),nIP(2)])
integer, dimension(maxNnodeAtIP(3),nIP(3)), parameter, private :: NnodeAtIP3 = &
reshape([&
1, &
2, &
4, &
3 &
],[maxNnodeAtIP(3),nIP(3)])
integer, dimension(maxNnodeAtIP(4),nIP(4)), parameter, private :: NnodeAtIP4 = &
reshape([&
1,0, &
1,2, &
2,0, &
1,4, &
0,0, &
2,3, &
4,0, &
3,4, &
3,0 &
],[maxNnodeAtIP(4),nIP(4)])
integer, dimension(maxNnodeAtIP(5),nIP(5)), parameter, private :: NnodeAtIP5 = &
reshape([&
1,2,3,4 &
],[maxNnodeAtIP(5),nIP(5)])
integer, dimension(maxNnodeAtIP(6),nIP(6)), parameter, private :: NnodeAtIP6 = &
reshape([&
1, &
2, &
3, &
4 &
],[maxNnodeAtIP(6),nIP(6)])
integer, dimension(maxNnodeAtIP(7),nIP(7)), parameter, private :: NnodeAtIP7 = &
reshape([&
1, &
2, &
3, &
4, &
5, &
6 &
],[maxNnodeAtIP(7),nIP(7)])
integer, dimension(maxNnodeAtIP(8),nIP(8)), parameter, private :: NnodeAtIP8 = &
reshape([&
1,2,3,4,5,6,7,8 &
],[maxNnodeAtIP(8),nIP(8)])
integer, dimension(maxNnodeAtIP(9),nIP(9)), parameter, private :: NnodeAtIP9 = &
reshape([&
1, &
2, &
4, &
3, &
5, &
6, &
8, &
7 &
],[maxNnodeAtIP(9),nIP(9)])
integer, dimension(maxNnodeAtIP(10),nIP(10)), parameter, private :: NnodeAtIP10 = &
reshape([&
1,0, 0,0, &
1,2, 0,0, &
2,0, 0,0, &
1,4, 0,0, &
1,3, 2,4, &
2,3, 0,0, &
4,0, 0,0, &
3,4, 0,0, &
3,0, 0,0, &
1,5, 0,0, &
1,6, 2,5, &
2,6, 0,0, &
1,8, 4,5, &
0,0, 0,0, &
2,7, 3,6, &
4,8, 0,0, &
3,8, 4,7, &
3,7, 0,0, &
5,0, 0,0, &
5,6, 0,0, &
6,0, 0,0, &
5,8, 0,0, &
5,7, 6,8, &
6,7, 0,0, &
8,0, 0,0, &
7,8, 0,0, &
7,0, 0,0 &
],[maxNnodeAtIP(10),nIP(10)])
! *** FE_ipNeighbor ***
! is a list of the neighborhood of each IP.
! It is sorted in (local) +x,-x, +y,-y, +z,-z direction.
@ -803,9 +693,9 @@ module element
],[NCELLNODEPERCELLFACE(4),NIPNEIGHBOR(4)]) !< 3D 8node, VTK_HEXAHEDRON (12)
contains
contains
subroutine tElement_init(self,elemType)
subroutine tElement_init(self,elemType)
class(tElement) :: self
integer, intent(in) :: elemType
@ -846,50 +736,38 @@ module element
self%NcellNodes = NcellNode (self%geomType)
self%maxNnodeAtIP = maxNnodeAtIP (self%geomType)
self%nIPs = nIP (self%geomType)
self%cellType = cellType (self%geomType)
select case (self%geomType)
case(1)
self%NnodeAtIP = NnodeAtIP1
self%IPneighbor = IPneighbor1
self%cell = CELL1
case(2)
self%NnodeAtIP = NnodeAtIP2
self%IPneighbor = IPneighbor2
self%cell = CELL2
case(3)
self%NnodeAtIP = NnodeAtIP3
self%IPneighbor = IPneighbor3
self%cell = CELL3
case(4)
self%NnodeAtIP = NnodeAtIP4
self%IPneighbor = IPneighbor4
self%cell = CELL4
case(5)
self%NnodeAtIP = NnodeAtIP5
self%IPneighbor = IPneighbor5
self%cell = CELL5
case(6)
self%NnodeAtIP = NnodeAtIP6
self%IPneighbor = IPneighbor6
self%cell = CELL6
case(7)
self%NnodeAtIP = NnodeAtIP7
self%IPneighbor = IPneighbor7
self%cell = CELL7
case(8)
self%NnodeAtIP = NnodeAtIP8
self%IPneighbor = IPneighbor8
self%cell = CELL8
case(9)
self%NnodeAtIP = NnodeAtIP9
self%IPneighbor = IPneighbor9
self%cell = CELL9
case(10)
self%NnodeAtIP = NnodeAtIP10
self%IPneighbor = IPneighbor10
self%cell = CELL10
end select
@ -911,16 +789,15 @@ module element
write(6,'(/,a)') ' <<<+- element_init -+>>>'
write(6,*)' element type: ',self%elemType
write(6,*)' geom type: ',self%geomType
write(6,*)' cell type: ',self%cellType
write(6,*)' # node: ',self%Nnodes
write(6,*)' # IP: ',self%nIPs
write(6,*)' # cellnode: ',self%Ncellnodes
write(6,*)' # cellnode/cell: ',self%NcellnodesPerCell
write(6,*)' # IP neighbor: ',self%nIPneighbors
write(6,*)' max # node at IP: ',self%maxNnodeAtIP
write(6,*) ' element type: ',self%elemType
write(6,*) ' geom type: ',self%geomType
write(6,*) ' cell type: ',self%cellType
write(6,*) ' # node: ',self%Nnodes
write(6,*) ' # IP: ',self%nIPs
write(6,*) ' # cellnode: ',self%Ncellnodes
write(6,*) ' # cellnode/cell: ',self%NcellnodesPerCell
write(6,*) ' # IP neighbor: ',self%nIPneighbors
end subroutine tElement_init
end subroutine tElement_init
end module element