Ir para o conteúdo

Sub-rotinas para materiais definidos pelo usuário (umat.f)

Fornece uma interface para a análise de deformação de materiais em geral, independentemente de serem elásticos, hiperelásticos ou elastoplásticos. Para usar um material definido pelo usuário, primeiro configure !USER_MATERIAL no arquivo de entrada e informe as constantes de material necessárias; em seguida, crie as sub-rotinas uMatlMatrix e uUpdate.

(1) Sub-rotina para cálculo da matriz de rigidez

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: Nome do material
  • matl: Array que armazena as constantes do material (máximo de 100)
  • strain: Deformação de Green-Lagrange
  • stress: Tensão de 2º Piola-Kirchhoff
  • fstat: Variáveis de estado
  • D: Relação constitutiva
  • dtime: Incremento de tempo
  • ttime: Tempo total no início do incremento de tempo atual
  • temperature: Temperatura

(2) Sub-rotina para atualização da deformação e da tensão

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: Nome do material
  • matl: Array que armazena as constantes do material (máximo de 100)
  • strain: Deformação
  • stress: Tensão de 2º Piola-Kirchhoff
  • fstat: Variáveis de estado
  • dtime: Incremento de tempo
  • ttime: Tempo total no início do incremento de tempo atual
  • temperature: Temperatura