Aller au contenu

Sous-routines relatives aux matériaux définis par l'utilisateur (umat.f)

Fournit une interface pour l'analyse de la déformation des matériaux en général, qu'ils soient élastiques, hyperélastiques ou élastoplastiques. Pour utiliser un matériau défini par l'utilisateur, il faut d'abord définir !USER_MATERIAL dans le fichier d'entrée et saisir les constantes de matériau nécessaires, puis créer les sous-routines uMatlMatrix et uUpdate.

(1) Sous-routine de calcul de la matrice de rigidité

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: Nom du matériau
  • matl: Tableau stockant les constantes de matériau (maximum 100)
  • strain: Déformation de Green-Lagrange
  • stress: Contrainte de 2e Piola-Kirchhoff
  • fstat: Variables d'état
  • D: Loi constitutive
  • dtime: Incrément de temps
  • ttime: Temps total au début de l'incrément de temps courant
  • temperature: Température

(2) Sous-routine de mise à jour de la déformation et de la contrainte

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: Nom du matériau
  • matl: Tableau stockant les constantes de matériau (maximum 100)
  • strain: Déformation
  • stress: Contrainte de 2e Piola-Kirchhoff
  • fstat: Variables d'état
  • dtime: Incrément de temps
  • ttime: Temps total au début de l'incrément de temps courant
  • temperature: Température