better function name, crystallite should not know which physics is involved

This commit is contained in:
Sharan Roongta 2020-07-12 13:04:26 +02:00
parent 77567bd398
commit 3a5e3b36c1
3 changed files with 14 additions and 14 deletions

View File

@ -140,7 +140,7 @@ module constitutive
el !< element
end function plastic_dislotwin_homogenizedC
module subroutine constitutive_plastic_dependentState(F, Fp, ipc, ip, el)
module subroutine constitutive_dependentState(F, Fp, ipc, ip, el)
integer, intent(in) :: &
ipc, & !< component-ID of integration point
@ -149,9 +149,9 @@ module constitutive
real(pReal), intent(in), dimension(3,3) :: &
F, & !< elastic deformation gradient
Fp !< plastic deformation gradient
end subroutine constitutive_plastic_dependentState
end subroutine constitutive_dependentState
module subroutine constitutive_plastic_LpAndItsTangents(Lp, dLp_dS, dLp_dFi, &
module subroutine constitutive_LpAndItsTangents(Lp, dLp_dS, dLp_dFi, &
S, Fi, ipc, ip, el)
integer, intent(in) :: &
ipc, & !< component-ID of integration point
@ -166,7 +166,7 @@ module constitutive
dLp_dS, &
dLp_dFi !< derivative of Lp with respect to Fi
end subroutine constitutive_plastic_LpAndItsTangents
end subroutine constitutive_LpAndItsTangents
pure module function kinematics_thermal_expansion_initialStrain(homog,phase,offset) result(initialStrain)
@ -368,8 +368,8 @@ module constitutive
public :: &
constitutive_init, &
constitutive_homogenizedC, &
constitutive_plastic_LpAndItsTangents, &
constitutive_plastic_dependentState, &
constitutive_LpAndItsTangents, &
constitutive_dependentState, &
constitutive_LiAndItsTangents, &
constitutive_initialFi, &
constitutive_SandItsTangents, &

View File

@ -171,7 +171,7 @@ end subroutine plastic_init
!--------------------------------------------------------------------------------------------------
!> @brief calls microstructure function of the different constitutive models
!--------------------------------------------------------------------------------------------------
module procedure constitutive_plastic_dependentState
module procedure constitutive_dependentState
integer :: &
ho, & !< homogenization
@ -192,14 +192,14 @@ module procedure constitutive_plastic_dependentState
call plastic_nonlocal_dependentState (F,Fp,instance,of,ip,el)
end select plasticityType
end procedure constitutive_plastic_dependentState
end procedure constitutive_dependentState
!--------------------------------------------------------------------------------------------------
!> @brief contains the constitutive equation for calculating the velocity gradient
! ToDo: Discuss whether it makes sense if crystallite handles the configuration conversion, i.e.
! Mp in, dLp_dMp out
!--------------------------------------------------------------------------------------------------
module procedure constitutive_plastic_LpAndItsTangents
module procedure constitutive_LpAndItsTangents
real(pReal), dimension(3,3,3,3) :: &
dLp_dMp !< derivative of Lp with respect to Mandel stress
@ -250,7 +250,7 @@ module procedure constitutive_plastic_LpAndItsTangents
dLp_dS(i,j,1:3,1:3) = matmul(matmul(transpose(Fi),Fi),dLp_dMp(i,j,1:3,1:3)) ! ToDo: @PS: why not: dLp_dMp:(FiT Fi)
enddo; enddo
end procedure constitutive_plastic_LpAndItsTangents
end procedure constitutive_LpAndItsTangents
end submodule constitutive_plastic

View File

@ -279,7 +279,7 @@ subroutine crystallite_init
do e = FEsolving_execElem(1),FEsolving_execElem(2)
do i = FEsolving_execIP(1),FEsolving_execIP(2)
do c = 1,homogenization_Ngrains(material_homogenizationAt(e))
call constitutive_plastic_dependentState(crystallite_partionedF0(1:3,1:3,c,i,e), &
call constitutive_dependentState(crystallite_partionedF0(1:3,1:3,c,i,e), &
crystallite_partionedFp0(1:3,1:3,c,i,e), &
c,i,e) ! update dependent state variables to be consistent with basic states
enddo
@ -554,7 +554,7 @@ subroutine crystallite_stressTangent
dLidS = math_mul3333xx3333(dLidFi,dFidS) + dLidS
endif
call constitutive_plastic_LpAndItsTangents(devNull,dLpdS,dLpdFi, &
call constitutive_LpAndItsTangents(devNull,dLpdS,dLpdFi, &
crystallite_S (1:3,1:3,c,i,e), &
crystallite_Fi(1:3,1:3,c,i,e),c,i,e) ! call constitutive law to calculate Lp tangent in lattice configuration
dLpdS = math_mul3333xx3333(dLpdFi,dFidS) + dLpdS
@ -874,7 +874,7 @@ function integrateStress(ipc,ip,el,timeFraction) result(broken)
F = crystallite_subF(1:3,1:3,ipc,ip,el)
endif
call constitutive_plastic_dependentState(crystallite_partionedF(1:3,1:3,ipc,ip,el), &
call constitutive_dependentState(crystallite_partionedF(1:3,1:3,ipc,ip,el), &
crystallite_Fp(1:3,1:3,ipc,ip,el),ipc,ip,el)
Lpguess = crystallite_Lp(1:3,1:3,ipc,ip,el) ! take as first guess
@ -915,7 +915,7 @@ function integrateStress(ipc,ip,el,timeFraction) result(broken)
call constitutive_SandItsTangents(S, dS_dFe, dS_dFi, &
Fe, Fi_new, ipc, ip, el)
call constitutive_plastic_LpAndItsTangents(Lp_constitutive, dLp_dS, dLp_dFi, &
call constitutive_LpAndItsTangents(Lp_constitutive, dLp_dS, dLp_dFi, &
S, Fi_new, ipc, ip, el)
!* update current residuum and check for convergence of loop