Subroutine regarding Elastoplasticity Deformation (uyield.f90)¶
The subroutines are provided in order to calculate the elastoplasticity stiffness matrix and stress return mapping. When using the user defined yield function, first, it is necessary to set the !PLASTIC, YIELD=USER in the input file, input the required material constants and then, create function uElastoPlasticNumStatus and subroutines uElastoPlasticMatrix and uBackwardEuler.
(1) Function returning number of real state variables¶
matl: Array to save the material constants (1-100 : system defined constants, 101-200 : user defined constants)
(2) Calculation subroutines of elastoplasticity stiffness matrix¶
subroutine uElastoPlasticMatrix( matl, stress, istat, fstat, plstrain, D, temp, hdflag )
real(kind=kreal), intent(in) :: matl(:)
real(kind=kreal), intent(in) :: stress(6)
integer(kind=kint), intent(in) :: istat
real(kind=kreal), intent(in) :: fstat(:)
real(kind=kreal), intent(in) :: plstrain
real(kind=kreal), intent(out) :: D(:,:)
real(kind=kreal), intent(in) :: temp
integer(kind=kint), intent(in) :: hdflag
matl: Array to save the material constants (1-100 : system defined constants, 101-200 : user defined constants)stress: 2nd Piola-Kirchhoff stressistat: Integer state variablefstat: Array of real state variablesplstrain: Plastic strain at the beginning of current substepD: Elastoplasticity matrixtemp: Temperaturehdflag: Return total(0), deviatoric term only(1), or hydraulic term only(2)
(3) Return mapping calculation subroutine of stress¶
subroutine uBackwardEuler( matl, stress, plstrain, istat, fstat, temp, hdflag )
real(kind=kreal), intent(in) :: matl(:)
real(kind=kreal), intent(inout) :: stress(6)
real(kind=kreal), intent(in) :: plstrain
integer(kind=kint), intent(inout) :: istat
real(kind=kreal), intent(inout) :: fstat(:)
real(kind=kreal), intent(in) :: temp
integer(kind=kint), intent(in) :: hdflag
matl: Array to save the material constants (1-100 : system defined constants, 101-200 : user defined constants)stress: 2nd Piola-Kirchhoff stress acquired by assuming trial stress elastic deformationplstrain: Plastic strain at the beginning of current substepistat: Integer state variablefstat: Array of real state variablestemp: Temperaturehdflag: Return total(0), deviatoric term only(1), or hydraulic term only(2)