Subrutines per a la deformació elastoplàstica (uyield.f90)¶
Es proporcionen subrutines per calcular la matriu de rigidesa elastoplàstica i el retorn de tensió. Quan s'utilitza una funció de fluència definida per l'usuari, primer establiu !PLASTIC, YIELD=USER al fitxer d'entrada i introduïu les constants de material necessàries, després s'han de crear la funció uElastoPlasticNumStatus i les subrutines uElastoPlasticMatrix i uBackwardEuler .
(1) Funció que retorna el nombre de variables d'estat reals¶
matl: Matriu que emmagatzema les constants del material (1-100: constants del material definides pel sistema, 101-200: constants del material definides per l'usuari)
(2) Subrutina per calcular la matriu de rigidesa elastoplàstica¶
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: Matriu que emmagatzema les constants del material (1-100: constants del material definides pel sistema, 101-200: constants del material definides per l'usuari)stress: Segona tensió de Piola-Kirchhoffistat: Variable d'estat enterfstat: Matriu de variables d'estat realsplstrain: Deformació plàstica al començament del subpas actualD: Matriu elastoplàsticatemp: Temperaturahdflag: Calcula tots els components (0), només els components desviadors (1) o només els components volumètrics (2)
(3) Subrutina per al càlcul del retorn de tensió¶
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: Matriu que emmagatzema les constants del material (1-100: constants del material definides pel sistema, 101-200: constants del material definides per l'usuari)stress: Segona tensió de Piola-Kirchhoff obtinguda suposant deformació elàstica per a la tensió de provaplstrain: Deformació plàstica al començament del subpas actualistat: Variable d'estat enterfstat: Matriu de variables d'estat realstemp: Temperaturahdflag: Calcula tots els components (0), només els components desviadors (1) o només els components volumètrics (2)