From 9f35267470242a2ae4adc2833815cffc5197875c Mon Sep 17 00:00:00 2001 From: Martin Diehl Date: Sat, 15 Jun 2019 15:43:43 +0200 Subject: [PATCH] not needed --- src/element.f90 | 149 +++++------------------------------------------- 1 file changed, 13 insertions(+), 136 deletions(-) diff --git a/src/element.f90 b/src/element.f90 index dca5cbd28..8da633082 100644 --- a/src/element.f90 +++ b/src/element.f90 @@ -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