too much whitespace
This commit is contained in:
parent
e9f738fade
commit
4fbe5811a3
|
@ -1593,237 +1593,188 @@ function plastic_dislotwin_postResults(Tstar_v,Temperature,ipc,ip,el) result(pos
|
||||||
|
|
||||||
associate(prm => param(phase_plasticityInstance(material_phase(ipc,ip,el))), &
|
associate(prm => param(phase_plasticityInstance(material_phase(ipc,ip,el))), &
|
||||||
stt => state(phase_plasticityInstance(material_phase(ipc,ip,el))))
|
stt => state(phase_plasticityInstance(material_phase(ipc,ip,el))))
|
||||||
!* Total twin volume fraction
|
|
||||||
sumf = sum(stt%twinFraction(1_pInt:prm%totalNtwin,of)) ! safe for prm%totalNtwin == 0
|
sumf = sum(stt%twinFraction(1_pInt:prm%totalNtwin,of)) ! safe for prm%totalNtwin == 0
|
||||||
|
|
||||||
!* Required output
|
|
||||||
c = 0_pInt
|
c = 0_pInt
|
||||||
postResults = 0.0_pReal
|
postResults = 0.0_pReal
|
||||||
do o = 1_pInt,size(prm%outputID)
|
do o = 1_pInt,size(prm%outputID)
|
||||||
select case(prm%outputID(o))
|
select case(prm%outputID(o))
|
||||||
|
|
||||||
case (edge_density_ID)
|
case (edge_density_ID)
|
||||||
postResults(c+1_pInt:c+prm%totalNslip) = stt%rhoEdge(1_pInt:prm%totalNslip,of)
|
postResults(c+1_pInt:c+prm%totalNslip) = stt%rhoEdge(1_pInt:prm%totalNslip,of)
|
||||||
c = c + prm%totalNslip
|
c = c + prm%totalNslip
|
||||||
case (dipole_density_ID)
|
case (dipole_density_ID)
|
||||||
postResults(c+1_pInt:c+prm%totalNslip) = stt%rhoEdgeDip(1_pInt:prm%totalNslip,of)
|
postResults(c+1_pInt:c+prm%totalNslip) = stt%rhoEdgeDip(1_pInt:prm%totalNslip,of)
|
||||||
c = c + prm%totalNslip
|
c = c + prm%totalNslip
|
||||||
case (shear_rate_slip_ID)
|
case (shear_rate_slip_ID)
|
||||||
do j = 1_pInt, prm%totalNslip
|
do j = 1_pInt, prm%totalNslip
|
||||||
!* Resolved shear stress on slip system
|
tau = math_mul33xx33(S,prm%Schmid_slip(1:3,1:3,j))
|
||||||
tau = math_mul33xx33(S,prm%Schmid_slip(1:3,1:3,j))
|
if((abs(tau)-stt%threshold_stress_slip(j,of)) > tol_math_check) then
|
||||||
!* Stress ratios
|
stressRatio = ((abs(tau)-stt%threshold_stress_slip(j,of))/&
|
||||||
if((abs(tau)-stt%threshold_stress_slip(j,of)) > tol_math_check) then
|
(prm%SolidSolutionStrength+&
|
||||||
!* Stress ratios
|
prm%tau_peierls(j)))
|
||||||
stressRatio = ((abs(tau)-stt%threshold_stress_slip(j,of))/&
|
StressRatio_p = stressRatio** prm%p(j)
|
||||||
(prm%SolidSolutionStrength+&
|
StressRatio_pminus1 = stressRatio**(prm%p(j)-1.0_pReal)
|
||||||
prm%tau_peierls(j)))
|
BoltzmannRatio = prm%Qedge(j)/(kB*Temperature)
|
||||||
StressRatio_p = stressRatio** prm%p(j)
|
|
||||||
StressRatio_pminus1 = stressRatio**(prm%p(j)-1.0_pReal)
|
DotGamma0 = stt%rhoEdge(j,of)*prm%burgers_slip(j)* prm%v0(j)
|
||||||
!* Boltzmann ratio
|
|
||||||
BoltzmannRatio = prm%Qedge(j)/(kB*Temperature)
|
|
||||||
!* Initial shear rates
|
|
||||||
DotGamma0 = stt%rhoEdge(j,of)*prm%burgers_slip(j)* prm%v0(j)
|
|
||||||
|
|
||||||
!* Shear rates due to slip
|
postResults(c+j) = DotGamma0*exp(-BoltzmannRatio*(1_pInt-StressRatio_p)**&
|
||||||
postResults(c+j) = DotGamma0*exp(-BoltzmannRatio*(1_pInt-StressRatio_p)**&
|
prm%q(j))*sign(1.0_pReal,tau)
|
||||||
prm%q(j))*sign(1.0_pReal,tau)
|
else
|
||||||
else
|
postResults(c+j) = 0.0_pReal
|
||||||
postResults(c+j) = 0.0_pReal
|
endif
|
||||||
endif
|
enddo
|
||||||
|
c = c + prm%totalNslip
|
||||||
|
case (accumulated_shear_slip_ID)
|
||||||
|
postResults(c+1_pInt:c+prm%totalNslip) = stt%accshear_slip(1_pInt:prm%totalNslip,of)
|
||||||
|
c = c + prm%totalNslip
|
||||||
|
case (mfp_slip_ID)
|
||||||
|
postResults(c+1_pInt:c+prm%totalNslip) = stt%mfp_slip(1_pInt:prm%totalNslip,of)
|
||||||
|
c = c + prm%totalNslip
|
||||||
|
case (resolved_stress_slip_ID)
|
||||||
|
do j = 1_pInt, prm%totalNslip
|
||||||
|
postResults(c+j) = math_mul33xx33(S,prm%Schmid_slip(1:3,1:3,j))
|
||||||
|
enddo
|
||||||
|
c = c + prm%totalNslip
|
||||||
|
case (threshold_stress_slip_ID)
|
||||||
|
postResults(c+1_pInt:c+prm%totalNslip) = stt%threshold_stress_slip(1_pInt:prm%totalNslip,of)
|
||||||
|
c = c + prm%totalNslip
|
||||||
|
case (edge_dipole_distance_ID)
|
||||||
|
do j = 1_pInt, prm%totalNslip
|
||||||
|
postResults(c+j) = (3.0_pReal*lattice_mu(ph)*prm%burgers_slip(j)) &
|
||||||
|
/ (16.0_pReal*PI*abs(math_mul33xx33(S,prm%Schmid_slip(1:3,1:3,j))))
|
||||||
|
postResults(c+j)=min(postResults(c+j),stt%mfp_slip(j,of))
|
||||||
|
! postResults(c+j)=max(postResults(c+j),&
|
||||||
|
! plasticState(ph)%state(4*ns+2*nt+2*nr+j, of))
|
||||||
|
enddo
|
||||||
|
c = c + prm%totalNslip
|
||||||
|
case (resolved_stress_shearband_ID)
|
||||||
|
do j = 1_pInt,6_pInt ! loop over all shearband families
|
||||||
|
postResults(c+j) = dot_product(Tstar_v,sbSv(1:6,j,ipc,ip,el))
|
||||||
enddo
|
enddo
|
||||||
c = c + prm%totalNslip
|
|
||||||
case (accumulated_shear_slip_ID)
|
|
||||||
postResults(c+1_pInt:c+prm%totalNslip) = &
|
|
||||||
stt%accshear_slip(1_pInt:prm%totalNslip,of)
|
|
||||||
c = c + prm%totalNslip
|
|
||||||
case (mfp_slip_ID)
|
|
||||||
postResults(c+1_pInt:c+prm%totalNslip) =&
|
|
||||||
stt%mfp_slip(1_pInt:prm%totalNslip,of)
|
|
||||||
c = c + prm%totalNslip
|
|
||||||
case (resolved_stress_slip_ID)
|
|
||||||
do j = 1_pInt, prm%totalNslip
|
|
||||||
postResults(c+j) = math_mul33xx33(S,prm%Schmid_slip(1:3,1:3,j))
|
|
||||||
enddo
|
|
||||||
c = c + prm%totalNslip
|
|
||||||
case (threshold_stress_slip_ID)
|
|
||||||
postResults(c+1_pInt:c+prm%totalNslip) = &
|
|
||||||
stt%threshold_stress_slip(1_pInt:prm%totalNslip,of)
|
|
||||||
c = c + prm%totalNslip
|
|
||||||
case (edge_dipole_distance_ID)
|
|
||||||
do j = 1_pInt, prm%totalNslip
|
|
||||||
postResults(c+j) = &
|
|
||||||
(3.0_pReal*lattice_mu(ph)*prm%burgers_slip(j))/&
|
|
||||||
(16.0_pReal*PI*abs(math_mul33xx33(S,prm%Schmid_slip(1:3,1:3,j))))
|
|
||||||
postResults(c+j)=min(postResults(c+j),stt%mfp_slip(j,of))
|
|
||||||
! postResults(c+j)=max(postResults(c+j),&
|
|
||||||
! plasticState(ph)%state(4*ns+2*nt+2*nr+j, of))
|
|
||||||
enddo
|
|
||||||
c = c + prm%totalNslip
|
|
||||||
case (resolved_stress_shearband_ID)
|
|
||||||
do j = 1_pInt,6_pInt ! loop over all shearband families
|
|
||||||
postResults(c+j) = dot_product(Tstar_v,sbSv(1:6,j,ipc,ip,el))
|
|
||||||
enddo
|
|
||||||
c = c + 6_pInt
|
|
||||||
case (shear_rate_shearband_ID)
|
|
||||||
do j = 1_pInt,6_pInt ! loop over all shearbands
|
|
||||||
!* Resolved shear stress on shearband system
|
|
||||||
tau = dot_product(Tstar_v,sbSv(1:6,j,ipc,ip,el))
|
|
||||||
!* Stress ratios
|
|
||||||
if (abs(tau) < tol_math_check) then
|
|
||||||
StressRatio_p = 0.0_pReal
|
|
||||||
StressRatio_pminus1 = 0.0_pReal
|
|
||||||
else
|
|
||||||
StressRatio_p = (abs(tau)/prm%sbResistance)**&
|
|
||||||
prm%pShearBand
|
|
||||||
StressRatio_pminus1 = (abs(tau)/prm%sbResistance)**&
|
|
||||||
(prm%pShearBand-1.0_pReal)
|
|
||||||
endif
|
|
||||||
!* Boltzmann ratio
|
|
||||||
BoltzmannRatio = prm%sbQedge/(kB*Temperature)
|
|
||||||
!* Initial shear rates
|
|
||||||
DotGamma0 = prm%sbVelocity
|
|
||||||
! Shear rate due to shear band
|
|
||||||
postResults(c+j) = DotGamma0*exp(-BoltzmannRatio*(1_pInt-StressRatio_p)**prm%qShearBand)*&
|
|
||||||
sign(1.0_pReal,tau)
|
|
||||||
enddo
|
|
||||||
c = c + 6_pInt
|
c = c + 6_pInt
|
||||||
case (twin_fraction_ID)
|
case (shear_rate_shearband_ID)
|
||||||
postResults(c+1_pInt:c+prm%totalNtwin) = stt%twinFraction(1_pInt:prm%totalNtwin,of)
|
do j = 1_pInt,6_pInt ! loop over all shearbands
|
||||||
c = c + prm%totalNtwin
|
tau = dot_product(Tstar_v,sbSv(1:6,j,ipc,ip,el))
|
||||||
case (shear_rate_twin_ID)
|
if (abs(tau) < tol_math_check) then
|
||||||
do j = 1_pInt, prm%totalNslip
|
StressRatio_p = 0.0_pReal
|
||||||
|
StressRatio_pminus1 = 0.0_pReal
|
||||||
!* Resolved shear stress on slip system
|
else
|
||||||
tau = math_mul33xx33(S,prm%Schmid_slip(1:3,1:3,j))
|
StressRatio_p = (abs(tau)/prm%sbResistance)**prm%pShearBand
|
||||||
!* Stress ratios
|
StressRatio_pminus1 = (abs(tau)/prm%sbResistance)**(prm%pShearBand-1.0_pReal)
|
||||||
if((abs(tau)-stt%threshold_stress_slip(j,of)) > tol_math_check) then
|
endif
|
||||||
!* Stress ratios
|
BoltzmannRatio = prm%sbQedge/(kB*Temperature)
|
||||||
StressRatio_p = ((abs(tau)-stt%threshold_stress_slip(j,of))/&
|
DotGamma0 = prm%sbVelocity
|
||||||
|
postResults(c+j) = DotGamma0*exp(-BoltzmannRatio*(1_pInt-StressRatio_p)**prm%qShearBand)*&
|
||||||
|
sign(1.0_pReal,tau)
|
||||||
|
enddo
|
||||||
|
c = c + 6_pInt
|
||||||
|
case (twin_fraction_ID)
|
||||||
|
postResults(c+1_pInt:c+prm%totalNtwin) = stt%twinFraction(1_pInt:prm%totalNtwin,of)
|
||||||
|
c = c + prm%totalNtwin
|
||||||
|
case (shear_rate_twin_ID)
|
||||||
|
do j = 1_pInt, prm%totalNslip
|
||||||
|
tau = math_mul33xx33(S,prm%Schmid_slip(1:3,1:3,j))
|
||||||
|
if((abs(tau)-stt%threshold_stress_slip(j,of)) > tol_math_check) then
|
||||||
|
StressRatio_p = ((abs(tau)-stt%threshold_stress_slip(j,of))/&
|
||||||
|
(prm%SolidSolutionStrength+&
|
||||||
|
prm%tau_peierls(j)))&
|
||||||
|
**prm%p(j)
|
||||||
|
StressRatio_pminus1 = ((abs(tau)-stt%threshold_stress_slip(j,of))/&
|
||||||
(prm%SolidSolutionStrength+&
|
(prm%SolidSolutionStrength+&
|
||||||
prm%tau_peierls(j)))&
|
prm%tau_peierls(j)))&
|
||||||
**prm%p(j)
|
**(prm%p(j)-1.0_pReal)
|
||||||
StressRatio_pminus1 = ((abs(tau)-stt%threshold_stress_slip(j,of))/&
|
BoltzmannRatio = prm%Qedge(j)/(kB*Temperature)
|
||||||
(prm%SolidSolutionStrength+&
|
DotGamma0 = stt%rhoEdge(j,of)*prm%burgers_slip(j)* prm%v0(j)
|
||||||
prm%tau_peierls(j)))&
|
|
||||||
**(prm%p(j)-1.0_pReal)
|
|
||||||
!* Boltzmann ratio
|
|
||||||
BoltzmannRatio = prm%Qedge(j)/(kB*Temperature)
|
|
||||||
!* Initial shear rates
|
|
||||||
DotGamma0 = &
|
|
||||||
stt%rhoEdge(j,of)*prm%burgers_slip(j)* &
|
|
||||||
prm%v0(j)
|
|
||||||
|
|
||||||
!* Shear rates due to slip
|
gdot_slip(j) = DotGamma0*exp(-BoltzmannRatio*(1_pInt-StressRatio_p)**&
|
||||||
gdot_slip(j) = DotGamma0*exp(-BoltzmannRatio*(1_pInt-StressRatio_p)**&
|
prm%q(j))*sign(1.0_pReal,tau)
|
||||||
prm%q(j))*sign(1.0_pReal,tau)
|
else
|
||||||
else
|
gdot_slip(j) = 0.0_pReal
|
||||||
gdot_slip(j) = 0.0_pReal
|
endif
|
||||||
endif
|
enddo
|
||||||
enddo
|
|
||||||
|
|
||||||
do j = 1_pInt, prm%totalNtwin
|
do j = 1_pInt, prm%totalNtwin
|
||||||
|
tau = math_mul33xx33(S,prm%Schmid_twin(1:3,1:3,j))
|
||||||
|
|
||||||
tau = math_mul33xx33(S,prm%Schmid_twin(1:3,1:3,j))
|
if ( tau > 0.0_pReal ) then
|
||||||
|
select case(lattice_structure(ph))
|
||||||
if ( tau > 0.0_pReal ) then
|
case (LATTICE_fcc_ID)
|
||||||
select case(lattice_structure(ph))
|
s1=prm%fcc_twinNucleationSlipPair(1,j)
|
||||||
case (LATTICE_fcc_ID)
|
s2=prm%fcc_twinNucleationSlipPair(2,j)
|
||||||
s1=prm%fcc_twinNucleationSlipPair(1,j)
|
if (tau < tau_r_twin(j,instance)) then
|
||||||
s2=prm%fcc_twinNucleationSlipPair(2,j)
|
Ndot0_twin=(abs(gdot_slip(s1))*(stt%rhoEdge(s2,of)+stt%rhoEdgeDip(s2,of))+&
|
||||||
if (tau < tau_r_twin(j,instance)) then
|
abs(gdot_slip(s2))*(stt%rhoEdge(s1,of)+stt%rhoEdgeDip(s1,of)))/&
|
||||||
Ndot0_twin=(abs(gdot_slip(s1))*(stt%rhoEdge(s2,of)+stt%rhoEdgeDip(s2,of))+&
|
(prm%L0_twin* prm%burgers_slip(j))*&
|
||||||
abs(gdot_slip(s2))*(stt%rhoEdge(s1,of)+stt%rhoEdgeDip(s1,of)))/&
|
(1.0_pReal-exp(-prm%VcrossSlip/(kB*Temperature)* (tau_r_twin(j,instance)-tau)))
|
||||||
(prm%L0_twin*&
|
else
|
||||||
prm%burgers_slip(j))*&
|
Ndot0_twin=0.0_pReal
|
||||||
(1.0_pReal-exp(-prm%VcrossSlip/(kB*Temperature)*&
|
end if
|
||||||
(tau_r_twin(j,instance)-tau)))
|
case default
|
||||||
else
|
Ndot0_twin=prm%Ndot0_twin(j)
|
||||||
Ndot0_twin=0.0_pReal
|
end select
|
||||||
end if
|
StressRatio_r = (stt%threshold_stress_twin(j,of)/tau) **prm%r(j)
|
||||||
case default
|
postResults(c+j) = (prm%MaxTwinFraction-sumf)*prm%shear_twin(j) &
|
||||||
Ndot0_twin=prm%Ndot0_twin(j)
|
* stt%twinVolume(j,of)*Ndot0_twin*exp(-StressRatio_r)
|
||||||
end select
|
endif
|
||||||
StressRatio_r = (stt%threshold_stress_twin(j,of)/tau) &
|
enddo
|
||||||
**prm%r(j)
|
c = c + prm%totalNtwin
|
||||||
postResults(c+j) = (prm%MaxTwinFraction-sumf)*prm%shear_twin(j) * &
|
case (accumulated_shear_twin_ID)
|
||||||
stt%twinVolume(j,of)*Ndot0_twin*exp(-StressRatio_r)
|
|
||||||
endif
|
|
||||||
|
|
||||||
enddo
|
|
||||||
c = c + prm%totalNtwin
|
|
||||||
case (accumulated_shear_twin_ID)
|
|
||||||
postResults(c+1_pInt:c+prm%totalNtwin) = stt%accshear_twin(1_pInt:prm%totalNtwin,of)
|
postResults(c+1_pInt:c+prm%totalNtwin) = stt%accshear_twin(1_pInt:prm%totalNtwin,of)
|
||||||
c = c + prm%totalNtwin
|
c = c + prm%totalNtwin
|
||||||
case (mfp_twin_ID)
|
case (mfp_twin_ID)
|
||||||
postResults(c+1_pInt:c+prm%totalNtwin) = stt%mfp_twin(1_pInt:prm%totalNtwin,of)
|
postResults(c+1_pInt:c+prm%totalNtwin) = stt%mfp_twin(1_pInt:prm%totalNtwin,of)
|
||||||
c = c + prm%totalNtwin
|
c = c + prm%totalNtwin
|
||||||
case (resolved_stress_twin_ID)
|
case (resolved_stress_twin_ID)
|
||||||
do j = 1_pInt, prm%totalNtwin
|
do j = 1_pInt, prm%totalNtwin
|
||||||
postResults(c+j) = math_mul33xx33(S,prm%Schmid_twin(1:3,1:3,j))
|
postResults(c+j) = math_mul33xx33(S,prm%Schmid_twin(1:3,1:3,j))
|
||||||
enddo
|
enddo
|
||||||
c = c + prm%totalNtwin
|
c = c + prm%totalNtwin
|
||||||
case (threshold_stress_twin_ID)
|
case (threshold_stress_twin_ID)
|
||||||
postResults(c+1_pInt:c+prm%totalNtwin) = stt%threshold_stress_twin(1_pInt:prm%totalNtwin,of)
|
postResults(c+1_pInt:c+prm%totalNtwin) = stt%threshold_stress_twin(1_pInt:prm%totalNtwin,of)
|
||||||
c = c + prm%totalNtwin
|
c = c + prm%totalNtwin
|
||||||
case (stress_exponent_ID)
|
case (stress_exponent_ID)
|
||||||
do j = 1_pInt, prm%totalNslip
|
do j = 1_pInt, prm%totalNslip
|
||||||
|
tau = math_mul33xx33(S,prm%Schmid_slip(1:3,1:3,j))
|
||||||
|
if((abs(tau)-stt%threshold_stress_slip(j,of)) > tol_math_check) then
|
||||||
|
StressRatio_p = ((abs(tau)-stt%threshold_stress_slip(j,of))/&
|
||||||
|
(prm%SolidSolutionStrength+&
|
||||||
|
prm%tau_peierls(j)))&
|
||||||
|
**prm%p(j)
|
||||||
|
StressRatio_pminus1 = ((abs(tau)-stt%threshold_stress_slip(j,of))/&
|
||||||
|
(prm%SolidSolutionStrength+&
|
||||||
|
prm%tau_peierls(j)))&
|
||||||
|
**(prm%p(j)-1.0_pReal)
|
||||||
|
BoltzmannRatio = prm%Qedge(j)/(kB*Temperature)
|
||||||
|
DotGamma0 = stt%rhoEdge(j,of)*prm%burgers_slip(j)* prm%v0(j)
|
||||||
|
|
||||||
tau = math_mul33xx33(S,prm%Schmid_slip(1:3,1:3,j))
|
gdot_slip(j) = DotGamma0*exp(-BoltzmannRatio*(1_pInt-StressRatio_p)**&
|
||||||
if((abs(tau)-stt%threshold_stress_slip(j,of)) > tol_math_check) then
|
prm%q(j))*sign(1.0_pReal,tau)
|
||||||
!* Stress ratios
|
|
||||||
StressRatio_p = ((abs(tau)-stt%threshold_stress_slip(j,of))/&
|
|
||||||
(prm%SolidSolutionStrength+&
|
|
||||||
prm%tau_peierls(j)))&
|
|
||||||
**prm%p(j)
|
|
||||||
StressRatio_pminus1 = ((abs(tau)-stt%threshold_stress_slip(j,of))/&
|
|
||||||
(prm%SolidSolutionStrength+&
|
|
||||||
prm%tau_peierls(j)))&
|
|
||||||
**(prm%p(j)-1.0_pReal)
|
|
||||||
!* Boltzmann ratio
|
|
||||||
BoltzmannRatio = prm%Qedge(j)/(kB*Temperature)
|
|
||||||
!* Initial shear rates
|
|
||||||
DotGamma0 = &
|
|
||||||
stt%rhoEdge(j,of)*prm%burgers_slip(j)* &
|
|
||||||
prm%v0(j)
|
|
||||||
|
|
||||||
!* Shear rates due to slip
|
dgdot_dtauslip = abs(gdot_slip(j))*BoltzmannRatio*prm%p(j) *prm%q(j)/&
|
||||||
gdot_slip(j) = DotGamma0*exp(-BoltzmannRatio*(1_pInt-StressRatio_p)**&
|
(prm%SolidSolutionStrength+ prm%tau_peierls(j))*&
|
||||||
prm%q(j))*sign(1.0_pReal,tau)
|
StressRatio_pminus1*(1-StressRatio_p)**(prm%q(j)-1.0_pReal)
|
||||||
|
else
|
||||||
!* Derivatives of shear rates
|
gdot_slip(j) = 0.0_pReal
|
||||||
dgdot_dtauslip = &
|
dgdot_dtauslip = 0.0_pReal
|
||||||
abs(gdot_slip(j))*BoltzmannRatio*prm%p(j)&
|
endif
|
||||||
*prm%q(j)/&
|
postResults(c+j) = merge(0.0_pReal,(tau/gdot_slip(j))*dgdot_dtauslip,dEq0(gdot_slip(j)))
|
||||||
(prm%SolidSolutionStrength+&
|
enddo
|
||||||
prm%tau_peierls(j))*&
|
c = c + prm%totalNslip
|
||||||
StressRatio_pminus1*(1-StressRatio_p)**(prm%q(j)-1.0_pReal)
|
case (stress_trans_fraction_ID)
|
||||||
|
postResults(c+1_pInt:c+prm%totalNtrans) = &
|
||||||
else
|
stt%stressTransFraction(1_pInt:prm%totalNtrans,of)
|
||||||
gdot_slip(j) = 0.0_pReal
|
c = c + prm%totalNtrans
|
||||||
dgdot_dtauslip = 0.0_pReal
|
case (strain_trans_fraction_ID)
|
||||||
endif
|
postResults(c+1_pInt:c+prm%totalNtrans) = stt%strainTransFraction(1_pInt:prm%totalNtrans,of)
|
||||||
|
c = c + prm%totalNtrans
|
||||||
!* Stress exponent
|
case (trans_fraction_ID) !ToDo: deprecated
|
||||||
postResults(c+j) = merge(0.0_pReal,(tau/gdot_slip(j))*dgdot_dtauslip,dEq0(gdot_slip(j)))
|
postResults(c+1_pInt:c+prm%totalNtrans) = stt%stressTransFraction(1_pInt:prm%totalNtrans,of) &
|
||||||
enddo
|
+ stt%strainTransFraction(1_pInt:prm%totalNtrans,of)
|
||||||
c = c + prm%totalNslip
|
c = c + prm%totalNtrans
|
||||||
|
end select
|
||||||
case (stress_trans_fraction_ID)
|
|
||||||
postResults(c+1_pInt:c+prm%totalNtrans) = &
|
|
||||||
stt%stressTransFraction(1_pInt:prm%totalNtrans,of)
|
|
||||||
c = c + prm%totalNtrans
|
|
||||||
case (strain_trans_fraction_ID)
|
|
||||||
postResults(c+1_pInt:c+prm%totalNtrans) = &
|
|
||||||
stt%strainTransFraction(1_pInt:prm%totalNtrans,of)
|
|
||||||
c = c + prm%totalNtrans
|
|
||||||
case (trans_fraction_ID)
|
|
||||||
postResults(c+1_pInt:c+prm%totalNtrans) = &
|
|
||||||
stt%stressTransFraction(1_pInt:prm%totalNtrans,of) + &
|
|
||||||
stt%strainTransFraction(1_pInt:prm%totalNtrans,of)
|
|
||||||
c = c + prm%totalNtrans
|
|
||||||
end select
|
|
||||||
enddo
|
enddo
|
||||||
end associate
|
end associate
|
||||||
end function plastic_dislotwin_postResults
|
end function plastic_dislotwin_postResults
|
||||||
|
|
Loading…
Reference in New Issue