From 1b89032086e1b41090b2c5a45fcaf81714810637 Mon Sep 17 00:00:00 2001 From: Martin Diehl Date: Thu, 8 Apr 2021 23:40:20 +0200 Subject: [PATCH] names as in DAMASK paper --- src/grid/grid_thermal_spectral.f90 | 8 ++++---- src/homogenization.f90 | 30 ++++++++++++++---------------- src/homogenization_damage.f90 | 12 ++++++------ src/homogenization_thermal.f90 | 22 +++++++++++----------- src/phase.f90 | 8 ++++---- src/phase_damage.f90 | 10 +++++----- src/phase_thermal.f90 | 10 +++++----- 7 files changed, 49 insertions(+), 51 deletions(-) diff --git a/src/grid/grid_thermal_spectral.f90 b/src/grid/grid_thermal_spectral.f90 index 7d4878b12..ea6caec0e 100644 --- a/src/grid/grid_thermal_spectral.f90 +++ b/src/grid/grid_thermal_spectral.f90 @@ -270,7 +270,7 @@ subroutine formResidual(in,x_scal,f_scal,dummy,ierr) ce = 0 do k = 1, grid3; do j = 1, grid(2); do i = 1,grid(1) ce = ce + 1 - vectorField_real(1:3,i,j,k) = matmul(homogenization_K(ce) - K_ref, & + vectorField_real(1:3,i,j,k) = matmul(homogenization_K_T(ce) - K_ref, & vectorField_real(1:3,i,j,k)) enddo; enddo; enddo call utilities_FFTvectorForward @@ -280,7 +280,7 @@ subroutine formResidual(in,x_scal,f_scal,dummy,ierr) do k = 1, grid3; do j = 1, grid(2); do i = 1,grid(1) ce = ce + 1 scalarField_real(i,j,k) = params%timeinc*(scalarField_real(i,j,k) + homogenization_f_T(ce)) & - + homogenization_thermal_mu_T(ce) * (T_lastInc(i,j,k) - T_current(i,j,k)) & + + homogenization_mu_T(ce) * (T_lastInc(i,j,k) - T_current(i,j,k)) & + mu_ref*T_current(i,j,k) enddo; enddo; enddo @@ -309,8 +309,8 @@ subroutine updateReference mu_ref = 0.0_pReal do k = 1, grid3; do j = 1, grid(2); do i = 1,grid(1) ce = ce + 1 - K_ref = K_ref + homogenization_K(ce) - mu_ref = mu_ref + homogenization_thermal_mu_T(ce) + K_ref = K_ref + homogenization_K_T(ce) + mu_ref = mu_ref + homogenization_mu_T(ce) enddo; enddo; enddo K_ref = K_ref*wgt call MPI_Allreduce(MPI_IN_PLACE,K_ref,9,MPI_DOUBLE,MPI_SUM,PETSC_COMM_WORLD,ierr) diff --git a/src/homogenization.f90 b/src/homogenization.f90 index 9fe78dd77..34e71a0f2 100644 --- a/src/homogenization.f90 +++ b/src/homogenization.f90 @@ -136,15 +136,15 @@ module homogenization end function mechanical_updateState - module function homogenization_K(ce) result(K) + module function homogenization_K_T(ce) result(K) integer, intent(in) :: ce real(pReal), dimension(3,3) :: K - end function homogenization_K + end function homogenization_K_T - module function homogenization_thermal_mu_T(ce) result(mu_T) + module function homogenization_mu_T(ce) result(mu) integer, intent(in) :: ce - real(pReal) :: mu_T - end function homogenization_thermal_mu_T + real(pReal) :: mu + end function homogenization_mu_T module subroutine homogenization_thermal_setField(T,dot_T, ce) integer, intent(in) :: ce @@ -156,20 +156,20 @@ module homogenization real(pReal) :: T end function homogenization_T - module function homogenization_f_T(ce) result(f_T) + module function homogenization_f_T(ce) result(f) integer, intent(in) :: ce - real(pReal) :: f_T + real(pReal) :: f end function homogenization_f_T - module function homogenization_mu_phi(ce) result(M) + module function homogenization_mu_phi(ce) result(mu) integer, intent(in) :: ce - real(pReal) :: M + real(pReal) :: mu end function homogenization_mu_phi - module function homogenization_f_phi(phi,ce) result(f_phi) + module function homogenization_f_phi(phi,ce) result(f) integer, intent(in) :: ce real(pReal), intent(in) :: phi - real(pReal) :: f_phi + real(pReal) :: f end function homogenization_f_phi module subroutine homogenization_set_phi(phi,ce) @@ -183,9 +183,10 @@ module homogenization public :: & homogenization_init, & materialpoint_stressAndItsTangent, & - homogenization_thermal_mu_T, & - homogenization_K, & + homogenization_mu_T, & + homogenization_K_T, & homogenization_f_T, & + homogenization_K_phi, & homogenization_mu_phi, & homogenization_f_phi, & homogenization_set_phi, & @@ -198,9 +199,6 @@ module homogenization THERMAL_CONDUCTION_ID, & DAMAGE_NONLOCAL_ID - public :: & - homogenization_K_phi - contains diff --git a/src/homogenization_damage.f90 b/src/homogenization_damage.f90 index 19a5b0f83..f0f13bdbb 100644 --- a/src/homogenization_damage.f90 +++ b/src/homogenization_damage.f90 @@ -109,12 +109,12 @@ end subroutine damage_partition !-------------------------------------------------------------------------------------------------- !> @brief Returns homogenized nonlocal damage mobility !-------------------------------------------------------------------------------------------------- -module function homogenization_mu_phi(ce) result(M) +module function homogenization_mu_phi(ce) result(mu) integer, intent(in) :: ce - real(pReal) :: M + real(pReal) :: mu - M = lattice_M(material_phaseID(1,ce)) + mu = lattice_M(material_phaseID(1,ce)) end function homogenization_mu_phi @@ -122,14 +122,14 @@ end function homogenization_mu_phi !-------------------------------------------------------------------------------------------------- !> @brief calculates homogenized damage driving forces !-------------------------------------------------------------------------------------------------- -module function homogenization_f_phi(phi,ce) result(f_phi) +module function homogenization_f_phi(phi,ce) result(f) integer, intent(in) :: ce real(pReal), intent(in) :: & phi - real(pReal) :: f_phi + real(pReal) :: f - f_phi = phase_f_phi(phi, 1, ce) + f = phase_f_phi(phi, 1, ce) end function homogenization_f_phi diff --git a/src/homogenization_thermal.f90 b/src/homogenization_thermal.f90 index a372a7494..8b4eafc3a 100644 --- a/src/homogenization_thermal.f90 +++ b/src/homogenization_thermal.f90 @@ -109,7 +109,7 @@ end subroutine thermal_homogenize !-------------------------------------------------------------------------------------------------- !> @brief return homogenized thermal conductivity in reference configuration !-------------------------------------------------------------------------------------------------- -module function homogenization_K(ce) result(K) +module function homogenization_K_T(ce) result(K) integer, intent(in) :: ce real(pReal), dimension(3,3) :: K @@ -125,17 +125,17 @@ module function homogenization_K(ce) result(K) K = K / real(homogenization_Nconstituents(material_homogenizationID(ce)),pReal) -end function homogenization_K +end function homogenization_K_T -module function homogenization_thermal_mu_T(ce) result(mu_T) +module function homogenization_mu_T(ce) result(mu) integer, intent(in) :: ce - real(pReal) :: mu_T + real(pReal) :: mu - mu_T = c_P(ce) * rho(ce) + mu = c_P(ce) * rho(ce) -end function homogenization_thermal_mu_T +end function homogenization_mu_T !-------------------------------------------------------------------------------------------------- @@ -234,19 +234,19 @@ end function homogenization_T !-------------------------------------------------------------------------------------------------- !> @brief return heat generation rate !-------------------------------------------------------------------------------------------------- -module function homogenization_f_T(ce) result(f_T) +module function homogenization_f_T(ce) result(f) integer, intent(in) :: ce - real(pReal) :: f_T + real(pReal) :: f integer :: co - f_T = phase_f_T(material_phaseID(1,ce),material_phaseEntry(1,ce)) + f = phase_f_T(material_phaseID(1,ce),material_phaseEntry(1,ce)) do co = 2, homogenization_Nconstituents(material_homogenizationID(ce)) - f_T = f_T + phase_f_T(material_phaseID(co,ce),material_phaseEntry(co,ce)) + f = f + phase_f_T(material_phaseID(co,ce),material_phaseEntry(co,ce)) enddo - f_T = f_T/real(homogenization_Nconstituents(material_homogenizationID(ce)),pReal) + f = f/real(homogenization_Nconstituents(material_homogenizationID(ce)),pReal) end function homogenization_f_T diff --git a/src/phase.f90 b/src/phase.f90 index 57c83c4b4..346772ce4 100644 --- a/src/phase.f90 +++ b/src/phase.f90 @@ -223,17 +223,17 @@ module phase end function phase_homogenizedC - module function phase_f_phi(phi,co,ce) result(phi_dot) + module function phase_f_phi(phi,co,ce) result(f) integer, intent(in) :: ce,co real(pReal), intent(in) :: & phi !< damage parameter real(pReal) :: & - phi_dot + f end function phase_f_phi - module function phase_f_T(ph,me) result(f_T) + module function phase_f_T(ph,me) result(f) integer, intent(in) :: ph, me - real(pReal) :: f_T + real(pReal) :: f end function phase_f_T module subroutine plastic_nonlocal_updateCompatibility(orientation,ph,i,e) diff --git a/src/phase_damage.f90 b/src/phase_damage.f90 index a6d97032f..189a5eabf 100644 --- a/src/phase_damage.f90 +++ b/src/phase_damage.f90 @@ -142,13 +142,13 @@ end subroutine damage_init !---------------------------------------------------------------------------------------------- !< @brief returns local part of nonlocal damage driving force !---------------------------------------------------------------------------------------------- -module function phase_f_phi(phi,co,ce) result(phi_dot) +module function phase_f_phi(phi,co,ce) result(f) integer, intent(in) :: ce,co real(pReal), intent(in) :: & phi !< damage parameter real(pReal) :: & - phi_dot + f integer :: & ph, & @@ -159,10 +159,10 @@ module function phase_f_phi(phi,co,ce) result(phi_dot) select case(phase_source(ph)) case(DAMAGE_ISOBRITTLE_ID,DAMAGE_ISODUCTILE_ID,DAMAGE_ANISOBRITTLE_ID,DAMAGE_ANISODUCTILE_ID) - phi_dot = 1.0_pReal & - - phi*damageState(ph)%state(1,en) + f = 1.0_pReal & + - phi*damageState(ph)%state(1,en) case default - phi_dot = 0.0_pReal + f = 0.0_pReal end select end function phase_f_phi diff --git a/src/phase_thermal.f90 b/src/phase_thermal.f90 index e7f9abdc5..807e1f655 100644 --- a/src/phase_thermal.f90 +++ b/src/phase_thermal.f90 @@ -121,25 +121,25 @@ end subroutine thermal_init !---------------------------------------------------------------------------------------------- !< @brief calculates thermal dissipation rate !---------------------------------------------------------------------------------------------- -module function phase_f_T(ph,me) result(f_T) +module function phase_f_T(ph,me) result(f) integer, intent(in) :: ph, me - real(pReal) :: f_T + real(pReal) :: f integer :: so - f_T = 0.0_pReal + f = 0.0_pReal do so = 1, thermal_Nsources(ph) select case(thermal_source(so,ph)) case (THERMAL_DISSIPATION_ID) - f_T = f_T + dissipation_f_T(ph,me) + f = f + dissipation_f_T(ph,me) case (THERMAL_EXTERNALHEAT_ID) - f_T = f_T + externalheat_f_T(ph,me) + f = f + externalheat_f_T(ph,me) end select