M1 MacにFreeCAD、CalculiX、gmshをインストールしてFEMを実行可能な環境を構築する方法です。
Homebrew導入(行っていなければ)
まだ導入を行っていなければ、Homebrewを導入します。MacPortsではCalculiXが存在しないようです。
以下のコマンドでインストールします。
$ xcode-select --install
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
指示に従ってインストールしてください。PATHを通すために追加のコマンドを実行するよう指示されるかもしれません。
FreeCADインストール
FreeCADをインストールします。Homebrewではインストールがうまくいかなかったためパッケージからインストールしました。
ダウンロードしたら、.dmg
内の実行ファイル(FreeCAD)をシステムの「アプリケーション」フォルダにコピーします。
貼り付けた実行ファイルを右クリック→実行を選択すると、確認されたのち起動できます。(次回以降はダブルクリックで起動できますが、初回はこの手順が必要です)
gmshインストール
Homebrewからインストールします。
$ brew install gmsh
実行したら、インストール先を確認しておきましょう。
$ which gmsh
/opt/homebrew/bin/gmsh
CalculiXインストール
CalculiX(calculix-ccx)をインストールします。様々なbottleが公開されていますが、私の環境ではこのbottle以外ではインストールできませんでした。
$ brew install costerwi/calculix/calculix-ccx
〜略〜
==> Installing calculix-ccx from costerwi/calculix
==> Patching
==> make -C spooles lib
==> make -C spooles/MT/src makeLib
==> Using Homebrew-provided Fortran compiler
This may be changed by setting the FC environment variable.
==> make -C ccx_2.20/src ccx_2.20 CC=clang FC=/opt/homebrew/bin/gfortran CFLAGS=-O2 -I../../spooles -DARCH=Linux -DSPOOLES -DARPACK -DMATRIXSTORAGE -DUSE
🍺 /opt/homebrew/Cellar/calculix-ccx/2.20: 4,686 files, 98.6MB, built in 1 minute 27 seconds
==> Running `brew cleanup calculix-ccx`...
Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
Removing: /Users/xxxx/Library/Caches/Homebrew/calculix-ccx--test--2.13.tar.bz2... (9.0MB)
Removing: /Users/xxxx/Library/Caches/Homebrew/calculix-ccx--2.13.tar.bz2... (1.1MB)
Removing: /Users/xxxx/Library/Caches/Homebrew/calculix-ccx--doc--2.13.tar.bz2... (2MB)
インストール先を確認しておきます。上のメッセージにも表示されている通り実体はCellarフォルダにあるのですが(/opt/homebrew/Cellar/calculix-ccx/2.20
)、Cellarフォルダではなくbinフォルダを探せばよいです。
$ ls -d /opt/homebrew/bin/* | grep ccx
/opt/homebrew/bin/ccx_2.20
FreeCADにPATHを登録する
FreeCADを開き、FEMワークベンチを開きます。
左上のFreeCAD→Preferences…を開き、FEMの項目を開きます。
それぞれ先ほど調べたインストール先PATHを入力します。
適用→OKで画面を閉じれば、FEMが可能な状態になっているはずです。Startに表示されるサンプルプロジェクト等で確認してください。