- added element type 54 for macro (2d 8node 4ip reduced integration)
- automatically raising error for unknown element type inside mapping function
This commit is contained in:
parent
338e338c9a
commit
4338cd13bc
|
@ -1453,6 +1453,8 @@ subroutine IO_error(error_ID,e,i,g,ext_msg)
|
|||
msg = 'no homogenization specified via State Variable 2'
|
||||
case (180_pInt)
|
||||
msg = 'no microstructure specified via State Variable 3'
|
||||
case (190_pInt)
|
||||
msg = 'unknown element type:'
|
||||
|
||||
!--------------------------------------------------------------------------------------------------
|
||||
! plasticity error messages
|
||||
|
@ -1586,9 +1588,7 @@ subroutine IO_error(error_ID,e,i,g,ext_msg)
|
|||
case (908_pInt)
|
||||
msg = 'size of mesh_mapFEtoCPnode in mesh_abaqus_map_nodes'
|
||||
case (909_pInt)
|
||||
msg = 'size of mesh_node in mesh_abaqus_build_nodes not equal to mesh_Nnodes'
|
||||
case (910_pInt)
|
||||
msg = 'incorrect element type mapping in '
|
||||
msg = 'size of mesh_node in mesh_abaqus_build_nodes not equal to mesh_Nnodes'
|
||||
|
||||
|
||||
!-------------------------------------------------------------------------------------------------
|
||||
|
|
|
@ -117,7 +117,7 @@ module mesh
|
|||
! Hence, I suggest to prefix with "FE_"
|
||||
|
||||
integer(pInt), parameter, public :: &
|
||||
FE_Nelemtypes = 12_pInt, &
|
||||
FE_Nelemtypes = 13_pInt, &
|
||||
FE_Ngeomtypes = 10_pInt, &
|
||||
FE_maxNnodes = 8_pInt, &
|
||||
FE_maxNsubNodes = 56_pInt, &
|
||||
|
@ -132,6 +132,7 @@ module mesh
|
|||
2, & ! element 125 (2D 6node 3ip)
|
||||
3, & ! element 11 (2D 4node 4ip)
|
||||
4, & ! element 27 (2D 8node 9ip)
|
||||
3, & ! element 54 (2D 8node 4ip)
|
||||
5, & ! element 134 (3D 4node 1ip)
|
||||
6, & ! element 157 (3D 5node 4ip)
|
||||
6, & ! element 127 (3D 10node 4ip)
|
||||
|
@ -148,6 +149,7 @@ module mesh
|
|||
6, & ! element 125 (2D 6node 3ip)
|
||||
4, & ! element 11 (2D 4node 4ip)
|
||||
8, & ! element 27 (2D 8node 9ip)
|
||||
8, & ! element 54 (2D 8node 4ip)
|
||||
4, & ! element 134 (3D 4node 1ip)
|
||||
5, & ! element 157 (3D 5node 4ip)
|
||||
10, & ! element 127 (3D 10node 4ip)
|
||||
|
@ -3308,7 +3310,6 @@ subroutine mesh_abaqus_count_cpSizes(myUnit)
|
|||
IO_lc(IO_stringValue(line,myPos,2_pInt)) /= 'response' ) &
|
||||
) then
|
||||
t = FE_mapElemtype(IO_extractValue(IO_lc(IO_stringValue(line,myPos,2_pInt)),'type')) ! remember elem type
|
||||
if (t == 0_pInt) call IO_error(error_ID=910_pInt,ext_msg='mesh_abaqus_count_cpSizes')
|
||||
g = FE_geomtype(t)
|
||||
mesh_maxNnodes = max(mesh_maxNnodes,FE_Nnodes(g))
|
||||
mesh_maxNips = max(mesh_maxNips,FE_Nips(g))
|
||||
|
@ -3367,7 +3368,6 @@ subroutine mesh_abaqus_build_elements(myUnit)
|
|||
IO_lc(IO_stringValue(line,myPos,2_pInt)) /= 'response' ) &
|
||||
) then
|
||||
t = FE_mapElemtype(IO_extractValue(IO_lc(IO_stringValue(line,myPos,2_pInt)),'type')) ! remember elem type
|
||||
if (t == 0_pInt) call IO_error(error_ID=910_pInt,ext_msg='mesh_abaqus_build_elements')
|
||||
c = IO_countDataLines(myUnit)
|
||||
do i = 1_pInt,c
|
||||
backspace(myUnit)
|
||||
|
@ -4029,7 +4029,7 @@ end subroutine mesh_tell_statistics
|
|||
!***********************************************************
|
||||
integer(pInt) function FE_mapElemtype(what)
|
||||
|
||||
use IO, only: IO_lc
|
||||
use IO, only: IO_lc, IO_error
|
||||
|
||||
implicit none
|
||||
character(len=*), intent(in) :: what
|
||||
|
@ -4047,6 +4047,8 @@ integer(pInt) function FE_mapElemtype(what)
|
|||
case ( '27', &
|
||||
'cpe8')
|
||||
FE_mapElemtype = 4_pInt ! Plane Strain, Eight-node Distorted Quadrilateral
|
||||
case ( '54')
|
||||
FE_mapElemtype = 3_pInt ! Plane Strain, Eight-node Distorted Quadrilateral with reduced integration
|
||||
case ('134', &
|
||||
'c3d4')
|
||||
FE_mapElemtype = 5_pInt ! Three-dimensional Four-node Tetrahedron
|
||||
|
@ -4071,7 +4073,7 @@ integer(pInt) function FE_mapElemtype(what)
|
|||
'c3d20')
|
||||
FE_mapElemtype = 12_pInt ! Three-dimensional Arbitrarily Distorted quadratic hexahedral
|
||||
case default
|
||||
FE_mapElemtype = 0_pInt ! unknown element --> should raise an error upstream..!
|
||||
call IO_error(error_ID=190_pInt,ext_msg=IO_lc(what))
|
||||
end select
|
||||
|
||||
end function FE_mapElemtype
|
||||
|
|
Loading…
Reference in New Issue