پرش به محتویات

زیرروال‌های مرتبط با تغییرشکل الاستوپلاستیک (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: تنش پیولا-کیرشهف مرتبهٔ دوم
  • 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: تنش آزمایشی؛ تنش پیولا-کیرشهف مرتبهٔ دوم حاصل از فرض تغییرشکل الاستیک
  • plstrain: کرنش پلاستیک در آغاز زیرگام جاری
  • istat: متغیر حالت صحیح
  • fstat: آرایهٔ متغیرهای حالت حقیقی
  • temp: دما
  • hdflag: محاسبهٔ همهٔ مؤلفه‌ها (0)، فقط مؤلفه‌های انحرافی (1)، یا فقط مؤلفه‌های حجمی (2)