FrontISTR / Getting Started
首次分析
使用 FrontISTR 分析一个铰链,然后在 ParaView 中查看应力分布。只要准备好求解器和示例,第一次操作无需从创建网格开始。
01
准备求解器
准备 Windows 二进制文件,或可在 Windows、macOS 和 Linux 上使用的 Docker 镜像。
Windows(64-bit)
解压 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 架构构建。在 Apple Silicon Mac 上会通过模拟运行,因此可能需要更长时间。
从源代码构建
您也可以在上述任意操作系统中自行从源代码构建 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
可以直接运行随附的示例,无需再次下载。使用下列命令执行分析后,请前往步骤 04,在 ParaView 中查看结果。
cd tutorial/01_elastic_hinge
"$HOME/bin/fistr1"
二进制文件和容器使用持续更新的 master / LATEST 版本。发布版本和其他环境请参阅下载页面。 其他版本和环境
02
下载示例
下载并解压示例 ZIP。使用 01_elastic_hinge 文件夹中的三个输入文件。
请在解压后的 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_hinge03
在示例文件夹中运行
在示例文件夹(01_elastic_hinge)中执行分析。请确认该文件夹中存在 hecmw_ctrl.dat。
Windows 二进制文件
在示例文件夹中双击 fistr1.exe。随附的 DLL 也必须放在同一文件夹中。如果运行结束时窗口关闭,请用 ParaView 打开写入示例文件夹的结果。
查看日志
如果窗口立即关闭且没有生成结果,或者您想查看日志,请在示例文件夹中打开 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)并执行命令。示例文件夹会挂载到容器内的 /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 是施加载荷后的结果。
画面示例:macOS 上的 ParaView 6.1.0。Windows 和 Linux 的基本操作相同。
-
04 / 1
刚打开文件时的画面。单击左侧的 Apply。
-
04 / 2
单击 Apply 后会显示铰链几何形状。
-
04 / 3
将顶部工具栏中的 Solid Color 改为 NodalMISES,即可显示 von Mises 应力分布。
颜色和背景会因 ParaView 设置而异,不必与示例图片完全一致。如果看不到模型,请尝试 Reset Camera。