part of damage, not of eigen

This commit is contained in:
Martin Diehl 2021-04-06 12:18:48 +02:00
parent d56f1acf36
commit 0d974648f0
5 changed files with 21 additions and 21 deletions

View File

@ -259,7 +259,7 @@ module phase
end subroutine plastic_dependentState end subroutine plastic_dependentState
module subroutine kinematics_cleavage_opening_LiAndItsTangent(Ld, dLd_dTstar, S, ph,me) module subroutine damage_anisobrittle_LiAndItsTangent(Ld, dLd_dTstar, S, ph,me)
integer, intent(in) :: ph, me integer, intent(in) :: ph, me
real(pReal), intent(in), dimension(3,3) :: & real(pReal), intent(in), dimension(3,3) :: &
S S
@ -267,9 +267,9 @@ module phase
Ld !< damage velocity gradient Ld !< damage velocity gradient
real(pReal), intent(out), dimension(3,3,3,3) :: & real(pReal), intent(out), dimension(3,3,3,3) :: &
dLd_dTstar !< derivative of Ld with respect to Tstar (4th-order tensor) dLd_dTstar !< derivative of Ld with respect to Tstar (4th-order tensor)
end subroutine kinematics_cleavage_opening_LiAndItsTangent end subroutine damage_anisobrittle_LiAndItsTangent
module subroutine kinematics_slipplane_opening_LiAndItsTangent(Ld, dLd_dTstar, S, ph,me) module subroutine damage_isoductile_LiAndItsTangent(Ld, dLd_dTstar, S, ph,me)
integer, intent(in) :: ph, me integer, intent(in) :: ph, me
real(pReal), intent(in), dimension(3,3) :: & real(pReal), intent(in), dimension(3,3) :: &
S S
@ -277,7 +277,7 @@ module phase
Ld !< damage velocity gradient Ld !< damage velocity gradient
real(pReal), intent(out), dimension(3,3,3,3) :: & real(pReal), intent(out), dimension(3,3,3,3) :: &
dLd_dTstar !< derivative of Ld with respect to Tstar (4th-order tensor) dLd_dTstar !< derivative of Ld with respect to Tstar (4th-order tensor)
end subroutine kinematics_slipplane_opening_LiAndItsTangent end subroutine damage_isoductile_LiAndItsTangent
end interface end interface

View File

