Skip to content

Серпімді-пластикалық деформацияға арналған ішкі бағдарламалар (uyield.f90)

Серпімді-пластикалық қаттылық матрицасын және кернеуді кері проекциялау (return mapping) есебін орындауға арналған ішкі бағдарламалар беріледі. Пайдаланушы анықтайтын аққыштық функциясын қолданғанда, алдымен кіріс файлында !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: 2-ші 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: серпімді деформация болжамымен алынған сынақ кернеуі (trial stress), яғни 2-ші Piola-Kirchhoff кернеуі
  • plstrain: Ағымдағы ішкі қадамның басындағы пластикалық деформация
  • istat: Бүтін санды күй айнымалысы
  • fstat: Нақты күй айнымалыларының массиві
  • temp: Температура
  • hdflag: Барлық компоненттерді (0), тек девиаторлық компоненттерді (1) немесе тек көлемдік компоненттерді (2) есептеу
AI-assisted translation May contain errors Official docs Status