Merge remote-tracking branch 'origin/nonlocal-examples' into preparing-alpha4
This commit is contained in:
commit
5973ef5b13
|
@ -1,63 +0,0 @@
|
|||
[Aluminum]
|
||||
plasticity nonlocal
|
||||
/nonlocal/
|
||||
|
||||
(output) rho_sgl_mob_edg_pos
|
||||
(output) rho_sgl_imm_edg_pos
|
||||
(output) rho_sgl_mob_edg_neg
|
||||
(output) rho_sgl_imm_edg_neg
|
||||
(output) rho_sgl_mob_scr_pos
|
||||
(output) rho_sgl_imm_scr_pos
|
||||
(output) rho_sgl_mob_scr_neg
|
||||
(output) rho_sgl_imm_scr_neg
|
||||
(output) rho_dip_edg
|
||||
(output) rho_dip_scr
|
||||
(output) rho_forest
|
||||
(output) gamma
|
||||
(output) tau_pass
|
||||
(output) v_edg_pos
|
||||
(output) v_edg_neg
|
||||
(output) v_scr_pos
|
||||
(output) v_scr_neg
|
||||
|
||||
lattice_structure fcc
|
||||
Nslip 12 # number of slip systems
|
||||
|
||||
burgers 2.86e-10 # Burgers vector in m
|
||||
rhoSglEdgePos0 0.25e10 # Initial positive edge single dislocation density in m/m**3 (per slip family)
|
||||
rhoSglEdgeNeg0 0.25e10 # Initial negative edge single dislocation density in m/m**3 (per slip family)
|
||||
rhoSglScrewPos0 0.25e10 # Initial positive screw single dislocation density in m/m**3 (per slip family)
|
||||
rhoSglScrewNeg0 0.25e10 # Initial negative screw single dislocation density in m/m**3 (per slip family)
|
||||
rhoDipEdge0 1e8 # Initial edge dipole dislocation density in m/m**3 (per slip family)
|
||||
rhoDipScrew0 1e8 # Initial screw dipole dislocation density in m/m**3 (per slip family)
|
||||
rhoSglScatter 0 # standard deviation of scatter in initial single dislocation density
|
||||
#rhoSglRandom 1e12 # randomly distributed total dislocation density (sum over all slip systems and types) in m/m**3
|
||||
#rhoSglRandomBinning 1 # binning size of randomly distributed dislocations (number of dislocations per ip volume)
|
||||
minimumDipoleHeightEdge 2e-9 # minimum distance for stable edge dipoles in m (per slip family)
|
||||
minimumDipoleHeightScrew 2e-9 # minimum distance for stable screw dipoles in m (per slip family)
|
||||
lambda0 80 # prefactor for mean free path
|
||||
edgeMultiplication 0.1 # factor to which edges contribute to multiplication
|
||||
atomicVolume 1.7e-29 # atomic volume in m**3
|
||||
selfdiffusionPrefactor 1e-4 # prefactor for self-diffusion coefficient in m**2/s
|
||||
selfdiffusionEnergy 2.3e-19 # activation enthalpy for seld-diffusion in J
|
||||
solidSolutionEnergy 2e-19 # activation energy of solid solution particles in J
|
||||
solidSolutionConcentration 1e-5 # concentration of solid solution in parts per b^3
|
||||
solidSolutionSize 2 # size of solid solution obstacles in multiples of burgers vector length
|
||||
peierlsStressEdge 1e5 # Peierls stress for edges in Pa (per slip family)
|
||||
peierlsStressScrew 1e5 # Peierls stress for screws in Pa (per slip family)
|
||||
doublekinkWidth 10 # width of double kinks in multiples of burgers vector length b
|
||||
viscosity 1e-4 # viscosity for dislocation glide in Pa s
|
||||
p 1 # exponent for thermal barrier profile
|
||||
q 1 # exponent for thermal barrier profile
|
||||
attackFrequency 50e9 # attack frequency in Hz
|
||||
surfaceTransmissivity 1.0 # transmissivity of free surfaces for dislocation flux
|
||||
grainboundaryTransmissivity 0.0 # transmissivity of grain boundaries for dislocation flux (grain bundaries are identified as interfaces with different textures on both sides); if not set or set to negative number, the subroutine automatically determines the transmissivity at the grain boundary
|
||||
interaction_SlipSlip 0 0 0.625 0.07 0.137 0.137 0.122 # Dislocation interaction coefficient
|
||||
linetension 0.8 # constant indicating the effect of the line tension on the hardening coefficients (0 to 1)
|
||||
edgejog 1.0 # fraction of annihilated screw dipoles that forms edge jogs (0 to 1)
|
||||
shortRangeStressCorrection 0 # switch for use of short range correction stress
|
||||
cutoffRadius 1e-3 # cutoff radius for dislocation stress in m
|
||||
CFLfactor 2.0 # safety factor for CFL flux check (numerical parameter)
|
||||
significantRho 1e6 # minimum dislocation density considered relevant in m/m**3
|
||||
#significantN 0.1 # minimum dislocation number per ip considered relevant
|
||||
randomMultiplication 0 # switch for probabilistic extension of multiplication rate
|
|
@ -1,62 +0,0 @@
|
|||
[Ni_nonlocal]
|
||||
|
||||
elasticity hooke
|
||||
plasticity nonlocal
|
||||
/nonlocal/
|
||||
(output) rho_sgl_mob_edg_pos
|
||||
(output) rho_sgl_imm_edg_pos
|
||||
(output) rho_sgl_mob_edg_neg
|
||||
(output) rho_sgl_imm_edg_neg
|
||||
(output) rho_sgl_mob_scr_pos
|
||||
(output) rho_sgl_imm_scr_pos
|
||||
(output) rho_sgl_mob_scr_neg
|
||||
(output) rho_sgl_imm_scr_neg
|
||||
(output) rho_dip_edg
|
||||
(output) rho_dip_scr
|
||||
(output) rho_forest
|
||||
(output) gamma
|
||||
(output) tau_pass
|
||||
(output) v_edg_pos
|
||||
(output) v_edg_neg
|
||||
(output) v_scr_pos
|
||||
(output) v_scr_neg
|
||||
|
||||
|
||||
lattice_structure fcc
|
||||
Nslip 12 # number of slip systems per family
|
||||
burgers 2.48e-10 # Burgers vector in m
|
||||
rhoSglEdgePos0 6e10 # Initial positive edge single dislocation density in m/m**3
|
||||
rhoSglEdgeNeg0 6e10 # Initial negative edge single dislocation density in m/m**3
|
||||
rhoSglScrewPos0 6e10 # Initial positive screw single dislocation density in m/m**3
|
||||
rhoSglScrewNeg0 6e10 # Initial negative screw single dislocation density in m/m**3
|
||||
rhoDipEdge0 0 # Initial edge dipole dislocation density in m/m**3
|
||||
rhoDipScrew0 0 # Initial screw dipole dislocation density in m/m**3
|
||||
rhoSglScatter 0
|
||||
minimumDipoleHeightEdge 2.6e-9 # 3.0e-9 # minimum distance for stable edge dipoles in m
|
||||
minimumDipoleHeightScrew 12.0e-9 # 50e-9 # minimum distance for stable screw dipoles in m
|
||||
lambda0 45 # 33 # prefactor for mean free path
|
||||
edgeMultiplication 0.1
|
||||
randomMultiplication 0
|
||||
atomicVolume 1.2e-29
|
||||
selfdiffusionPrefactor 1.9e-4 # Gottstein p.168 # prefactor for self-diffusion coefficient
|
||||
selfdiffusionEnergy 5.1e-19 # Gottstein p.168 # activation energy self-diffusion
|
||||
solidSolutionEnergy 1.8e-19 # activation energy of solid solution particles in J
|
||||
solidSolutionConcentration 5e-7 # 1e-7
|
||||
solidSolutionSize 1.0
|
||||
peierlsStressEdge 1e5 # Peierls stress for edges in Pa (per slip family)
|
||||
peierlsStressScrew 1e5 # Peierls stress for screws in Pa (per slip family)
|
||||
doublekinkWidth 10 # width of double kinks in multiples of burgers vector length b
|
||||
viscosity 1e-3 # viscosity for dislocation glide in Pa s
|
||||
p 1 # exponent for thermal barrier profile
|
||||
q 1 # exponent for thermal barrier profile
|
||||
attackFrequency 50e9 # attack frequency in Hz
|
||||
surfaceTransmissivity 1.0 # transmissivity of free surfaces for dislocation flux
|
||||
grainBoundaryTransmissivity 0.0
|
||||
significantRho 1e8 # dislocation density considered relevant in m/m**3
|
||||
significantN 1
|
||||
shortRangeStressCorrection 0
|
||||
CFLfactor 1.1 # safety factor for CFL flux check (numerical parameter)
|
||||
r 1
|
||||
interaction_SlipSlip 0 0 0.625 0.07 0.137 0.137 0.122 # Dislocation interaction coefficient
|
||||
linetension 0.8
|
||||
edgejog 0.01 # 0.2
|
|
@ -0,0 +1,49 @@
|
|||
type: nonlocal
|
||||
references:
|
||||
C. Kords,
|
||||
On the role of dislocation transport in the constitutive description of crystal plasticity,
|
||||
RWTH Aachen 2013
|
||||
output: [rho_u_ed_pos, rho_b_ed_pos, rho_u_ed_neg, rho_b_ed_neg, rho_u_sc_pos, rho_b_sc_pos, rho_u_sc_neg, rho_b_sc_neg, rho_d_ed, rho_d_sc]
|
||||
N_sl: [12]
|
||||
|
||||
b_sl: [2.86e-10]
|
||||
V_at: 0.017e-27 # Omega
|
||||
d_ed: [1.6e-9]
|
||||
d_sc: [10.e-9]
|
||||
i_sl: [60] # k_2 (lambda_0 in Tab. 7.1)
|
||||
f_ed_mult: 0.1 # k_1
|
||||
|
||||
rho_u_ed_neg_0: [1.25e9] # 6e10 / (12*4)
|
||||
rho_u_ed_pos_0: [1.25e9] # 6e10 / (12*4)
|
||||
rho_u_sc_neg_0: [1.25e9] # 6e10 / (12*4)
|
||||
rho_u_sc_pos_0: [1.25e9] # 6e10 / (12*4)
|
||||
rho_d_ed_0: [0]
|
||||
rho_d_sc_0: [0]
|
||||
|
||||
D_0: 7.e-29
|
||||
Q_cl: 0.0 # no temperature dependency
|
||||
Q_sol: 2.00272e-19 # 1.25 eV
|
||||
c_sol: 1.5e-6 # correct unit?
|
||||
f_sol: 2.0 # d_obst in multiples of b
|
||||
tau_Peierls_ed: [.1e6]
|
||||
tau_Peierls_sc: [.1e6]
|
||||
w: 10 # w_k in multiple of b
|
||||
|
||||
p_sl: 1
|
||||
q_sl: 1
|
||||
|
||||
nu_a: 50.e9
|
||||
B: 1.e-2
|
||||
f_ed: 1.0 # k_3
|
||||
|
||||
h_sl-sl: [0, 0, 0.625, 0.07, 0.137, 0.137, 0.122] # Table 3.4
|
||||
|
||||
chi_GB: 0.0 # full blocking at GB
|
||||
chi_surface: 1.0 # no blocking at surface
|
||||
|
||||
f_F: 0.0 # no line tension correction
|
||||
sigma_rho_u: 0 # no random distribution
|
||||
|
||||
|
||||
short_range_stress_correction: false
|
||||
rho_significant: 1e6
|
|
@ -0,0 +1,49 @@
|
|||
type: nonlocal
|
||||
references:
|
||||
C. Kords,
|
||||
On the role of dislocation transport in the constitutive description of crystal plasticity,
|
||||
RWTH Aachen 2013
|
||||
output: [rho_u_ed_pos, rho_b_ed_pos, rho_u_ed_neg, rho_b_ed_neg, rho_u_sc_pos, rho_b_sc_pos, rho_u_sc_neg, rho_b_sc_neg, rho_d_ed, rho_d_sc]
|
||||
N_sl: [12]
|
||||
|
||||
b_sl: [2.48e-10]
|
||||
V_at: 0.012e-27 # Omega
|
||||
d_ed: [2.6e-9]
|
||||
d_sc: [12.e-9]
|
||||
i_sl: [45] # k_2
|
||||
f_ed_mult: 0.1 # k_1
|
||||
|
||||
rho_u_ed_neg_0: [6.e10] # 2.88e12 / (12*4)
|
||||
rho_u_ed_pos_0: [6.e10] # 2.88e12 / (12*4)
|
||||
rho_u_sc_neg_0: [6.e10] # 2.88e12 / (12*4)
|
||||
rho_u_sc_pos_0: [6.e10] # 2.88e12 / (12*4)
|
||||
rho_d_ed_0: [0]
|
||||
rho_d_sc_0: [0]
|
||||
|
||||
D_0: 3.e-53
|
||||
Q_cl: 0.0 # no temperature dependency
|
||||
Q_sol: 1.79444e-19 # 1.12 eV
|
||||
c_sol: 5.e-7 # correct unit?
|
||||
f_sol: 1. # d_obst
|
||||
tau_Peierls_ed: [.1e6]
|
||||
tau_Peierls_sc: [.1e6]
|
||||
w: 10 # w_k
|
||||
|
||||
p_sl: 1
|
||||
q_sl: 1
|
||||
|
||||
nu_a: 50.e9
|
||||
B: 1.e-3
|
||||
f_ed: 0.01 # k_3
|
||||
|
||||
h_sl-sl: [0, 0, 0.625, 0.07, 0.137, 0.137, 0.122] # Table 3.4
|
||||
|
||||
chi_GB: 0.0 # full blocking at GB
|
||||
chi_surface: 1.0 # no blocking at surface
|
||||
|
||||
f_F: 0.0 # no line tension correction
|
||||
sigma_rho_u: 0 # no random distribution
|
||||
|
||||
|
||||
short_range_stress_correction: false
|
||||
rho_significant: 1e6
|
|
@ -981,13 +981,13 @@ module subroutine nonlocal_dotState(Mp, Temperature,timestep, &
|
|||
gdot !< shear rates
|
||||
real(pReal), dimension(param(ph)%sum_N_sl) :: &
|
||||
tau, & !< current resolved shear stress
|
||||
vClimb !< climb velocity of edge dipoles
|
||||
v_climb !< climb velocity of edge dipoles
|
||||
real(pReal), dimension(param(ph)%sum_N_sl,2) :: &
|
||||
rhoDip, & !< current dipole dislocation densities (screw and edge dipoles)
|
||||
dLower, & !< minimum stable dipole distance for edges and screws
|
||||
dUpper !< current maximum stable dipole distance for edges and screws
|
||||
real(pReal) :: &
|
||||
selfDiffusion !< self diffusion
|
||||
D_SD
|
||||
|
||||
if (timestep <= 0.0_pReal) then
|
||||
plasticState(ph)%dotState = 0.0_pReal
|
||||
|
@ -1047,7 +1047,7 @@ module subroutine nonlocal_dotState(Mp, Temperature,timestep, &
|
|||
else isBCC
|
||||
rhoDotMultiplication(:,1:4) = spread( &
|
||||
(sum(abs(gdot(:,1:2)),2) * prm%f_ed_mult + sum(abs(gdot(:,3:4)),2)) &
|
||||
* sqrt(stt%rho_forest(:,en)) / prm%i_sl / prm%b_sl, 2, 4)
|
||||
* sqrt(stt%rho_forest(:,en)) / prm%i_sl / prm%b_sl, 2, 4) ! eq. 3.26
|
||||
endif isBCC
|
||||
|
||||
forall (s = 1:ns, t = 1:4) v0(s,t) = plasticState(ph)%state0(iV(s,t,ph),en)
|
||||
|
@ -1098,11 +1098,11 @@ module subroutine nonlocal_dotState(Mp, Temperature,timestep, &
|
|||
|
||||
! thermally activated annihilation of edge dipoles by climb
|
||||
rhoDotThermalAnnihilation = 0.0_pReal
|
||||
selfDiffusion = prm%D_0 * exp(-prm%Q_cl / (kB * Temperature))
|
||||
vClimb = prm%V_at * selfDiffusion * prm%mu &
|
||||
/ ( kB * Temperature * PI * (1.0_pReal-prm%nu) * (dUpper(:,1) + dLower(:,1)))
|
||||
D_SD = prm%D_0 * exp(-prm%Q_cl / (kB * Temperature)) ! eq. 3.53
|
||||
v_climb = D_SD * prm%mu * prm%V_at &
|
||||
/ (PI * (1.0_pReal-prm%nu) * (dUpper(:,1) + dLower(:,1)) * kB * Temperature) ! eq. 3.54
|
||||
forall (s = 1:ns, dUpper(s,1) > dLower(s,1)) &
|
||||
rhoDotThermalAnnihilation(s,9) = max(- 4.0_pReal * rhoDip(s,1) * vClimb(s) / (dUpper(s,1) - dLower(s,1)), &
|
||||
rhoDotThermalAnnihilation(s,9) = max(- 4.0_pReal * rhoDip(s,1) * v_climb(s) / (dUpper(s,1) - dLower(s,1)), &
|
||||
- rhoDip(s,1) / timestep - rhoDotAthermalAnnihilation(s,9) &
|
||||
- rhoDotSingle2DipoleGlide(s,9)) ! make sure that we do not annihilate more dipoles than we have
|
||||
|
||||
|
|
Loading…
Reference in New Issue