corrected dislocation multiplication term for special case of zero density

This commit is contained in:
Christoph Kords 2012-08-24 11:36:46 +00:00
parent c4df00d92d
commit 3cd5fa90e8
1 changed files with 3 additions and 48 deletions

View File

@ -1136,14 +1136,6 @@ forall (s = 1_pInt:ns, c = 1_pInt:2_pInt) &
rhoDip(s,c) = max(state(g,ip,el)%p((7_pInt+c)*ns+s), 0.0_pReal) ! ensure positive dipole densities rhoDip(s,c) = max(state(g,ip,el)%p((7_pInt+c)*ns+s), 0.0_pReal) ! ensure positive dipole densities
!*** below significantRho, density quickly drops to zero
rhoSgl = sign((rhoSgl**4.0_pReal + constitutive_nonlocal_significantRho(instance)**4.0_pReal)**0.25_pReal &
- constitutive_nonlocal_significantRho(instance), rhoSgl)
rhoDip = (rhoDip**4.0_pReal + constitutive_nonlocal_significantRho(instance)**4.0_pReal)**0.25_pReal &
- constitutive_nonlocal_significantRho(instance)
!*** calculate the forest dislocation density !*** calculate the forest dislocation density
!*** (= projection of screw and edge dislocations) !*** (= projection of screw and edge dislocations)
@ -1547,11 +1539,6 @@ forall (s = 1_pInt:ns, t = 5_pInt:8_pInt) &
tauBack = state%p(12_pInt*ns+1:13_pInt*ns) tauBack = state%p(12_pInt*ns+1:13_pInt*ns)
!*** below significantRho, density quickly drops to zero
rhoSgl = sign((rhoSgl**4.0_pReal + constitutive_nonlocal_significantRho(myInstance)**4.0_pReal)**0.25_pReal &
- constitutive_nonlocal_significantRho(myInstance), rhoSgl)
!*** get effective resolved shear stress !*** get effective resolved shear stress
@ -1718,15 +1705,6 @@ forall (c = 1_pInt:2_pInt) &
!*** below significantRho, density quickly drops to zero
rhoSgl = sign((rhoSgl**4.0_pReal + constitutive_nonlocal_significantRho(myInstance)**4.0_pReal)**0.25_pReal &
- constitutive_nonlocal_significantRho(myInstance), rhoSgl)
rhoDip = (rhoDip**4.0_pReal + constitutive_nonlocal_significantRho(myInstance)**4.0_pReal)**0.25_pReal &
- constitutive_nonlocal_significantRho(myInstance)
!**************************************************************************** !****************************************************************************
!*** dislocation remobilization (bauschinger effect) !*** dislocation remobilization (bauschinger effect)
@ -1967,14 +1945,6 @@ forall (t = 1_pInt:4_pInt) &
v(1_pInt:ns,t) = state(g,ip,el)%p((12_pInt+t)*ns+1_pInt:(13_pInt+t)*ns) v(1_pInt:ns,t) = state(g,ip,el)%p((12_pInt+t)*ns+1_pInt:(13_pInt+t)*ns)
!*** below significantRho, density quickly drops to zero
rhoSgl = sign((rhoSgl**4.0_pReal + constitutive_nonlocal_significantRho(myInstance)**4.0_pReal)**0.25_pReal &
- constitutive_nonlocal_significantRho(myInstance), rhoSgl)
rhoDip = (rhoDip**4.0_pReal + constitutive_nonlocal_significantRho(myInstance)**4.0_pReal)**0.25_pReal &
- constitutive_nonlocal_significantRho(myInstance)
!*** sanity check for timestep !*** sanity check for timestep
@ -2026,7 +1996,6 @@ dUpper = max(dUpper,dLower)
!*** calculate dislocation multiplication !*** calculate dislocation multiplication
rhoDotMultiplication = 0.0_pReal rhoDotMultiplication = 0.0_pReal
where (rhoSgl(1:ns,3:4) > 0.0_pReal) &
rhoDotMultiplication(1:ns,1:2) = spread(0.5_pReal * sum(abs(gdot(1:ns,3:4)),2) * sqrt(rhoForest) & rhoDotMultiplication(1:ns,1:2) = spread(0.5_pReal * sum(abs(gdot(1:ns,3:4)),2) * sqrt(rhoForest) &
/ constitutive_nonlocal_lambda0(1:ns,myInstance) & / constitutive_nonlocal_lambda0(1:ns,myInstance) &
/ constitutive_nonlocal_burgers(1:ns,myInstance), 2, 2) / constitutive_nonlocal_burgers(1:ns,myInstance), 2, 2)
@ -2631,12 +2600,6 @@ forall (t = 5_pInt:8_pInt) &
rhoSgl(1:ns,t) = state(g,ip,el)%p((t-1_pInt)*ns+1_pInt:t*ns) rhoSgl(1:ns,t) = state(g,ip,el)%p((t-1_pInt)*ns+1_pInt:t*ns)
!*** below significantRho, density quickly drops to zero
rhoSgl = sign((rhoSgl**4.0_pReal + constitutive_nonlocal_significantRho(instance)**4.0_pReal)**0.25_pReal &
- constitutive_nonlocal_significantRho(instance), rhoSgl)
!*** calculate the dislocation stress of the neighboring excess dislocation densities !*** calculate the dislocation stress of the neighboring excess dislocation densities
!*** zero for material points of local plasticity !*** zero for material points of local plasticity
@ -2983,14 +2946,6 @@ forall (c = 1_pInt:2_pInt) rhoDotDip(1:ns,c) = dotState%p((7_pInt+c)*ns+1_pInt:(
forall (t = 1_pInt:4_pInt) v(1:ns,t) = state(g,ip,el)%p((12_pInt+t)*ns+1_pInt:(13_pInt+t)*ns) forall (t = 1_pInt:4_pInt) v(1:ns,t) = state(g,ip,el)%p((12_pInt+t)*ns+1_pInt:(13_pInt+t)*ns)
!*** below significantRho, density quickly drops to zero
rhoSgl = sign((rhoSgl**4.0_pReal + constitutive_nonlocal_significantRho(myInstance)**4.0_pReal)**0.25_pReal &
- constitutive_nonlocal_significantRho(myInstance), rhoSgl)
rhoDip = (rhoDip**4.0_pReal + constitutive_nonlocal_significantRho(myInstance)**4.0_pReal)**0.25_pReal &
- constitutive_nonlocal_significantRho(myInstance)
!* Calculate shear rate !* Calculate shear rate