Subrutiner för elastoplastisk deformation (uyield.f90)¶
Subrutiner tillhandahålls för beräkning av den elastoplastiska styvhetsmatrisen och återföringsalgoritmen för spänning.
När en användardefinierad flytfunktion används ska du först ange !PLASTIC, YIELD=USER i indatafilen och mata in de materialkonstanter som krävs,
därefter måste funktionen uElastoPlasticNumStatus och subrutinerna uElastoPlasticMatrix och uBackwardEuler
skapas.
(1) Funktion som returnerar antalet reella tillståndsvariabler¶
matl: Array som lagrar materialkonstanter (1-100: systemdefinierade materialkonstanter, 101-200: användardefinierade materialkonstanter)
(2) Subrutin för beräkning av den elastoplastiska styvhetsmatrisen¶
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 som lagrar materialkonstanter (1-100: systemdefinierade materialkonstanter, 101-200: användardefinierade materialkonstanter)stress: 2:a Piola-Kirchhoff-spänningistat: Heltalsvariabel för tillståndfstat: Array med reella tillståndsvariablerplstrain: Plastisk töjning i början av det aktuella delstegetD: Elastoplastisk matristemp: Temperaturhdflag: Beräkna alla komponenter (0), endast deviatoriska komponenter (1) eller endast volymetriska komponenter (2)
(3) Subrutin för beräkning av spänningsåterföring¶
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 som lagrar materialkonstanter (1-100: systemdefinierade materialkonstanter, 101-200: användardefinierade materialkonstanter)stress: 2:a Piola-Kirchhoff-spänning som erhålls genom att anta elastisk deformation för provspänningenplstrain: Plastisk töjning i början av det aktuella delstegetistat: Heltalsvariabel för tillståndfstat: Array med reella tillståndsvariablertemp: Temperaturhdflag: Beräkna alla komponenter (0), endast deviatoriska komponenter (1) eller endast volymetriska komponenter (2)