@ -197,7 +197,7 @@ end subroutine anisobrittle_results
!-------------------------------------------------------------------------------------------------- !--------------------------------------------------------------------------------------------------
!> @brief contains the constitutive equation for calculating the velocity gradient !> @brief contains the constitutive equation for calculating the velocity gradient
!-------------------------------------------------------------------------------------------------- !--------------------------------------------------------------------------------------------------
module subroutine kinematics_cleavage_opening_LiAndItsTangent(Ld, dLd_dTstar, S, ph,me) module subroutine damage_anisobrittle_LiAndItsTangent(Ld, dLd_dTstar, S, ph,me)
integer, intent(in) :: & integer, intent(in) :: &
ph,me ph,me
@ -253,6 +253,6 @@ module subroutine kinematics_cleavage_opening_LiAndItsTangent(Ld, dLd_dTstar, S,
enddo enddo
end associate end associate
end subroutine kinematics_cleavage_opening_LiAndItsTangent end subroutine damage_anisobrittle_LiAndItsTangent
end submodule anisobrittle end submodule anisobrittle

View File

@ -9,13 +9,13 @@ submodule(phase:mechanical) eigen
model_damage model_damage
interface interface
module function kinematics_cleavage_opening_init() result(myKinematics) module function damage_anisobrittle_init() result(myKinematics)
logical, dimension(:), allocatable :: myKinematics logical, dimension(:), allocatable :: myKinematics
end function kinematics_cleavage_opening_init end function damage_anisobrittle_init
module function kinematics_slipplane_opening_init() result(myKinematics) module function damage_isoductile_init() result(myKinematics)
logical, dimension(:), allocatable :: myKinematics logical, dimension(:), allocatable :: myKinematics
end function kinematics_slipplane_opening_init end function damage_isoductile_init
module function thermalexpansion_init(kinematics_length) result(myKinematics) module function thermalexpansion_init(kinematics_length) result(myKinematics)
integer, intent(in) :: kinematics_length integer, intent(in) :: kinematics_length
@ -70,8 +70,8 @@ module subroutine eigendeformation_init(phases)
allocate(model_damage(phases%length), source = KINEMATICS_UNDEFINED_ID) allocate(model_damage(phases%length), source = KINEMATICS_UNDEFINED_ID)
where(kinematics_cleavage_opening_init()) model_damage = KINEMATICS_cleavage_opening_ID where(damage_anisobrittle_init()) model_damage = KINEMATICS_cleavage_opening_ID
where(kinematics_slipplane_opening_init()) model_damage = KINEMATICS_slipplane_opening_ID where(damage_isoductile_init()) model_damage = KINEMATICS_slipplane_opening_ID
end subroutine eigendeformation_init end subroutine eigendeformation_init
@ -198,12 +198,12 @@ module subroutine phase_LiAndItsTangents(Li, dLi_dS, dLi_dFi, &
select case (model_damage(ph)) select case (model_damage(ph))
case (KINEMATICS_cleavage_opening_ID) case (KINEMATICS_cleavage_opening_ID)
call kinematics_cleavage_opening_LiAndItsTangent(my_Li, my_dLi_dS, S, ph, me) call damage_anisobrittle_LiAndItsTangent(my_Li, my_dLi_dS, S, ph, me)
Li = Li + my_Li Li = Li + my_Li
dLi_dS = dLi_dS + my_dLi_dS dLi_dS = dLi_dS + my_dLi_dS
active = .true. active = .true.
case (KINEMATICS_slipplane_opening_ID) case (KINEMATICS_slipplane_opening_ID)
call kinematics_slipplane_opening_LiAndItsTangent(my_Li, my_dLi_dS, S, ph, me) call damage_isoductile_LiAndItsTangent(my_Li, my_dLi_dS, S, ph, me)
Li = Li + my_Li Li = Li + my_Li
dLi_dS = dLi_dS + my_dLi_dS dLi_dS = dLi_dS + my_dLi_dS
active = .true. active = .true.

View File

@ -13,7 +13,7 @@ contains
!> @brief module initialization !> @brief module initialization
!> @details reads in material parameters, allocates arrays, and does sanity checks !> @details reads in material parameters, allocates arrays, and does sanity checks
!-------------------------------------------------------------------------------------------------- !--------------------------------------------------------------------------------------------------
module function kinematics_cleavage_opening_init() result(myKinematics) module function damage_anisobrittle_init() result(myKinematics)
logical, dimension(:), allocatable :: myKinematics logical, dimension(:), allocatable :: myKinematics
@ -24,7 +24,7 @@ module function kinematics_cleavage_opening_init() result(myKinematics)
print'(/,a)', ' <<<+- phase:mechanical:eigen:cleavageopening init -+>>>' print'(/,a)', ' <<<+- phase:mechanical:eigen:cleavageopening init -+>>>'
print'(a,i2)', ' # phases: ',count(myKinematics); flush(IO_STDOUT) print'(a,i2)', ' # phases: ',count(myKinematics); flush(IO_STDOUT)
end function kinematics_cleavage_opening_init end function damage_anisobrittle_init
end submodule cleavageopening end submodule cleavageopening

View File

@ -6,7 +6,7 @@
!-------------------------------------------------------------------------------------------------- !--------------------------------------------------------------------------------------------------
submodule(phase:eigen) slipplaneopening submodule(phase:eigen) slipplaneopening
integer, dimension(:), allocatable :: kinematics_slipplane_opening_instance integer, dimension(:), allocatable :: damage_isoductile_instance
type :: tParameters !< container type for internal constitutive parameters type :: tParameters !< container type for internal constitutive parameters
integer :: & integer :: &
@ -32,7 +32,7 @@ contains
!> @brief module initialization !> @brief module initialization
!> @details reads in material parameters, allocates arrays, and does sanity checks !> @details reads in material parameters, allocates arrays, and does sanity checks
!-------------------------------------------------------------------------------------------------- !--------------------------------------------------------------------------------------------------
module function kinematics_slipplane_opening_init() result(myKinematics) module function damage_isoductile_init() result(myKinematics)
logical, dimension(:), allocatable :: myKinematics logical, dimension(:), allocatable :: myKinematics
@ -107,13 +107,13 @@ module function kinematics_slipplane_opening_init() result(myKinematics)
enddo enddo
end function kinematics_slipplane_opening_init end function damage_isoductile_init
!-------------------------------------------------------------------------------------------------- !--------------------------------------------------------------------------------------------------
!> @brief contains the constitutive equation for calculating the velocity gradient !> @brief contains the constitutive equation for calculating the velocity gradient
!-------------------------------------------------------------------------------------------------- !--------------------------------------------------------------------------------------------------
module subroutine kinematics_slipplane_opening_LiAndItsTangent(Ld, dLd_dTstar, S, ph,me) module subroutine damage_isoductile_LiAndItsTangent(Ld, dLd_dTstar, S, ph,me)
integer, intent(in) :: & integer, intent(in) :: &
ph, me ph, me
@ -179,6 +179,6 @@ module subroutine kinematics_slipplane_opening_LiAndItsTangent(Ld, dLd_dTstar, S
end associate end associate
end subroutine kinematics_slipplane_opening_LiAndItsTangent end subroutine damage_isoductile_LiAndItsTangent
end submodule slipplaneopening end submodule slipplaneopening