Առաձգապլաստիկ դեֆորմացիայի ենթածրագրեր (uyield.f90)¶
Տրամադրվում են ենթածրագրեր՝ առաձգապլաստիկ կոշտության մատրիցը և լարման վերադարձի քարտեզագրումը (return mapping) հաշվարկելու համար։ Օգտագործողի կողմից սահմանված հոսունության ֆունկցիա օգտագործելիս նախ մուտքային ֆայլում սահմանեք !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: երկրորդ Piola-Kirchhoff լարումistat: ամբողջ թվային վիճակի փոփոխականfstat: իրական թվային վիճակի փոփոխականների զանգվածplstrain: պլաստիկ դեֆորմացիան ընթացիկ ենթաքայլի սկզբումD: առաձգապլաստիկ մատրիցtemp: ջերմաստիճանhdflag: հաշվարկել բոլոր բաղադրիչները (0), միայն դեվիատորային բաղադրիչները (1), կամ միայն ծավալային բաղադրիչները (2)
(3) Լարման վերադարձի քարտեզագրման (return mapping) հաշվարկման ենթածրագիր¶
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) համար առաձգական դեֆորմացիա ենթադրելով ստացված երկրորդ Piola-Kirchhoff լարումplstrain: պլաստիկ դեֆորմացիան ընթացիկ ենթաքայլի սկզբումistat: ամբողջ թվային վիճակի փոփոխականfstat: իրական թվային վիճակի փոփոխականների զանգվածtemp: ջերմաստիճանhdflag: հաշվարկել բոլոր բաղադրիչները (0), միայն դեվիատորային բաղադրիչները (1), կամ միայն ծավալային բաղադրիչները (2)