FrontISTR / Getting Started
Започнување
Направете анализа на шарка со FrontISTR, а потоа разгледајте ја распределбата на напрегањето во ParaView. Со solver-от и подготвениот пример не треба да започнувате со создавање mesh за првото извршување.
01
Подгответе го solver-от
Подгответе Windows binary или Docker image што може да се користи на Windows, macOS и Linux.
Windows (64-bit)
Распакувајте го ZIP-от. Откако ќе го подготвите примерот во следниот чекор, копирајте ги fistr1.exe и сите придружни DLL во папката на примерот (01_elastic_hinge).
Docker (Windows / macOS / Linux)
Стартувајте Docker, а потоа извршете ја следната command во terminal. На Windows користете Docker во Linux container mode и извршете ја command во PowerShell.
docker pull --platform linux/amd64 registry.gitlab.com/frontistr-commons/frontistr/fistr1:master
Тековниот официјален image е изграден за amd64. На Mac со Apple Silicon работи преку емулација и може да биде побавен.
Build од source code
FrontISTR можете и сами да го build-ате од source code на кој било од овие оперативни системи. Откако ќе ги инсталирате compiler-ите и потребните library-и, CMake ќе ја открие околината и ќе го конфигурира build-от.
Инсталирајте ги основните tools со command-ите подолу за вашата distribution. Можете да ја користите постојната 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
Следните command-и се пример за build и install на macOS и Linux. executable-ите се ставаат во bin под вашиот home directory, па не се потребни 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
Можете директно да го извршите вклучениот пример без повторно преземање. Извршете ја анализата со command-ите подолу, а потоа продолжете на чекор 04 за да го видите резултатот во ParaView.
cd tutorial/01_elastic_hinge
"$HOME/bin/fistr1"
binary-ите и container-от ги користат постојано ажурираните master / LATEST верзии. За release верзии и други околини погледнете ја download page. Други верзии и околини
02
Преземете го примерот
Преземете го и распакувајте го ZIP-от со примерот. Користете ги трите input file-и во папката 01_elastic_hinge.
Извршете ја анализата во распакуваната папка 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-от, па влегува во папката на примерот. Потоа продолжете со analysis command во истиот terminal.
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Отворете terminal во папката на примерот (PowerShell на Windows) и извршете ја command. Папката на примерот се mount-ира на /work во container-от. Резултатите се зачувуваат во локалната папка на примерот.
Кога анализата се извршува во terminal, појавувањето на следната порака на крајот од log-от потврдува дека анализата завршила. Времето на извршување зависи од вашиот PC.
FrontISTR Completed !!Ако нешто не работи
Ако input file-ите не можат да се најдат, проверете дали ја извршувате анализата од папката 01_elastic_hinge. На Windows проверете и дали fistr1.exe и сите придружни DLL се копирани во истата папка.
04
Отворете го резултатот во ParaView
Инсталирајте ParaView. Изберете File → Open и отворете го следниот file во папката на примерот.
hinge_vis_psf.0001.pvtu
Резултатите се запишуваат во истата папка 01_elastic_hinge. Потребна е и соседната папка hinge_vis_psf.0001, затоа не го преместувајте .pvtu file-от самостојно. 0000 е почетната состојба, а 0001 е резултатот по применетото оптоварување.
Примери од екранот: ParaView 6.1.0 на macOS. Основните чекори се исти и на Windows и Linux.
-
04 / 1
Веднаш по отворањето на file-от. Кликнете Apply лево.
-
04 / 2
Геометријата на шарката се појавува откако ќе кликнете Apply.
-
04 / 3
Во горниот toolbar сменете Solid Color во NodalMISES за да ја прикажете распределбата на von Mises напрегањето.
Боите и background-от зависат од settings на ParaView и не мора да бидат исти како на примерот. Ако model-от не се гледа, пробајте Reset Camera.
Вашата прва анализа е завршена
Следно, разгледајте ги оптоварувањата и material settings во примерот. manual-от го објаснува овој model и воведува други analysis type-ови.