ข้ามไปที่เนื้อหา

ซับรูทีนสำหรับวัสดุที่ผู้ใช้กำหนด (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-Lagrange
  • stress: ความเค้น 2nd Piola-Kirchhoff
  • 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: ความเค้น 2nd Piola-Kirchhoff
  • fstat: ตัวแปรสถานะ
  • dtime: ช่วงเพิ่มของเวลา
  • ttime: เวลารวม ณ จุดเริ่มต้นของช่วงเพิ่มเวลาปัจจุบัน
  • temperature: อุณหภูมิ
AI-assisted translation May contain errors Official docs Status