transpose not needed twice
"static" part of the interaction matrix is symmetric for one slip family
This commit is contained in:
parent
ad014d40be
commit
0ff54d1c43
|
@ -111,7 +111,6 @@ submodule(constitutive) plastic_nonlocal
|
||||||
logical :: &
|
logical :: &
|
||||||
shortRangeStressCorrection, & !< flag indicating the use of the short range stress correction by a excess density gradient term
|
shortRangeStressCorrection, & !< flag indicating the use of the short range stress correction by a excess density gradient term
|
||||||
probabilisticMultiplication
|
probabilisticMultiplication
|
||||||
|
|
||||||
end type tParameters
|
end type tParameters
|
||||||
|
|
||||||
type :: tNonlocalMicrostructure
|
type :: tNonlocalMicrostructure
|
||||||
|
@ -694,16 +693,16 @@ module subroutine plastic_nonlocal_dependentState(F, Fp, ip, el)
|
||||||
! (see Kubin,Devincre,Hoc; 2008; Modeling dislocation storage rates and mean free paths in face-centered cubic crystals)
|
! (see Kubin,Devincre,Hoc; 2008; Modeling dislocation storage rates and mean free paths in face-centered cubic crystals)
|
||||||
if (any(lattice_structure(material_phaseAt(1,el)) == [LATTICE_bcc_ID,LATTICE_fcc_ID])) then
|
if (any(lattice_structure(material_phaseAt(1,el)) == [LATTICE_bcc_ID,LATTICE_fcc_ID])) then
|
||||||
myInteractionMatrix = prm%interactionSlipSlip &
|
myInteractionMatrix = prm%interactionSlipSlip &
|
||||||
* transpose(spread(( 1.0_pReal - prm%linetensionEffect &
|
* spread(( 1.0_pReal - prm%linetensionEffect &
|
||||||
+ prm%linetensionEffect &
|
+ prm%linetensionEffect &
|
||||||
* log(0.35_pReal * prm%burgers * sqrt(max(stt%rho_forest(:,of),prm%significantRho))) &
|
* log(0.35_pReal * prm%burgers * sqrt(max(stt%rho_forest(:,of),prm%significantRho))) &
|
||||||
/ log(0.35_pReal * prm%burgers * 1e6_pReal))** 2.0_pReal,2,ns))
|
/ log(0.35_pReal * prm%burgers * 1e6_pReal))** 2.0_pReal,2,ns)
|
||||||
else
|
else
|
||||||
myInteractionMatrix = prm%interactionSlipSlip
|
myInteractionMatrix = prm%interactionSlipSlip
|
||||||
endif
|
endif
|
||||||
|
|
||||||
dst%tau_pass(:,of) = prm%mu * prm%burgers &
|
dst%tau_pass(:,of) = prm%mu * prm%burgers &
|
||||||
* sqrt(matmul(transpose(myInteractionMatrix),sum(abs(rho),2))) ! ToDo: MD the transpose seems wrong here (cf other laws)
|
* sqrt(matmul(myInteractionMatrix,sum(abs(rho),2)))
|
||||||
|
|
||||||
!*** calculate the dislocation stress of the neighboring excess dislocation densities
|
!*** calculate the dislocation stress of the neighboring excess dislocation densities
|
||||||
!*** zero for material points of local plasticity
|
!*** zero for material points of local plasticity
|
||||||
|
|
Loading…
Reference in New Issue