FrontISTR / Getting Started
መጀመር
በFrontISTR የማጠፊያ ትንተና ያድርጉ፣ ከዚያም በParaView ውስጥ የውጥረት ስርጭቱን ይመልከቱ። solver እና ዝግጁ ምሳሌ ካዘጋጁ ለመጀመሪያው ሙከራ mesh ከመፍጠር መጀመር አያስፈልግም።
01
solver ያዘጋጁ
የWindows binary ወይም በWindows፣ macOS እና Linux ላይ ሊጠቀሙበት የሚችል Docker image ያዘጋጁ።
Windows (64-bit)
ZIPን ያውጡ። በቀጣዩ ደረጃ ምሳሌውን ካዘጋጁ በኋላ fistr1.exe እና ከእሱ ጋር የሚመጡትን DLL ፋይሎች በሙሉ ወደ ምሳሌው አቃፊ (01_elastic_hinge) ይቅዱ።
Docker (Windows / macOS / Linux)
Dockerን ያስነሱ፣ ከዚያም በተርሚናል ውስጥ የሚከተለውን ትዕዛዝ ያስኪዱ። በWindows ላይ Dockerን በLinux container mode ይጠቀሙ እና ትዕዛዙን በPowerShell ያስኪዱ።
docker pull --platform linux/amd64 registry.gitlab.com/frontistr-commons/frontistr/fistr1:master
አሁን ያለው ኦፊሴላዊ image ለ amd64 የተገነባ ነው። በ Apple Silicon Mac ላይ በemulation ስለሚሰራ ተጨማሪ ጊዜ ሊወስድ ይችላል።
ከsource code build ማድረግ
FrontISTRን ከምንጭ ኮድ በእነዚህ ማንኛውም የክወና ስርዓቶች ላይ ራስዎ መገንባት ይችላሉ። compiler እና አስፈላጊ libraryዎችን ከጫኑ በኋላ CMake አካባቢውን ያገኛል እና buildን ያዘጋጃል።
ለሚጠቀሙበት distribution ተስማሚ የሆኑትን ከታች ያሉ ትዕዛዞች በመጠቀም መሠረታዊ toolsን ይጫኑ። ያለዎትን development environment በመጠቀም MPI ወይም ሌሎች optional libraryዎችን ሳይጨምሩ መጀመር ይችላሉ።
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 ላይ build እና install የሚደረግበትን ምሳሌ ያሳያሉ። executableዎቹ በhome directory ውስጥ ባለው bin ውስጥ ይገባሉ፣ ስለዚህ sudo ወይም PATH ለውጥ አያስፈልግም። ለmacOS/Windows ዝግጅት እና optional libraryዎች build guideን ይመልከቱ።
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
ከsource ጋር የተካተተውን ምሳሌ እንደገና ሳያወርዱ በቀጥታ ማስኬድ ይችላሉ። በታች ባሉት ትዕዛዞች ትንተናውን ያካሂዱ፣ ከዚያም ውጤቱን በParaView ለማየት ወደ ደረጃ 04 ይሂዱ።
cd tutorial/01_elastic_hinge
"$HOME/bin/fistr1"
binaryዎቹ እና containerው በቀጣይነት የሚዘመኑ master / LATEST ስሪቶችን ይጠቀማሉ። ለተለቀቁ ስሪቶች እና ሌሎች አካባቢዎች download pageን ይመልከቱ። ሌሎች ስሪቶች እና አካባቢዎች
02
ምሳሌውን ያውርዱ
የምሳሌውን ZIP ያውርዱ እና ያውጡ። በ01_elastic_hinge አቃፊ ውስጥ ያሉትን ሶስት input fileዎች ይጠቀሙ።
ትንተናውን በተወጣው 01_elastic_hinge አቃፊ ውስጥ ያስኪዱ። በcommand line ሲያወጡ macOS እና Linux unzipን ይጠቀማሉ።
01_elastic_hinge/
hecmw_ctrl.dat- የinput እና output fileዎች ቦታ
hinge.cnt- ቁሳቁሶች፣ ጭነቶች፣ ገደቦች እና analysis settings
hinge.msh- የማጠፊያው mesh
ምሳሌውን በcommand line ለማዘጋጀት፣ ምሳሌውን ለማስቀመጥ በሚፈልጉበት ቦታ ከታች ያለውን block በሙሉ ያስኪዱ። archiveውን ያወርዳል፣ ያውጣል፣ ከዚያም ወደ ምሳሌው አቃፊ ይገባል። በዚያው ተርሚናል የትንተና ትዕዛዙን መቀጠል ይችላሉ።
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_hinge03
ከምሳሌው አቃፊ ውስጥ ያስኪዱ
ትንተናውን በምሳሌው አቃፊ 01_elastic_hinge ውስጥ ያስኪዱ። hecmw_ctrl.dat በዚያ አቃፊ ውስጥ መኖሩን ያረጋግጡ።
Windows binary
በምሳሌው አቃፊ ውስጥ fistr1.exeን ሁለት ጊዜ ጠቅ ያድርጉ። ከእሱ ጋር የሚመጡት DLLዎችም በዚያው አቃፊ ውስጥ መኖር አለባቸው። ስራው ሲያልቅ መስኮቱ ከተዘጋ፣ በምሳሌው አቃፊ የተፃፉትን ውጤቶች በParaView ይክፈቱ።
logን ለማየት
መስኮቱ ውጤት ሳያመነጭ ወዲያውኑ ከተዘጋ፣ ወይም logን ማየት ከፈለጉ፣ በምሳሌው አቃፊ ውስጥ PowerShellን ክፈቱ እና የሚከተለውን ያስኪዱ።
.\fistr1.exeDocker (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) ይክፈቱ እና ትዕዛዙን ያስኪዱ። የምሳሌው አቃፊ በcontainer ውስጥ በ/work ላይ mount ይደረጋል። ውጤቶቹ በአካባቢያዊው የምሳሌ አቃፊ ውስጥ ይቀመጣሉ።
ከተርሚናል ሲያስኪዱ፣ በlog መጨረሻ የሚከተለው መልዕክት ከታየ ትንተናው ተጠናቋል። የሚወስደው ጊዜ በPCዎ ይለያያል።
FrontISTR Completed !!ካልሰራ
input fileዎች ካልተገኙ ትንተናውን ከ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 6.1.0 በmacOS። መሠረታዊ ደረጃዎቹ በWindows እና Linux ላይም ተመሳሳይ ናቸው።
-
04 / 1
ፋይሉን እንደከፈቱ በግራ በኩል Applyን ይጫኑ።
-
04 / 2
Applyን ከጫኑ በኋላ የማጠፊያው ጂኦሜትሪ ይታያል።
-
04 / 3
በላይኛው toolbar ላይ Solid Colorን ወደ NodalMISES ይቀይሩ፣ ይህም የvon Mises ውጥረት ስርጭትን ያሳያል።
ቀለሞቹ እና የጀርባ ቀለም በParaView settings ይለያያሉ፤ ከምሳሌው ጋር ተመሳሳይ መሆን አያስፈልጋቸውም። modelው ካልታየ Reset Cameraን ይሞክሩ።
የመጀመሪያው ትንተና ተጠናቋል
ቀጥሎ በምሳሌው ውስጥ ያሉትን ጭነቶች እና የቁሳቁስ ቅንብሮች ይመልከቱ። manualው ይህን model ያብራራል እና ሌሎች የትንተና አይነቶችን ያስተዋውቃል።