Skip to content

ഇലാസ്റ്റോപ്ലാസ്റ്റിക് രൂപവ്യതിയാനവുമായി ബന്ധപ്പെട്ട സബ്‌റൂട്ടീനുകൾ (uyield.f90)

ഇലാസ്റ്റോപ്ലാസ്റ്റിക് സ്റ്റിഫ്നസ് മാട്രിക്സും സ്ട്രെസിന്റെ റിട്ടേൺ മാപ്പിംഗും കണക്കാക്കുന്നതിനുള്ള സബ്‌റൂട്ടീനുകൾ നൽകുന്നു. ഉപയോക്താവ് നിർവചിച്ച യീൽഡ് ഫംഗ്ഷൻ ഉപയോഗിക്കുമ്പോൾ, ആദ്യം ഇൻപുട്ട് ഫയലിൽ !PLASTIC, YIELD=USER ക്രമീകരിച്ച് ആവശ്യമായ മെറ്റീരിയൽ സ്ഥിരാങ്കങ്ങൾ നൽകണം, തുടർന്ന് uElastoPlasticNumStatus ഫംഗ്ഷനും uElastoPlasticMatrix, uBackwardEuler സബ്‌റൂട്ടീനുകളും സൃഷ്ടിക്കണം.

(1) യഥാർത്ഥ സംഖ്യ സ്റ്റേറ്റ് വേരിയബിളുകളുടെ എണ്ണം നൽകുന്ന ഫംഗ്ഷൻ

integer function uElastoPlasticNumStatus( matl )
    real(kind=kreal),   intent(in)  :: matl(:)
  • matl: മെറ്റീരിയൽ സ്ഥിരാങ്കങ്ങൾ സൂക്ഷിക്കുന്ന അറേ (1-100: സിസ്റ്റം നിർവചിച്ച മെറ്റീരിയൽ സ്ഥിരാങ്കങ്ങൾ, 101-200: ഉപയോക്താവ് നിർവചിച്ച മെറ്റീരിയൽ സ്ഥിരാങ്കങ്ങൾ)

(2) ഇലാസ്റ്റോപ്ലാസ്റ്റിക് സ്റ്റിഫ്നസ് മാട്രിക്സ് കണക്കാക്കുന്ന സബ്‌റൂട്ടീൻ

  subroutine uElastoPlasticMatrix( matl, stress, istat, fstat, plstrain, D, temp, hdflag )
    real(kind=kreal),   intent(in)  :: matl(:)
    real(kind=kreal),   intent(in)  :: stress(6)
    integer(kind=kint), intent(in)  :: istat
    real(kind=kreal),   intent(in)  :: fstat(:)
    real(kind=kreal),   intent(in)  :: plstrain
    real(kind=kreal),   intent(out) :: D(:,:)
    real(kind=kreal),   intent(in)  :: temp
    integer(kind=kint), intent(in)  :: hdflag
  • matl: മെറ്റീരിയൽ സ്ഥിരാങ്കങ്ങൾ സൂക്ഷിക്കുന്ന അറേ (1-100: സിസ്റ്റം നിർവചിച്ച മെറ്റീരിയൽ സ്ഥിരാങ്കങ്ങൾ, 101-200: ഉപയോക്താവ് നിർവചിച്ച മെറ്റീരിയൽ സ്ഥിരാങ്കങ്ങൾ)
  • stress: 2nd Piola-Kirchhoff സ്ട്രെസ്
  • istat: പൂർണ്ണസംഖ്യ സ്റ്റേറ്റ് വേരിയബിൾ
  • fstat: യഥാർത്ഥ സംഖ്യ സ്റ്റേറ്റ് വേരിയബിളുകളുടെ അറേ
  • plstrain: നിലവിലെ സബ്‌സ്റ്റെപ്പിന്റെ ആരംഭത്തിലെ പ്ലാസ്റ്റിക് സ്ട്രെയിൻ
  • D: ഇലാസ്റ്റോപ്ലാസ്റ്റിക് മാട്രിക്സ്
  • temp: താപനില
  • hdflag: എല്ലാ ഘടകങ്ങളും (0), ഡിവിയേറ്ററിക് ഘടകങ്ങൾ മാത്രം (1), അല്ലെങ്കിൽ വോള്യൂമെട്രിക് ഘടകങ്ങൾ മാത്രം (2) കണക്കാക്കുന്നു

(3) സ്ട്രെസ് റിട്ടേൺ മാപ്പിംഗ് കണക്കാക്കുന്ന സബ്‌റൂട്ടീൻ

  subroutine uBackwardEuler( matl, stress, plstrain, istat, fstat, temp, hdflag )
    real(kind=kreal),   intent(in)    :: matl(:)
    real(kind=kreal),   intent(inout) :: stress(6)
    real(kind=kreal),   intent(in)    :: plstrain
    integer(kind=kint), intent(inout) :: istat
    real(kind=kreal),   intent(inout) :: fstat(:)
    real(kind=kreal),   intent(in)    :: temp
    integer(kind=kint), intent(in)    :: hdflag
  • matl: മെറ്റീരിയൽ സ്ഥിരാങ്കങ്ങൾ സൂക്ഷിക്കുന്ന അറേ (1-100: സിസ്റ്റം നിർവചിച്ച മെറ്റീരിയൽ സ്ഥിരാങ്കങ്ങൾ, 101-200: ഉപയോക്താവ് നിർവചിച്ച മെറ്റീരിയൽ സ്ഥിരാങ്കങ്ങൾ)
  • stress: ട്രയൽ സ്ട്രെസ് ആയി ഇലാസ്റ്റിക് രൂപവ്യതിയാനം അനുമാനിച്ച് ലഭിച്ച 2nd Piola-Kirchhoff സ്ട്രെസ്
  • plstrain: നിലവിലെ സബ്‌സ്റ്റെപ്പിന്റെ ആരംഭത്തിലെ പ്ലാസ്റ്റിക് സ്ട്രെയിൻ
  • istat: പൂർണ്ണസംഖ്യ സ്റ്റേറ്റ് വേരിയബിൾ
  • fstat: യഥാർത്ഥ സംഖ്യ സ്റ്റേറ്റ് വേരിയബിളുകളുടെ അറേ
  • temp: താപനില
  • hdflag: എല്ലാ ഘടകങ്ങളും (0), ഡിവിയേറ്ററിക് ഘടകങ്ങൾ മാത്രം (1), അല്ലെങ്കിൽ വോള്യൂമെട്രിക് ഘടകങ്ങൾ മാത്രം (2) കണക്കാക്കുന്നു