Subrutini za Nyenzo Zinazofafanuliwa na Mtumiaji (umat.f)¶
Hutoa kiolesura cha uchanganuzi wa mgeuko wa nyenzo za jumla, bila kujali kama ni elastiki, hiperelastiki au elastoplastiki. Ili kutumia nyenzo inayofafanuliwa na mtumiaji, kwanza weka !USER_MATERIAL katika faili ya ingizo na uingize konstanti za nyenzo zinazohitajika, kisha unda subrutini uMatlMatrix na uUpdate.
(1) Subrutini ya Kukokotoa Matriki ya Ugumu¶
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: Jina la nyenzomatl: Safu inayohifadhi konstanti za nyenzo (kiwango cha juu 100)strain: Mnyumbuko wa Green-Lagrangestress: Mkazo wa pili wa Piola-Kirchhofffstat: Vigezo vya haliD: Uhusiano wa konstitutivudtime: Nyongeza ya mudattime: Muda jumla mwanzoni mwa nyongeza ya sasa ya mudatemperature: Halijoto
(2) Subrutini ya Kukokotoa Usasishaji wa Mnyumbuko na Mkazo¶
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: Jina la nyenzomatl: Safu inayohifadhi konstanti za nyenzo (kiwango cha juu 100)strain: Mnyumbukostress: Mkazo wa pili wa Piola-Kirchhofffstat: Vigezo vya halidtime: Nyongeza ya mudattime: Muda jumla mwanzoni mwa nyongeza ya sasa ya mudatemperature: Halijoto