ClimbSwitch introduced

This commit is contained in:
Vitesh Shah 2019-08-16 15:57:11 +02:00
parent 5dfd13b759
commit 50b372d9f1
1 changed files with 6 additions and 3 deletions

View File

@ -117,7 +117,8 @@ module plastic_dislotwin
integer :: &
sum_N_sl, & !< total number of active slip system
sum_N_tw, & !< total number of active twin system
sum_N_tr !< total number of active transformation system
sum_N_tr, & !< total number of active transformation system
climbSwitch !< Switch to decide climb
integer, dimension(:), allocatable :: &
N_sl, & !< number of active slip systems for each family
N_tw, & !< number of active twin systems for each family
@ -280,6 +281,8 @@ subroutine plastic_dislotwin_init
prm%SFE_0K = config%getFloat('sfe_0k',defaultVal = 0.0_pReal)
prm%dSFE_dT = config%getFloat('dsfe_dt',defaultVal = 0.0_pReal)
prm%climbSwitch = config%getInt('climbswitch',defaultVal = 1)
! multiplication factor according to slip system
if (lattice_structure(p) == LATTICE_FCC_ID .or. lattice_structure(p) == LATTICE_HEX_ID ) then
prm%omega = prm%omega * 12.0_pReal
@ -807,10 +810,10 @@ subroutine plastic_dislotwin_dotState(Mp,T,instance,of)
else
! sigma_cl = norm2(matmul(Mp,prm%n0_sl(1:3,i))) ! ToDo: MD: correct?
sigma_cl = DOT_PRODUCT(prm%n0_sl(1:3,i),matmul(Mp,prm%n0_sl(1:3,i)))
if (prm%SFE_0K /= 0.0_pReal) then
if (prm%climbSwitch /= 0) then
b_d = 24.0_pReal*PI*(1.0_pReal - prm%nu)/(2.0_pReal + prm%nu)* Gamma/(prm%mu*prm%b_sl(i))
else
b_d = 1.0_pReal
b_d = 0.0_pReal
endif
v_cl = 2.0_pReal*prm%omega*b_d**2.0_pReal*exp(-prm%Qsd/(kB*T)) &