අන්තර්ගතය වෙත යන්න

පරිශීලක උපරූටීන විස්තාරණ

FrontISTR මූල කේතය වෙනස් නොකර ක්‍රියාකාරිත්වය විස්තාරණය කිරීමට පරිශීලක උපරූටීන සමූහයක් සපයයි. මෙය සංයුති නියමයන් සඳහා පරිශීලක ක්‍රියාත්මක කිරීම සහ පරිශීලක-නිර්වචිත බාහිර භාර ඇතුළත් කිරීම ආවරණය කරයි. මෙම පරිච්ඡේදය විස්තාරණය කළ හැකි ස්ථාන සහ ඒවා කැඳවීමට විශ්ලේෂණ පාලන ගොනුවේ භාවිත කරන මූලපද ලැයිස්තුගත කරයි. උපරූටීන තර්කවල විස්තරාත්මක පිරිවිතර සහ නැවත ගොඩනැගීමේ ක්‍රියාපටිපාටිය සඳහා පරිශීලක උපරූටීන (කේතකරණ මාර්ගෝපදේශය) බලන්න.

ක්‍රියාකාරිත්වයේ සමස්ත දසුන

පරිශීලක උපරූටීන මගින් විස්තාරණය කළ හැකි ස්ථාන ද්‍රව්‍ය සංයුති නියම සහ බාහිර භාර යන ප්‍රධාන පද්ධති දෙකකට බෙදේ. සංයුති නියම පාර්ශ්වයේ රේඛීය ප්‍රත්‍යාස්ථතාව, අධිප්‍රත්‍යාස්ථතාව, ප්‍රත්‍යාස්ථ-ප්ලාස්ටික් හැසිරීම සහ සාමාන්‍ය සංයුති නියම සඳහා කැඳවුම් මාර්ග හතරක් ඇති අතර, එක් එක් මාර්ගය වෙනම මූලපදයකින් සක්‍රීය කරයි. බාහිර භාර පාර්ශ්වයේ, පරිශීලකයා සකස් කළ බාහිර ගොනුවකින් භාර තොරතුරු කියවා සමස්ත භාර දෛශිකයට සහ අවශේෂ දෛශිකයට එකතු කරන මාර්ගයක් ඇත. සියලුම මාර්ග FrontISTR බෙදාහැරීමේ අඩංගු ආකෘති ගොනුව සංස්කරණය කර පසුව මූල වැඩසටහන නැවත ගොඩනැගීමෙන් භාවිත කළ හැක.

විස්තාරණ කාණ්ඩය විශ්ලේෂණ පාලන මූලපදය ප්‍රධාන පරිශීලක උපරූටීන සංස්කරණය කළ යුතු ආකෘති ගොනුව
පරිශීලක රේඛීය ප්‍රත්‍යාස්ථතාව !ELASTIC, TYPE=USER uElasticMatrix, uElasticUpdate fistr1/src/lib/user/uelastic.f90
පරිශීලක අධිප්‍රත්‍යාස්ථතාව !HYPERELASTIC, TYPE=USER uElasticMatrix, uElasticUpdate fistr1/src/lib/user/uelastic.f90
පරිශීලක ප්‍රත්‍යාස්ථ-ප්ලාස්ටික් (අවනති ශ්‍රිතය සහ ආපසු-නිරූපණය) !PLASTIC, YIELD=USER uElastoPlasticMatrix, uBackwardEuler, uElastoPlasticNumStatus fistr1/src/lib/user/uyield.f90
සාමාන්‍ය පරිශීලක සංයුති නියමය !USER_MATERIAL uMatlMatrix, uUpdate fistr1/src/lib/user/umat.f90
පරිශීලක-නිර්වචිත බාහිර භාරය !ULOAD, FILE=<fname> ureadload, uloading, uResidual fistr1/src/lib/user/uload.f90

පරිශීලක දැඩිකරණ නියමයකට (අවනති ශ්‍රිතය අන්තර්ගතව තබා, දැඩිකරණ වක්‍රය පමණක් පරිශීලකයා ක්‍රියාත්මක කරන මාර්ගයකට) සහාය නොදක්වයි. දැඩිකරණ වක්‍රය පරිශීලකයා විසින් ක්‍රියාත්මක කළ යුතු නම් !PLASTIC, YIELD=USER තෝරා ප්‍රත්‍යාස්ථ-ප්ලාස්ටික් සංයුති නියමය සම්පූර්ණයෙන්ම පරිශීලක ක්‍රියාත්මක කිරීමකින් ප්‍රතිස්ථාපනය කරන්න. පරිශීලක මායිම් කොන්දේසි හෝ නැවත-ආරම්භයේ පරිශීලක සැකසුම් සඳහා විස්තාරණ ස්ථානවලට සහාය නොදක්වයි.

