شروع کار

FrontISTR / Getting Started

شروع کار

با FrontISTR تحلیل یک لولا را اجرا کنید و سپس توزیع تنش را در ParaView ببینید. حل‌گر و مثال آماده را دانلود کنید؛ برای اجرای نخست لازم نیست از ساخت مش شروع کنید.

مشاهده مراحل

توزیع تنش von Mises در یک لولا، با تمرکز تنش در اطراف سوراخ‌ها.
یک تحلیل استاتیکی خطی برای لولا اجرا کنید. هدف این است که NodalMISES، یعنی تنش گره‌ای von Mises، به صورت کانتور رنگی نمایش داده شود.

01

حل‌گر را آماده کنید

فایل باینری Windows یا ایمیج Docker را انتخاب کنید که در Windows، macOS و Linux قابل استفاده است.

Windows (64-bit)

دانلود برای Windows

فایل ZIP را استخراج کنید. پس از آماده کردن مثال در مرحله بعد، fistr1.exe و همه فایل‌های DLL همراه آن را در پوشه مثال (01_elastic_hinge) کپی کنید.

Docker (Windows / macOS / Linux)

Docker را اجرا کنید و سپس دستور زیر را در ترمینال اجرا کنید. در Windows، Docker را در حالت کانتینر Linux قرار دهید و دستور را در PowerShell اجرا کنید.

docker pull --platform linux/amd64 registry.gitlab.com/frontistr-commons/frontistr/fistr1:master

ایمیج رسمی فعلی برای معماری amd64 ساخته شده است. در Macهای دارای Apple Silicon با شبیه‌سازی اجرا می‌شود و ممکن است زمان بیشتری ببرد.

ساخت از کد منبع

همچنین می‌توانید FrontISTR را در هر یک از این سیستم‌عامل‌ها از کد منبع بسازید. پس از نصب کامپایلرها و کتابخانه‌های لازم، CMake محیط را تشخیص می‌دهد و فرایند ساخت را پیکربندی می‌کند.

ابزارهای پایه را با دستورهای زیر متناسب با توزیع خود نصب کنید. می‌توانید با محیط توسعه فعلی شروع کنید و در ابتدا نیازی به افزودن MPI یا کتابخانه‌های اختیاری دیگر ندارید.

Ubuntu / Debian

sudo apt-get update
sudo apt-get install build-essential cmake git gfortran

RHEL / Rocky Linux / AlmaLinux

sudo dnf install gcc gcc-c++ gcc-gfortran make cmake git

دستورهای زیر نمونه‌ای از ساخت و نصب در macOS و Linux هستند. فایل‌های اجرایی در پوشه bin زیر پوشه خانگی شما قرار می‌گیرند، بنابراین نیازی به sudo یا تغییر PATH نیست. برای آماده‌سازی macOS/Windows و کتابخانه‌های اختیاری به راهنمای ساخت مراجعه کنید.

git clone https://gitlab.com/FrontISTR-Commons/FrontISTR.git
cd FrontISTR
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$HOME"
cmake --build build --parallel
cmake --install build

مثال همراه را بدون دانلود مجدد اجرا کنید. دستورهای زیر را اجرا کنید و سپس برای مشاهده نتیجه در ParaView به مرحله 04 بروید.

cd tutorial/01_elastic_hinge
"$HOME/bin/fistr1"

ساخت از کد منبع

فایل‌های باینری و کانتینر از نسخه‌های master / LATEST که به طور پیوسته به‌روزرسانی می‌شوند استفاده می‌کنند. برای نسخه‌های منتشرشده و محیط‌های دیگر، صفحه دانلود را ببینید. نسخه‌ها و محیط‌های دیگر

02

مثال را دانلود کنید

فایل ZIP مثال را دانلود و استخراج کنید. از سه فایل ورودی موجود در پوشه 01_elastic_hinge استفاده کنید.

دانلود مثال (ZIP)

تحلیل را در پوشه استخراج‌شده 01_elastic_hinge اجرا کنید. دستور استخراج در خط فرمان macOS/Linux از unzip استفاده می‌کند.

01_elastic_hinge/

hecmw_ctrl.dat
محل فایل‌های ورودی و خروجی
hinge.cnt
مواد، بارها، قیود و تنظیمات تحلیل
hinge.msh
مش لولا

برای استفاده از خط فرمان، کل بلوک زیر را در محلی که می‌خواهید مثال را نگه دارید اجرا کنید. این بلوک آرشیو را دانلود و استخراج می‌کند و سپس وارد پوشه مثال می‌شود. در همان ترمینال اجرای دستور تحلیل را ادامه دهید.

