diff --git a/code/damage_anisoBrittle.f90 b/code/damage_anisoBrittle.f90 index 3d728928a..ef94bb6f0 100644 --- a/code/damage_anisoBrittle.f90 +++ b/code/damage_anisoBrittle.f90 @@ -390,7 +390,9 @@ subroutine damage_anisoBrittle_microstructure(Tstar_v, subdt, ipc, ip, el) localDamage = max(residualStiffness,1.0_pReal/damageState(phase)%state(2,constituent)) damageState(phase)%state(1,constituent) = & - localDamage + localDamage + & + (damageState(phase)%subState0(1,constituent) - localDamage)* & + exp(-subdt/lattice_DamageMobility(phase)) end subroutine damage_anisoBrittle_microstructure diff --git a/code/damage_phaseField.f90 b/code/damage_phaseField.f90 index a7ea882e9..47114b2fb 100644 --- a/code/damage_phaseField.f90 +++ b/code/damage_phaseField.f90 @@ -331,7 +331,7 @@ subroutine damage_phaseField_microstructure(C, Fe, Cv, subdt, ipc, ip, el) (Cv*damage_phaseField_specificVacancyFormationEnergy(instance) + & sum(abs(stress*strain)))/damage_phaseField_surfaceEnergy(instance) damageState(phase)%state(2,constituent) = & - (1.0_pReal - Cv)*(1.0_pReal - Cv)/drivingForce + max(residualStiffness,(1.0_pReal - Cv)*(1.0_pReal - Cv)/drivingForce) damageState(phase)%state(1,constituent) = & damageState(phase)%state(2,constituent) + &