!CREEP හි TYPE=USER සඳහා සහාය නොදක්වයි. කාලය මත රඳා පවතින සංයුති නියමයක් පරිශීලකයා ක්‍රියාත්මක කිරීමට !USER_MATERIAL භාවිත කරන්න.

පරිශීලක සංයුති නියම

පරිශීලක සංයුති නියම යනු අන්තර්ගත ද්‍රව්‍ය ආකෘතිවලින් නිරූපණය කළ නොහැකි ආතති–වික්‍රියා සම්බන්ධතාවක් බාහිර උපරූටීනයකින් ක්‍රියාත්මක කිරීමට ඇති ප්‍රවේශයකි. අදාළ අන්තර්ගත සංයුති නියම රාමුවට අනුව පරිශීලක රේඛීය ප්‍රත්‍යාස්ථතාව, පරිශීලක අධිප්‍රත්‍යාස්ථතාව, පරිශීලක ප්‍රත්‍යාස්ථ-ප්ලාස්ටික් සහ සාමාන්‍ය පරිශීලක සංයුති නියම යන මාර්ග හතරක් ඇත. සියලු මාර්ගවල විශ්ලේෂණ පාලන දත්තවල !MATERIAL බ්ලොක්හි අදාළ මූලපදයට TYPE=USER හෝ YIELD=USER එක් කරයි. පරිශීලක නියත උපරිම 100 ක් දක්වා සඳහන් කළ හැකි අතර ඒවා උපරූටීනයට යවනු ලැබේ.

පරිශීලක රේඛීය ප්‍රත්‍යාස්ථතාව

පරිශීලක රේඛීය ප්‍රත්‍යාස්ථතාව යනු කුඩා විරූපණ රාමුව තුළ ප්‍රත්‍යාස්ථ න්‍යාසය පරිශීලකයා ගණනය කරන මාර්ගයයි. විශ්ලේෂණ පාලන දත්ත තුළ !ELASTIC, TYPE=USER සඳහන් කළ විට FrontISTR එය කුඩා විරූපණ සංයුති නියමයක් ලෙස සලකා, මූලද්‍රව්‍ය දෘඪතාව ගණනය කිරීමේදී සහ ආතති යාවත්කාලීන කිරීමේදී uElasticMatrix (ප්‍රත්‍යාස්ථ න්‍යාසය \(D\) ලබා දෙයි) සහ uElasticUpdate (ආතතිය ලබා දෙයි) කැඳවයි. පවතින අධිප්‍රත්‍යාස්ථ හෝ ප්‍රත්‍යාස්ථ-ප්ලාස්ටික් ආකෘති සමඟ එකවර භාවිත නොකරයි.

පරිශීලක අධිප්‍රත්‍යාස්ථතාව

පරිශීලක අධිප්‍රත්‍යාස්ථතාව යනු විශාල විරූපණ (Total Lagrange) රාමුව තුළ වික්‍රියා ශක්ති ශ්‍රිතයේ අවකලනයෙන් ආතතිය සහ ස්පර්ශක දෘඪතාව ගණනය කරන මාර්ගයයි. විශ්ලේෂණ පාලන දත්ත තුළ !HYPERELASTIC, TYPE=USER සඳහන් කරයි. කැඳවන උපරූටීන පරිශීලක රේඛීය ප්‍රත්‍යාස්ථතාවේ ඇති uElasticMatrix සහ uElasticUpdate ම වන අතර, fistr1/src/lib/user/uelastic.f90 ආකෘතියද හවුල් වේ. මූලපද සැකසුම අනුව FrontISTR කුඩා විරූපණ ලෙසද Total Lagrange ලෙසද සලකන ආකාරය මාරු වන බැවින්, එකම ආකෘතිය කුඩා විරූපණ සහ විශාල විරූපණ දෙකම සඳහා නැවත භාවිත කළ නොහැක. එය එක් සංයුති නියමයක් ලෙස ක්‍රියාත්මක කරන්න.

පරිශීලක ප්‍රත්‍යාස්ථ-ප්ලාස්ටික්

