Υπορουτίνες για υλικά ορισμένα από τον χρήστη (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: Παραμόρφωση Green-Lagrangestress: Δεύτερη τάση Piola-Kirchhofffstat: Μεταβλητές κατάστασης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: Δεύτερη τάση Piola-Kirchhofffstat: Μεταβλητές κατάστασηςdtime: Χρονικό βήμαttime: Συνολικός χρόνος στην αρχή του τρέχοντος χρονικού βήματοςtemperature: Θερμοκρασία