report origin of configuration if given

This commit is contained in:
Martin Diehl 2023-02-25 12:43:10 +01:00
parent 04db45f5c0
commit 9418664604
15 changed files with 32 additions and 11 deletions

View File

@ -394,6 +394,7 @@ subroutine phase_init
do ph = 1,phases%length
phase => phases%get_dict(ph)
print'(a,i0,a)', ' phase ',ph,' '//material_references(phase)
phase_lattice(ph) = phase%get_asString('lattice')
if (all(phase_lattice(ph) /= ['cF','cI','hP','tI'])) &
call IO_error(130,ext_msg='phase_init: '//phase%get_asString('lattice'))
@ -516,7 +517,7 @@ end subroutine phase_result
!--------------------------------------------------------------------------------------------------
!> @brief allocates and initialize per grain variables
!> @brief Allocate and initialize.
!--------------------------------------------------------------------------------------------------
subroutine crystallite_init()

View File

@ -103,6 +103,7 @@ module subroutine damage_init()
phase => phases%get_dict(ph)
source => phase%get_dict('damage',defaultVal=emptyDict)
if (source%length > 0) then
print'(a,i0,a)', ' phase ',ph,' '//material_references(source)
damage_active = .true.
param(ph)%mu = source%get_asFloat('mu')
param(ph)%l_c = source%get_asFloat('l_c')

View File

@ -62,6 +62,8 @@ module function anisobrittle_init() result(mySources)
associate(prm => param(ph))
print'(a,i0,a)', ' phase ',ph,' '//material_references(src)
N_cl = src%get_as1dInt('N_cl',defaultVal=emptyIntArray)
prm%sum_N_cl = sum(abs(N_cl))

View File

@ -64,6 +64,8 @@ module function isobrittle_init() result(mySources)
prm%W_crit = src%get_asFloat('G_crit')/src%get_asFloat('l_c')
print'(a,i0,a)', ' phase ',ph,' '//material_references(src)
#if defined (__GFORTRAN__)
prm%output = output_as1dString(src)
#else

View File

@ -42,6 +42,7 @@ module subroutine elastic_init(phases)
phase => phases%get_dict(ph)
mech => phase%get_dict('mechanical')
elastic => mech%get_dict('elastic')
print'(a,i0,a)', ' phase ',ph,' '//material_references(elastic)
if (elastic%get_asString('type') /= 'Hooke') call IO_error(200,ext_msg=elastic%get_asString('type'))
associate(prm => param(ph))

View File

@ -128,6 +128,8 @@ module function plastic_dislotungsten_init() result(myPlasticity)
mech => phase%get_dict('mechanical')
pl => mech%get_dict('plastic')
print'(a,i0,a)', ' phase ',ph,' '//material_references(pl)
#if defined (__GFORTRAN__)
prm%output = output_as1dString(pl)
#else

View File

@ -181,6 +181,8 @@ module function plastic_dislotwin_init() result(myPlasticity)
mech => phase%get_dict('mechanical')
pl => mech%get_dict('plastic')
print'(a,i0,a)', ' phase ',ph,' '//material_references(pl)
#if defined (__GFORTRAN__)
prm%output = output_as1dString(pl)
#else

View File

@ -86,6 +86,8 @@ module function plastic_isotropic_init() result(myPlasticity)
mech => phase%get_dict('mechanical')
pl => mech%get_dict('plastic')
print'(a,i0,a)', ' phase ',ph,' '//material_references(pl)
#if defined (__GFORTRAN__)
prm%output = output_as1dString(pl)
#else

View File

@ -84,6 +84,7 @@ module function plastic_kinehardening_init() result(myPlasticity)
mech, &
pl
myPlasticity = plastic_active('kinehardening')
if (count(myPlasticity) == 0) return
@ -111,6 +112,8 @@ module function plastic_kinehardening_init() result(myPlasticity)
mech => phase%get_dict('mechanical')
pl => mech%get_dict('plastic')
print'(a,i0,a)', ' phase ',ph,' '//material_references(pl)
#if defined (__GFORTRAN__)
prm%output = output_as1dString(pl)
#else

View File

@ -31,6 +31,7 @@ module function plastic_none_init() result(myPlasticity)
phases => config_material%get_dict('phase')
do ph = 1, phases%length
if (.not. myPlasticity(ph)) cycle
print'(a,i0,a)', ' phase ',ph
call phase_allocateState(plasticState(ph),count(material_ID_phase == ph),0,0,0)
end do

View File

@ -234,13 +234,15 @@ module function plastic_nonlocal_init() result(myPlasticity)
mech => phase%get_dict('mechanical')
pl => mech%get_dict('plastic')
plasticState(ph)%nonlocal = pl%get_asBool('flux',defaultVal=.True.)
print'(a,i0,a)', ' phase ',ph,' '//material_references(pl)
#if defined (__GFORTRAN__)
prm%output = output_as1dString(pl)
#else
prm%output = pl%get_as1dString('output',defaultVal=emptyStringArray)
#endif
plasticState(ph)%nonlocal = pl%get_asBool('flux',defaultVal=.True.)
prm%isotropic_bound = pl%get_asString('isotropic_bound',defaultVal='isostrain')
prm%atol_rho = pl%get_asFloat('atol_rho',defaultVal=1.0_pReal)

View File

@ -122,6 +122,14 @@ module function plastic_phenopowerlaw_init() result(myPlasticity)
mech => phase%get_dict('mechanical')
pl => mech%get_dict('plastic')
print'(a,i0,a)', ' phase ',ph,' '//material_references(pl)
#if defined (__GFORTRAN__)
prm%output = output_as1dString(pl)
#else
prm%output = pl%get_as1dString('output',defaultVal=emptyStringArray)
#endif
!--------------------------------------------------------------------------------------------------
! slip related parameters
N_sl = pl%get_as1dInt('N_sl',defaultVal=emptyIntArray)
@ -217,15 +225,6 @@ module function plastic_phenopowerlaw_init() result(myPlasticity)
prm%h_0_tw_sl = 0.0_pReal
end if slipAndTwinActive
!--------------------------------------------------------------------------------------------------
! output pararameters
#if defined (__GFORTRAN__)
prm%output = output_as1dString(pl)
#else
prm%output = pl%get_as1dString('output',defaultVal=emptyStringArray)
#endif
!--------------------------------------------------------------------------------------------------
! allocate state arrays
Nmembers = count(material_ID_phase == ph)

View File

@ -107,6 +107,7 @@ module subroutine thermal_init(phases)
! ToDo: temperature dependency of K and C_p
if (thermal%length > 0) then
print'(a,i0,a)', ' phase ',ph,' '//material_references(thermal)
param(ph)%C_p = thermal%get_asFloat('C_p')
param(ph)%K(1,1) = thermal%get_asFloat('K_11')
if (any(phase_lattice(ph) == ['hP','tI'])) param(ph)%K(3,3) = thermal%get_asFloat('K_33')

View File

@ -56,6 +56,7 @@ module function dissipation_init(source_length) result(mySources)
if (mySources(so,ph)) then
associate(prm => param(ph))
src => sources%get_dict(so)
print'(a,i0,a,i0,a)', ' phase ',ph,' source ',so,' '//material_references(src)
prm%kappa = src%get_asFloat('kappa')
Nmembers = count(material_ID_phase == ph)

View File

@ -60,6 +60,7 @@ module function externalheat_init(source_length) result(mySources)
source_thermal_externalheat_offset(ph) = so
associate(prm => param(ph))
src => sources%get_dict(so)
print'(a,i0,a,i0,a)', ' phase ',ph,' source ',so,' '//material_references(src)
prm%f = table(src,'t','f')