use central functionality for file IO
This commit is contained in:
parent
9f61b0d34a
commit
a18057ba4d
|
@ -65,12 +65,11 @@ program DAMASK_spectral
|
||||||
currentLoadcase = 0, & !< current load case
|
currentLoadcase = 0, & !< current load case
|
||||||
inc, & !< current increment in current load case
|
inc, & !< current increment in current load case
|
||||||
totalIncsCounter = 0, & !< total # of increments
|
totalIncsCounter = 0, & !< total # of increments
|
||||||
fileUnit = 0, & !< file unit for reading load case and writing results
|
|
||||||
myStat, &
|
|
||||||
statUnit = 0, & !< file unit for statistics output
|
statUnit = 0, & !< file unit for statistics output
|
||||||
stagIter, &
|
stagIter, &
|
||||||
nActiveFields = 0
|
nActiveFields = 0
|
||||||
character(len=6) :: loadcase_string
|
character(len=6) :: loadcase_string
|
||||||
|
character(len=pStringLen), dimension(:), allocatable :: fileContent
|
||||||
character(len=1024) :: &
|
character(len=1024) :: &
|
||||||
incInfo
|
incInfo
|
||||||
type(tLoadCase), allocatable, dimension(:) :: loadCases !< array of all load cases
|
type(tLoadCase), allocatable, dimension(:) :: loadCases !< array of all load cases
|
||||||
|
@ -142,16 +141,12 @@ program DAMASK_spectral
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
! reading information from load case file and to sanity checks
|
! reading information from load case file and to sanity checks
|
||||||
allocate (loadCases(0)) ! array of load cases
|
allocate (loadCases(0)) ! array of load cases
|
||||||
open(newunit=fileunit,iostat=myStat,file=trim(loadCaseFile),action='read')
|
fileContent = IO_read_ASCII(trim(loadCaseFile))
|
||||||
if (myStat /= 0) call IO_error(100,el=myStat,ext_msg=trim(loadCaseFile))
|
|
||||||
do
|
|
||||||
read(fileUnit, '(A)', iostat=myStat) line
|
|
||||||
if ( myStat /= 0) exit
|
|
||||||
if (IO_isBlank(line)) cycle ! skip empty lines
|
|
||||||
|
|
||||||
currentLoadCase = currentLoadCase + 1
|
|
||||||
|
|
||||||
|
do currentLoadCase = 1, size(fileContent)
|
||||||
|
line = fileContent(currentLoadCase)
|
||||||
chunkPos = IO_stringPos(line)
|
chunkPos = IO_stringPos(line)
|
||||||
|
|
||||||
do i = 1, chunkPos(1) ! reading compulsory parameters for loadcase
|
do i = 1, chunkPos(1) ! reading compulsory parameters for loadcase
|
||||||
select case (IO_lc(IO_stringValue(line,chunkPos,i)))
|
select case (IO_lc(IO_stringValue(line,chunkPos,i)))
|
||||||
case('l','fdot','dotf','f')
|
case('l','fdot','dotf','f')
|
||||||
|
@ -300,7 +295,7 @@ program DAMASK_spectral
|
||||||
endif reportAndCheck
|
endif reportAndCheck
|
||||||
loadCases = [loadCases,newLoadCase] ! load case is ok, append it
|
loadCases = [loadCases,newLoadCase] ! load case is ok, append it
|
||||||
enddo
|
enddo
|
||||||
close(fileUnit)
|
|
||||||
|
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
! doing initialization depending on active solvers
|
! doing initialization depending on active solvers
|
||||||
|
|
Loading…
Reference in New Issue