added sample material.config sections at module start
This commit is contained in:
parent
34aad5c945
commit
5a39497742
|
@ -8,8 +8,31 @@
|
|||
!* - orientations *
|
||||
!************************************
|
||||
|
||||
MODULE constitutive_dislobased
|
||||
! [Alu]
|
||||
! constitution phenomenological
|
||||
! lattice_structure 1
|
||||
! Nslip 12
|
||||
!
|
||||
! c11 106.75e9
|
||||
! c12 60.41e9
|
||||
! c44 28.34e9
|
||||
!
|
||||
! burgers 2.86e-10 # Burgers vector [m]
|
||||
! Qedge 3e-19 # Activation energy for dislocation glide [J/K] (0.5*G*b^3)
|
||||
! Qsd 2.4e-19 # Activation energy for self diffusion [J/K] (gamma-iron)
|
||||
! diff0 1e-3 # prefactor vacancy diffusion coeffficent (gamma-iron)
|
||||
! interaction_coefficients 1.0 2.2 3.0 1.6 3.8 4.5 # Dislocation interaction coefficients
|
||||
!
|
||||
! rho0 6.0e12 # Initial dislocation density [m/m^3]
|
||||
!
|
||||
! c1 0.1 # Passing stress adjustment
|
||||
! c2 2.0 # Jump width adjustment
|
||||
! c3 1.0 # Activation volume adjustment
|
||||
! c4 50.0 # Average slip distance adjustment for lock formation
|
||||
! c7 8.0 # Athermal recovery adjustment
|
||||
! c8 1.0e10 # Thermal recovery adjustment (plays no role for me)
|
||||
|
||||
MODULE constitutive_dislobased
|
||||
!*** Include other modules ***
|
||||
use prec, only: pReal,pInt
|
||||
implicit none
|
||||
|
@ -59,7 +82,6 @@ real(pReal), parameter :: avogadro = 6.022e23_pReal
|
|||
!* Physical parameter, Gas constant in J.mol/Kelvin
|
||||
real(pReal), parameter :: Rgaz = 8.314_pReal
|
||||
|
||||
|
||||
CONTAINS
|
||||
!****************************************
|
||||
!* - constitutive_init
|
||||
|
@ -70,7 +92,6 @@ CONTAINS
|
|||
!* - consistutive_postResults
|
||||
!****************************************
|
||||
|
||||
|
||||
subroutine constitutive_dislobased_init(file)
|
||||
!**************************************
|
||||
!* Module initialization *
|
||||
|
@ -260,17 +281,17 @@ subroutine constitutive_dislobased_init(file)
|
|||
do j = 1,constitutive_dislobased_Nslip(i)
|
||||
do k = 1,constitutive_dislobased_Nslip(i)
|
||||
!* Projection of the dislocation *
|
||||
x = math_mul3x3(lattice_sn(:,j,i),lattice_st(:,k,i))
|
||||
y = 1.0_pReal-x**(2.0_pReal)
|
||||
x = math_mul3x3(lattice_sn(:,j,i),lattice_st(:,k,i))
|
||||
y = 1.0_pReal-x**(2.0_pReal)
|
||||
!* Interaction matrix *
|
||||
constitutive_dislobased_Iforest(j,k,i)=abs(x)*&
|
||||
constitutive_dislobased_SlipIntCoeff(lattice_SlipIntType(j,k,constitutive_dislobased_structure(i)),i)
|
||||
if (y>0.0_pReal) then
|
||||
constitutive_dislobased_Iparallel(j,k,i)=sqrt(y)*&
|
||||
constitutive_dislobased_SlipIntCoeff(lattice_SlipIntType(j,k,constitutive_dislobased_structure(i)),i)
|
||||
else
|
||||
constitutive_dislobased_Iparallel(j,k,i)=0.0_pReal
|
||||
endif
|
||||
constitutive_dislobased_Iforest(j,k,i)=abs(x)*&
|
||||
constitutive_dislobased_SlipIntCoeff(lattice_SlipIntType(j,k,constitutive_dislobased_structure(i)),i)
|
||||
if (y>0.0_pReal) then
|
||||
constitutive_dislobased_Iparallel(j,k,i)=sqrt(y)*&
|
||||
constitutive_dislobased_SlipIntCoeff(lattice_SlipIntType(j,k,constitutive_dislobased_structure(i)),i)
|
||||
else
|
||||
constitutive_dislobased_Iparallel(j,k,i)=0.0_pReal
|
||||
endif
|
||||
enddo
|
||||
enddo
|
||||
|
||||
|
@ -301,7 +322,6 @@ function constitutive_dislobased_stateInit(ipc,ip,el)
|
|||
return
|
||||
end function
|
||||
|
||||
|
||||
function constitutive_dislobased_homogenizedC(state,ipc,ip,el)
|
||||
!*********************************************************************
|
||||
!* homogenized elacticity matrix *
|
||||
|
@ -442,7 +462,7 @@ subroutine constitutive_dislobased_LpAndItsTangent(Lp,dLp_dTstar,Tstar_v,Tempera
|
|||
dLp_dTstar = 0.0_pReal
|
||||
do i = 1,constitutive_dislobased_Nslip(matID)
|
||||
dgdot_dtauslip(i) = (state(ipc,ip,el)%p(7*n+i)*state(ipc,ip,el)%p(5*n+i))/(kB*Temperature)*&
|
||||
cosh(((abs(tau_slip(i))-state(ipc,ip,el)%p(3*n+i))*state(ipc,ip,el)%p(5*n+i))/(kB*Temperature))
|
||||
cosh(((abs(tau_slip(i))-state(ipc,ip,el)%p(3*n+i))*state(ipc,ip,el)%p(5*n+i))/(kB*Temperature))
|
||||
forall (k=1:3,l=1:3,m=1:3,n=1:3) &
|
||||
dLp_dTstar3333(k,l,m,n) = dLp_dTstar3333(k,l,m,n) + &
|
||||
dgdot_dtauslip(i)*lattice_Sslip(k,l,i,constitutive_dislobased_structure(matID))* &
|
||||
|
@ -491,11 +511,11 @@ function constitutive_dislobased_dotState(Tstar_v,Temperature,state,ipc,ip,el)
|
|||
gdot_slip = state(ipc,ip,el)%p(7*n+i)*sign(1.0_pReal,tau_slip)*&
|
||||
sinh(((abs(tau_slip)-state(ipc,ip,el)%p(3*n+i))*state(ipc,ip,el)%p(5*n+i))/(kB*Temperature))
|
||||
locks = (sqrt(state(ipc,ip,el)%p(n+i))*abs(gdot_slip))/&
|
||||
(constitutive_dislobased_c4(matID)*constitutive_dislobased_bg(matID))
|
||||
athermal_recovery = constitutive_dislobased_c7(matID)*state(ipc,ip,el)%p(i)*abs(gdot_slip)
|
||||
(constitutive_dislobased_c4(matID)*constitutive_dislobased_bg(matID))
|
||||
athermal_recovery = constitutive_dislobased_c7(matID)*state(ipc,ip,el)%p(i)*abs(gdot_slip)
|
||||
thermal_recovery = constitutive_dislobased_c8(matID)*abs(tau_slip)*state(ipc,ip,el)%p(i)**(2.0_pReal)*&
|
||||
((constitutive_dislobased_D0(matID)*constitutive_dislobased_bg(matID)**(3.0_pReal))/&
|
||||
(kB*Temperature))*exp(-constitutive_dislobased_Qsd(matID)/(kB*Temperature))
|
||||
((constitutive_dislobased_D0(matID)*constitutive_dislobased_bg(matID)**(3.0_pReal))/&
|
||||
(kB*Temperature))*exp(-constitutive_dislobased_Qsd(matID)/(kB*Temperature))
|
||||
constitutive_dislobased_dotState(i) = locks - athermal_recovery !-thermal_recovery
|
||||
endif
|
||||
enddo
|
||||
|
@ -503,7 +523,6 @@ function constitutive_dislobased_dotState(Tstar_v,Temperature,state,ipc,ip,el)
|
|||
return
|
||||
end function
|
||||
|
||||
|
||||
pure function constitutive_dislobased_postResults(Tstar_v,Temperature,dt,state,ipc,ip,el)
|
||||
!*********************************************************************
|
||||
!* return array of constitutive results *
|
||||
|
|
|
@ -7,6 +7,23 @@
|
|||
!* - parameters definition *
|
||||
!*****************************************************
|
||||
|
||||
! [Alu]
|
||||
! constitution phenomenological
|
||||
! lattice_structure 1
|
||||
! Nslip 12
|
||||
!
|
||||
! c11 106.75e9
|
||||
! c12 60.41e9
|
||||
! c44 28.34e9
|
||||
!
|
||||
! s0_slip 31e6
|
||||
! gdot0_slip 0.001
|
||||
! n_slip 20
|
||||
! h0 75e6
|
||||
! s_sat 63e6
|
||||
! w0 2.25
|
||||
! latent_ratio 1.4
|
||||
|
||||
MODULE constitutive_phenomenological
|
||||
|
||||
!*** Include other modules ***
|
||||
|
|
Loading…
Reference in New Issue