storing phase part of material.config per section in chained list
This commit is contained in:
parent
8867322713
commit
052a0af2ac
|
@ -7,6 +7,7 @@
|
||||||
!! 'phase', 'texture', and 'microstucture'
|
!! 'phase', 'texture', and 'microstucture'
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
module material
|
module material
|
||||||
|
use chained_list
|
||||||
use prec, only: &
|
use prec, only: &
|
||||||
pReal, &
|
pReal, &
|
||||||
pInt, &
|
pInt, &
|
||||||
|
@ -304,6 +305,8 @@ module material
|
||||||
vacancyConcRate, & !< vacancy conc change field
|
vacancyConcRate, & !< vacancy conc change field
|
||||||
hydrogenConcRate !< hydrogen conc change field
|
hydrogenConcRate !< hydrogen conc change field
|
||||||
|
|
||||||
|
type(tPartitionedStringList), public,protected, allocatable, dimension(:) :: phaseConfig
|
||||||
|
|
||||||
public :: &
|
public :: &
|
||||||
material_init, &
|
material_init, &
|
||||||
ELASTICITY_hooke_ID ,&
|
ELASTICITY_hooke_ID ,&
|
||||||
|
@ -933,6 +936,8 @@ subroutine material_parsePhase(fileUnit,myPart)
|
||||||
allocate(phase_Noutput(Nsections), source=0_pInt)
|
allocate(phase_Noutput(Nsections), source=0_pInt)
|
||||||
allocate(phase_localPlasticity(Nsections), source=.false.)
|
allocate(phase_localPlasticity(Nsections), source=.false.)
|
||||||
|
|
||||||
|
allocate(phaseConfig(Nsections))
|
||||||
|
|
||||||
phase_Noutput = IO_countTagInPart(fileUnit,myPart,'(output)',Nsections)
|
phase_Noutput = IO_countTagInPart(fileUnit,myPart,'(output)',Nsections)
|
||||||
phase_Nsources = IO_countTagInPart(fileUnit,myPart,'(source)',Nsections)
|
phase_Nsources = IO_countTagInPart(fileUnit,myPart,'(source)',Nsections)
|
||||||
phase_Nkinematics = IO_countTagInPart(fileUnit,myPart,'(kinematics)',Nsections)
|
phase_Nkinematics = IO_countTagInPart(fileUnit,myPart,'(kinematics)',Nsections)
|
||||||
|
@ -970,6 +975,7 @@ subroutine material_parsePhase(fileUnit,myPart)
|
||||||
if (section > 0_pInt) then
|
if (section > 0_pInt) then
|
||||||
chunkPos = IO_stringPos(line)
|
chunkPos = IO_stringPos(line)
|
||||||
tag = IO_lc(IO_stringValue(line,chunkPos,1_pInt)) ! extract key
|
tag = IO_lc(IO_stringValue(line,chunkPos,1_pInt)) ! extract key
|
||||||
|
call phaseConfig(section)%add(trim(line),chunkPos)
|
||||||
select case(tag)
|
select case(tag)
|
||||||
case ('elasticity')
|
case ('elasticity')
|
||||||
select case (IO_lc(IO_stringValue(line,chunkPos,2_pInt)))
|
select case (IO_lc(IO_stringValue(line,chunkPos,2_pInt)))
|
||||||
|
|
Loading…
Reference in New Issue