file names reflect hierarchical structure
This commit is contained in:
parent
e52a747774
commit
226b715c46
|
@ -15,7 +15,6 @@ module constitutive
|
||||||
use HDF5_utilities
|
use HDF5_utilities
|
||||||
use lattice
|
use lattice
|
||||||
use discretization
|
use discretization
|
||||||
use plastic_kinehardening
|
|
||||||
use plastic_dislotwin
|
use plastic_dislotwin
|
||||||
use plastic_disloucla
|
use plastic_disloucla
|
||||||
use plastic_nonlocal
|
use plastic_nonlocal
|
||||||
|
@ -49,7 +48,9 @@ module constitutive
|
||||||
|
|
||||||
module subroutine plastic_phenopowerlaw_init
|
module subroutine plastic_phenopowerlaw_init
|
||||||
end subroutine plastic_phenopowerlaw_init
|
end subroutine plastic_phenopowerlaw_init
|
||||||
|
|
||||||
|
module subroutine plastic_kinehardening_init
|
||||||
|
end subroutine plastic_kinehardening_init
|
||||||
|
|
||||||
module subroutine plastic_isotropic_LpAndItsTangent(Lp,dLp_dMp,Mp,instance,of)
|
module subroutine plastic_isotropic_LpAndItsTangent(Lp,dLp_dMp,Mp,instance,of)
|
||||||
real(pReal), dimension(3,3), intent(out) :: &
|
real(pReal), dimension(3,3), intent(out) :: &
|
||||||
|
@ -76,6 +77,19 @@ module constitutive
|
||||||
instance, &
|
instance, &
|
||||||
of
|
of
|
||||||
end subroutine plastic_phenopowerlaw_LpAndItsTangent
|
end subroutine plastic_phenopowerlaw_LpAndItsTangent
|
||||||
|
|
||||||
|
pure module subroutine plastic_kinehardening_LpAndItsTangent(Lp,dLp_dMp,Mp,instance,of)
|
||||||
|
real(pReal), dimension(3,3), intent(out) :: &
|
||||||
|
Lp !< plastic velocity gradient
|
||||||
|
real(pReal), dimension(3,3,3,3), intent(out) :: &
|
||||||
|
dLp_dMp !< derivative of Lp with respect to the Mandel stress
|
||||||
|
|
||||||
|
real(pReal), dimension(3,3), intent(in) :: &
|
||||||
|
Mp !< Mandel stress
|
||||||
|
integer, intent(in) :: &
|
||||||
|
instance, &
|
||||||
|
of
|
||||||
|
end subroutine plastic_kinehardening_LpAndItsTangent
|
||||||
|
|
||||||
|
|
||||||
module subroutine plastic_isotropic_LiAndItsTangent(Li,dLi_dMi,Mi,instance,of)
|
module subroutine plastic_isotropic_LiAndItsTangent(Li,dLi_dMi,Mi,instance,of)
|
||||||
|
@ -108,6 +122,23 @@ module constitutive
|
||||||
of
|
of
|
||||||
end subroutine plastic_phenopowerlaw_dotState
|
end subroutine plastic_phenopowerlaw_dotState
|
||||||
|
|
||||||
|
module subroutine plastic_kinehardening_dotState(Mp,instance,of)
|
||||||
|
real(pReal), dimension(3,3), intent(in) :: &
|
||||||
|
Mp !< Mandel stress
|
||||||
|
integer, intent(in) :: &
|
||||||
|
instance, &
|
||||||
|
of
|
||||||
|
end subroutine plastic_kinehardening_dotState
|
||||||
|
|
||||||
|
|
||||||
|
module subroutine plastic_kinehardening_deltaState(Mp,instance,of)
|
||||||
|
real(pReal), dimension(3,3), intent(in) :: &
|
||||||
|
Mp !< Mandel stress
|
||||||
|
integer, intent(in) :: &
|
||||||
|
instance, &
|
||||||
|
of
|
||||||
|
end subroutine plastic_kinehardening_deltaState
|
||||||
|
|
||||||
|
|
||||||
module subroutine plastic_isotropic_results(instance,group)
|
module subroutine plastic_isotropic_results(instance,group)
|
||||||
integer, intent(in) :: instance
|
integer, intent(in) :: instance
|
||||||
|
@ -117,8 +148,13 @@ module constitutive
|
||||||
module subroutine plastic_phenopowerlaw_results(instance,group)
|
module subroutine plastic_phenopowerlaw_results(instance,group)
|
||||||
integer, intent(in) :: instance
|
integer, intent(in) :: instance
|
||||||
character(len=*), intent(in) :: group
|
character(len=*), intent(in) :: group
|
||||||
end subroutine plastic_phenopowerlaw_results
|
end subroutine plastic_phenopowerlaw_results
|
||||||
|
|
||||||
|
module subroutine plastic_kinehardening_results(instance,group)
|
||||||
|
integer, intent(in) :: instance
|
||||||
|
character(len=*), intent(in) :: group
|
||||||
|
end subroutine plastic_kinehardening_results
|
||||||
|
|
||||||
end interface
|
end interface
|
||||||
|
|
||||||
public :: &
|
public :: &
|
||||||
|
|
|
@ -5,19 +5,7 @@
|
||||||
!> @brief Phenomenological crystal plasticity using a power law formulation for the shear rates
|
!> @brief Phenomenological crystal plasticity using a power law formulation for the shear rates
|
||||||
!! and a Voce-type kinematic hardening rule
|
!! and a Voce-type kinematic hardening rule
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
module plastic_kinehardening
|
submodule(constitutive) plastic_kinehardening
|
||||||
use prec
|
|
||||||
use debug
|
|
||||||
use math
|
|
||||||
use IO
|
|
||||||
use material
|
|
||||||
use config
|
|
||||||
use lattice
|
|
||||||
use discretization
|
|
||||||
use results
|
|
||||||
|
|
||||||
implicit none
|
|
||||||
private
|
|
||||||
|
|
||||||
enum, bind(c)
|
enum, bind(c)
|
||||||
enumerator :: &
|
enumerator :: &
|
||||||
|
@ -80,13 +68,6 @@ module plastic_kinehardening
|
||||||
deltaState, &
|
deltaState, &
|
||||||
state
|
state
|
||||||
|
|
||||||
public :: &
|
|
||||||
plastic_kinehardening_init, &
|
|
||||||
plastic_kinehardening_LpAndItsTangent, &
|
|
||||||
plastic_kinehardening_dotState, &
|
|
||||||
plastic_kinehardening_deltaState, &
|
|
||||||
plastic_kinehardening_results
|
|
||||||
|
|
||||||
contains
|
contains
|
||||||
|
|
||||||
|
|
||||||
|
@ -94,7 +75,7 @@ contains
|
||||||
!> @brief module initialization
|
!> @brief module initialization
|
||||||
!> @details reads in material parameters, allocates arrays, and does sanity checks
|
!> @details reads in material parameters, allocates arrays, and does sanity checks
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
subroutine plastic_kinehardening_init
|
module subroutine plastic_kinehardening_init
|
||||||
|
|
||||||
integer :: &
|
integer :: &
|
||||||
Ninstance, &
|
Ninstance, &
|
||||||
|
@ -304,7 +285,7 @@ end subroutine plastic_kinehardening_init
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
!> @brief calculates plastic velocity gradient and its tangent
|
!> @brief calculates plastic velocity gradient and its tangent
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
pure subroutine plastic_kinehardening_LpAndItsTangent(Lp,dLp_dMp,Mp,instance,of)
|
pure module subroutine plastic_kinehardening_LpAndItsTangent(Lp,dLp_dMp,Mp,instance,of)
|
||||||
|
|
||||||
real(pReal), dimension(3,3), intent(out) :: &
|
real(pReal), dimension(3,3), intent(out) :: &
|
||||||
Lp !< plastic velocity gradient
|
Lp !< plastic velocity gradient
|
||||||
|
@ -346,7 +327,7 @@ end subroutine plastic_kinehardening_LpAndItsTangent
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
!> @brief calculates the rate of change of microstructure
|
!> @brief calculates the rate of change of microstructure
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
subroutine plastic_kinehardening_dotState(Mp,instance,of)
|
module subroutine plastic_kinehardening_dotState(Mp,instance,of)
|
||||||
|
|
||||||
real(pReal), dimension(3,3), intent(in) :: &
|
real(pReal), dimension(3,3), intent(in) :: &
|
||||||
Mp !< Mandel stress
|
Mp !< Mandel stress
|
||||||
|
@ -388,7 +369,7 @@ end subroutine plastic_kinehardening_dotState
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
!> @brief calculates (instantaneous) incremental change of microstructure
|
!> @brief calculates (instantaneous) incremental change of microstructure
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
subroutine plastic_kinehardening_deltaState(Mp,instance,of)
|
module subroutine plastic_kinehardening_deltaState(Mp,instance,of)
|
||||||
|
|
||||||
real(pReal), dimension(3,3), intent(in) :: &
|
real(pReal), dimension(3,3), intent(in) :: &
|
||||||
Mp !< Mandel stress
|
Mp !< Mandel stress
|
||||||
|
@ -436,11 +417,11 @@ end subroutine plastic_kinehardening_deltaState
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
!> @brief writes results to HDF5 output file
|
!> @brief writes results to HDF5 output file
|
||||||
!--------------------------------------------------------------------------------------------------
|
!--------------------------------------------------------------------------------------------------
|
||||||
subroutine plastic_kinehardening_results(instance,group)
|
module subroutine plastic_kinehardening_results(instance,group)
|
||||||
#if defined(PETSc) || defined(DAMASK_HDF5)
|
#if defined(PETSc) || defined(DAMASK_HDF5)
|
||||||
|
|
||||||
integer, intent(in) :: instance
|
integer, intent(in) :: instance
|
||||||
character(len=*) :: group
|
character(len=*), intent(in) :: group
|
||||||
integer :: o
|
integer :: o
|
||||||
|
|
||||||
associate(prm => param(instance), stt => state(instance))
|
associate(prm => param(instance), stt => state(instance))
|
||||||
|
@ -548,4 +529,4 @@ pure subroutine kinetics(Mp,instance,of, &
|
||||||
|
|
||||||
end subroutine kinetics
|
end subroutine kinetics
|
||||||
|
|
||||||
end module plastic_kinehardening
|
end submodule plastic_kinehardening
|
|
@ -21,7 +21,7 @@ module plastic_dislotwin
|
||||||
implicit none
|
implicit none
|
||||||
private
|
private
|
||||||
|
|
||||||
real(pReal), parameter :: &
|
real(pReal), parameter :: &
|
||||||
kB = 1.38e-23_pReal !< Boltzmann constant in J/Kelvin
|
kB = 1.38e-23_pReal !< Boltzmann constant in J/Kelvin
|
||||||
|
|
||||||
enum, bind(c)
|
enum, bind(c)
|
||||||
|
|
Loading…
Reference in New Issue