diff --git a/src/constitutive_plastic_kinehardening.f90 b/src/constitutive_plastic_kinehardening.f90 index 9783f27ad..813b5554f 100644 --- a/src/constitutive_plastic_kinehardening.f90 +++ b/src/constitutive_plastic_kinehardening.f90 @@ -442,14 +442,14 @@ pure subroutine kinetics(Mp,instance,of, & enddo where(dNeq0(tau_pos)) - gdot_pos = prm%dot_gamma_0 * merge(0.5_pReal,1.0_pReal, prm%nonSchmidActive) & ! 1/2 if non-Schmid active + gdot_pos = prm%dot_gamma_0 * merge(0.5_pReal,1.0_pReal, prm%nonSchmidActive) & ! 1/2 if non-Schmid active * sign(abs(tau_pos/stt%crss(:,of))**prm%n, tau_pos) else where gdot_pos = 0.0_pReal end where where(dNeq0(tau_neg)) - gdot_neg = prm%dot_gamma_0 * 0.5_pReal & ! only used if non-Schmid active, always 1/2 + gdot_neg = prm%dot_gamma_0 * 0.5_pReal & ! only used if non-Schmid active, always 1/2 * sign(abs(tau_neg/stt%crss(:,of))**prm%n, tau_neg) else where gdot_neg = 0.0_pReal diff --git a/src/constitutive_plastic_nonlocal.f90 b/src/constitutive_plastic_nonlocal.f90 index b4113a5c6..6d03f8dae 100644 --- a/src/constitutive_plastic_nonlocal.f90 +++ b/src/constitutive_plastic_nonlocal.f90 @@ -313,8 +313,8 @@ module function plastic_nonlocal_init() result(myPlasticity) prm%f_c = pl%get_asFloat('f_c',defaultVal=2.0_pReal) prm%V_at = pl%get_asFloat('V_at') - prm%D_0 = pl%get_asFloat('D_0') !,'dsd0' - prm%Q_cl = pl%get_asFloat('Q_cl') !,'qsd' + prm%D_0 = pl%get_asFloat('D_0') + prm%Q_cl = pl%get_asFloat('Q_cl') prm%f_F = pl%get_asFloat('f_F') prm%f_ed = pl%get_asFloat('f_ed') !,'edgejogs' prm%w = pl%get_asFloat('w') @@ -343,30 +343,30 @@ module function plastic_nonlocal_init() result(myPlasticity) !-------------------------------------------------------------------------------------------------- ! sanity checks - if (any(prm%b_sl < 0.0_pReal)) extmsg = trim(extmsg)//' b_sl' - if (any(prm%i_sl <= 0.0_pReal)) extmsg = trim(extmsg)//' i_sl' + if (any(prm%b_sl < 0.0_pReal)) extmsg = trim(extmsg)//' b_sl' + if (any(prm%i_sl <= 0.0_pReal)) extmsg = trim(extmsg)//' i_sl' - if (any(ini%rho_u_ed_pos_0 < 0.0_pReal)) extmsg = trim(extmsg)//' rho_u_ed_pos_0' - if (any(ini%rho_u_ed_neg_0 < 0.0_pReal)) extmsg = trim(extmsg)//' rho_u_ed_neg_0' - if (any(ini%rho_u_sc_pos_0 < 0.0_pReal)) extmsg = trim(extmsg)//' rho_u_sc_pos_0' - if (any(ini%rho_u_sc_neg_0 < 0.0_pReal)) extmsg = trim(extmsg)//' rho_u_sc_neg_0' - if (any(ini%rho_d_ed_0 < 0.0_pReal)) extmsg = trim(extmsg)//' rho_d_ed_0' - if (any(ini%rho_d_sc_0 < 0.0_pReal)) extmsg = trim(extmsg)//' rho_d_sc_0' + if (any(ini%rho_u_ed_pos_0 < 0.0_pReal)) extmsg = trim(extmsg)//' rho_u_ed_pos_0' + if (any(ini%rho_u_ed_neg_0 < 0.0_pReal)) extmsg = trim(extmsg)//' rho_u_ed_neg_0' + if (any(ini%rho_u_sc_pos_0 < 0.0_pReal)) extmsg = trim(extmsg)//' rho_u_sc_pos_0' + if (any(ini%rho_u_sc_neg_0 < 0.0_pReal)) extmsg = trim(extmsg)//' rho_u_sc_neg_0' + if (any(ini%rho_d_ed_0 < 0.0_pReal)) extmsg = trim(extmsg)//' rho_d_ed_0' + if (any(ini%rho_d_sc_0 < 0.0_pReal)) extmsg = trim(extmsg)//' rho_d_sc_0' - if (any(prm%peierlsstress < 0.0_pReal)) extmsg = trim(extmsg)//' tau_peierls' - if (any(prm%minDipoleHeight < 0.0_pReal)) extmsg = trim(extmsg)//' d_ed or d_sc' + if (any(prm%peierlsstress < 0.0_pReal)) extmsg = trim(extmsg)//' tau_peierls' + if (any(prm%minDipoleHeight < 0.0_pReal)) extmsg = trim(extmsg)//' d_ed or d_sc' - if (prm%eta <= 0.0_pReal) extmsg = trim(extmsg)//' eta' - if (prm%Q_cl <= 0.0_pReal) extmsg = trim(extmsg)//' Q_cl' - if (prm%nu_a <= 0.0_pReal) extmsg = trim(extmsg)//' nu_a' - if (prm%w <= 0.0_pReal) extmsg = trim(extmsg)//' w' - if (prm%D_0 < 0.0_pReal) extmsg = trim(extmsg)//' D_0' - if (prm%V_at <= 0.0_pReal) extmsg = trim(extmsg)//' V_at' ! ToDo: in disloTungsten, the atomic volume is given as a factor + if (prm%eta <= 0.0_pReal) extmsg = trim(extmsg)//' eta' + if (prm%Q_cl <= 0.0_pReal) extmsg = trim(extmsg)//' Q_cl' + if (prm%nu_a <= 0.0_pReal) extmsg = trim(extmsg)//' nu_a' + if (prm%w <= 0.0_pReal) extmsg = trim(extmsg)//' w' + if (prm%D_0 < 0.0_pReal) extmsg = trim(extmsg)//' D_0' + if (prm%V_at <= 0.0_pReal) extmsg = trim(extmsg)//' V_at' ! ToDo: in disloTungsten, the atomic volume is given as a factor - if (prm%rho_num_significant < 0.0_pReal) extmsg = trim(extmsg)//' rho_num_significant' - if (prm%rho_significant < 0.0_pReal) extmsg = trim(extmsg)//' rho_significant' - if (prm%atol_rho < 0.0_pReal) extmsg = trim(extmsg)//' atol_rho' - if (prm%f_c < 0.0_pReal) extmsg = trim(extmsg)//' f_c' + if (prm%rho_num_significant < 0.0_pReal) extmsg = trim(extmsg)//' rho_num_significant' + if (prm%rho_significant < 0.0_pReal) extmsg = trim(extmsg)//' rho_significant' + if (prm%atol_rho < 0.0_pReal) extmsg = trim(extmsg)//' atol_rho' + if (prm%f_c < 0.0_pReal) extmsg = trim(extmsg)//' f_c' if (prm%p <= 0.0_pReal .or. prm%p > 1.0_pReal) extmsg = trim(extmsg)//' p_sl' if (prm%q < 1.0_pReal .or. prm%q > 2.0_pReal) extmsg = trim(extmsg)//' q_sl' diff --git a/src/constitutive_plastic_phenopowerlaw.f90 b/src/constitutive_plastic_phenopowerlaw.f90 index 669778007..25a34997b 100644 --- a/src/constitutive_plastic_phenopowerlaw.f90 +++ b/src/constitutive_plastic_phenopowerlaw.f90 @@ -8,19 +8,19 @@ submodule(constitutive:constitutive_plastic) plastic_phenopowerlaw type :: tParameters real(pReal) :: & - dot_gamma_0_sl = 1.0_pReal, & !< reference shear strain rate for slip - dot_gamma_0_tw = 1.0_pReal, & !< reference shear strain rate for twin - n_sl = 1.0_pReal, & !< stress exponent for slip - n_tw = 1.0_pReal, & !< stress exponent for twin - f_sl_sat_tw = 1.0_pReal, & !< push-up factor for slip saturation due to twinning - c_1 = 1.0_pReal, & - c_2 = 1.0_pReal, & - c_3 = 1.0_pReal, & - c_4 = 1.0_pReal, & - h_0_sl_sl = 1.0_pReal, & !< reference hardening slip - slip - h_0_tw_sl = 1.0_pReal, & !< reference hardening twin - slip - h_0_tw_tw = 1.0_pReal, & !< reference hardening twin - twin - a_sl = 1.0_pReal + dot_gamma_0_sl = 1.0_pReal, & !< reference shear strain rate for slip + dot_gamma_0_tw = 1.0_pReal, & !< reference shear strain rate for twin + n_sl = 1.0_pReal, & !< stress exponent for slip + n_tw = 1.0_pReal, & !< stress exponent for twin + f_sl_sat_tw = 1.0_pReal, & !< push-up factor for slip saturation due to twinning + c_1 = 1.0_pReal, & + c_2 = 1.0_pReal, & + c_3 = 1.0_pReal, & + c_4 = 1.0_pReal, & + h_0_sl_sl = 1.0_pReal, & !< reference hardening slip - slip + h_0_tw_sl = 1.0_pReal, & !< reference hardening twin - slip + h_0_tw_tw = 1.0_pReal, & !< reference hardening twin - twin + a_sl = 1.0_pReal real(pReal), allocatable, dimension(:) :: & xi_inf_sl, & !< maximum critical shear stress for slip h_int, & !< per family hardening activity (optional)