pass data to homogenization and phase level at the same time

This commit is contained in:
Sharan Roongta 2022-02-21 17:28:02 +01:00
parent d1620d9268
commit e26e8c715f
4 changed files with 3 additions and 5 deletions

View File

@ -304,8 +304,6 @@ program DAMASK_grid
call spectral_Utilities_init call spectral_Utilities_init
do field = 1, nActiveFields do field = 1, nActiveFields
select case (ID(field)) select case (ID(field))
case(FIELD_MECH_ID)
call mechanical_init
case(FIELD_THERMAL_ID) case(FIELD_THERMAL_ID)
initial_conditions => config_load%get('initial_conditions',defaultVal=emptyDict) initial_conditions => config_load%get('initial_conditions',defaultVal=emptyDict)
@ -318,6 +316,7 @@ program DAMASK_grid
end select end select
enddo enddo
call mechanical_init
!-------------------------------------------------------------------------------------------------- !--------------------------------------------------------------------------------------------------
! write header of output file ! write header of output file
if (worldrank == 0) then if (worldrank == 0) then

View File

@ -293,7 +293,6 @@ subroutine homogenization_thermal_response(Delta_t,cell_start,cell_end)
do ce = cell_start, cell_end do ce = cell_start, cell_end
if (terminallyIll) continue if (terminallyIll) continue
ho = material_homogenizationID(ce) ho = material_homogenizationID(ce)
call thermal_partition(ce)
do co = 1, homogenization_Nconstituents(ho) do co = 1, homogenization_Nconstituents(ho)
if (.not. phase_thermal_constitutive(Delta_t,material_phaseID(co,ce),material_phaseEntry(co,ce))) then if (.not. phase_thermal_constitutive(Delta_t,material_phaseID(co,ce),material_phaseEntry(co,ce))) then
if (.not. terminallyIll) print*, ' Cell ', ce, ' terminally ill' if (.not. terminallyIll) print*, ' Cell ', ce, ' terminally ill'

View File

@ -162,7 +162,7 @@ module subroutine homogenization_thermal_setField(T,dot_T, ce)
current(material_homogenizationID(ce))%T(material_homogenizationEntry(ce)) = T current(material_homogenizationID(ce))%T(material_homogenizationEntry(ce)) = T
current(material_homogenizationID(ce))%dot_T(material_homogenizationEntry(ce)) = dot_T current(material_homogenizationID(ce))%dot_T(material_homogenizationEntry(ce)) = dot_T
call thermal_partition(ce)
end subroutine homogenization_thermal_setField end subroutine homogenization_thermal_setField

View File

@ -96,7 +96,7 @@ module subroutine thermal_init(phases)
do ph = 1, phases%length do ph = 1, phases%length
Nmembers = count(material_phaseID == ph) Nmembers = count(material_phaseID == ph)
allocate(current(ph)%T(Nmembers),source=T_ROOM) allocate(current(ph)%T(Nmembers),source=300.0_pReal)
allocate(current(ph)%dot_T(Nmembers),source=0.0_pReal) allocate(current(ph)%dot_T(Nmembers),source=0.0_pReal)
phase => phases%get(ph) phase => phases%get(ph)
thermal => phase%get('thermal',defaultVal=emptyDict) thermal => phase%get('thermal',defaultVal=emptyDict)