diff --git a/code/plastic_dislotwin.f90 b/code/plastic_dislotwin.f90 index 1110bc429..ade8f9e83 100644 --- a/code/plastic_dislotwin.f90 +++ b/code/plastic_dislotwin.f90 @@ -2031,10 +2031,11 @@ subroutine plastic_dislotwin_dotState(Tstar_v,Temperature,ipc,ip,el) of real(pReal) :: sumf,sumftr,StressRatio_p,StressRatio_pminus1,BoltzmannRatio,DotGamma0,& EdgeDipMinDistance,AtomicVolume,VacancyDiffusion,StressRatio_r,Ndot0_twin,stressRatio,& - Ndot0_trans,StressRatio_s + Ndot0_trans,StressRatio_s,EdgeDipDistance, ClimbVelocity,DotRhoEdgeDipClimb,DotRhoEdgeDipAnnihilation, & + DotRhoDipFormation,DotRhoMultiplication,DotRhoEdgeEdgeAnnihilation real(pReal), dimension(plastic_dislotwin_totalNslip(phase_plasticityInstance(material_phase(ipc,ip,el)))) :: & - gdot_slip,tau_slip,DotRhoMultiplication,EdgeDipDistance,DotRhoEdgeEdgeAnnihilation,DotRhoEdgeDipAnnihilation,& - ClimbVelocity,DotRhoEdgeDipClimb,DotRhoDipFormation + gdot_slip,tau_slip + real(pReal), dimension(plastic_dislotwin_totalNtwin(phase_plasticityInstance(material_phase(ipc,ip,el)))) :: & tau_twin real(pReal), dimension(plastic_dislotwin_totalNtrans(phase_plasticityInstance(material_phase(ipc,ip,el)))) :: & @@ -2085,33 +2086,31 @@ subroutine plastic_dislotwin_dotState(Tstar_v,Temperature,ipc,ip,el) plastic_dislotwin_qPerSlipFamily(f,instance))*sign(1.0_pReal,tau_slip(j)) endif !* Multiplication - DotRhoMultiplication(j) = abs(gdot_slip(j))/& - (plastic_dislotwin_burgersPerSlipSystem(j,instance)* & - state(ph)%mfp_slip(j,of)) + DotRhoMultiplication = abs(gdot_slip(j))/& + (plastic_dislotwin_burgersPerSlipSystem(j,instance)*state(ph)%mfp_slip(j,of)) !* Dipole formation EdgeDipMinDistance = & plastic_dislotwin_CEdgeDipMinDistance(instance)*plastic_dislotwin_burgersPerSlipSystem(j,instance) if (abs(tau_slip(j)) <= tiny(0.0_pReal)) then - DotRhoDipFormation(j) = 0.0_pReal + DotRhoDipFormation = 0.0_pReal else - EdgeDipDistance(j) = & + EdgeDipDistance = & (3.0_pReal*lattice_mu(ph)*plastic_dislotwin_burgersPerSlipSystem(j,instance))/& (16.0_pReal*pi*abs(tau_slip(j))) - if (EdgeDipDistance(j)>state(ph)%mfp_slip(j,of)) & - EdgeDipDistance(j)=state(ph)%mfp_slip(j,of) - if (EdgeDipDistance(j)state(ph)%mfp_slip(j,of)) EdgeDipDistance=state(ph)%mfp_slip(j,of) + if (EdgeDipDistance