خروجی و راهاندازی مجدد¶
نتایج تحلیل در حالت عادی در حافظه قرار دارند؛ بنابراین برای پسپردازش، بصریسازی، بازیابی یا ادامه محاسبه باید در فایل مناسب نوشته شوند. چون قالب فایل، اقلام خروجی و تناوب خروجی بسته به کاربرد متفاوت است، FrontISTR چند مسیر خروجی مجزا را فراهم میکند.
خروجی FrontISTR از سه مسیر تشکیل میشود: فایل نتیجه برای ذخیره مقادیر تحلیل (!WRITE,RESULT)، فایل بصریسازی برای نمایش (!WRITE,VISUAL) و فایل راهاندازی مجدد برای ذخیره وضعیت تحلیل (!RESTART). کمیتهای فیزیکی موجود در فایل نتیجه و فایل بصریسازی بهترتیب با !OUTPUT_RES و !OUTPUT_VIS انتخاب میشوند.
نمای کلی قابلیتها¶
برای سازماندهی تنظیمات خروجی، مفید است سه محور زیر جداگانه در نظر گرفته شوند.
| محور | ورودی اصلی | نقش |
|---|---|---|
| مقصد خروجی | !WRITE,RESULT، !WRITE,VISUAL، !RESTART | تعیین میکند نتیجه برای چه کاربردی و در چه نوع فایلی ذخیره شود. |
| متغیرهای خروجی | !OUTPUT_RES، !OUTPUT_VIS | کمیتهای فیزیکی موجود در فایل نتیجه یا فایل بصریسازی را تعیین میکند. |
| تناوب خروجی | FREQUENCY | مشخص میکند هر چند گام یکبار داده در فایل نوشته شود. |
!WRITE,RESULT فایل نتیجه را فعال میکند و متغیرهای خروجی با !OUTPUT_RES مشخص میشوند. !WRITE,VISUAL فایل بصریسازی را فعال میکند و متغیرهای ارسالشده به بصریسازی با !OUTPUT_VIS تعیین میشوند. در هر دو مورد، فاصله خروجی با FREQUENCY کنترل میشود. !WRITE یک کارت واحد است و RESULT / VISUAL / FEMAP پارامترهای انتخاب مقصد خروجی آن هستند و میتوانند در همین کارت استفاده شوند.
در خطوط داده !OUTPUT_RES و !OUTPUT_VIS نام متغیرهای خروجی همراه با ON / OFF فهرست میشود. با تعیین GROUP میتوان خروجی را به یک گروه محدود کرد. برای قالب دقیق ورودی و خطوط داده قابل تعیین به مرجع کلیدواژهها مراجعه کنید.
!RESTART جدا از فایلهای نتیجه و بصریسازی، خود وضعیت تحلیل را ذخیره میکند. فایل راهاندازی مجدد برای ادامه تحلیل از همان وضعیت پس از توقف استفاده میشود.
انتخاب خروجی¶
خروجی باید بر اساس هدف بررسی انتخاب شود. اگر مقادیر عددی برای پسپردازش یا تحلیل دیگری لازماند، فایل نتیجه مناسب است؛ اگر شکل یا توزیع کمیتها باید با ابزار بصریسازی مشاهده شود، فایل بصریسازی را انتخاب کنید. اگر لازم است تحلیل از میانه ادامه یابد، فایل راهاندازی مجدد را جدا از خروجی معمول نتیجه فعال کنید.
| هدف | خروجی انتخابی | تعیین اصلی |
|---|---|---|
| ذخیره مقادیر تحلیل برای پسپردازش، مقایسه یا تحلیل دیگر | فایل نتیجه | !WRITE,RESULT و !OUTPUT_RES |
| مشاهده توزیعها و شکل تغییرشکلیافته در ParaView و مانند آن | فایل بصریسازی | !WRITE,VISUAL، !OUTPUT_VIS، !VISUAL |
| ادامه تحلیل طولانی از میانه | فایل راهاندازی مجدد | !RESTART |
| کاهش حجم خروجی | فقط متغیرهای لازم | ON / OFF در !OUTPUT_RES / !OUTPUT_VIS و FREQUENCY |
در تحلیلهای بزرگ، ذخیره همه گامها با خروجی پیشفرض میتواند حجم فایلهای نتیجه و بصریسازی را بسیار افزایش دهد. فقط کمیتهای فیزیکی لازم را ON و مقادیر غیرضروری را OFF کنید. اگر دنبالکردن ریز تاریخچه زمانی لازم نیست، FREQUENCY را بزرگتر کنید تا فاصله خروجی افزایش یابد.
متغیرهای خروجی را بهتر است به ترتیب «کمیت فیزیکی موردنظر»، «محل ذخیره» و «تناوب» انتخاب کنید. برای مثال، برای بررسی توزیع تنش در ParaView، فایل بصریسازی را فعال و NSTRESS یا NMISES را در !OUTPUT_VIS انتخاب کنید. برای پسپردازش عددی نیروی تماس، فایل نتیجه را فعال و CONTACT_NFORCE و مانند آن را در !OUTPUT_RES انتخاب کنید.
کمیتهای فیزیکی قابل خروجی¶
متغیرهای خروجی به نتایج تحلیل سازه، تحلیل دینامیکی، تحلیل حرارتی، تحلیل تماس، نتایج ویژه المان و فراداده شناسایی تقسیم میشوند. جدول زیر نام، نوع و تحلیلهای اصلی مربوط به متغیرهای مهم را خلاصه میکند. برای فهرست کامل نام متغیرها و قالب خطوط داده، به !OUTPUT_RES و !OUTPUT_VIS مراجعه کنید.
| دسته | نام متغیر | نوع | تحلیلهای اصلی | توضیح |
|---|---|---|---|---|
| کمیتهای پایه تحلیل سازه | DISP، ROT، REACTION | بردار | تحلیل استاتیکی، تحلیل دینامیکی | جابهجایی، دوران و نیروی واکنش گرهای. ROT برای المانهای دارای درجه آزادی دورانی معتبر است. |
| تنش | NSTRESS، ESTRESS، ISTRESS | تانسور متقارن | تحلیل سازه | تنش میانگین گرهای، تنش المان و تنش نقطه انتگرالگیری. |
| تنش فونمیزس و تنش اصلی | NMISES، EMISES، PRINC_NSTRESS، PRINC_ESTRESS، PRINCV_NSTRESS، PRINCV_ESTRESS | اسکالر، بردار | تحلیل سازه | تنش فونمیزس، مقادیر تنش اصلی و جهتهای تنش اصلی. |
| کرنش | NSTRAIN، ESTRAIN، ISTRAIN | تانسور متقارن | تحلیل سازه | کرنش گرهای، کرنش المان و کرنش نقطه انتگرالگیری. |
| کرنش پلاستیک و حرارتی | PL_ISTRAIN، PL_ESTRAIN، TH_NSTRAIN، TH_ESTRAIN، TH_ISTRAIN | اسکالر، تانسور متقارن | تحلیل سازه غیرخطی، تحلیل تنش حرارتی | کرنش پلاستیک معادل و کرنش حرارتی. |
| کرنش اصلی | PRINC_NSTRAIN، PRINC_ESTRAIN، PRINCV_NSTRAIN، PRINCV_ESTRAIN | اسکالر، بردار | تحلیل سازه | مقادیر کرنش اصلی و جهتهای کرنش اصلی. |
| تحلیل دینامیکی | VEL، ACC | بردار | تحلیل دینامیکی | سرعت گرهای و شتاب گرهای. |
| تحلیل حرارتی | TEMP | اسکالر | تحلیل هدایت حرارتی | دمای گرهای. در فایلهای نتیجه و بصریسازی تحلیل حرارتی بهصورت میدان دما خروجی میشود. |
| تماس | CONTACT_NFORCE، CONTACT_FRICTION، CONTACT_RELVEL، CONTACT_STATE، CONTACT_NTRACTION، CONTACT_FTRACTION | بردار، اسکالر | تحلیل تماس | نیروی نرمال تماس، نیروی اصطکاک، سرعت لغزش نسبی، وضعیت تماس و نیروی تماس بر واحد سطح. |
| المان تیر | BEAM_NQM | مقدار 12 مؤلفهای | تحلیل سازه شامل المان تیر | نیروهای داخلی مقطع المان تیر. |
| شناسایی و وضعیت | NODE_ID، ELEM_ID، SECTION_ID، MATERIAL_ID، ELEMACT، YIELD_RATIO | اسکالر | تحلیل سازه، بصریسازی | اطلاعات شناسایی گره، المان، مقطع و ماده؛ وضعیت فعالسازی المان؛ نسبت تسلیم. ELEMACT برای المان فعال 1 و برای المان غیرفعال 0 خروجی میدهد. |
| اطلاعات کمکی پوسته | SHELL_LAYER، SHELL_SURFACE | اسکالر | تحلیل سازه شامل المان پوسته | اطلاعات کمکی برای شناسایی خروجی لایهای و سطح پوسته. |
بهطور پیشفرض DISP، ROT، NSTRESS و NMISES روی ON هستند. با این حال، اینکه مقدار معناداری واقعاً خروجی شود به نوع تحلیل، نوع المان، مدل ماده و تنظیم تماس بستگی دارد. برای مثال VEL و ACC در تحلیل دینامیکی استفاده میشوند و CONTACT_* زمانی کاربرد دارند که اطلاعات تماس در تحلیل تماس تولید شود.
خروجی لایهای پوسته¶
المان پوسته در راستای ضخامت چند نقطه انتگرالگیری یا چند لایه دارد، بنابراین حتی در یک المان، مقادیر تنش و کرنش بسته به لایه یا سطح متفاوتاند. فقط با مقادیر میانگین گرهای یا المانی معمول، تشخیص اینکه مقدار متعلق به کدام لایه یا سطح است دشوار است.
اگر SHELL_LAYER روی ON قرار گیرد، برای هر لایه پوسته چندلایه، نتایج سمت + و - بهطور مجزا خروجی میشوند. به مؤلفههای تنش و کرنش خروجی، شناسهای برای شماره لایه و سمت سطح افزوده میشود و میتوان از آن برای توزیع تنش در ضخامت یا ارزیابی آسیب هر لایه استفاده کرد.
SHELL_SURFACE اطلاعات کمکی برای شناسایی سطحهایی مانند رویه/زیره پوسته است. هنگام بصریسازی نتایج لایهای پوسته، SHELL_LAYER و متغیرهای تنش/کرنش لازم را فعال کنید و در ابزار بصریسازی، مؤلفه نتیجه متناظر با لایه یا سطح موردنظر را انتخاب کنید.
خروجی لایهای پوسته تعداد مؤلفههای خروجی را افزایش میدهد؛ بنابراین در مدلهایی با تعداد زیاد لایه، حجم فایل افزایش مییابد. بهتر است خروجی به متغیرهای تنش و کرنش لازم محدود شود.
مقصدهای خروجی¶
فایل نتیجه و فایل بصریسازی کاربرد و قالب ذخیره متفاوتی دارند. میتوان در یک تحلیل هر دو یا فقط یکی از آنها را خروجی گرفت.
فایل نتیجه¶
فایل نتیجه با !WRITE,RESULT فعال میشود. نتایج تحلیل را بهعنوان داده نتیجه FrontISTR / HEC-MW ذخیره میکند و برای پسپردازش عددی یا خواندن در تحلیل دیگر به کار میرود. متغیرهای خروجی با !OUTPUT_RES انتخاب میشوند.
!WRITE,RESULT نیز بهعنوان پارامتر RESULT کارت !WRITE پیادهسازی شده و در کنار خروجی بصریسازی و FEMAP یک گزینه مقصد خروجی است.
فایل نتیجه میتواند در تحلیل سازه جابهجایی، تنش، کرنش، نیروی واکنش، اطلاعات تماس و مانند آن و در تحلیل حرارتی میدان دما را ذخیره کند. فاصله خروجی برای هر گام با FREQUENCY تعیین میشود. برای نام دقیق فایل، محل آن و روش بررسی پس از اجرا به راهنمای اجرا مراجعه کنید.
فایل نتیجه (پسوند .res) داده متنی با ساختار زیر است. در ابتدا نسخه قالب و توضیح، سپس متغیرهای کلی و در انتها متغیرهای خروجی برای هر گره و المان قرار میگیرند.
*fstrresult 2.0
*comment
<خط توضیح>
*global
<تعداد متغیرهای کلی>
<درجات آزادی متغیرهای کلی>
<نام متغیرهای کلی>
<مقدار متغیرهای کلی>
...
*data
<تعداد گرهها> <تعداد المانها>
<تعداد دادههای گرهای> <تعداد دادههای المانی>
<درجات آزادی دادههای گرهای> ...
<نام دادههای گرهای>
...
<مقادیر دادههای گرهای>
...
<درجات آزادی دادههای المانی> ...
<نام دادههای المانی>
...
<مقادیر دادههای المانی>
...
فایل گزارش¶
فایل گزارش (پسوند .log) فایل خلاصهای است که همیشه پس از تحلیل خروجی میشود. علاوه بر کمیتهای فیزیکی هر گره و المان، بیشینه/کمینه مؤلفههای جابهجایی، کرنش و تنش نیز خروجی میشوند. در تحلیل مودال، مقادیر ویژه و بردارهای ویژه خروجی میشوند. محتوای خروجی را میتوان با پارامتر LOG کارت !WRITE کنترل کرد. برای نام و محل فایل به راهنمای اجرا مراجعه کنید.
فایل بصریسازی¶
فایل بصریسازی با !WRITE,VISUAL فعال میشود. مش و داده نتیجه را به قالب مناسب ابزار بصریسازی تبدیل و خروجی میکند. متغیرها با !OUTPUT_VIS انتخاب و قالب و شرایط بصریسازی با !VISUAL تعیین میشوند.
!WRITE,VISUAL یک کلیدواژه مستقل نیست؛ بلکه پارامتر VISUAL کارت !WRITE است و در کنار !WRITE,RESULT / !WRITE,FEMAP مقصد خروجی را انتخاب میکند (fistr1/src/common/fstr_ctrl_common.f90، تابع fstr_ctrl_get_WRITE).
برای فعالکردن بصریسازی، حداقل باید سطح بصریسازی و قالب خروجی را در کارت !VISUAL تعیین کرد. مجموعه داده حداقلی به صورت زیر است.
تعیین surface_num و !surface قابل حذف نیست. برای قالب دقیق و گزینههای قابل استفاده به !VISUAL مراجعه کنید.
قالبهای اصلی بصریسازی عبارتاند از:
| قالب | کاربرد |
|---|---|
| VTK | برای بصریسازی در ParaView و مانند آن. |
| AVS (UCD) | برای بصریسازی و تبادل داده در قالب AVS / UCD. |
| BMP | خروجی نتیجه بصریسازی بهصورت تصویر. |
| NEU | تبادل داده با قالب neutral نرمافزار FEMAP. |
فایل بصریسازی نسبت به فایل نتیجه مستقیماً در ابزارهای بصریسازی قابل استفادهتر است، اما بسته به قالب انتخابشده و تعداد متغیرها حجم بیشتری میگیرد. در مدلهای بزرگ فقط متغیرهای لازم برای نمایش را در !OUTPUT_VIS فعال کنید.
راهاندازی مجدد¶
راهاندازی مجدد قابلیتی برای ذخیره وضعیت داخلی در نقطه توقف تحلیل و ادامه محاسبه از همان وضعیت در اجرای بعدی است. فایل نتیجه معمول برای پسپردازش است، در حالی که فایل راهاندازی مجدد وضعیت لازم برای ادامه محاسبه توسط حلگر را ذخیره میکند.
اگر n در !RESTART, FREQUENCY=n مثبت باشد، فایل راهاندازی مجدد در فاصله گام مشخصشده نوشته میشود. اگر n منفی باشد، در شروع اجرا فایل راهاندازی مجدد موجود خوانده شده و سپس با قدرمطلق |n| بهعنوان فاصله نوشتن، فایل راهاندازی مجدد جدید نوشته میشود.
در راهاندازی مجدد تحلیل سازه، گام جاری، زیرگام، شمارنده کل گام، زمان، افزایش زمان، تاریخچه بار، جابهجایی، نیروی خارجی، تنش و کرنش هر نقطه Gauss، متغیرهای حالت داخلی ماده، وضعیت تماس و مانند آن ذخیره میشوند. در تحلیل دینامیکی، علاوه بر جابهجایی، سرعت، شتاب، انرژی کرنشی، زمان جاری، افزایش زمان و سایر حالتهای دینامیکی لازم برای ادامه انتگرالگیری زمانی نیز ذخیره میشوند. در تحلیل حرارتی، شماره گام، زمان و میدان دما ذخیره میشود و هنگام خواندن، میدان دما بهعنوان حالت اولیه بازیابی میگردد.
زمان نوشتن راهاندازی مجدد در تحلیل استاتیکی و رفتار ادامه¶
راهاندازی مجدد تحلیل استاتیکی (fstr_solve_NLGEOM) دو مسیر نوشتن دارد و رفتار ادامه برای آنها متفاوت است.
- نوشتن در میانه زیرگام: در حلقه زیرگام، هنگامی که
step_countمضربی ازFREQUENCYشود، فایل نوشته میشود. اطلاعات زمان بهصورت «زمان شروع گام جاری» ذخیره میشود و فهرست بار مربوط به گام قبلی همراه آن است. - نوشتن در انتهای گام: بلافاصله پس از پایان حلقه زیرگام هر گام بار، مستقل از اینکه مضربی از
FREQUENCYباشد یا نه، همیشه نوشته میشود. اطلاعات زمان بهصورت «زمان پایان گام» ذخیره میشود و فهرست بار همان گام همراه آن است.
هنگام خواندن، FrontISTR با مقایسه «زمان جاری» و «زمان مرجع» ذخیرهشده، تکمیل شدن گام را تشخیص میدهد (تابع fstr_read_restart در fstr_Restart.f90).
| وضعیت هنگام نوشتن | رفتار هنگام ادامه |
|---|---|
| میانه زیرگام | از زیرگام بعدی همان گام ادامه میدهد. موقعیت زیرگام در زمان نوشتن به ارث میرسد و حلقه زیرگامهای باقیمانده اجرا میشود. |
| انتهای گام | از نخستین زیرگام گام بعدی شروع میکند. cstep یک واحد افزایش و substep=1 تنظیم میشود و تحلیل ادامه مییابد. |
بنابراین حتی با تنظیم یکسان FREQUENCY، شماره گام و مبنای زمان پس از ادامه بسته به زمان وقوع نوشتن (میانه زیرگام / انتهای گام) متفاوت است. بهویژه، نوشتن انتهای گام مستقل از FREQUENCY در انتهای هر گام همیشه انجام میشود.
زمان نوشتن راهاندازی مجدد در تحلیل دینامیکی و رفتار ادامه¶
در راهاندازی مجدد تحلیل دینامیکی تاریخچه زمانی نیز بین نوشتن در میانه زیرگام و انتهای گام تفاوت وجود دارد. در میانه زیرگام، هنگامی که شمارنده کل زیرگام step_count مضربی از FREQUENCY شود، فایل نوشته میشود؛ در انتهای گام، مستقل از FREQUENCY در پایان همان گام نوشته میشود.
هنگام خواندن، محل ادامه از شماره گام، شماره زیرگام و شمارنده کل زیرگام ذخیرهشده بازیابی میشود. در قالب جاری (restart_version >= 5) از هدر مشترک با تحلیل استاتیکی استفاده شده و زمان جاری، افزایش زمان، آمار تکرار Newton و وضعیت افزایش خودکار ذخیره میشوند. در نتیجه حتی در تحلیل دینامیکی با چند !STEP و افزایش خودکار/cutback، مبنای زمان و افزایش زمان پس از ادامه حفظ میشوند. برخی فایلهای راهاندازی مجدد تحلیل دینامیکی با قالب قدیمی نیز قابلیت خواندن دارند، اما برای تحلیل جدید از قالب جاری استفاده کنید.
نحوه نوشتن کارت !STEP هنگام راهاندازی مجدد¶
هنگام ادامه با راهاندازی مجدد، FrontISTR کارتهای !STEP فایل cnt را بهعنوان «رشته گامهایی که پس از ادامه اجرا میشوند» میخواند و همیشه از نخستین مورد (tot_step=1) بهترتیب پردازش میکند. شماره گام موجود در اطلاعات راهاندازی مجدد خواندهشده برای هماهنگکردن شماره کل گام در نمایش استفاده میشود و روی اندیس !STEP در cnt اثری ندارد. افزون بر آن، در قالب جاری، هنگام خواندن راهاندازی مجدد، زمان مرجع به starttime هر !STEP در cnt بهصورت یکجا افزوده میشود تا خط زمانی بر مبنای زمان ادامه تنظیم شود.
بنابراین cnt مخصوص ادامه راهاندازی مجدد را طبق سیاست زیر آماده کنید.
| نوع توقف | محدوده !STEP که در cnt باقی میماند |
|---|---|
| نوشتن در میانه زیرگام (گام کامل نشده) | گامی را که متوقف شده است در ابتدا نگه دارید و سپس گامهای اجرانشده بعدی را قرار دهید. |
| نوشتن در انتهای گام (گام کامل شده) | گامهای کاملشده را حذف کنید و از گام بعدی که باید اجرا شود آغاز کنید. |
در هر حالت، اصل بر این است که گامهای از قبل کاملشده از cnt حذف شوند. چون زمان راهاندازی مجدد بهصورت خودکار به starttime افزوده میشود، در cnt کافی است زمان از 0 (یا زمان شروع نسبی گام) نوشته شود. ارجاعهای شرایط مرزی، بار و مانند آن فقط به اندازه کارتهای !STEP باقیمانده در cnt نگه داشته شوند. همین سیاست برای راهاندازی مجدد تحلیل دینامیکی دارای چند !STEP نیز معتبر است.
روند معمول استفاده از راهاندازی مجدد به صورت زیر است.
- در اجرای نخست،
!RESTART, FREQUENCY=nرا مشخص کنید تا فایل راهاندازی مجدد نوشته شود. - در اجرای ادامه تحلیل،
!RESTART, FREQUENCY=-nرا مشخص کنید. - FrontISTR هنگام راهاندازی فایل راهاندازی مجدد را میخواند و پس از آن هر
nگام وضعیت جدید را مینویسد.
برای نامگذاری فایل راهاندازی مجدد، محل آن و روش تعیین هنگام اجرا، به راهنمای اجرا مراجعه کنید. خواندن برخی قالبهای نسخه قدیمی نیز سازگار است، اما برای تحلیل جدید از قالب نسخه جاری استفاده کنید.
موارد مرتبط¶
- اجرای ترتیبی — اصول محل فایلها و بررسی خروجی هنگام اجرای تحلیل.
- !OUTPUT_RES، !OUTPUT_VIS — تعیین متغیرهایی که در فایل نتیجه و فایل بصریسازی خروجی میشوند.
- !WRITE — فعالکردن خروجی فایل نتیجه، فایل بصریسازی و گزارش و تعیین تناوب خروجی (پارامترهای
RESULT/VISUAL/LOG/FEMAP). - !VISUAL — تعیین سطح بصریسازی و قالب خروجی (شامل مثال مجموعه داده حداقلی).
- !RESTART — تعیین خواندن و نوشتن فایل راهاندازی مجدد.
- نوع تحلیل — اقلام اصلی نتیجه برای هر نوع تحلیل.
- تماس و جاسازی — معنای خروجی تماس و نحوه برخورد با وضعیت تماس.
- کنترل گام — ارتباط با گامهای خروجی و نقاط زمانی.