Skip to content

ከተጠቃሚ-የተገለጹ ቁሳቁሶች ጋር የተያያዙ ሰብሩቲኖች (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: ሙቀት