introduced preprocessor statements in mesh to hide unneeded variables as a preparation for HDF5
This commit is contained in:
parent
5267c0fdbb
commit
5b4b132176
|
@ -353,7 +353,7 @@ character(len=1024) function getLoadCaseFile(loadCaseParameter)
|
|||
cwd
|
||||
integer :: posExt, posSep
|
||||
character :: pathSep
|
||||
|
||||
|
||||
getLoadCaseFile = loadcaseParameter
|
||||
pathSep = getPathSep()
|
||||
posExt = scan(getLoadCaseFile,'.',back=.true.)
|
||||
|
|
11
code/IO.f90
11
code/IO.f90
|
@ -91,9 +91,6 @@ module IO
|
|||
abaqus_assembleInputFile
|
||||
#endif
|
||||
|
||||
external :: &
|
||||
quit
|
||||
|
||||
contains
|
||||
|
||||
|
||||
|
@ -364,8 +361,8 @@ end subroutine IO_open_logFile
|
|||
|
||||
|
||||
!--------------------------------------------------------------------------------------------------
|
||||
!> @brief opens FEM log file for writing to given unit. File is named after solver job name and
|
||||
!! located in current working directory
|
||||
!> @brief opens ASCII file to given unit for writing. File is named after solver job name plus
|
||||
!! given extension and located in current working directory
|
||||
!--------------------------------------------------------------------------------------------------
|
||||
subroutine IO_write_jobFile(fileUnit,ext)
|
||||
use DAMASK_interface, only: &
|
||||
|
@ -1395,6 +1392,7 @@ function IO_continuousIntValues(fileUnit,maxN,lookupName,lookupMap,lookupMaxN)
|
|||
!> @brief returns format string for integer values without leading zeros
|
||||
!--------------------------------------------------------------------------------------------------
|
||||
pure function IO_intOut(intToPrint)
|
||||
|
||||
implicit none
|
||||
character(len=16) :: N_Digits
|
||||
character(len=34) :: IO_intOut
|
||||
|
@ -1410,6 +1408,7 @@ end function IO_intOut
|
|||
!> @brief returns time stamp
|
||||
!--------------------------------------------------------------------------------------------------
|
||||
function IO_timeStamp()
|
||||
|
||||
implicit none
|
||||
character(len=10) :: IO_timeStamp
|
||||
integer(pInt), dimension(8) :: values
|
||||
|
@ -1425,11 +1424,13 @@ end function IO_timeStamp
|
|||
!> in ABAQUS either time step is reduced or execution terminated
|
||||
!--------------------------------------------------------------------------------------------------
|
||||
subroutine IO_error(error_ID,el,ip,g,ext_msg)
|
||||
|
||||
implicit none
|
||||
integer(pInt), intent(in) :: error_ID
|
||||
integer(pInt), optional, intent(in) :: el,ip,g
|
||||
character(len=*), optional, intent(in) :: ext_msg
|
||||
|
||||
external :: quit
|
||||
character(len=1024) :: msg
|
||||
character(len=1024) :: formatString
|
||||
|
||||
|
|
|
@ -446,7 +446,7 @@ pure function math_range(N)
|
|||
integer(pInt) :: i
|
||||
integer(pInt), dimension(N) :: math_range
|
||||
|
||||
forall (i=1_pInt:N) math_range(i) = i
|
||||
math_range = [(i,i=1_pInt,N)]
|
||||
|
||||
end function math_range
|
||||
|
||||
|
|
|
@ -87,19 +87,22 @@ module mesh
|
|||
integer(pInt), dimension(2), private :: &
|
||||
mesh_maxValStateVar = 0_pInt
|
||||
|
||||
#ifndef Spectral
|
||||
character(len=64), dimension(:), allocatable, private :: &
|
||||
mesh_nameElemSet, & !< names of elementSet
|
||||
mesh_nameMaterial, & !< names of material in solid section
|
||||
mesh_mapMaterial !< name of elementSet for material
|
||||
|
||||
|
||||
integer(pInt), dimension(:,:), allocatable, private :: &
|
||||
mesh_cellnodeParent, & !< cellnode's parent element ID, cellnode's intra-element ID
|
||||
mesh_mapElemSet !< list of elements in elementSet
|
||||
|
||||
#endif
|
||||
integer(pInt), dimension(:,:), allocatable, private :: &
|
||||
mesh_cellnodeParent !< cellnode's parent element ID, cellnode's intra-element ID
|
||||
|
||||
integer(pInt), dimension(:,:), allocatable, target, private :: &
|
||||
mesh_mapFEtoCPelem, & !< [sorted FEid, corresponding CPid]
|
||||
mesh_mapFEtoCPnode !< [sorted FEid, corresponding CPid]
|
||||
|
||||
|
||||
integer(pInt),dimension(:,:,:), allocatable, private :: &
|
||||
mesh_cell !< cell connectivity for each element,ip/cell
|
||||
|
||||
|
@ -3697,8 +3700,8 @@ subroutine mesh_build_ipAreas
|
|||
real(pReal), dimension (3,FE_maxNcellnodesPerCellface) :: nodePos, normals
|
||||
real(pReal), dimension(3) :: normal
|
||||
|
||||
allocate(mesh_ipArea(mesh_maxNipNeighbors,mesh_maxNips,mesh_NcpElems)); mesh_ipArea = 0.0_pReal
|
||||
allocate(mesh_ipAreaNormal(3_pInt,mesh_maxNipNeighbors,mesh_maxNips,mesh_NcpElems)); mesh_ipAreaNormal = 0.0_pReal
|
||||
allocate(mesh_ipArea(mesh_maxNipNeighbors,mesh_maxNips,mesh_NcpElems), source=0.0_pReal)
|
||||
allocate(mesh_ipAreaNormal(3_pInt,mesh_maxNipNeighbors,mesh_maxNips,mesh_NcpElems), source=0.0_pReal)
|
||||
|
||||
!$OMP PARALLEL DO PRIVATE(t,g,c,nodePos,normal,normals)
|
||||
do e = 1_pInt,mesh_NcpElems ! loop over cpElems
|
||||
|
@ -3898,7 +3901,7 @@ end subroutine mesh_build_sharedElems
|
|||
|
||||
|
||||
!--------------------------------------------------------------------------------------------------
|
||||
!> @brief build up of IP neighborhood, allocate globals '_ipNeighborhood'
|
||||
!> @brief build up of IP neighborhood, allocate globals '_ipNeighborhood'
|
||||
!--------------------------------------------------------------------------------------------------
|
||||
subroutine mesh_build_ipNeighborhood
|
||||
use math, only: &
|
||||
|
@ -5125,14 +5128,18 @@ subroutine mesh_write_cellGeom
|
|||
title=trim(getSolverJobName())//' cell mesh', &
|
||||
filename = trim(getSolverWorkingDirectoryName())//trim(getSolverJobName())//'_ipbased.vtk', &
|
||||
mesh_topology = 'UNSTRUCTURED_GRID')
|
||||
!ToDo: check error here
|
||||
error=VTK_geo(NN = int(mesh_Ncellnodes,I4P), &
|
||||
X = mesh_cellnode(1,1:mesh_Ncellnodes), &
|
||||
Y = mesh_cellnode(2,1:mesh_Ncellnodes), &
|
||||
Z = mesh_cellnode(3,1:mesh_Ncellnodes))
|
||||
!ToDo: check error here
|
||||
error=VTK_con(NC = int(mesh_Ncells,I4P), &
|
||||
connect = cellconnection(1:j), &
|
||||
!ToDo: check error here
|
||||
cell_type = celltype)
|
||||
error=VTK_end()
|
||||
!ToDo: check error here
|
||||
|
||||
end subroutine mesh_write_cellGeom
|
||||
|
||||
|
@ -5173,14 +5180,18 @@ subroutine mesh_write_elemGeom
|
|||
title=trim(getSolverJobName())//' element mesh', &
|
||||
filename = trim(getSolverWorkingDirectoryName())//trim(getSolverJobName())//'_nodebased.vtk', &
|
||||
mesh_topology = 'UNSTRUCTURED_GRID')
|
||||
!ToDo: check error here
|
||||
error=VTK_geo(NN = int(mesh_Nnodes,I4P), &
|
||||
X = mesh_node0(1,1:mesh_Nnodes), &
|
||||
Y = mesh_node0(2,1:mesh_Nnodes), &
|
||||
Z = mesh_node0(3,1:mesh_Nnodes))
|
||||
!ToDo: check error here
|
||||
error=VTK_con(NC = int(mesh_Nelems,I4P), &
|
||||
connect = elementconnection(1:i), &
|
||||
cell_type = elemtype)
|
||||
!ToDo: check error here
|
||||
error =VTK_end()
|
||||
!ToDo: check error here
|
||||
|
||||
end subroutine mesh_write_elemGeom
|
||||
|
||||
|
|
Loading…
Reference in New Issue