part of damage, not of eigen
This commit is contained in:
parent
d56f1acf36
commit
0d974648f0
|
@ -259,7 +259,7 @@ module phase
|
|||
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
|
||||
real(pReal), intent(in), dimension(3,3) :: &
|
||||
S
|
||||
|
@ -267,9 +267,9 @@ module phase
|
|||
Ld !< damage velocity gradient
|
||||
real(pReal), intent(out), dimension(3,3,3,3) :: &
|
||||
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
|
||||
real(pReal), intent(in), dimension(3,3) :: &
|
||||
S
|
||||
|
@ -277,7 +277,7 @@ module phase
|
|||
Ld !< damage velocity gradient
|
||||
real(pReal), intent(out), dimension(3,3,3,3) :: &
|
||||
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
|
||||
|
||||
|
|
|
@ -197,7 +197,7 @@ end subroutine anisobrittle_results
|
|||
!--------------------------------------------------------------------------------------------------
|
||||
!> @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) :: &
|
||||
ph,me
|
||||
|
@ -253,6 +253,6 @@ module subroutine kinematics_cleavage_opening_LiAndItsTangent(Ld, dLd_dTstar, S,
|
|||
enddo
|
||||
end associate
|
||||
|
||||
end subroutine kinematics_cleavage_opening_LiAndItsTangent
|
||||
end subroutine damage_anisobrittle_LiAndItsTangent
|
||||
|
||||
end submodule anisobrittle
|
||||
|
|
|
@ -9,13 +9,13 @@ submodule(phase:mechanical) eigen
|
|||
model_damage
|
||||
|
||||
interface
|
||||
module function kinematics_cleavage_opening_init() result(myKinematics)
|
||||
module function damage_anisobrittle_init() result(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
|
||||
end function kinematics_slipplane_opening_init
|
||||
end function damage_isoductile_init
|
||||
|
||||
module function thermalexpansion_init(kinematics_length) result(myKinematics)
|
||||
integer, intent(in) :: kinematics_length
|
||||
|
@ -70,8 +70,8 @@ module subroutine eigendeformation_init(phases)
|
|||
|
||||
allocate(model_damage(phases%length), source = KINEMATICS_UNDEFINED_ID)
|
||||
|
||||
where(kinematics_cleavage_opening_init()) model_damage = KINEMATICS_cleavage_opening_ID
|
||||
where(kinematics_slipplane_opening_init()) model_damage = KINEMATICS_slipplane_opening_ID
|
||||
where(damage_anisobrittle_init()) model_damage = KINEMATICS_cleavage_opening_ID
|
||||
where(damage_isoductile_init()) model_damage = KINEMATICS_slipplane_opening_ID
|
||||
|
||||
|
||||
end subroutine eigendeformation_init
|
||||
|
@ -198,12 +198,12 @@ module subroutine phase_LiAndItsTangents(Li, dLi_dS, dLi_dFi, &
|
|||
|
||||
select case (model_damage(ph))
|
||||
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
|
||||
dLi_dS = dLi_dS + my_dLi_dS
|
||||
active = .true.
|
||||
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
|
||||
dLi_dS = dLi_dS + my_dLi_dS
|
||||
active = .true.
|
||||
|
|
|
@ -13,7 +13,7 @@ contains
|
|||
!> @brief module initialization
|
||||
!> @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
|
||||
|
||||
|
@ -24,7 +24,7 @@ module function kinematics_cleavage_opening_init() result(myKinematics)
|
|||
print'(/,a)', ' <<<+- phase:mechanical:eigen:cleavageopening init -+>>>'
|
||||
print'(a,i2)', ' # phases: ',count(myKinematics); flush(IO_STDOUT)
|
||||
|
||||
end function kinematics_cleavage_opening_init
|
||||
end function damage_anisobrittle_init
|
||||
|
||||
|
||||
end submodule cleavageopening
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
!--------------------------------------------------------------------------------------------------
|
||||
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
|
||||
integer :: &
|
||||
|
@ -32,7 +32,7 @@ contains
|
|||
!> @brief module initialization
|
||||
!> @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
|
||||
|
||||
|
@ -107,13 +107,13 @@ module function kinematics_slipplane_opening_init() result(myKinematics)
|
|||
enddo
|
||||
|
||||
|
||||
end function kinematics_slipplane_opening_init
|
||||
end function damage_isoductile_init
|
||||
|
||||
|
||||
!--------------------------------------------------------------------------------------------------
|
||||
!> @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) :: &
|
||||
ph, me
|
||||
|
@ -179,6 +179,6 @@ module subroutine kinematics_slipplane_opening_LiAndItsTangent(Ld, dLd_dTstar, S
|
|||
|
||||
end associate
|
||||
|
||||
end subroutine kinematics_slipplane_opening_LiAndItsTangent
|
||||
end subroutine damage_isoductile_LiAndItsTangent
|
||||
|
||||
end submodule slipplaneopening
|
||||
|
|
Loading…
Reference in New Issue