පරිශීලක ප්‍රත්‍යාස්ථ-ප්ලාස්ටික් මාර්ගයේ අවනති ශ්‍රිතය සහ ආපසු-නිරූපණ (return-mapping) ක්‍රියාපටිපාටිය පරිශීලකයා ක්‍රියාත්මක කරයි. විශ්ලේෂණ පාලන දත්ත තුළ !PLASTIC, YIELD=USER සඳහන් කරයි. එය Mises, Mohr-Coulomb සහ Drucker-Prager යන අන්තර්ගත අවනති ශ්‍රිතවලින් ස්වාධීන ශාඛාවකට ඇතුළත් වන අතර, මූලද්‍රව්‍ය දෘඪතාව ගණනය කිරීමේදී uElastoPlasticMatrix (ප්‍රත්‍යාස්ථ-ප්ලාස්ටික් ස්පර්ශක දෘඪතාව \(D\) ලබා දෙයි), ආතති යාවත්කාලීන කිරීමේදී uBackwardEuler (පරීක්ෂණ ආතතිය සත්‍ය ආතතියට නිරූපණය කර තත්ත්ව විචල්‍ය යාවත්කාලීන කරයි), සහ Gauss ලක්ෂ්‍ය ආරම්භ කිරීමේදී uElastoPlasticNumStatus (රඳවාගන්නා තාත්වික තත්ත්ව විචල්‍ය ගණන ලබා දෙයි) කැඳවයි. දැඩිකරණ වක්‍රය පමණක් පරිශීලක ක්‍රියාත්මක කිරීමකින් ප්‍රතිස්ථාපනය කරන මාර්ගයකට සහාය නොදක්වයි. දැඩිකරණ වක්‍රය පරිශීලකයා ක්‍රියාත්මක කළ යුතු අවස්ථාවකද මෙම මාර්ගයෙන් ප්‍රත්‍යාස්ථ-ප්ලාස්ටික් සංයුති නියමය සම්පූර්ණයෙන්ම පරිශීලක ක්‍රියාත්මක කිරීමකින් ප්‍රතිස්ථාපනය කරන්න.

සාමාන්‍ය පරිශීලක සංයුති නියමය

සාමාන්‍ය පරිශීලක සංයුති නියමය යනු ප්‍රත්‍යාස්ථ, අධිප්‍රත්‍යාස්ථ හෝ ප්‍රත්‍යාස්ථ-ප්ලාස්ටික් රාමුවලට නොගැළපෙන සංයුති නියම එකවර ක්‍රියාත්මක කිරීමේ මාර්ගයකි. විශ්ලේෂණ පාලන දත්ත තුළ !USER_MATERIAL සඳහන් කරයි. පෙරනිමියෙන් Updated Lagrange ක්‍රමයේ රාමුව තුළ සලකන අතර KIRCHHOFF සඳහන් කළ විට Total Lagrange ක්‍රමය ලෙස සලකයි. තත්ත්ව විචල්‍ය ගණන NSTATUS මගින් සඳහන් කරයි. මූලද්‍රව්‍ය දෘඪතාව ගණනය කිරීමේදී uMatlMatrix (ස්පර්ශක දෘඪතාව \(D\) ලබා දෙයි) සහ ආතති යාවත්කාලීන කිරීමේදී uUpdate (ආතතිය සහ තත්ත්ව විචල්‍ය යාවත්කාලීන කරයි) කැඳවයි.

පරිශීලක නියත සහ තත්ත්ව විචල්‍ය හුවමාරුව

!ELASTIC, TYPE=USER, !HYPERELASTIC, TYPE=USER, !USER_MATERIAL යන සියලු මාර්ගවල විශ්ලේෂණ පාලන දත්ත පේළියේ ලියන පරිශීලක නියත (උපරිම 100 ක්) වෙනස් නොකර උපරූටීනයේ matl තර්කයට යවයි. !PLASTIC, YIELD=USER හිදී !ELASTIC මගින් සඳහන් කළ ප්‍රත්‍යාස්ථ නියත සමඟ !PLASTIC දත්ත පේළි මගින් ලබාදෙන පරිශීලක නියත යවයි.

සාමාන්‍ය පරිශීලක සංයුති නියම සහ !PLASTIC, YIELD=USER තුළ තත්ත්ව විචල්‍ය fstat හරහා පෙර පියවරේ ඉතිහාස තොරතුරු (ප්ලාස්ටික් වික්‍රියාව, පසු-ආතතිය, හානි ප්‍රමාණය ආදිය) පරිශීලක ක්‍රියාත්මක කිරීමට යවා පියවර අවසානයේ නැවත ලියා තැබිය හැක. තත්ත්ව විචල්‍ය ගණන සාමාන්‍ය පරිශීලක සංයුති නියමයේදී !USER_MATERIAL හි NSTATUS මගින්ද, !PLASTIC, YIELD=USER හිදී uElastoPlasticNumStatus හි ප්‍රතිලාභ අගයෙන්ද තීරණය වේ.

පරිශීලක-නිර්වචිත බාහිර භාර

