polishing
This commit is contained in:
parent
d86f091026
commit
2712ce0254
|
@ -470,7 +470,7 @@ subroutine constitutive_microstructure(temperature, Tstar_v, Fe, Fp, ipc, ip, el
|
||||||
case (LOCAL_DAMAGE_BRITTLE_ID)
|
case (LOCAL_DAMAGE_BRITTLE_ID)
|
||||||
call damage_brittle_microstructure(Tstar_v_effective, Fe, ipc, ip, el)
|
call damage_brittle_microstructure(Tstar_v_effective, Fe, ipc, ip, el)
|
||||||
case (LOCAL_DAMAGE_DUCTILE_ID)
|
case (LOCAL_DAMAGE_DUCTILE_ID)
|
||||||
call damage_ductile_microstructure(Tstar_v_effective, Fe, Fp, ipc, ip, el)
|
call damage_ductile_microstructure(ipc, ip, el)
|
||||||
|
|
||||||
end select
|
end select
|
||||||
|
|
||||||
|
@ -871,6 +871,7 @@ subroutine constitutive_putLocalDamage(ipc, ip, el, localDamage)
|
||||||
select case (phase_damage(material_phase(ipc,ip,el)))
|
select case (phase_damage(material_phase(ipc,ip,el)))
|
||||||
case (LOCAL_DAMAGE_BRITTLE_ID)
|
case (LOCAL_DAMAGE_BRITTLE_ID)
|
||||||
call constitutive_brittle_putDamage(ipc, ip, el, localDamage)
|
call constitutive_brittle_putDamage(ipc, ip, el, localDamage)
|
||||||
|
|
||||||
case (LOCAL_DAMAGE_DUCTILE_ID)
|
case (LOCAL_DAMAGE_DUCTILE_ID)
|
||||||
call constitutive_ductile_putDamage(ipc, ip, el, localDamage)
|
call constitutive_ductile_putDamage(ipc, ip, el, localDamage)
|
||||||
|
|
||||||
|
|
|
@ -305,7 +305,7 @@ subroutine damage_brittle_microstructure(Tstar_v, Fe, ipc, ip, el)
|
||||||
integer(pInt) :: &
|
integer(pInt) :: &
|
||||||
phase, constituent
|
phase, constituent
|
||||||
real(pReal) :: &
|
real(pReal) :: &
|
||||||
strain(3,3), stress(3,3)
|
strain(3,3)
|
||||||
|
|
||||||
phase = mappingConstitutive(2,ipc,ip,el)
|
phase = mappingConstitutive(2,ipc,ip,el)
|
||||||
constituent = mappingConstitutive(1,ipc,ip,el)
|
constituent = mappingConstitutive(1,ipc,ip,el)
|
||||||
|
|
|
@ -3,9 +3,7 @@
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
!> @author Luv Sharma, Max-Planck-Institut für Eisenforschung GmbH
|
!> @author Luv Sharma, Max-Planck-Institut für Eisenforschung GmbH
|
||||||
!> @author Pratheek Shanthraj, Max-Planck-Institut für Eisenforschung GmbH
|
!> @author Pratheek Shanthraj, Max-Planck-Institut für Eisenforschung GmbH
|
||||||
!> @author Franz Roters, Max-Planck-Institut für Eisenforschung GmbH
|
!> @brief material subroutine incoprorating ductile damage
|
||||||
!> @author Philip Eisenlohr, Max-Planck-Institut für Eisenforschung GmbH
|
|
||||||
!> @brief material subroutine incoprorating dislocation and twinning physics
|
|
||||||
!> @details to be done
|
!> @details to be done
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
module damage_ductile
|
module damage_ductile
|
||||||
|
@ -251,17 +249,15 @@ subroutine damage_ductile_aTolState(phase,instance)
|
||||||
real(pReal), dimension(damageState(phase)%sizeState) :: tempTol
|
real(pReal), dimension(damageState(phase)%sizeState) :: tempTol
|
||||||
|
|
||||||
tempTol = damage_ductile_aTol(instance)
|
tempTol = damage_ductile_aTol(instance)
|
||||||
tempTol(2) = 0.000001_pReal
|
|
||||||
damageState(phase)%aTolState = tempTol
|
damageState(phase)%aTolState = tempTol
|
||||||
end subroutine damage_ductile_aTolState
|
end subroutine damage_ductile_aTolState
|
||||||
|
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
!> @brief calculates derived quantities from state
|
!> @brief calculates derived quantities from state
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
subroutine damage_ductile_dotState(Lp,ipc, ip, el)
|
subroutine damage_ductile_dotState(Lp, ipc, ip, el)
|
||||||
use material, only: &
|
use material, only: &
|
||||||
mappingConstitutive, &
|
mappingConstitutive, &
|
||||||
phase_damageInstance, &
|
|
||||||
damageState
|
damageState
|
||||||
use math, only: &
|
use math, only: &
|
||||||
math_norm33
|
math_norm33
|
||||||
|
@ -294,7 +290,7 @@ end subroutine damage_ductile_dotState
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
!> @brief calculates derived quantities from state
|
!> @brief calculates derived quantities from state
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
subroutine damage_ductile_microstructure(Tstar_v, Fe, Fp, ipc, ip, el)
|
subroutine damage_ductile_microstructure(ipc, ip, el)
|
||||||
use material, only: &
|
use material, only: &
|
||||||
mappingConstitutive, &
|
mappingConstitutive, &
|
||||||
phase_damageInstance, &
|
phase_damageInstance, &
|
||||||
|
@ -311,19 +307,11 @@ subroutine damage_ductile_microstructure(Tstar_v, Fe, Fp, ipc, ip, el)
|
||||||
ipc, & !< component-ID of integration point
|
ipc, & !< component-ID of integration point
|
||||||
ip, & !< integration point
|
ip, & !< integration point
|
||||||
el !< element
|
el !< element
|
||||||
real(pReal), intent(in), dimension(6) :: &
|
|
||||||
Tstar_v !< 2nd Piola Kirchhoff stress tensor (Mandel)
|
|
||||||
real(pReal), intent(in), dimension(3,3) :: &
|
|
||||||
Fe, &
|
|
||||||
Fp
|
|
||||||
integer(pInt) :: &
|
integer(pInt) :: &
|
||||||
phase, constituent
|
phase, constituent
|
||||||
real(pReal) :: &
|
|
||||||
plasticStrain(3,3)
|
|
||||||
|
|
||||||
phase = mappingConstitutive(2,ipc,ip,el)
|
phase = mappingConstitutive(2,ipc,ip,el)
|
||||||
constituent = mappingConstitutive(1,ipc,ip,el)
|
constituent = mappingConstitutive(1,ipc,ip,el)
|
||||||
plasticStrain = math_mul33x33(math_transpose33(Fp),Fp)-math_I3
|
|
||||||
damageState(phase)%state(3,constituent) = min(damageState(phase)%state(3,constituent), &
|
damageState(phase)%state(3,constituent) = min(damageState(phase)%state(3,constituent), &
|
||||||
damage_ductile_critpStrain(phase)/ &
|
damage_ductile_critpStrain(phase)/ &
|
||||||
damageState(phase)%state(2,constituent)) !< akin to damage surface
|
damageState(phase)%state(2,constituent)) !< akin to damage surface
|
||||||
|
|
Loading…
Reference in New Issue