FrontISTR / Getting Started
はじめての解析
FrontISTRでヒンジを解析し、ParaViewで応力分布を見てみましょう。バイナリと例題を用意すれば、メッシュを作るところから始める必要はありません。
01
バイナリを用意する
Windows用バイナリ、または各OSで使える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ではエミュレーションで実行するため、時間がかかる場合があります。
自前ビルドの手順
どのOSでも、ソースコードから自分でビルドして利用できます。コンパイラや必要なライブラリを用意すると、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フォルダに入っている次の3つのファイルを使います。
展開した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に接続します。結果は手元の例題フォルダに保存されます。
ターミナルで実行した場合、ログの最後に次の表示が出れば解析は完了です。所要時間はPCによって異なります。
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 6.1.0(macOS)。Windows・Linuxでも基本操作は同じです。
-
04 / 1
ファイルを開いた直後。左側のApplyを押します。
-
04 / 2
Applyを押すとヒンジの形状が表示されます。
-
04 / 3
上部のSolid ColorをNodalMISESに変更すると、ミーゼス応力分布が見えます。
色や背景はParaViewの設定で異なります。見本と同じ配色に揃えなくても構いません。モデルが見えないときはReset Cameraを試してください。