පරිශීලක-නිර්වචිත බාහිර භාර යනු අන්තර්ගත සංකේන්ද්‍රිත භාර, බෙදාහැරුණු භාර හෝ පරිමා බල මගින් නිරූපණය කළ නොහැකි බාහිර බලයක් පරිශීලක උපරූටීනයකින් අර්ථ දැක්වීමේ මාර්ගයයි. විශ්ලේෂණ පාලන දත්ත තුළ !ULOAD, FILE=<fname> ලියා ඇති විට FrontISTR සඳහන් කළ ගොනු නාමය ureadload වෙත යවන අතර, පරිශීලක ක්‍රියාත්මක කිරීම කියවූ තොරතුරු මොඩියුල අභ්‍යන්තර දත්ත ලෙස රඳවා ගනී.

!ULOAD සක්‍රීය කිරීම පහත උපරූටීන තුනට සම්බන්ධ වේ.

  • ureadload: විශ්ලේෂණය ආරම්භයේදී පාලන ගොනුවේ සඳහන් බාහිර ගොනුවෙන් පරිශීලක-නිර්වචිත භාර කියවයි. පරිශීලක ක්‍රියාත්මක කිරීමේදී ගොනුව විවෘත කර අවශ්‍ය දත්ත මොඩියුල අභ්‍යන්තර විචල්‍යවල ගබඩා කරයි.
  • uloading: එක් එක් පියවරේ බාහිර භාර දෛශිකය එකලස් කරන විට කැඳවන අතර, සමස්ත භාර දෛශිකයට පරිශීලක භාර එකතු කරයි. වත්මන් පියවර අංකය සහ භාර සංගුණකය තර්ක ලෙස යවයි.
  • uResidual: එක් එක් පුනරාවර්තනයේ අවශේෂ දෛශිකය එකලස් කරන විට කැඳවන අතර, සමස්ත අවශේෂ දෛශිකයට පරිශීලක භාරයේ දායකත්වය එකතු කරයි. රේඛීය නොවන පුනරාවර්තනය සහ සමතුලිතතා ගණනය කිරීම යන දෙකෙන්ම මෙය කැඳවයි.

පරිශීලක මායිම් කොන්දේසි (නියමිත විස්ථාපන සහ ස්පර්ශ කොන්දේසි සඳහා පරිශීලක විස්තාරණ) සඳහා විස්තාරණ ස්ථානයක් සපයා නැත. බාහිර බල හැර වෙනත් පරිශීලක විස්තාරණයක් අවශ්‍ය නම් අදාළ අන්තර්ගත මූලපදය හෝ පරිශීලක සංයුති නියම මාර්ගය භාවිත කරන්න.

පරිශීලක උපරූටීන ක්‍රියාත්මක කිරීමේ ක්‍රියාපටිපාටිය

පරිශීලක උපරූටීන භාවිත කිරීමට FrontISTR මූල බෙදාහැරීමේ අඩංගු ආකෘති ගොනු සංස්කරණය කර පසුව FrontISTR මූල වැඩසටහන නැවත ගොඩනැගිය යුතුය. බෙදාහැරූ ද්විමය ගොනු තුළ පරිශීලක උපරූටීන ප්‍රතිස්ථාපනය කළ නොහැකි බැවින් පරිශීලක විස්තාරණ භාවිත කරන විට මූලයෙන් ගොඩනැගිය හැකි පරිසරයක් සූදානම් කරන්න.

පරිශීලක උපරූටීන ආකෘති fistr1/src/lib/user/ යටතේ තබා ඇති අතර, විස්තාරණ කාණ්ඩය අනුව සංස්කරණය කළ යුතු ගොනුව තීරණය වේ (ගොනු නාම සඳහා ක්‍රියාකාරිත්වයේ සමස්ත දසුන හි වගුව බලන්න). සෑම ගොනුවකම ආරම්භක තත්ත්වයේ උපරූටීන ශරීරය හිස්ව හෝ රේඛීය ප්‍රත්‍යාස්ථතාවේ නියැදි ක්‍රියාත්මක කිරීමක් ලෙස තිබෙන අතර, පරිශීලකයා තම සංයුති නියමය හෝ භාර අර්ථ දැක්වීම මෙහි එක් කරයි. ආකෘතිය සංස්කරණය කළ පසු FrontISTR මූල වැඩසටහන සාමාන්‍ය පරිදි CMake මගින් නැවත ගොඩනඟා, ලැබුණු fistr1 ක්‍රියාත්මක ගොනුවෙන් විශ්ලේෂණය ධාවනය කරන්න.

උපරූටීන තර්කවල අර්ථය, තත්ත්ව විචල්‍ය අරාව හැසිරවීම, නැවත ගොඩනැගීමේදී සැලකිලිමත් විය යුතු කරුණු ආදිය පිළිබඳ විස්තර කේතකරණ මාර්ගෝපදේශයේ වෙන වෙනම පිටුවල ඇත.

අදාළ අයිතම