Windows / PowerShell

curl.exe -fL -o 01_elastic_hinge.zip https://www.frontistr.com/sys/files/01_elastic_hinge.zip
if ($LASTEXITCODE -eq 0) {
  Expand-Archive -Path 01_elastic_hinge.zip -DestinationPath . -ErrorAction Stop
  cd 01_elastic_hinge
}

macOS / Linux

curl -fL -o 01_elastic_hinge.zip https://www.frontistr.com/sys/files/01_elastic_hinge.zip &&
unzip 01_elastic_hinge.zip &&
cd 01_elastic_hinge

03

از پوشه مثال اجرا کنید

تحلیل را در پوشه مثال 01_elastic_hinge اجرا کنید. مطمئن شوید hecmw_ctrl.dat در همان پوشه وجود دارد.

فایل باینری Windows

در پوشه مثال روی fistr1.exe دوبار کلیک کنید. فایل‌های DLL همراه آن نیز باید در همان پوشه باشند. اگر پس از پایان اجرا پنجره بسته شد، نتایج نوشته‌شده در پوشه مثال را با ParaView باز کنید.

برای بررسی لاگ

اگر پنجره بلافاصله بسته می‌شود و نتیجه‌ای تولید نمی‌شود، یا می‌خواهید لاگ را بررسی کنید، PowerShell را در پوشه مثال باز کنید و اجرا کنید:

.\fistr1.exe

Docker (Windows / macOS / Linux)

docker run --rm --platform linux/amd64 -v "${PWD}:/work" -w /work registry.gitlab.com/frontistr-commons/frontistr/fistr1:master fistr1

در پوشه مثال یک ترمینال باز کنید (در Windows از PowerShell استفاده کنید) و دستور را اجرا کنید. پوشه مثال در کانتینر روی /work مونت می‌شود. نتایج در پوشه محلی مثال ذخیره می‌شوند.

هنگام اجرا در ترمینال، نمایش این پیام در انتهای لاگ تأیید می‌کند که تحلیل پایان یافته است. زمان اجرا به رایانه شما بستگی دارد.

FrontISTR Completed !!
اگر مشکلی پیش آمد

اگر فایل‌های ورودی پیدا نمی‌شوند، بررسی کنید که تحلیل را از پوشه 01_elastic_hinge اجرا می‌کنید. در Windows همچنین مطمئن شوید fistr1.exe و همه فایل‌های DLL همراه آن در همان پوشه کپی شده‌اند.

04

نتیجه را در ParaView باز کنید

ParaView را نصب کنید. File → Open را انتخاب کنید و این فایل را در پوشه مثال باز کنید.

hinge_vis_psf.0001.pvtu

نتایج در همان پوشه 01_elastic_hinge نوشته می‌شوند. پوشه کناری hinge_vis_psf.0001 را نیز نگه دارید؛ فایل .pvtu را به تنهایی جابه‌جا نکنید. 0000 حالت اولیه و 0001 نتیجه پس از اعمال بار است.

دانلود ParaView

تصاویر صفحه: ParaView 6.1.0 در macOS. مراحل اصلی در Windows و Linux یکسان هستند.

  1. 04 / 1

    بلافاصله پس از باز کردن فایل. در سمت چپ روی Apply کلیک کنید.

    بلافاصله پس از باز کردن فایل. در سمت چپ روی Apply کلیک کنید.
  2. 04 / 2

    پس از کلیک روی Apply، هندسه لولا نمایش داده می‌شود.

    پس از کلیک روی Apply، هندسه لولا نمایش داده می‌شود.
  3. 04 / 3

    در نوار ابزار بالایی Solid Color را به NodalMISES تغییر دهید تا توزیع تنش von Mises نمایش داده شود.

    در نوار ابزار بالایی Solid Color را به NodalMISES تغییر دهید تا توزیع تنش von Mises نمایش داده شود.

رنگ‌ها و پس‌زمینه به تنظیمات ParaView بستگی دارند و لازم نیست با تصویر نمونه یکسان باشند. اگر مدل دیده نمی‌شود، Reset Camera را امتحان کنید.

اولین تحلیل شما کامل شد

در ادامه، بارها و تنظیمات مواد در مثال را بررسی کنید. راهنما این مدل را توضیح می‌دهد و انواع دیگر تحلیل را معرفی می‌کند.