FrontISTR / Getting Started
Aan de slag
Voer met FrontISTR een analyse van een scharnier uit en bekijk daarna de spanningsverdeling in ParaView. Met de solver en een kant-en-klaar voorbeeld hoeft u voor deze eerste run niet zelf een mesh te maken.
01
De solver voorbereiden
Gebruik de Windows-binary of de Docker-image, die op Windows, macOS en Linux kan worden gebruikt.
Windows (64-bit)
Pak het ZIP-bestand uit. Nadat u in de volgende stap het voorbeeld hebt voorbereid, kopieert u fistr1.exe en alle meegeleverde DLL-bestanden naar de voorbeeldmap (01_elastic_hinge).
Docker (Windows / macOS / Linux)
Start Docker en voer vervolgens de onderstaande opdracht uit in een terminal. Gebruik op Windows Docker in Linux-container-modus en voer de opdracht uit in PowerShell.
docker pull --platform linux/amd64 registry.gitlab.com/frontistr-commons/frontistr/fistr1:master
De huidige officiële image is gebouwd voor amd64. Op Macs met Apple Silicon draait deze via emulatie, waardoor de uitvoering langer kan duren.
Bouwen vanuit de broncode
U kunt FrontISTR op elk van deze besturingssystemen ook zelf vanuit de broncode bouwen. Zodra de compiler en vereiste bibliotheken zijn geïnstalleerd, detecteert CMake de omgeving en configureert het de build.
Installeer de basistools met de onderstaande opdrachten voor uw distributie. U kunt uw bestaande ontwikkelomgeving gebruiken zonder eerst MPI of andere optionele bibliotheken toe te voegen.
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
De onderstaande opdrachten tonen een voorbeeld van bouwen en installeren op macOS en Linux. De uitvoerbare bestanden worden in bin onder uw home directory geplaatst, zodat sudo en aanpassingen aan PATH niet nodig zijn. Raadpleeg de build guide voor de voorbereiding op macOS/Windows en voor optionele bibliotheken.
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
U kunt het meegeleverde voorbeeld direct uitvoeren zonder het opnieuw te downloaden. Voer de analyse uit met de onderstaande opdrachten en ga daarna naar stap 04 om het resultaat in ParaView te bekijken.
cd tutorial/01_elastic_hinge
"$HOME/bin/fistr1"
De binaries en container gebruiken de voortdurend bijgewerkte versies master / LATEST. Raadpleeg de downloadpagina voor releaseversies en andere omgevingen. Andere versies en omgevingen
02
Het voorbeeld downloaden
Download en pak het voorbeeld-ZIP-bestand uit. Gebruik de drie invoerbestanden in de map 01_elastic_hinge.
Voer de analyse uit in de uitgepakte map 01_elastic_hinge. Voor uitpakken via de command line wordt op macOS en Linux unzip gebruikt.
01_elastic_hinge/
hecmw_ctrl.dat- Locaties van invoer- en uitvoerbestanden
hinge.cnt- Materialen, belastingen, randvoorwaarden en analyse-instellingen
hinge.msh- Mesh van het scharnier
Als u het voorbeeld via de command line wilt voorbereiden, voert u het volledige blok hieronder uit op de locatie waar u het voorbeeld wilt bewaren. Het archive wordt gedownload en uitgepakt, waarna naar de voorbeeldmap wordt gegaan. Voer daarna in dezelfde terminal de analyseopdracht uit.
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
Uitvoeren vanuit de voorbeeldmap
Voer de analyse uit in de voorbeeldmap 01_elastic_hinge. Controleer of hecmw_ctrl.dat in die map staat.
Windows-binary
Dubbelklik op fistr1.exe in de voorbeeldmap. De meegeleverde DLL-bestanden moeten in dezelfde map staan. Als het venster sluit wanneer de run is voltooid, opent u de resultaten die naar de voorbeeldmap zijn geschreven in ParaView.
Het logboek bekijken
Als het venster direct sluit zonder resultaten te produceren, of als u het logboek wilt bekijken, opent u PowerShell in de voorbeeldmap en voert u het volgende uit:
.\fistr1.exeDocker (Windows / macOS / Linux)
docker run --rm --platform linux/amd64 -v "${PWD}:/work" -w /work registry.gitlab.com/frontistr-commons/frontistr/fistr1:master fistr1Open een terminal (PowerShell op Windows) in de voorbeeldmap en voer de opdracht uit. De voorbeeldmap wordt in de container gekoppeld aan /work. De resultaten worden in uw lokale voorbeeldmap opgeslagen.
Bij uitvoering in een terminal bevestigt het onderstaande bericht aan het einde van het logboek dat de analyse is voltooid. De uitvoertijd hangt af van uw PC.
FrontISTR Completed !!Als iets niet werkt
Als invoerbestanden niet worden gevonden, controleer dan of u vanuit de map 01_elastic_hinge uitvoert. Controleer op Windows ook of fistr1.exe en alle meegeleverde DLL-bestanden naar dezelfde map zijn gekopieerd.
04
Het resultaat openen in ParaView
Installeer ParaView. Kies File → Open en open het onderstaande bestand in de voorbeeldmap.
hinge_vis_psf.0001.pvtu
De resultaten worden in dezelfde map 01_elastic_hinge geschreven. Bewaar ook de aangrenzende map hinge_vis_psf.0001; verplaats het .pvtu-bestand niet afzonderlijk. 0000 is de begintoestand en 0001 is het resultaat nadat de belasting is aangebracht.
Schermafbeeldingen: ParaView 6.1.0 op macOS. De basisstappen zijn hetzelfde op Windows en Linux.
-
04 / 1
Direct na het openen van het bestand. Klik links op Apply.
-
04 / 2
Na het klikken op Apply verschijnt de geometrie van het scharnier.
-
04 / 3
Wijzig Solid Color in de bovenste werkbalk in NodalMISES om de verdeling van de von Mises-spanning weer te geven.
Kleuren en achtergrond hangen af van de ParaView-instellingen en hoeven niet overeen te komen met de illustratie. Probeer Reset Camera als het model niet zichtbaar is.
Uw eerste analyse is voltooid
Bekijk vervolgens de belastingen en materiaalinstellingen in het voorbeeld. De handleiding beschrijft dit model en introduceert andere analysetypen.