Subrutines relacionades amb la deformació elastoplàstica (uyield.f90)¶
Es proporcionen subrutines per calcular la matriu de rigidesa elastoplàstica i el return mapping de les tensions. Per utilitzar una funció de fluència definida per l’usuari, primer cal establir !PLASTIC, YIELD=USER al fitxer d’entrada i introduir les constants de material necessàries, i després implementar 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 de material (1–100: constants de material definides pel sistema; 101–200: constants 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 de material (1–100: constants de material definides pel sistema; 101–200: constants definides per l’usuari)stress: tensió de 2n Piola-Kirchhoffistat: variable d’estat enterafstat: matriu de variables d’estat realsplstrain: deformació plàstica a l’inici del subpas actualD: matriu elastoplàsticatemp: temperaturahdflag: calcula tots els components (0), només els desviadors (1) o només els volumètrics (2)
(3) Subrutina per calcular el return mapping de les tensions¶
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 de material (1–100: constants de material definides pel sistema; 101–200: constants definides per l’usuari)stress: trial stress: tensió de 2n Piola-Kirchhoff obtinguda assumint deformació elàsticaplstrain: deformació plàstica a l’inici del subpas actualistat: variable d’estat enterafstat: matriu de variables d’estat realstemp: temperaturahdflag: calcula tots els components (0), només els desviadors (1) o només els volumètrics (2)