Potprogrami za korisnički definirane materijale (umat.f)¶
Pruža sučelje za analizu deformacija općih materijala, neovisno o tome jesu li elastični, hiperelastični ili elastoplastični. Za uporabu korisnički definiranog materijala najprije postavite !USER_MATERIAL u ulaznoj datoteci i unesite potrebne konstante materijala, a zatim izradite potprograme uMatlMatrix i uUpdate.
(1) Potprogram za izračun matrice krutosti¶
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: Naziv materijalamatl: Polje koje pohranjuje konstante materijala (maksimalno 100)strain: Green-Lagrangeova deformacijastress: Drugo Piola-Kirchhoffovo naprezanjefstat: Varijable stanjaD: Konstitutivni odnosdtime: Vremenski prirastttime: Ukupno vrijeme na početku trenutačnog vremenskog prirastatemperature: Temperatura
(2) Potprogram za ažuriranje deformacije i naprezanja¶
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: Naziv materijalamatl: Polje koje pohranjuje konstante materijala (maksimalno 100)strain: Deformacijastress: Drugo Piola-Kirchhoffovo naprezanjefstat: Varijable stanjadtime: Vremenski prirastttime: Ukupno vrijeme na početku trenutačnog vremenskog prirastatemperature: Temperatura