Підпрограми для пружнопластичної деформації (uyield.f90)¶
Надає підпрограми для обчислення пружнопластичної матриці жорсткості та напружень за алгоритмом повернення. Щоб використовувати користувацьку функцію текучості, спочатку задайте у вхідному файлі !PLASTIC, YIELD=USER і введіть необхідні константи матеріалу, а потім потрібно створити функцію uElastoPlasticNumStatus і підпрограми uElastoPlasticMatrix та uBackwardEuler .
(1) Функція, що повертає кількість дійсних змінних стану¶
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)