Ga naar inhoud

Subroutines voor door de gebruiker gedefinieerde materialen (umat.f)

Biedt een interface voor vervormingsanalyse van algemene materialen, ongeacht of deze elastisch, hyperelastisch of elastoplastisch zijn. Om een door de gebruiker gedefinieerd materiaal te gebruiken, stelt u eerst !USER_MATERIAL in het invoerbestand in en voert u de vereiste materiaalconstanten in; vervolgens maakt u de subroutines uMatlMatrix en uUpdate.

(1) Subroutine voor het berekenen van de stijfheidsmatrix

subroutine uMatlMatrix( mname, matl, strain, stress, fstat, D, dtime, ttime, temperature )
        character(len=*), intent(in)  :: mname
        real(kind=kreal), intent(in)  :: matl(:)
        real(kind=kreal), intent(in)  :: strain(6)
        real(kind=kreal), intent(in)  :: stress(6)
        real(kind=kreal), intent(in)  :: fstat(:)
        real(kind=kreal), intent(out) :: D(:,:)
        real(kind=kreal), intent(in)  :: dtime
        real(kind=kreal), intent(in)  :: ttime
        real(kind=kreal), optional    :: temperature
  • mname: Materiaalnaam
  • matl: Array waarin materiaalconstanten worden opgeslagen (maximaal 100)
  • strain: Green-Lagrange-rek
  • stress: 2e Piola-Kirchhoff-spanning
  • fstat: Toestandsvariabelen
  • D: Constitutieve relatie
  • dtime: Tijdincrement
  • ttime: Totale tijd aan het begin van het huidige tijdincrement
  • temperature: Temperatuur

(2) Subroutine voor het bijwerken van rek en spanning

subroutine uUpdate(  mname, matl, strain, stress, fstat, dtime, ttime, temperature )
        character(len=\*), intent(in)    :: mname
        real(kind=kreal), intent(in)    :: matl(:)
        real(kind=kreal), intent(in)    :: strain(6)
        real(kind=kreal), intent(inout) :: stress(6)
        real(kind=kreal), intent(inout) :: fstat(:)
        real(kind=kreal), intent(in)    :: dtime
        real(kind=kreal), intent(in)    :: ttime
        real(kind=kreal), optional      :: temperature
  • mname: Materiaalnaam
  • matl: Array waarin materiaalconstanten worden opgeslagen (maximaal 100)
  • strain: Rek
  • stress: 2e Piola-Kirchhoff-spanning
  • fstat: Toestandsvariabelen
  • dtime: Tijdincrement
  • ttime: Totale tijd aan het begin van het huidige tijdincrement
  • temperature: Temperatuur
AI-assisted translation May contain errors Official docs Status