Michiko Ohishi's (大石 理子) website, Under rennovation 改装工事中🛠️

technical logs - invisible yet indispensable -

freecad + FEM workbenchでの構造計算

大学院生だったころ、光学系に関連した構造計算を行う可能性があったので、有償ソフトウェア(当時はANSYSだった)の講習会を受けにKEKに出向いたことがあった。それから随分と時間が経った今、また構造計算を行う機会がありそうなので、ツールもさぞかし進化しているのかと調べてみたところ、今ではLinuxで動くフリーウェアで商用と大きく遜色ない精度で構造計算が可能であるらしい。 Ubuntu24.04LTS上で動くものとして、 chatGPTにはfreecad + FEM workbench を勧められ、 freecadは使ったことがあったので早速トライ。というわけでメモを残しておく。
…AIの参入でこういったメモを残す意義も小さくなってきたものの、作業の意味を理解しないとトラブルシュートも応用もままならないので、作業手順そのものというより、現在の目的にに必要な最低限の要素を把握するという観点からのメモにしたつもり。

freecad+必要ツールのインストール

freecad のインストール

最近のfreecad はデフォルトで FEM workbench は付属しているらしいが、どこが配布しているものを使うかはその後の作業のしやすさを多少左右する。apt/snap/flatpakの使い分けはひとまず別記事に任せるとして、それらを試した結果、freecad に関しては flatpak を使用するのがよいという結論に至った。
flatpak がコマンドとして使える状態になっているという前提で、fluthubをレポジトリとして使用。 登録済みのレポジトリの確認は

$ flatpak remotes

これで Name Options flathub system と出ればOK.
確認を飛ばして「なければ追加登録、すでにあれば無視」にしたければ

$ flatpak remote-add –if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

でレポジトリ追加される。

インストール

$ flatpak install flathub org.freecad.FreeCAD

ここで最後の引数のパッケージ名が長いので、一度検索して確認したい場合は

$ flatpak search freecad

などで。

メッシュツール gmsh のインストール

flatpak からインストールしたfreecad では、NetGenと gmshからメッシュツールが選択可能であるようにGUIが準備されているが、これらのメッシュツールは別途インストールが必要。ここでは gmsh を使うことにする。

$ sudo apt install gmsh

ソルバー(有限要素法計算)ツール calculix のインストール

$ sudo apt install calculix-ccx

freecad の立ち上げ

$ flatpak run org.freecad.FreeCAD

apt やsnapのようにインストールしたコマンド直打ちではなく、実行時にもflatpak コマンドを使用する。インストール時のパッケージ名(freepak の application ID)が引数としてそのまま使われる。 これでGUI画面が立ち上がればOK.

最低限何を設定するか

ここから先はざっくりと何を設定する必要があるかだけを書く。実際にこれを追えば作業できる、という「マニュアル」より簡便になっていることに注意。

基本的な流れは以上。もう少し触ってみないと使いこなすところまではいかないが、とりあえず基本的な流れは掴めたので、これから実際に計算したいもののパラメータを少しずつ現実的に詰めてゆく。