microstructure is now dependentState
This commit is contained in:
parent
b5dade2f70
commit
558a643120
|
@ -55,11 +55,11 @@ submodule(phase:plastic) dislotungsten
|
||||||
gamma_sl
|
gamma_sl
|
||||||
end type tDislotungstenState
|
end type tDislotungstenState
|
||||||
|
|
||||||
type :: tDislotungstendependentState
|
type :: tDislotungstenDependentState
|
||||||
real(pReal), dimension(:,:), allocatable :: &
|
real(pReal), dimension(:,:), allocatable :: &
|
||||||
Lambda_sl, &
|
Lambda_sl, &
|
||||||
tau_pass
|
tau_pass
|
||||||
end type tDislotungstendependentState
|
end type tDislotungstenDependentState
|
||||||
|
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
! containers for parameters and state
|
! containers for parameters and state
|
||||||
|
@ -67,7 +67,7 @@ submodule(phase:plastic) dislotungsten
|
||||||
type(tDisloTungstenState), allocatable, dimension(:) :: &
|
type(tDisloTungstenState), allocatable, dimension(:) :: &
|
||||||
dotState, &
|
dotState, &
|
||||||
state
|
state
|
||||||
type(tDisloTungstendependentState), allocatable, dimension(:) :: dependentState
|
type(tDisloTungstenDependentState), allocatable, dimension(:) :: dependentState
|
||||||
|
|
||||||
contains
|
contains
|
||||||
|
|
||||||
|
|
|
@ -96,7 +96,7 @@ submodule(phase:plastic) dislotwin
|
||||||
f_tr
|
f_tr
|
||||||
end type tDislotwinState
|
end type tDislotwinState
|
||||||
|
|
||||||
type :: tDislotwinMicrostructure
|
type :: tDislotwinDependentState
|
||||||
real(pReal), dimension(:,:), allocatable :: &
|
real(pReal), dimension(:,:), allocatable :: &
|
||||||
Lambda_sl, & !< mean free path between 2 obstacles seen by a moving dislocation
|
Lambda_sl, & !< mean free path between 2 obstacles seen by a moving dislocation
|
||||||
Lambda_tw, & !< mean free path between 2 obstacles seen by a growing twin
|
Lambda_tw, & !< mean free path between 2 obstacles seen by a growing twin
|
||||||
|
@ -108,7 +108,7 @@ submodule(phase:plastic) dislotwin
|
||||||
V_tr, & !< volume of a new martensite disc
|
V_tr, & !< volume of a new martensite disc
|
||||||
tau_r_tw, & !< stress to bring partials close together (twin)
|
tau_r_tw, & !< stress to bring partials close together (twin)
|
||||||
tau_r_tr !< stress to bring partials close together (trans)
|
tau_r_tr !< stress to bring partials close together (trans)
|
||||||
end type tDislotwinMicrostructure
|
end type tDislotwinDependentState
|
||||||
|
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
! containers for parameters and state
|
! containers for parameters and state
|
||||||
|
@ -116,7 +116,7 @@ submodule(phase:plastic) dislotwin
|
||||||
type(tDislotwinState), allocatable, dimension(:) :: &
|
type(tDislotwinState), allocatable, dimension(:) :: &
|
||||||
dotState, &
|
dotState, &
|
||||||
state
|
state
|
||||||
type(tDislotwinMicrostructure), allocatable, dimension(:) :: dependentState
|
type(tDislotwinDependentState), allocatable, dimension(:) :: dependentState
|
||||||
|
|
||||||
contains
|
contains
|
||||||
|
|
||||||
|
|
|
@ -124,11 +124,11 @@ submodule(phase:plastic) nonlocal
|
||||||
systems_sl
|
systems_sl
|
||||||
end type tParameters
|
end type tParameters
|
||||||
|
|
||||||
type :: tNonlocalMicrostructure
|
type :: tNonlocalDependentState
|
||||||
real(pReal), allocatable, dimension(:,:) :: &
|
real(pReal), allocatable, dimension(:,:) :: &
|
||||||
tau_pass, &
|
tau_pass, &
|
||||||
tau_Back
|
tau_Back
|
||||||
end type tNonlocalMicrostructure
|
end type tNonlocalDependentState
|
||||||
|
|
||||||
type :: tNonlocalState
|
type :: tNonlocalState
|
||||||
real(pReal), pointer, dimension(:,:) :: &
|
real(pReal), pointer, dimension(:,:) :: &
|
||||||
|
@ -164,7 +164,7 @@ submodule(phase:plastic) nonlocal
|
||||||
|
|
||||||
type(tParameters), dimension(:), allocatable :: param !< containers of constitutive parameters
|
type(tParameters), dimension(:), allocatable :: param !< containers of constitutive parameters
|
||||||
|
|
||||||
type(tNonlocalMicrostructure), dimension(:), allocatable :: microstructure
|
type(tNonlocalDependentState), dimension(:), allocatable :: dependentState
|
||||||
|
|
||||||
contains
|
contains
|
||||||
|
|
||||||
|
@ -221,13 +221,13 @@ module function plastic_nonlocal_init() result(myPlasticity)
|
||||||
allocate(state0(phases%length))
|
allocate(state0(phases%length))
|
||||||
allocate(dotState(phases%length))
|
allocate(dotState(phases%length))
|
||||||
allocate(deltaState(phases%length))
|
allocate(deltaState(phases%length))
|
||||||
allocate(microstructure(phases%length))
|
allocate(dependentState(phases%length))
|
||||||
|
|
||||||
do ph = 1, phases%length
|
do ph = 1, phases%length
|
||||||
if(.not. myPlasticity(ph)) cycle
|
if(.not. myPlasticity(ph)) cycle
|
||||||
|
|
||||||
associate(prm => param(ph), dot => dotState(ph), stt => state(ph), &
|
associate(prm => param(ph), dot => dotState(ph), stt => state(ph), &
|
||||||
st0 => state0(ph), del => deltaState(ph), dst => microstructure(ph))
|
st0 => state0(ph), del => deltaState(ph), dst => dependentState(ph))
|
||||||
|
|
||||||
phase => phases%get(ph)
|
phase => phases%get(ph)
|
||||||
mech => phase%get('mechanical')
|
mech => phase%get('mechanical')
|
||||||
|
@ -607,7 +607,7 @@ module subroutine nonlocal_dependentState(ph, en, ip, el)
|
||||||
real(pReal), dimension(3,param(ph)%sum_N_sl,2) :: &
|
real(pReal), dimension(3,param(ph)%sum_N_sl,2) :: &
|
||||||
m ! direction of dislocation motion
|
m ! direction of dislocation motion
|
||||||
|
|
||||||
associate(prm => param(ph),dst => microstructure(ph), stt => state(ph))
|
associate(prm => param(ph),dst => dependentState(ph), stt => state(ph))
|
||||||
|
|
||||||
rho = getRho(ph,en)
|
rho = getRho(ph,en)
|
||||||
|
|
||||||
|
@ -774,7 +774,7 @@ module subroutine nonlocal_LpAndItsTangent(Lp,dLp_dMp, &
|
||||||
tau, & !< resolved shear stress including backstress terms
|
tau, & !< resolved shear stress including backstress terms
|
||||||
dot_gamma !< shear rate
|
dot_gamma !< shear rate
|
||||||
|
|
||||||
associate(prm => param(ph),dst=>microstructure(ph),stt=>state(ph))
|
associate(prm => param(ph),dst=>dependentState(ph),stt=>state(ph))
|
||||||
|
|
||||||
!*** shortcut to state variables
|
!*** shortcut to state variables
|
||||||
rho = getRho(ph,en)
|
rho = getRho(ph,en)
|
||||||
|
@ -870,7 +870,7 @@ module subroutine plastic_nonlocal_deltaState(Mp,ph,en)
|
||||||
dUpperOld, & ! old maximum stable dipole distance for edges and screws
|
dUpperOld, & ! old maximum stable dipole distance for edges and screws
|
||||||
deltaDUpper ! change in maximum stable dipole distance for edges and screws
|
deltaDUpper ! change in maximum stable dipole distance for edges and screws
|
||||||
|
|
||||||
associate(prm => param(ph),dst => microstructure(ph),del => deltaState(ph))
|
associate(prm => param(ph),dst => dependentState(ph),del => deltaState(ph))
|
||||||
|
|
||||||
!*** shortcut to state variables
|
!*** shortcut to state variables
|
||||||
forall (s = 1:prm%sum_N_sl, t = 1:4) v(s,t) = plasticState(ph)%state(iV(s,t,ph),en)
|
forall (s = 1:prm%sum_N_sl, t = 1:4) v(s,t) = plasticState(ph)%state(iV(s,t,ph),en)
|
||||||
|
@ -982,7 +982,7 @@ module subroutine nonlocal_dotState(Mp, Temperature,timestep, &
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
|
|
||||||
associate(prm => param(ph), dst => microstructure(ph), dot => dotState(ph), stt => state(ph))
|
associate(prm => param(ph), dst => dependentState(ph), dot => dotState(ph), stt => state(ph))
|
||||||
|
|
||||||
tau = 0.0_pReal
|
tau = 0.0_pReal
|
||||||
dot_gamma = 0.0_pReal
|
dot_gamma = 0.0_pReal
|
||||||
|
@ -1179,7 +1179,7 @@ function rhoDotFlux(timestep,ph,en,ip,el)
|
||||||
|
|
||||||
|
|
||||||
associate(prm => param(ph), &
|
associate(prm => param(ph), &
|
||||||
dst => microstructure(ph), &
|
dst => dependentState(ph), &
|
||||||
dot => dotState(ph), &
|
dot => dotState(ph), &
|
||||||
stt => state(ph))
|
stt => state(ph))
|
||||||
ns = prm%sum_N_sl
|
ns = prm%sum_N_sl
|
||||||
|
@ -1470,7 +1470,7 @@ module subroutine plastic_nonlocal_results(ph,group)
|
||||||
|
|
||||||
integer :: ou
|
integer :: ou
|
||||||
|
|
||||||
associate(prm => param(ph),dst => microstructure(ph),stt=>state(ph))
|
associate(prm => param(ph),dst => dependentState(ph),stt=>state(ph))
|
||||||
|
|
||||||
do ou = 1,size(prm%output)
|
do ou = 1,size(prm%output)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue