polishing

This commit is contained in:
Pratheek Shanthraj 2014-10-06 17:01:39 +00:00
parent d86f091026
commit 2712ce0254
3 changed files with 8 additions and 19 deletions

View File

@ -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)

View File

@ -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)

View File

@ -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,7 +249,6 @@ 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
@ -261,7 +258,6 @@ end subroutine damage_ductile_aTolState
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