Потпрограми за кориснички дефинисане материјале (umat.f)¶
Обезбеђује интерфејс за анализу деформација општих материјала, без обзира на то да ли су еластични, хипереластични или еластопластични. Да бисте користили кориснички дефинисан материјал, најпре подесите !USER_MATERIAL у улазној датотеци и унесите потребне материјалне константе, а затим направите потпрограме uMatlMatrix и uUpdate.
(1) Потпрограм за израчунавање матрице крутости¶
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: Назив материјалаmatl: Низ у коме се чувају материјалне константе (највише 100)strain: Грин-Лагранжова деформацијаstress: Други Пиола-Кирхофов напонfstat: Променљиве стањаD: Конститутивна релацијаdtime: Прираштај временаttime: Укупно време на почетку текућег временског прираштајаtemperature: Температура
(2) Потпрограм за ажурирање деформације и напона¶
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: Назив материјалаmatl: Низ у коме се чувају материјалне константе (највише 100)strain: Деформацијаstress: Други Пиола-Кирхофов напонfstat: Променљиве стањаdtime: Прираштај временаttime: Укупно време на почетку текућег временског прираштајаtemperature: Температура